"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import shared.shared_pb2
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class EventBus(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EVENT_SOURCE_NAME_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    event_source_name: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        event_source_name: builtins.str = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["event_source_name", b"event_source_name", "name", b"name", "resource_info", b"resource_info"]) -> None: ...

global___EventBus = EventBus

@typing_extensions.final
class Events(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EVENT_BUS_FIELD_NUMBER: builtins.int
    EVENT_BUS_POLICY_FIELD_NUMBER: builtins.int
    RULE_FIELD_NUMBER: builtins.int
    @property
    def event_bus(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___EventBus]: ...
    @property
    def event_bus_policy(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___EventBusPolicy]: ...
    @property
    def rule(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Rule]: ...
    def __init__(
        self,
        *,
        event_bus: collections.abc.Iterable[global___EventBus] | None = ...,
        event_bus_policy: collections.abc.Iterable[global___EventBusPolicy] | None = ...,
        rule: collections.abc.Iterable[global___Rule] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["event_bus", b"event_bus", "event_bus_policy", b"event_bus_policy", "rule", b"rule"]) -> None: ...

global___Events = Events

@typing_extensions.final
class EventBusPolicyCondition(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    value: builtins.str
    key: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        value: builtins.str = ...,
        key: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "resource_info", b"resource_info", "value", b"value"]) -> None: ...

global___EventBusPolicyCondition = EventBusPolicyCondition

@typing_extensions.final
class EventBusPolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EVENT_BUS_NAME_FIELD_NUMBER: builtins.int
    CONDITION_FIELD_NUMBER: builtins.int
    ACTION_FIELD_NUMBER: builtins.int
    STATEMENT_ID_FIELD_NUMBER: builtins.int
    PRINCIPAL_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    event_bus_name: builtins.str
    @property
    def condition(self) -> global___EventBusPolicyCondition: ...
    action: builtins.str
    statement_id: builtins.str
    principal: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        event_bus_name: builtins.str = ...,
        condition: global___EventBusPolicyCondition | None = ...,
        action: builtins.str = ...,
        statement_id: builtins.str = ...,
        principal: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["condition", b"condition", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "condition", b"condition", "event_bus_name", b"event_bus_name", "principal", b"principal", "resource_info", b"resource_info", "statement_id", b"statement_id"]) -> None: ...

global___EventBusPolicy = EventBusPolicy

@typing_extensions.final
class RuleBatchArrayProperties(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SIZE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    size: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        size: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "size", b"size"]) -> None: ...

global___RuleBatchArrayProperties = RuleBatchArrayProperties

@typing_extensions.final
class RuleBatchRetryStrategy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ATTEMPTS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    attempts: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        attempts: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["attempts", b"attempts", "resource_info", b"resource_info"]) -> None: ...

global___RuleBatchRetryStrategy = RuleBatchRetryStrategy

@typing_extensions.final
class RuleBatchParameters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ARRAY_PROPERTIES_FIELD_NUMBER: builtins.int
    JOB_DEFINITION_FIELD_NUMBER: builtins.int
    JOB_NAME_FIELD_NUMBER: builtins.int
    RETRY_STRATEGY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def array_properties(self) -> global___RuleBatchArrayProperties: ...
    job_definition: builtins.str
    job_name: builtins.str
    @property
    def retry_strategy(self) -> global___RuleBatchRetryStrategy: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        array_properties: global___RuleBatchArrayProperties | None = ...,
        job_definition: builtins.str = ...,
        job_name: builtins.str = ...,
        retry_strategy: global___RuleBatchRetryStrategy | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["array_properties", b"array_properties", "resource_info", b"resource_info", "retry_strategy", b"retry_strategy"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["array_properties", b"array_properties", "job_definition", b"job_definition", "job_name", b"job_name", "resource_info", b"resource_info", "retry_strategy", b"retry_strategy"]) -> None: ...

global___RuleBatchParameters = RuleBatchParameters

@typing_extensions.final
class RuleAwsVpcConfiguration(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ASSIGN_PUBLIC_IP_FIELD_NUMBER: builtins.int
    SECURITY_GROUPS_FIELD_NUMBER: builtins.int
    SUBNETS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    assign_public_ip: builtins.str
    @property
    def security_groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def subnets(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        assign_public_ip: builtins.str = ...,
        security_groups: collections.abc.Iterable[builtins.str] | None = ...,
        subnets: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["assign_public_ip", b"assign_public_ip", "resource_info", b"resource_info", "security_groups", b"security_groups", "subnets", b"subnets"]) -> None: ...

global___RuleAwsVpcConfiguration = RuleAwsVpcConfiguration

@typing_extensions.final
class RuleNetworkConfiguration(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AWS_VPC_CONFIGURATION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def aws_vpc_configuration(self) -> global___RuleAwsVpcConfiguration: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        aws_vpc_configuration: global___RuleAwsVpcConfiguration | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["aws_vpc_configuration", b"aws_vpc_configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["aws_vpc_configuration", b"aws_vpc_configuration", "resource_info", b"resource_info"]) -> None: ...

global___RuleNetworkConfiguration = RuleNetworkConfiguration

@typing_extensions.final
class RuleEcsParameters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    GROUP_FIELD_NUMBER: builtins.int
    LAUNCH_TYPE_FIELD_NUMBER: builtins.int
    NETWORK_CONFIGURATION_FIELD_NUMBER: builtins.int
    PLATFORM_VERSION_FIELD_NUMBER: builtins.int
    TASK_COUNT_FIELD_NUMBER: builtins.int
    TASK_DEFINITION_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    group: builtins.str
    launch_type: builtins.str
    @property
    def network_configuration(self) -> global___RuleNetworkConfiguration: ...
    platform_version: builtins.str
    task_count: builtins.int
    task_definition_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        group: builtins.str = ...,
        launch_type: builtins.str = ...,
        network_configuration: global___RuleNetworkConfiguration | None = ...,
        platform_version: builtins.str = ...,
        task_count: builtins.int = ...,
        task_definition_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["network_configuration", b"network_configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["group", b"group", "launch_type", b"launch_type", "network_configuration", b"network_configuration", "platform_version", b"platform_version", "resource_info", b"resource_info", "task_count", b"task_count", "task_definition_arn", b"task_definition_arn"]) -> None: ...

global___RuleEcsParameters = RuleEcsParameters

@typing_extensions.final
class RuleHttpParameters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class HeaderParametersEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    @typing_extensions.final
    class QueryStringParametersEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    HEADER_PARAMETERS_FIELD_NUMBER: builtins.int
    PATH_PARAMETER_VALUES_FIELD_NUMBER: builtins.int
    QUERY_STRING_PARAMETERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def header_parameters(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def path_parameter_values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def query_string_parameters(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        header_parameters: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        path_parameter_values: collections.abc.Iterable[builtins.str] | None = ...,
        query_string_parameters: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["header_parameters", b"header_parameters", "path_parameter_values", b"path_parameter_values", "query_string_parameters", b"query_string_parameters", "resource_info", b"resource_info"]) -> None: ...

global___RuleHttpParameters = RuleHttpParameters

@typing_extensions.final
class RuleInputTransformer(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class InputPathsMapEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INPUT_PATHS_MAP_FIELD_NUMBER: builtins.int
    INPUT_TEMPLATE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def input_paths_map(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    input_template: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        input_paths_map: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        input_template: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["input_paths_map", b"input_paths_map", "input_template", b"input_template", "resource_info", b"resource_info"]) -> None: ...

global___RuleInputTransformer = RuleInputTransformer

@typing_extensions.final
class RuleKinesisParameters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    PARTITION_KEY_PATH_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    partition_key_path: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        partition_key_path: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["partition_key_path", b"partition_key_path", "resource_info", b"resource_info"]) -> None: ...

global___RuleKinesisParameters = RuleKinesisParameters

@typing_extensions.final
class RuleRunCommandTarget(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    VALUES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    key: builtins.str
    @property
    def values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        key: builtins.str = ...,
        values: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "resource_info", b"resource_info", "values", b"values"]) -> None: ...

global___RuleRunCommandTarget = RuleRunCommandTarget

@typing_extensions.final
class RuleRunCommandParameters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    RUN_COMMAND_TARGETS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def run_command_targets(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RuleRunCommandTarget]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        run_command_targets: collections.abc.Iterable[global___RuleRunCommandTarget] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "run_command_targets", b"run_command_targets"]) -> None: ...

global___RuleRunCommandParameters = RuleRunCommandParameters

@typing_extensions.final
class RuleSqsParameters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    MESSAGE_GROUP_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    message_group_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        message_group_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["message_group_id", b"message_group_id", "resource_info", b"resource_info"]) -> None: ...

global___RuleSqsParameters = RuleSqsParameters

@typing_extensions.final
class RuleTarget(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ARN_FIELD_NUMBER: builtins.int
    BATCH_PARAMETERS_FIELD_NUMBER: builtins.int
    ECS_PARAMETERS_FIELD_NUMBER: builtins.int
    HTTP_PARAMETERS_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    INPUT_FIELD_NUMBER: builtins.int
    INPUT_PATH_FIELD_NUMBER: builtins.int
    INPUT_TRANSFORMER_FIELD_NUMBER: builtins.int
    KINESIS_PARAMETERS_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    RUN_COMMAND_PARAMETERS_FIELD_NUMBER: builtins.int
    SQS_PARAMETERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    arn: builtins.str
    @property
    def batch_parameters(self) -> global___RuleBatchParameters: ...
    @property
    def ecs_parameters(self) -> global___RuleEcsParameters: ...
    @property
    def http_parameters(self) -> global___RuleHttpParameters: ...
    id: builtins.str
    input: builtins.str
    input_path: builtins.str
    @property
    def input_transformer(self) -> global___RuleInputTransformer: ...
    @property
    def kinesis_parameters(self) -> global___RuleKinesisParameters: ...
    role_arn: builtins.str
    @property
    def run_command_parameters(self) -> global___RuleRunCommandParameters: ...
    @property
    def sqs_parameters(self) -> global___RuleSqsParameters: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        arn: builtins.str = ...,
        batch_parameters: global___RuleBatchParameters | None = ...,
        ecs_parameters: global___RuleEcsParameters | None = ...,
        http_parameters: global___RuleHttpParameters | None = ...,
        id: builtins.str = ...,
        input: builtins.str = ...,
        input_path: builtins.str = ...,
        input_transformer: global___RuleInputTransformer | None = ...,
        kinesis_parameters: global___RuleKinesisParameters | None = ...,
        role_arn: builtins.str = ...,
        run_command_parameters: global___RuleRunCommandParameters | None = ...,
        sqs_parameters: global___RuleSqsParameters | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["batch_parameters", b"batch_parameters", "ecs_parameters", b"ecs_parameters", "http_parameters", b"http_parameters", "input_transformer", b"input_transformer", "kinesis_parameters", b"kinesis_parameters", "resource_info", b"resource_info", "run_command_parameters", b"run_command_parameters", "sqs_parameters", b"sqs_parameters"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["arn", b"arn", "batch_parameters", b"batch_parameters", "ecs_parameters", b"ecs_parameters", "http_parameters", b"http_parameters", "id", b"id", "input", b"input", "input_path", b"input_path", "input_transformer", b"input_transformer", "kinesis_parameters", b"kinesis_parameters", "resource_info", b"resource_info", "role_arn", b"role_arn", "run_command_parameters", b"run_command_parameters", "sqs_parameters", b"sqs_parameters"]) -> None: ...

global___RuleTarget = RuleTarget

@typing_extensions.final
class Rule(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class EventPatternEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    EVENT_BUS_NAME_FIELD_NUMBER: builtins.int
    EVENT_PATTERN_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    SCHEDULE_EXPRESSION_FIELD_NUMBER: builtins.int
    STATE_FIELD_NUMBER: builtins.int
    TARGETS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    description: builtins.str
    event_bus_name: builtins.str
    @property
    def event_pattern(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    role_arn: builtins.str
    schedule_expression: builtins.str
    state: builtins.str
    @property
    def targets(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RuleTarget]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        description: builtins.str = ...,
        event_bus_name: builtins.str = ...,
        event_pattern: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
        role_arn: builtins.str = ...,
        schedule_expression: builtins.str = ...,
        state: builtins.str = ...,
        targets: collections.abc.Iterable[global___RuleTarget] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "event_bus_name", b"event_bus_name", "event_pattern", b"event_pattern", "name", b"name", "resource_info", b"resource_info", "role_arn", b"role_arn", "schedule_expression", b"schedule_expression", "state", b"state", "targets", b"targets"]) -> None: ...

global___Rule = Rule
