# coding=utf-8
# *** WARNING: this file was generated by the Pulumi SDK Generator. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import warnings
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from .. import _utilities

__all__ = [
    'DetectorCFNDataSourceConfigurationsArgs',
    'DetectorCFNS3LogsConfigurationArgs',
    'FilterConditionArgs',
    'FilterFindingCriteriaArgs',
]

@pulumi.input_type
class DetectorCFNDataSourceConfigurationsArgs:
    def __init__(__self__, *,
                 s3_logs: Optional[pulumi.Input['DetectorCFNS3LogsConfigurationArgs']] = None):
        if s3_logs is not None:
            pulumi.set(__self__, "s3_logs", s3_logs)

    @property
    @pulumi.getter(name="s3Logs")
    def s3_logs(self) -> Optional[pulumi.Input['DetectorCFNS3LogsConfigurationArgs']]:
        return pulumi.get(self, "s3_logs")

    @s3_logs.setter
    def s3_logs(self, value: Optional[pulumi.Input['DetectorCFNS3LogsConfigurationArgs']]):
        pulumi.set(self, "s3_logs", value)


@pulumi.input_type
class DetectorCFNS3LogsConfigurationArgs:
    def __init__(__self__, *,
                 enable: Optional[pulumi.Input[bool]] = None):
        if enable is not None:
            pulumi.set(__self__, "enable", enable)

    @property
    @pulumi.getter
    def enable(self) -> Optional[pulumi.Input[bool]]:
        return pulumi.get(self, "enable")

    @enable.setter
    def enable(self, value: Optional[pulumi.Input[bool]]):
        pulumi.set(self, "enable", value)


@pulumi.input_type
class FilterConditionArgs:
    def __init__(__self__, *,
                 eq: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                 gte: Optional[pulumi.Input[int]] = None,
                 lt: Optional[pulumi.Input[int]] = None,
                 lte: Optional[pulumi.Input[int]] = None,
                 neq: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
        if eq is not None:
            pulumi.set(__self__, "eq", eq)
        if gte is not None:
            pulumi.set(__self__, "gte", gte)
        if lt is not None:
            pulumi.set(__self__, "lt", lt)
        if lte is not None:
            pulumi.set(__self__, "lte", lte)
        if neq is not None:
            pulumi.set(__self__, "neq", neq)

    @property
    @pulumi.getter
    def eq(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
        return pulumi.get(self, "eq")

    @eq.setter
    def eq(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
        pulumi.set(self, "eq", value)

    @property
    @pulumi.getter
    def gte(self) -> Optional[pulumi.Input[int]]:
        return pulumi.get(self, "gte")

    @gte.setter
    def gte(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "gte", value)

    @property
    @pulumi.getter
    def lt(self) -> Optional[pulumi.Input[int]]:
        return pulumi.get(self, "lt")

    @lt.setter
    def lt(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "lt", value)

    @property
    @pulumi.getter
    def lte(self) -> Optional[pulumi.Input[int]]:
        return pulumi.get(self, "lte")

    @lte.setter
    def lte(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "lte", value)

    @property
    @pulumi.getter
    def neq(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
        return pulumi.get(self, "neq")

    @neq.setter
    def neq(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
        pulumi.set(self, "neq", value)


@pulumi.input_type
class FilterFindingCriteriaArgs:
    def __init__(__self__, *,
                 criterion: Optional[Any] = None,
                 item_type: Optional[pulumi.Input['FilterConditionArgs']] = None):
        if criterion is not None:
            pulumi.set(__self__, "criterion", criterion)
        if item_type is not None:
            pulumi.set(__self__, "item_type", item_type)

    @property
    @pulumi.getter
    def criterion(self) -> Optional[Any]:
        return pulumi.get(self, "criterion")

    @criterion.setter
    def criterion(self, value: Optional[Any]):
        pulumi.set(self, "criterion", value)

    @property
    @pulumi.getter(name="itemType")
    def item_type(self) -> Optional[pulumi.Input['FilterConditionArgs']]:
        return pulumi.get(self, "item_type")

    @item_type.setter
    def item_type(self, value: Optional[pulumi.Input['FilterConditionArgs']]):
        pulumi.set(self, "item_type", value)


