"""
@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 ListenerCertificate(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CERTIFICATE_ARN_FIELD_NUMBER: builtins.int
    LISTENER_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    certificate_arn: builtins.str
    listener_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        certificate_arn: builtins.str = ...,
        listener_arn: 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["certificate_arn", b"certificate_arn", "listener_arn", b"listener_arn", "resource_info", b"resource_info"]) -> None: ...

global___ListenerCertificate = ListenerCertificate

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

    @typing_extensions.final
    class AuthenticationRequestExtraParamsEntry(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
    AUTHENTICATION_REQUEST_EXTRA_PARAMS_FIELD_NUMBER: builtins.int
    ON_UNAUTHENTICATED_REQUEST_FIELD_NUMBER: builtins.int
    SCOPE_FIELD_NUMBER: builtins.int
    SESSION_COOKIE_NAME_FIELD_NUMBER: builtins.int
    SESSION_TIMEOUT_FIELD_NUMBER: builtins.int
    USER_POOL_ARN_FIELD_NUMBER: builtins.int
    USER_POOL_CLIENT_ID_FIELD_NUMBER: builtins.int
    USER_POOL_DOMAIN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def authentication_request_extra_params(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    on_unauthenticated_request: builtins.str
    scope: builtins.str
    session_cookie_name: builtins.str
    session_timeout: builtins.int
    user_pool_arn: builtins.str
    user_pool_client_id: builtins.str
    user_pool_domain: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        authentication_request_extra_params: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        on_unauthenticated_request: builtins.str = ...,
        scope: builtins.str = ...,
        session_cookie_name: builtins.str = ...,
        session_timeout: builtins.int = ...,
        user_pool_arn: builtins.str = ...,
        user_pool_client_id: builtins.str = ...,
        user_pool_domain: 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["authentication_request_extra_params", b"authentication_request_extra_params", "on_unauthenticated_request", b"on_unauthenticated_request", "resource_info", b"resource_info", "scope", b"scope", "session_cookie_name", b"session_cookie_name", "session_timeout", b"session_timeout", "user_pool_arn", b"user_pool_arn", "user_pool_client_id", b"user_pool_client_id", "user_pool_domain", b"user_pool_domain"]) -> None: ...

global___ListenerAuthenticateCognitoConfig = ListenerAuthenticateCognitoConfig

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

    @typing_extensions.final
    class AuthenticationRequestExtraParamsEntry(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
    AUTHENTICATION_REQUEST_EXTRA_PARAMS_FIELD_NUMBER: builtins.int
    AUTHORIZATION_ENDPOINT_FIELD_NUMBER: builtins.int
    CLIENT_ID_FIELD_NUMBER: builtins.int
    CLIENT_SECRET_FIELD_NUMBER: builtins.int
    ISSUER_FIELD_NUMBER: builtins.int
    ON_UNAUTHENTICATED_REQUEST_FIELD_NUMBER: builtins.int
    SCOPE_FIELD_NUMBER: builtins.int
    SESSION_COOKIE_NAME_FIELD_NUMBER: builtins.int
    SESSION_TIMEOUT_FIELD_NUMBER: builtins.int
    TOKEN_ENDPOINT_FIELD_NUMBER: builtins.int
    USER_INFO_ENDPOINT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def authentication_request_extra_params(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    authorization_endpoint: builtins.str
    client_id: builtins.str
    client_secret: builtins.str
    issuer: builtins.str
    on_unauthenticated_request: builtins.str
    scope: builtins.str
    session_cookie_name: builtins.str
    session_timeout: builtins.int
    token_endpoint: builtins.str
    user_info_endpoint: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        authentication_request_extra_params: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        authorization_endpoint: builtins.str = ...,
        client_id: builtins.str = ...,
        client_secret: builtins.str = ...,
        issuer: builtins.str = ...,
        on_unauthenticated_request: builtins.str = ...,
        scope: builtins.str = ...,
        session_cookie_name: builtins.str = ...,
        session_timeout: builtins.int = ...,
        token_endpoint: builtins.str = ...,
        user_info_endpoint: 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["authentication_request_extra_params", b"authentication_request_extra_params", "authorization_endpoint", b"authorization_endpoint", "client_id", b"client_id", "client_secret", b"client_secret", "issuer", b"issuer", "on_unauthenticated_request", b"on_unauthenticated_request", "resource_info", b"resource_info", "scope", b"scope", "session_cookie_name", b"session_cookie_name", "session_timeout", b"session_timeout", "token_endpoint", b"token_endpoint", "user_info_endpoint", b"user_info_endpoint"]) -> None: ...

global___ListenerAuthenticateOidcConfig = ListenerAuthenticateOidcConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTENT_TYPE_FIELD_NUMBER: builtins.int
    MESSAGE_BODY_FIELD_NUMBER: builtins.int
    STATUS_CODE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    content_type: builtins.str
    message_body: builtins.str
    status_code: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        content_type: builtins.str = ...,
        message_body: builtins.str = ...,
        status_code: 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["content_type", b"content_type", "message_body", b"message_body", "resource_info", b"resource_info", "status_code", b"status_code"]) -> None: ...

global___ListenerFixedResponseConfig = ListenerFixedResponseConfig

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

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

global___ListenerTargetGroupStickinessConfig = ListenerTargetGroupStickinessConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TARGET_GROUP_ARN_FIELD_NUMBER: builtins.int
    WEIGHT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    target_group_arn: builtins.str
    weight: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        target_group_arn: builtins.str = ...,
        weight: 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", "target_group_arn", b"target_group_arn", "weight", b"weight"]) -> None: ...

global___ListenerTargetGroupTuple = ListenerTargetGroupTuple

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

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

global___ListenerForwardConfig = ListenerForwardConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    HOST_FIELD_NUMBER: builtins.int
    PATH_FIELD_NUMBER: builtins.int
    PORT_FIELD_NUMBER: builtins.int
    PROTOCOL_FIELD_NUMBER: builtins.int
    QUERY_FIELD_NUMBER: builtins.int
    STATUS_CODE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    host: builtins.str
    path: builtins.str
    port: builtins.str
    protocol: builtins.str
    query: builtins.str
    status_code: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        host: builtins.str = ...,
        path: builtins.str = ...,
        port: builtins.str = ...,
        protocol: builtins.str = ...,
        query: builtins.str = ...,
        status_code: 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["host", b"host", "path", b"path", "port", b"port", "protocol", b"protocol", "query", b"query", "resource_info", b"resource_info", "status_code", b"status_code"]) -> None: ...

global___ListenerRedirectConfig = ListenerRedirectConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AUTHENTICATE_COGNITO_CONFIG_FIELD_NUMBER: builtins.int
    AUTHENTICATE_OIDC_CONFIG_FIELD_NUMBER: builtins.int
    FIXED_RESPONSE_CONFIG_FIELD_NUMBER: builtins.int
    FORWARD_CONFIG_FIELD_NUMBER: builtins.int
    ORDER_FIELD_NUMBER: builtins.int
    REDIRECT_CONFIG_FIELD_NUMBER: builtins.int
    TARGET_GROUP_ARN_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    AUTHENTICATION_REQUEST_EXTRA_PARAMS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def authenticate_cognito_config(self) -> global___ListenerAuthenticateCognitoConfig: ...
    @property
    def authenticate_oidc_config(self) -> global___ListenerAuthenticateOidcConfig: ...
    @property
    def fixed_response_config(self) -> global___ListenerFixedResponseConfig: ...
    @property
    def forward_config(self) -> global___ListenerForwardConfig: ...
    order: builtins.int
    @property
    def redirect_config(self) -> global___ListenerRedirectConfig: ...
    target_group_arn: builtins.str
    type: builtins.str
    authentication_request_extra_params: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        authenticate_cognito_config: global___ListenerAuthenticateCognitoConfig | None = ...,
        authenticate_oidc_config: global___ListenerAuthenticateOidcConfig | None = ...,
        fixed_response_config: global___ListenerFixedResponseConfig | None = ...,
        forward_config: global___ListenerForwardConfig | None = ...,
        order: builtins.int = ...,
        redirect_config: global___ListenerRedirectConfig | None = ...,
        target_group_arn: builtins.str = ...,
        type: builtins.str = ...,
        authentication_request_extra_params: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["authenticate_cognito_config", b"authenticate_cognito_config", "authenticate_oidc_config", b"authenticate_oidc_config", "fixed_response_config", b"fixed_response_config", "forward_config", b"forward_config", "redirect_config", b"redirect_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["authenticate_cognito_config", b"authenticate_cognito_config", "authenticate_oidc_config", b"authenticate_oidc_config", "authentication_request_extra_params", b"authentication_request_extra_params", "fixed_response_config", b"fixed_response_config", "forward_config", b"forward_config", "order", b"order", "redirect_config", b"redirect_config", "resource_info", b"resource_info", "target_group_arn", b"target_group_arn", "type", b"type"]) -> None: ...

global___ListenerAction = ListenerAction

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ALPN_POLICY_FIELD_NUMBER: builtins.int
    CERTIFICATES_FIELD_NUMBER: builtins.int
    DEFAULT_ACTIONS_FIELD_NUMBER: builtins.int
    LOAD_BALANCER_ARN_FIELD_NUMBER: builtins.int
    PORT_FIELD_NUMBER: builtins.int
    PROTOCOL_FIELD_NUMBER: builtins.int
    SSL_POLICY_FIELD_NUMBER: builtins.int
    LISTENER_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def alpn_policy(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def certificates(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ListenerCertificate]: ...
    @property
    def default_actions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ListenerAction]: ...
    load_balancer_arn: builtins.str
    port: builtins.int
    protocol: builtins.str
    ssl_policy: builtins.str
    listener_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        alpn_policy: collections.abc.Iterable[builtins.str] | None = ...,
        certificates: collections.abc.Iterable[global___ListenerCertificate] | None = ...,
        default_actions: collections.abc.Iterable[global___ListenerAction] | None = ...,
        load_balancer_arn: builtins.str = ...,
        port: builtins.int = ...,
        protocol: builtins.str = ...,
        ssl_policy: builtins.str = ...,
        listener_arn: 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["alpn_policy", b"alpn_policy", "certificates", b"certificates", "default_actions", b"default_actions", "listener_arn", b"listener_arn", "load_balancer_arn", b"load_balancer_arn", "port", b"port", "protocol", b"protocol", "resource_info", b"resource_info", "ssl_policy", b"ssl_policy"]) -> None: ...

global___Listener = Listener

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

    LISTENER_FIELD_NUMBER: builtins.int
    LISTENER_CERTIFICATE_FIELD_NUMBER: builtins.int
    LISTENER_RULE_FIELD_NUMBER: builtins.int
    LOAD_BALANCER_FIELD_NUMBER: builtins.int
    TARGET_GROUP_FIELD_NUMBER: builtins.int
    @property
    def listener(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Listener]: ...
    @property
    def listener_certificate(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ListenerCertificate]: ...
    @property
    def listener_rule(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ListenerRule]: ...
    @property
    def load_balancer(self) -> global___LoadBalancer: ...
    @property
    def target_group(self) -> global___TargetGroup: ...
    def __init__(
        self,
        *,
        listener: collections.abc.Iterable[global___Listener] | None = ...,
        listener_certificate: collections.abc.Iterable[global___ListenerCertificate] | None = ...,
        listener_rule: collections.abc.Iterable[global___ListenerRule] | None = ...,
        load_balancer: global___LoadBalancer | None = ...,
        target_group: global___TargetGroup | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["load_balancer", b"load_balancer", "target_group", b"target_group"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["listener", b"listener", "listener_certificate", b"listener_certificate", "listener_rule", b"listener_rule", "load_balancer", b"load_balancer", "target_group", b"target_group"]) -> None: ...

global___ElasticLoadBalancingV2 = ElasticLoadBalancingV2

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CERTIFICATE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    certificate_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        certificate_arn: 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["certificate_arn", b"certificate_arn", "resource_info", b"resource_info"]) -> None: ...

global___ListenerCertificateCertificate = ListenerCertificateCertificate

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

    @typing_extensions.final
    class AuthenticationRequestExtraParamsEntry(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
    AUTHENTICATION_REQUEST_EXTRA_PARAMS_FIELD_NUMBER: builtins.int
    ON_UNAUTHENTICATED_REQUEST_FIELD_NUMBER: builtins.int
    SCOPE_FIELD_NUMBER: builtins.int
    SESSION_COOKIE_NAME_FIELD_NUMBER: builtins.int
    SESSION_TIMEOUT_FIELD_NUMBER: builtins.int
    USER_POOL_ARN_FIELD_NUMBER: builtins.int
    USER_POOL_CLIENT_ID_FIELD_NUMBER: builtins.int
    USER_POOL_DOMAIN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def authentication_request_extra_params(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    on_unauthenticated_request: builtins.str
    scope: builtins.str
    session_cookie_name: builtins.str
    session_timeout: builtins.int
    user_pool_arn: builtins.str
    user_pool_client_id: builtins.str
    user_pool_domain: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        authentication_request_extra_params: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        on_unauthenticated_request: builtins.str = ...,
        scope: builtins.str = ...,
        session_cookie_name: builtins.str = ...,
        session_timeout: builtins.int = ...,
        user_pool_arn: builtins.str = ...,
        user_pool_client_id: builtins.str = ...,
        user_pool_domain: 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["authentication_request_extra_params", b"authentication_request_extra_params", "on_unauthenticated_request", b"on_unauthenticated_request", "resource_info", b"resource_info", "scope", b"scope", "session_cookie_name", b"session_cookie_name", "session_timeout", b"session_timeout", "user_pool_arn", b"user_pool_arn", "user_pool_client_id", b"user_pool_client_id", "user_pool_domain", b"user_pool_domain"]) -> None: ...

global___ListenerRuleAuthenticateCognitoConfig = ListenerRuleAuthenticateCognitoConfig

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

    @typing_extensions.final
    class AuthenticationRequestExtraParamsEntry(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
    AUTHENTICATION_REQUEST_EXTRA_PARAMS_FIELD_NUMBER: builtins.int
    AUTHORIZATION_ENDPOINT_FIELD_NUMBER: builtins.int
    CLIENT_ID_FIELD_NUMBER: builtins.int
    CLIENT_SECRET_FIELD_NUMBER: builtins.int
    ISSUER_FIELD_NUMBER: builtins.int
    ON_UNAUTHENTICATED_REQUEST_FIELD_NUMBER: builtins.int
    SCOPE_FIELD_NUMBER: builtins.int
    SESSION_COOKIE_NAME_FIELD_NUMBER: builtins.int
    SESSION_TIMEOUT_FIELD_NUMBER: builtins.int
    TOKEN_ENDPOINT_FIELD_NUMBER: builtins.int
    USER_INFO_ENDPOINT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def authentication_request_extra_params(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    authorization_endpoint: builtins.str
    client_id: builtins.str
    client_secret: builtins.str
    issuer: builtins.str
    on_unauthenticated_request: builtins.str
    scope: builtins.str
    session_cookie_name: builtins.str
    session_timeout: builtins.int
    token_endpoint: builtins.str
    user_info_endpoint: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        authentication_request_extra_params: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        authorization_endpoint: builtins.str = ...,
        client_id: builtins.str = ...,
        client_secret: builtins.str = ...,
        issuer: builtins.str = ...,
        on_unauthenticated_request: builtins.str = ...,
        scope: builtins.str = ...,
        session_cookie_name: builtins.str = ...,
        session_timeout: builtins.int = ...,
        token_endpoint: builtins.str = ...,
        user_info_endpoint: 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["authentication_request_extra_params", b"authentication_request_extra_params", "authorization_endpoint", b"authorization_endpoint", "client_id", b"client_id", "client_secret", b"client_secret", "issuer", b"issuer", "on_unauthenticated_request", b"on_unauthenticated_request", "resource_info", b"resource_info", "scope", b"scope", "session_cookie_name", b"session_cookie_name", "session_timeout", b"session_timeout", "token_endpoint", b"token_endpoint", "user_info_endpoint", b"user_info_endpoint"]) -> None: ...

global___ListenerRuleAuthenticateOidcConfig = ListenerRuleAuthenticateOidcConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONTENT_TYPE_FIELD_NUMBER: builtins.int
    MESSAGE_BODY_FIELD_NUMBER: builtins.int
    STATUS_CODE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    content_type: builtins.str
    message_body: builtins.str
    status_code: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        content_type: builtins.str = ...,
        message_body: builtins.str = ...,
        status_code: 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["content_type", b"content_type", "message_body", b"message_body", "resource_info", b"resource_info", "status_code", b"status_code"]) -> None: ...

global___ListenerRuleFixedResponseConfig = ListenerRuleFixedResponseConfig

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

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

global___ListenerRuleTargetGroupStickinessConfig = ListenerRuleTargetGroupStickinessConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TARGET_GROUP_ARN_FIELD_NUMBER: builtins.int
    WEIGHT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    target_group_arn: builtins.str
    weight: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        target_group_arn: builtins.str = ...,
        weight: 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", "target_group_arn", b"target_group_arn", "weight", b"weight"]) -> None: ...

global___ListenerRuleTargetGroupTuple = ListenerRuleTargetGroupTuple

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

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

global___ListenerRuleForwardConfig = ListenerRuleForwardConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    HOST_FIELD_NUMBER: builtins.int
    PATH_FIELD_NUMBER: builtins.int
    PORT_FIELD_NUMBER: builtins.int
    PROTOCOL_FIELD_NUMBER: builtins.int
    QUERY_FIELD_NUMBER: builtins.int
    STATUS_CODE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    host: builtins.str
    path: builtins.str
    port: builtins.str
    protocol: builtins.str
    query: builtins.str
    status_code: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        host: builtins.str = ...,
        path: builtins.str = ...,
        port: builtins.str = ...,
        protocol: builtins.str = ...,
        query: builtins.str = ...,
        status_code: 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["host", b"host", "path", b"path", "port", b"port", "protocol", b"protocol", "query", b"query", "resource_info", b"resource_info", "status_code", b"status_code"]) -> None: ...

global___ListenerRuleRedirectConfig = ListenerRuleRedirectConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AUTHENTICATE_COGNITO_CONFIG_FIELD_NUMBER: builtins.int
    AUTHENTICATE_OIDC_CONFIG_FIELD_NUMBER: builtins.int
    FIXED_RESPONSE_CONFIG_FIELD_NUMBER: builtins.int
    FORWARD_CONFIG_FIELD_NUMBER: builtins.int
    ORDER_FIELD_NUMBER: builtins.int
    REDIRECT_CONFIG_FIELD_NUMBER: builtins.int
    TARGET_GROUP_ARN_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def authenticate_cognito_config(self) -> global___ListenerRuleAuthenticateCognitoConfig: ...
    @property
    def authenticate_oidc_config(self) -> global___ListenerRuleAuthenticateOidcConfig: ...
    @property
    def fixed_response_config(self) -> global___ListenerRuleFixedResponseConfig: ...
    @property
    def forward_config(self) -> global___ListenerRuleForwardConfig: ...
    order: builtins.int
    @property
    def redirect_config(self) -> global___ListenerRuleRedirectConfig: ...
    target_group_arn: builtins.str
    type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        authenticate_cognito_config: global___ListenerRuleAuthenticateCognitoConfig | None = ...,
        authenticate_oidc_config: global___ListenerRuleAuthenticateOidcConfig | None = ...,
        fixed_response_config: global___ListenerRuleFixedResponseConfig | None = ...,
        forward_config: global___ListenerRuleForwardConfig | None = ...,
        order: builtins.int = ...,
        redirect_config: global___ListenerRuleRedirectConfig | None = ...,
        target_group_arn: builtins.str = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["authenticate_cognito_config", b"authenticate_cognito_config", "authenticate_oidc_config", b"authenticate_oidc_config", "fixed_response_config", b"fixed_response_config", "forward_config", b"forward_config", "redirect_config", b"redirect_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["authenticate_cognito_config", b"authenticate_cognito_config", "authenticate_oidc_config", b"authenticate_oidc_config", "fixed_response_config", b"fixed_response_config", "forward_config", b"forward_config", "order", b"order", "redirect_config", b"redirect_config", "resource_info", b"resource_info", "target_group_arn", b"target_group_arn", "type", b"type"]) -> None: ...

global___ListenerRuleAction = ListenerRuleAction

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        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["resource_info", b"resource_info", "values", b"values"]) -> None: ...

global___ListenerRuleHostHeaderConfig = ListenerRuleHostHeaderConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    HTTP_HEADER_NAME_FIELD_NUMBER: builtins.int
    VALUES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    http_header_name: builtins.str
    @property
    def values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        http_header_name: 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["http_header_name", b"http_header_name", "resource_info", b"resource_info", "values", b"values"]) -> None: ...

global___ListenerRuleHttpHeaderConfig = ListenerRuleHttpHeaderConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        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["resource_info", b"resource_info", "values", b"values"]) -> None: ...

global___ListenerRuleHttpRequestMethodConfig = ListenerRuleHttpRequestMethodConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        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["resource_info", b"resource_info", "values", b"values"]) -> None: ...

global___ListenerRulePathPatternConfig = ListenerRulePathPatternConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    key: builtins.str
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        key: builtins.str = ...,
        value: 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___ListenerRuleQueryStringKeyValue = ListenerRuleQueryStringKeyValue

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def values(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ListenerRuleQueryStringKeyValue]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        values: collections.abc.Iterable[global___ListenerRuleQueryStringKeyValue] | 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", "values", b"values"]) -> None: ...

global___ListenerRuleQueryStringConfig = ListenerRuleQueryStringConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        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["resource_info", b"resource_info", "values", b"values"]) -> None: ...

global___ListenerRuleSourceIpConfig = ListenerRuleSourceIpConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FIELD_FIELD_NUMBER: builtins.int
    HOST_HEADER_CONFIG_FIELD_NUMBER: builtins.int
    HTTP_HEADER_CONFIG_FIELD_NUMBER: builtins.int
    HTTP_REQUEST_METHOD_CONFIG_FIELD_NUMBER: builtins.int
    PATH_PATTERN_CONFIG_FIELD_NUMBER: builtins.int
    QUERY_STRING_CONFIG_FIELD_NUMBER: builtins.int
    SOURCE_IP_CONFIG_FIELD_NUMBER: builtins.int
    VALUES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    field: builtins.str
    @property
    def host_header_config(self) -> global___ListenerRuleHostHeaderConfig: ...
    @property
    def http_header_config(self) -> global___ListenerRuleHttpHeaderConfig: ...
    @property
    def http_request_method_config(self) -> global___ListenerRuleHttpRequestMethodConfig: ...
    @property
    def path_pattern_config(self) -> global___ListenerRulePathPatternConfig: ...
    @property
    def query_string_config(self) -> global___ListenerRuleQueryStringConfig: ...
    @property
    def source_ip_config(self) -> global___ListenerRuleSourceIpConfig: ...
    @property
    def values(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        field: builtins.str = ...,
        host_header_config: global___ListenerRuleHostHeaderConfig | None = ...,
        http_header_config: global___ListenerRuleHttpHeaderConfig | None = ...,
        http_request_method_config: global___ListenerRuleHttpRequestMethodConfig | None = ...,
        path_pattern_config: global___ListenerRulePathPatternConfig | None = ...,
        query_string_config: global___ListenerRuleQueryStringConfig | None = ...,
        source_ip_config: global___ListenerRuleSourceIpConfig | None = ...,
        values: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["host_header_config", b"host_header_config", "http_header_config", b"http_header_config", "http_request_method_config", b"http_request_method_config", "path_pattern_config", b"path_pattern_config", "query_string_config", b"query_string_config", "resource_info", b"resource_info", "source_ip_config", b"source_ip_config"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["field", b"field", "host_header_config", b"host_header_config", "http_header_config", b"http_header_config", "http_request_method_config", b"http_request_method_config", "path_pattern_config", b"path_pattern_config", "query_string_config", b"query_string_config", "resource_info", b"resource_info", "source_ip_config", b"source_ip_config", "values", b"values"]) -> None: ...

global___ListenerRuleRuleCondition = ListenerRuleRuleCondition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ACTIONS_FIELD_NUMBER: builtins.int
    CONDITIONS_FIELD_NUMBER: builtins.int
    LISTENER_ARN_FIELD_NUMBER: builtins.int
    PRIORITY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def actions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ListenerRuleAction]: ...
    @property
    def conditions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ListenerRuleRuleCondition]: ...
    listener_arn: builtins.str
    priority: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        actions: collections.abc.Iterable[global___ListenerRuleAction] | None = ...,
        conditions: collections.abc.Iterable[global___ListenerRuleRuleCondition] | None = ...,
        listener_arn: builtins.str = ...,
        priority: 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["actions", b"actions", "conditions", b"conditions", "listener_arn", b"listener_arn", "priority", b"priority", "resource_info", b"resource_info"]) -> None: ...

global___ListenerRule = ListenerRule

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    key: builtins.str
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        key: builtins.str = ...,
        value: 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___LoadBalancerLoadBalancerAttribute = LoadBalancerLoadBalancerAttribute

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ALLOCATION_ID_FIELD_NUMBER: builtins.int
    PRIVATE_IPV4_ADDRESS_FIELD_NUMBER: builtins.int
    SUBNET_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    allocation_id: builtins.str
    private_ipv4_address: builtins.str
    subnet_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        allocation_id: builtins.str = ...,
        private_ipv4_address: builtins.str = ...,
        subnet_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["allocation_id", b"allocation_id", "private_ipv4_address", b"private_ipv4_address", "resource_info", b"resource_info", "subnet_id", b"subnet_id"]) -> None: ...

global___LoadBalancerSubnetMapping = LoadBalancerSubnetMapping

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

    @typing_extensions.final
    class TagsEntry(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
    IP_ADDRESS_TYPE_FIELD_NUMBER: builtins.int
    LOAD_BALANCER_ATTRIBUTES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    SCHEME_FIELD_NUMBER: builtins.int
    SECURITY_GROUPS_FIELD_NUMBER: builtins.int
    SUBNET_MAPPINGS_FIELD_NUMBER: builtins.int
    SUBNETS_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    ip_address_type: builtins.str
    @property
    def load_balancer_attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___LoadBalancerLoadBalancerAttribute]: ...
    name: builtins.str
    scheme: builtins.str
    @property
    def security_groups(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def subnet_mappings(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___LoadBalancerSubnetMapping]: ...
    @property
    def subnets(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        ip_address_type: builtins.str = ...,
        load_balancer_attributes: collections.abc.Iterable[global___LoadBalancerLoadBalancerAttribute] | None = ...,
        name: builtins.str = ...,
        scheme: builtins.str = ...,
        security_groups: collections.abc.Iterable[builtins.str] | None = ...,
        subnet_mappings: collections.abc.Iterable[global___LoadBalancerSubnetMapping] | None = ...,
        subnets: collections.abc.Iterable[builtins.str] | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        type: 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["ip_address_type", b"ip_address_type", "load_balancer_attributes", b"load_balancer_attributes", "name", b"name", "resource_info", b"resource_info", "scheme", b"scheme", "security_groups", b"security_groups", "subnet_mappings", b"subnet_mappings", "subnets", b"subnets", "tags", b"tags", "type", b"type"]) -> None: ...

global___LoadBalancer = LoadBalancer

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    HTTP_CODE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    http_code: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        http_code: 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["http_code", b"http_code", "resource_info", b"resource_info"]) -> None: ...

global___TargetGroupMatcher = TargetGroupMatcher

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    key: builtins.str
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        key: builtins.str = ...,
        value: 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___TargetGroupTargetGroupAttribute = TargetGroupTargetGroupAttribute

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AVAILABILITY_ZONE_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    PORT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    availability_zone: builtins.str
    id: builtins.str
    port: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        availability_zone: builtins.str = ...,
        id: builtins.str = ...,
        port: 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["availability_zone", b"availability_zone", "id", b"id", "port", b"port", "resource_info", b"resource_info"]) -> None: ...

global___TargetGroupTargetDescription = TargetGroupTargetDescription

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

    @typing_extensions.final
    class TagsEntry(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
    HEALTH_CHECK_ENABLED_FIELD_NUMBER: builtins.int
    HEALTH_CHECK_INTERVAL_SECONDS_FIELD_NUMBER: builtins.int
    HEALTH_CHECK_PATH_FIELD_NUMBER: builtins.int
    HEALTH_CHECK_PORT_FIELD_NUMBER: builtins.int
    HEALTH_CHECK_PROTOCOL_FIELD_NUMBER: builtins.int
    HEALTH_CHECK_TIMEOUT_SECONDS_FIELD_NUMBER: builtins.int
    HEALTHY_THRESHOLD_COUNT_FIELD_NUMBER: builtins.int
    MATCHER_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PORT_FIELD_NUMBER: builtins.int
    PROTOCOL_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    TARGET_GROUP_ATTRIBUTES_FIELD_NUMBER: builtins.int
    TARGET_TYPE_FIELD_NUMBER: builtins.int
    TARGETS_FIELD_NUMBER: builtins.int
    UNHEALTHY_THRESHOLD_COUNT_FIELD_NUMBER: builtins.int
    VPC_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    health_check_enabled: builtins.bool
    health_check_interval_seconds: builtins.int
    health_check_path: builtins.str
    health_check_port: builtins.str
    health_check_protocol: builtins.str
    health_check_timeout_seconds: builtins.int
    healthy_threshold_count: builtins.int
    @property
    def matcher(self) -> global___TargetGroupMatcher: ...
    name: builtins.str
    port: builtins.int
    protocol: builtins.str
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def target_group_attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TargetGroupTargetGroupAttribute]: ...
    target_type: builtins.str
    @property
    def targets(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___TargetGroupTargetDescription]: ...
    unhealthy_threshold_count: builtins.int
    vpc_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        health_check_enabled: builtins.bool = ...,
        health_check_interval_seconds: builtins.int = ...,
        health_check_path: builtins.str = ...,
        health_check_port: builtins.str = ...,
        health_check_protocol: builtins.str = ...,
        health_check_timeout_seconds: builtins.int = ...,
        healthy_threshold_count: builtins.int = ...,
        matcher: global___TargetGroupMatcher | None = ...,
        name: builtins.str = ...,
        port: builtins.int = ...,
        protocol: builtins.str = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        target_group_attributes: collections.abc.Iterable[global___TargetGroupTargetGroupAttribute] | None = ...,
        target_type: builtins.str = ...,
        targets: collections.abc.Iterable[global___TargetGroupTargetDescription] | None = ...,
        unhealthy_threshold_count: builtins.int = ...,
        vpc_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["matcher", b"matcher", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["health_check_enabled", b"health_check_enabled", "health_check_interval_seconds", b"health_check_interval_seconds", "health_check_path", b"health_check_path", "health_check_port", b"health_check_port", "health_check_protocol", b"health_check_protocol", "health_check_timeout_seconds", b"health_check_timeout_seconds", "healthy_threshold_count", b"healthy_threshold_count", "matcher", b"matcher", "name", b"name", "port", b"port", "protocol", b"protocol", "resource_info", b"resource_info", "tags", b"tags", "target_group_attributes", b"target_group_attributes", "target_type", b"target_type", "targets", b"targets", "unhealthy_threshold_count", b"unhealthy_threshold_count", "vpc_id", b"vpc_id"]) -> None: ...

global___TargetGroup = TargetGroup
