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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    APPLICATION_ARNS_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def application_arns(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        application_arns: collections.abc.Iterable[builtins.str] | None = ...,
        role_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["application_arns", b"application_arns", "resource_info", b"resource_info", "role_arn", b"role_arn"]) -> None: ...

global___IdentityPoolPushSync = IdentityPoolPushSync

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SERVER_SIDE_TOKEN_CHECK_FIELD_NUMBER: builtins.int
    PROVIDER_NAME_FIELD_NUMBER: builtins.int
    CLIENT_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    server_side_token_check: builtins.bool
    provider_name: builtins.str
    client_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        server_side_token_check: builtins.bool = ...,
        provider_name: builtins.str = ...,
        client_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["client_id", b"client_id", "provider_name", b"provider_name", "resource_info", b"resource_info", "server_side_token_check", b"server_side_token_check"]) -> None: ...

global___IdentityPoolCognitoIdentityProvider = IdentityPoolCognitoIdentityProvider

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    STREAMING_STATUS_FIELD_NUMBER: builtins.int
    STREAM_NAME_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    streaming_status: builtins.str
    stream_name: builtins.str
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        streaming_status: builtins.str = ...,
        stream_name: builtins.str = ...,
        role_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["resource_info", b"resource_info", "role_arn", b"role_arn", "stream_name", b"stream_name", "streaming_status", b"streaming_status"]) -> None: ...

global___IdentityPoolCognitoStreams = IdentityPoolCognitoStreams

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

    @typing_extensions.final
    class CognitoEventsEntry(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 SupportedLoginProvidersEntry(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
    PUSH_SYNC_FIELD_NUMBER: builtins.int
    COGNITO_IDENTITY_PROVIDERS_FIELD_NUMBER: builtins.int
    COGNITO_EVENTS_FIELD_NUMBER: builtins.int
    DEVELOPER_PROVIDER_NAME_FIELD_NUMBER: builtins.int
    COGNITO_STREAMS_FIELD_NUMBER: builtins.int
    IDENTITY_POOL_NAME_FIELD_NUMBER: builtins.int
    ALLOW_UNAUTHENTICATED_IDENTITIES_FIELD_NUMBER: builtins.int
    SUPPORTED_LOGIN_PROVIDERS_FIELD_NUMBER: builtins.int
    SAML_PROVIDER_ARNS_FIELD_NUMBER: builtins.int
    OPEN_ID_CONNECT_PROVIDER_ARNS_FIELD_NUMBER: builtins.int
    ALLOW_CLASSIC_FLOW_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def push_sync(self) -> global___IdentityPoolPushSync: ...
    @property
    def cognito_identity_providers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___IdentityPoolCognitoIdentityProvider]: ...
    @property
    def cognito_events(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    developer_provider_name: builtins.str
    @property
    def cognito_streams(self) -> global___IdentityPoolCognitoStreams: ...
    identity_pool_name: builtins.str
    allow_unauthenticated_identities: builtins.bool
    @property
    def supported_login_providers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def saml_provider_arns(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def open_id_connect_provider_arns(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    allow_classic_flow: builtins.bool
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        push_sync: global___IdentityPoolPushSync | None = ...,
        cognito_identity_providers: collections.abc.Iterable[global___IdentityPoolCognitoIdentityProvider] | None = ...,
        cognito_events: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        developer_provider_name: builtins.str = ...,
        cognito_streams: global___IdentityPoolCognitoStreams | None = ...,
        identity_pool_name: builtins.str = ...,
        allow_unauthenticated_identities: builtins.bool = ...,
        supported_login_providers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        saml_provider_arns: collections.abc.Iterable[builtins.str] | None = ...,
        open_id_connect_provider_arns: collections.abc.Iterable[builtins.str] | None = ...,
        allow_classic_flow: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["cognito_streams", b"cognito_streams", "push_sync", b"push_sync", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["allow_classic_flow", b"allow_classic_flow", "allow_unauthenticated_identities", b"allow_unauthenticated_identities", "cognito_events", b"cognito_events", "cognito_identity_providers", b"cognito_identity_providers", "cognito_streams", b"cognito_streams", "developer_provider_name", b"developer_provider_name", "identity_pool_name", b"identity_pool_name", "open_id_connect_provider_arns", b"open_id_connect_provider_arns", "push_sync", b"push_sync", "resource_info", b"resource_info", "saml_provider_arns", b"saml_provider_arns", "supported_login_providers", b"supported_login_providers"]) -> None: ...

global___IdentityPool = IdentityPool

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

    IDENTITY_POOL_FIELD_NUMBER: builtins.int
    IDENTITY_POOL_ROLE_ATTACHMENT_FIELD_NUMBER: builtins.int
    USER_POOL_FIELD_NUMBER: builtins.int
    USER_POOL_CLIENT_FIELD_NUMBER: builtins.int
    USER_POOL_DOMAIN_FIELD_NUMBER: builtins.int
    USER_POOL_GROUP_FIELD_NUMBER: builtins.int
    USER_POOL_IDENTITY_PROVIDER_FIELD_NUMBER: builtins.int
    USER_POOL_RESOURCE_SERVER_FIELD_NUMBER: builtins.int
    USER_POOL_RISK_CONFIGURATION_ATTACHMENT_FIELD_NUMBER: builtins.int
    USER_POOL_U_I_CUSTOMIZATION_ATTACHMENT_FIELD_NUMBER: builtins.int
    USER_POOL_USER_FIELD_NUMBER: builtins.int
    USER_POOL_USER_TO_GROUP_ATTACHMENT_FIELD_NUMBER: builtins.int
    IDENTITY_POOL_ROLE_ATTACHMENT_MAPPING_RULE_FIELD_NUMBER: builtins.int
    IDENTITY_POOL_ROLE_ATTACHMENT_ROLE_MAPPING_FIELD_NUMBER: builtins.int
    @property
    def identity_pool(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___IdentityPool]: ...
    @property
    def identity_pool_role_attachment(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___IdentityPoolRoleAttachment]: ...
    @property
    def user_pool(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPool]: ...
    @property
    def user_pool_client(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolClient]: ...
    @property
    def user_pool_domain(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolDomain]: ...
    @property
    def user_pool_group(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolGroup]: ...
    @property
    def user_pool_identity_provider(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolIdentityProvider]: ...
    @property
    def user_pool_resource_server(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolResourceServer]: ...
    @property
    def user_pool_risk_configuration_attachment(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolRiskConfigurationAttachment]: ...
    @property
    def user_pool_u_i_customization_attachment(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolUICustomizationAttachment]: ...
    @property
    def user_pool_user(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolUser]: ...
    @property
    def user_pool_user_to_group_attachment(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolUserToGroupAttachment]: ...
    @property
    def identity_pool_role_attachment_mapping_rule(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___IdentityPoolRoleAttachmentMappingRule]: ...
    @property
    def identity_pool_role_attachment_role_mapping(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___IdentityPoolRoleAttachmentRoleMapping]: ...
    def __init__(
        self,
        *,
        identity_pool: collections.abc.Iterable[global___IdentityPool] | None = ...,
        identity_pool_role_attachment: collections.abc.Iterable[global___IdentityPoolRoleAttachment] | None = ...,
        user_pool: collections.abc.Iterable[global___UserPool] | None = ...,
        user_pool_client: collections.abc.Iterable[global___UserPoolClient] | None = ...,
        user_pool_domain: collections.abc.Iterable[global___UserPoolDomain] | None = ...,
        user_pool_group: collections.abc.Iterable[global___UserPoolGroup] | None = ...,
        user_pool_identity_provider: collections.abc.Iterable[global___UserPoolIdentityProvider] | None = ...,
        user_pool_resource_server: collections.abc.Iterable[global___UserPoolResourceServer] | None = ...,
        user_pool_risk_configuration_attachment: collections.abc.Iterable[global___UserPoolRiskConfigurationAttachment] | None = ...,
        user_pool_u_i_customization_attachment: collections.abc.Iterable[global___UserPoolUICustomizationAttachment] | None = ...,
        user_pool_user: collections.abc.Iterable[global___UserPoolUser] | None = ...,
        user_pool_user_to_group_attachment: collections.abc.Iterable[global___UserPoolUserToGroupAttachment] | None = ...,
        identity_pool_role_attachment_mapping_rule: collections.abc.Iterable[global___IdentityPoolRoleAttachmentMappingRule] | None = ...,
        identity_pool_role_attachment_role_mapping: collections.abc.Iterable[global___IdentityPoolRoleAttachmentRoleMapping] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identity_pool", b"identity_pool", "identity_pool_role_attachment", b"identity_pool_role_attachment", "identity_pool_role_attachment_mapping_rule", b"identity_pool_role_attachment_mapping_rule", "identity_pool_role_attachment_role_mapping", b"identity_pool_role_attachment_role_mapping", "user_pool", b"user_pool", "user_pool_client", b"user_pool_client", "user_pool_domain", b"user_pool_domain", "user_pool_group", b"user_pool_group", "user_pool_identity_provider", b"user_pool_identity_provider", "user_pool_resource_server", b"user_pool_resource_server", "user_pool_risk_configuration_attachment", b"user_pool_risk_configuration_attachment", "user_pool_u_i_customization_attachment", b"user_pool_u_i_customization_attachment", "user_pool_user", b"user_pool_user", "user_pool_user_to_group_attachment", b"user_pool_user_to_group_attachment"]) -> None: ...

global___Cognito = Cognito

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

    @typing_extensions.final
    class RoleMappingsEntry(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 RolesEntry(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
    ROLE_MAPPINGS_FIELD_NUMBER: builtins.int
    IDENTITY_POOL_ID_FIELD_NUMBER: builtins.int
    ROLES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def role_mappings(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    identity_pool_id: builtins.str
    @property
    def roles(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        role_mappings: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        identity_pool_id: builtins.str = ...,
        roles: 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["identity_pool_id", b"identity_pool_id", "resource_info", b"resource_info", "role_mappings", b"role_mappings", "roles", b"roles"]) -> None: ...

global___IdentityPoolRoleAttachment = IdentityPoolRoleAttachment

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    REQUIRE_NUMBERS_FIELD_NUMBER: builtins.int
    MINIMUM_LENGTH_FIELD_NUMBER: builtins.int
    TEMPORARY_PASSWORD_VALIDITY_DAYS_FIELD_NUMBER: builtins.int
    REQUIRE_UPPERCASE_FIELD_NUMBER: builtins.int
    REQUIRE_LOWERCASE_FIELD_NUMBER: builtins.int
    REQUIRE_SYMBOLS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    require_numbers: builtins.bool
    minimum_length: builtins.int
    temporary_password_validity_days: builtins.int
    require_uppercase: builtins.bool
    require_lowercase: builtins.bool
    require_symbols: builtins.bool
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        require_numbers: builtins.bool = ...,
        minimum_length: builtins.int = ...,
        temporary_password_validity_days: builtins.int = ...,
        require_uppercase: builtins.bool = ...,
        require_lowercase: builtins.bool = ...,
        require_symbols: 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["minimum_length", b"minimum_length", "require_lowercase", b"require_lowercase", "require_numbers", b"require_numbers", "require_symbols", b"require_symbols", "require_uppercase", b"require_uppercase", "resource_info", b"resource_info", "temporary_password_validity_days", b"temporary_password_validity_days"]) -> None: ...

global___UserPoolPasswordPolicy = UserPoolPasswordPolicy

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

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

global___UserPoolPolicies = UserPoolPolicies

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EMAIL_MESSAGE_BY_LINK_FIELD_NUMBER: builtins.int
    EMAIL_MESSAGE_FIELD_NUMBER: builtins.int
    SMS_MESSAGE_FIELD_NUMBER: builtins.int
    EMAIL_SUBJECT_FIELD_NUMBER: builtins.int
    DEFAULT_EMAIL_OPTION_FIELD_NUMBER: builtins.int
    EMAIL_SUBJECT_BY_LINK_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    email_message_by_link: builtins.str
    email_message: builtins.str
    sms_message: builtins.str
    email_subject: builtins.str
    default_email_option: builtins.str
    email_subject_by_link: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        email_message_by_link: builtins.str = ...,
        email_message: builtins.str = ...,
        sms_message: builtins.str = ...,
        email_subject: builtins.str = ...,
        default_email_option: builtins.str = ...,
        email_subject_by_link: 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["default_email_option", b"default_email_option", "email_message", b"email_message", "email_message_by_link", b"email_message_by_link", "email_subject", b"email_subject", "email_subject_by_link", b"email_subject_by_link", "resource_info", b"resource_info", "sms_message", b"sms_message"]) -> None: ...

global___UserPoolVerificationMessageTemplate = UserPoolVerificationMessageTemplate

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

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

global___UserPoolStringAttributeConstraints = UserPoolStringAttributeConstraints

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

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

global___UserPoolNumberAttributeConstraints = UserPoolNumberAttributeConstraints

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DEVELOPER_ONLY_ATTRIBUTE_FIELD_NUMBER: builtins.int
    MUTABLE_FIELD_NUMBER: builtins.int
    ATTRIBUTE_DATA_TYPE_FIELD_NUMBER: builtins.int
    STRING_ATTRIBUTE_CONSTRAINTS_FIELD_NUMBER: builtins.int
    REQUIRED_FIELD_NUMBER: builtins.int
    NUMBER_ATTRIBUTE_CONSTRAINTS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    developer_only_attribute: builtins.bool
    mutable: builtins.bool
    attribute_data_type: builtins.str
    @property
    def string_attribute_constraints(self) -> global___UserPoolStringAttributeConstraints: ...
    required: builtins.bool
    @property
    def number_attribute_constraints(self) -> global___UserPoolNumberAttributeConstraints: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        developer_only_attribute: builtins.bool = ...,
        mutable: builtins.bool = ...,
        attribute_data_type: builtins.str = ...,
        string_attribute_constraints: global___UserPoolStringAttributeConstraints | None = ...,
        required: builtins.bool = ...,
        number_attribute_constraints: global___UserPoolNumberAttributeConstraints | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["number_attribute_constraints", b"number_attribute_constraints", "resource_info", b"resource_info", "string_attribute_constraints", b"string_attribute_constraints"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["attribute_data_type", b"attribute_data_type", "developer_only_attribute", b"developer_only_attribute", "mutable", b"mutable", "name", b"name", "number_attribute_constraints", b"number_attribute_constraints", "required", b"required", "resource_info", b"resource_info", "string_attribute_constraints", b"string_attribute_constraints"]) -> None: ...

global___UserPoolSchemaAttribute = UserPoolSchemaAttribute

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

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

global___UserPoolInviteMessageTemplate = UserPoolInviteMessageTemplate

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INVITE_MESSAGE_TEMPLATE_FIELD_NUMBER: builtins.int
    UNUSED_ACCOUNT_VALIDITY_DAYS_FIELD_NUMBER: builtins.int
    ALLOW_ADMIN_CREATE_USER_ONLY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def invite_message_template(self) -> global___UserPoolInviteMessageTemplate: ...
    unused_account_validity_days: builtins.int
    allow_admin_create_user_only: builtins.bool
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        invite_message_template: global___UserPoolInviteMessageTemplate | None = ...,
        unused_account_validity_days: builtins.int = ...,
        allow_admin_create_user_only: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["invite_message_template", b"invite_message_template", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["allow_admin_create_user_only", b"allow_admin_create_user_only", "invite_message_template", b"invite_message_template", "resource_info", b"resource_info", "unused_account_validity_days", b"unused_account_validity_days"]) -> None: ...

global___UserPoolAdminCreateUserConfig = UserPoolAdminCreateUserConfig

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

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

global___UserPoolUsernameConfiguration = UserPoolUsernameConfiguration

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

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

global___UserPoolUserPoolAddOns = UserPoolUserPoolAddOns

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    REPLY_TO_EMAIL_ADDRESS_FIELD_NUMBER: builtins.int
    CONFIGURATION_SET_FIELD_NUMBER: builtins.int
    EMAIL_SENDING_ACCOUNT_FIELD_NUMBER: builtins.int
    SOURCE_ARN_FIELD_NUMBER: builtins.int
    FROM_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    reply_to_email_address: builtins.str
    configuration_set: builtins.str
    email_sending_account: builtins.str
    source_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        reply_to_email_address: builtins.str = ...,
        configuration_set: builtins.str = ...,
        email_sending_account: builtins.str = ...,
        source_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["configuration_set", b"configuration_set", "email_sending_account", b"email_sending_account", "from", b"from", "reply_to_email_address", b"reply_to_email_address", "resource_info", b"resource_info", "source_arn", b"source_arn"]) -> None: ...

global___UserPoolEmailConfiguration = UserPoolEmailConfiguration

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

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

global___UserPoolSmsConfiguration = UserPoolSmsConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CREATE_AUTH_CHALLENGE_FIELD_NUMBER: builtins.int
    PRE_AUTHENTICATION_FIELD_NUMBER: builtins.int
    DEFINE_AUTH_CHALLENGE_FIELD_NUMBER: builtins.int
    PRE_SIGN_UP_FIELD_NUMBER: builtins.int
    PRE_TOKEN_GENERATION_FIELD_NUMBER: builtins.int
    USER_MIGRATION_FIELD_NUMBER: builtins.int
    POST_AUTHENTICATION_FIELD_NUMBER: builtins.int
    POST_CONFIRMATION_FIELD_NUMBER: builtins.int
    CUSTOM_MESSAGE_FIELD_NUMBER: builtins.int
    VERIFY_AUTH_CHALLENGE_RESPONSE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    create_auth_challenge: builtins.str
    pre_authentication: builtins.str
    define_auth_challenge: builtins.str
    pre_sign_up: builtins.str
    pre_token_generation: builtins.str
    user_migration: builtins.str
    post_authentication: builtins.str
    post_confirmation: builtins.str
    custom_message: builtins.str
    verify_auth_challenge_response: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        create_auth_challenge: builtins.str = ...,
        pre_authentication: builtins.str = ...,
        define_auth_challenge: builtins.str = ...,
        pre_sign_up: builtins.str = ...,
        pre_token_generation: builtins.str = ...,
        user_migration: builtins.str = ...,
        post_authentication: builtins.str = ...,
        post_confirmation: builtins.str = ...,
        custom_message: builtins.str = ...,
        verify_auth_challenge_response: 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["create_auth_challenge", b"create_auth_challenge", "custom_message", b"custom_message", "define_auth_challenge", b"define_auth_challenge", "post_authentication", b"post_authentication", "post_confirmation", b"post_confirmation", "pre_authentication", b"pre_authentication", "pre_sign_up", b"pre_sign_up", "pre_token_generation", b"pre_token_generation", "resource_info", b"resource_info", "user_migration", b"user_migration", "verify_auth_challenge_response", b"verify_auth_challenge_response"]) -> None: ...

global___UserPoolLambdaConfig = UserPoolLambdaConfig

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

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

global___UserPoolDeviceConfiguration = UserPoolDeviceConfiguration

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

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

global___UserPoolRecoveryOption = UserPoolRecoveryOption

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

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

global___UserPoolAccountRecoverySetting = UserPoolAccountRecoverySetting

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

    @typing_extensions.final
    class UserPoolTagsEntry(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
    USER_POOL_TAGS_FIELD_NUMBER: builtins.int
    POLICIES_FIELD_NUMBER: builtins.int
    VERIFICATION_MESSAGE_TEMPLATE_FIELD_NUMBER: builtins.int
    MFA_CONFIGURATION_FIELD_NUMBER: builtins.int
    SCHEMA_FIELD_NUMBER: builtins.int
    ADMIN_CREATE_USER_CONFIG_FIELD_NUMBER: builtins.int
    SMS_AUTHENTICATION_MESSAGE_FIELD_NUMBER: builtins.int
    USERNAME_CONFIGURATION_FIELD_NUMBER: builtins.int
    USER_POOL_NAME_FIELD_NUMBER: builtins.int
    SMS_VERIFICATION_MESSAGE_FIELD_NUMBER: builtins.int
    USER_POOL_ADD_ONS_FIELD_NUMBER: builtins.int
    EMAIL_CONFIGURATION_FIELD_NUMBER: builtins.int
    SMS_CONFIGURATION_FIELD_NUMBER: builtins.int
    ALIAS_ATTRIBUTES_FIELD_NUMBER: builtins.int
    ENABLED_MFAS_FIELD_NUMBER: builtins.int
    EMAIL_VERIFICATION_SUBJECT_FIELD_NUMBER: builtins.int
    LAMBDA_CONFIG_FIELD_NUMBER: builtins.int
    USERNAME_ATTRIBUTES_FIELD_NUMBER: builtins.int
    AUTO_VERIFIED_ATTRIBUTES_FIELD_NUMBER: builtins.int
    DEVICE_CONFIGURATION_FIELD_NUMBER: builtins.int
    EMAIL_VERIFICATION_MESSAGE_FIELD_NUMBER: builtins.int
    ACCOUNT_RECOVERY_SETTING_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def user_pool_tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def policies(self) -> global___UserPoolPolicies: ...
    @property
    def verification_message_template(self) -> global___UserPoolVerificationMessageTemplate: ...
    mfa_configuration: builtins.str
    @property
    def schema(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolSchemaAttribute]: ...
    @property
    def admin_create_user_config(self) -> global___UserPoolAdminCreateUserConfig: ...
    sms_authentication_message: builtins.str
    @property
    def username_configuration(self) -> global___UserPoolUsernameConfiguration: ...
    user_pool_name: builtins.str
    sms_verification_message: builtins.str
    @property
    def user_pool_add_ons(self) -> global___UserPoolUserPoolAddOns: ...
    @property
    def email_configuration(self) -> global___UserPoolEmailConfiguration: ...
    @property
    def sms_configuration(self) -> global___UserPoolSmsConfiguration: ...
    @property
    def alias_attributes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def enabled_mfas(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    email_verification_subject: builtins.str
    @property
    def lambda_config(self) -> global___UserPoolLambdaConfig: ...
    @property
    def username_attributes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def auto_verified_attributes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def device_configuration(self) -> global___UserPoolDeviceConfiguration: ...
    email_verification_message: builtins.str
    @property
    def account_recovery_setting(self) -> global___UserPoolAccountRecoverySetting: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        user_pool_tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        policies: global___UserPoolPolicies | None = ...,
        verification_message_template: global___UserPoolVerificationMessageTemplate | None = ...,
        mfa_configuration: builtins.str = ...,
        schema: collections.abc.Iterable[global___UserPoolSchemaAttribute] | None = ...,
        admin_create_user_config: global___UserPoolAdminCreateUserConfig | None = ...,
        sms_authentication_message: builtins.str = ...,
        username_configuration: global___UserPoolUsernameConfiguration | None = ...,
        user_pool_name: builtins.str = ...,
        sms_verification_message: builtins.str = ...,
        user_pool_add_ons: global___UserPoolUserPoolAddOns | None = ...,
        email_configuration: global___UserPoolEmailConfiguration | None = ...,
        sms_configuration: global___UserPoolSmsConfiguration | None = ...,
        alias_attributes: collections.abc.Iterable[builtins.str] | None = ...,
        enabled_mfas: collections.abc.Iterable[builtins.str] | None = ...,
        email_verification_subject: builtins.str = ...,
        lambda_config: global___UserPoolLambdaConfig | None = ...,
        username_attributes: collections.abc.Iterable[builtins.str] | None = ...,
        auto_verified_attributes: collections.abc.Iterable[builtins.str] | None = ...,
        device_configuration: global___UserPoolDeviceConfiguration | None = ...,
        email_verification_message: builtins.str = ...,
        account_recovery_setting: global___UserPoolAccountRecoverySetting | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["account_recovery_setting", b"account_recovery_setting", "admin_create_user_config", b"admin_create_user_config", "device_configuration", b"device_configuration", "email_configuration", b"email_configuration", "lambda_config", b"lambda_config", "policies", b"policies", "resource_info", b"resource_info", "sms_configuration", b"sms_configuration", "user_pool_add_ons", b"user_pool_add_ons", "username_configuration", b"username_configuration", "verification_message_template", b"verification_message_template"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["account_recovery_setting", b"account_recovery_setting", "admin_create_user_config", b"admin_create_user_config", "alias_attributes", b"alias_attributes", "auto_verified_attributes", b"auto_verified_attributes", "device_configuration", b"device_configuration", "email_configuration", b"email_configuration", "email_verification_message", b"email_verification_message", "email_verification_subject", b"email_verification_subject", "enabled_mfas", b"enabled_mfas", "lambda_config", b"lambda_config", "mfa_configuration", b"mfa_configuration", "policies", b"policies", "resource_info", b"resource_info", "schema", b"schema", "sms_authentication_message", b"sms_authentication_message", "sms_configuration", b"sms_configuration", "sms_verification_message", b"sms_verification_message", "user_pool_add_ons", b"user_pool_add_ons", "user_pool_name", b"user_pool_name", "user_pool_tags", b"user_pool_tags", "username_attributes", b"username_attributes", "username_configuration", b"username_configuration", "verification_message_template", b"verification_message_template"]) -> None: ...

global___UserPool = UserPool

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    USER_DATA_SHARED_FIELD_NUMBER: builtins.int
    EXTERNAL_ID_FIELD_NUMBER: builtins.int
    APPLICATION_ID_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    user_data_shared: builtins.bool
    external_id: builtins.str
    application_id: builtins.str
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        user_data_shared: builtins.bool = ...,
        external_id: builtins.str = ...,
        application_id: builtins.str = ...,
        role_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["application_id", b"application_id", "external_id", b"external_id", "resource_info", b"resource_info", "role_arn", b"role_arn", "user_data_shared", b"user_data_shared"]) -> None: ...

global___UserPoolClientAnalyticsConfiguration = UserPoolClientAnalyticsConfiguration

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

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

global___UserPoolClientTokenValidityUnits = UserPoolClientTokenValidityUnits

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ANALYTICS_CONFIGURATION_FIELD_NUMBER: builtins.int
    GENERATE_SECRET_FIELD_NUMBER: builtins.int
    CALLBACK_U_R_LS_FIELD_NUMBER: builtins.int
    ID_TOKEN_VALIDITY_FIELD_NUMBER: builtins.int
    ALLOWED_O_AUTH_SCOPES_FIELD_NUMBER: builtins.int
    TOKEN_VALIDITY_UNITS_FIELD_NUMBER: builtins.int
    READ_ATTRIBUTES_FIELD_NUMBER: builtins.int
    ALLOWED_O_AUTH_FLOWS_USER_POOL_CLIENT_FIELD_NUMBER: builtins.int
    DEFAULT_REDIRECT_U_R_I_FIELD_NUMBER: builtins.int
    SUPPORTED_IDENTITY_PROVIDERS_FIELD_NUMBER: builtins.int
    CLIENT_NAME_FIELD_NUMBER: builtins.int
    USER_POOL_ID_FIELD_NUMBER: builtins.int
    ALLOWED_O_AUTH_FLOWS_FIELD_NUMBER: builtins.int
    EXPLICIT_AUTH_FLOWS_FIELD_NUMBER: builtins.int
    LOGOUT_U_R_LS_FIELD_NUMBER: builtins.int
    ACCESS_TOKEN_VALIDITY_FIELD_NUMBER: builtins.int
    REFRESH_TOKEN_VALIDITY_FIELD_NUMBER: builtins.int
    WRITE_ATTRIBUTES_FIELD_NUMBER: builtins.int
    PREVENT_USER_EXISTENCE_ERRORS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def analytics_configuration(self) -> global___UserPoolClientAnalyticsConfiguration: ...
    generate_secret: builtins.bool
    @property
    def callback_u_r_ls(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    id_token_validity: builtins.int
    @property
    def allowed_o_auth_scopes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def token_validity_units(self) -> global___UserPoolClientTokenValidityUnits: ...
    @property
    def read_attributes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    allowed_o_auth_flows_user_pool_client: builtins.bool
    default_redirect_u_r_i: builtins.str
    @property
    def supported_identity_providers(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    client_name: builtins.str
    user_pool_id: builtins.str
    @property
    def allowed_o_auth_flows(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def explicit_auth_flows(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def logout_u_r_ls(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    access_token_validity: builtins.int
    refresh_token_validity: builtins.int
    @property
    def write_attributes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    prevent_user_existence_errors: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        analytics_configuration: global___UserPoolClientAnalyticsConfiguration | None = ...,
        generate_secret: builtins.bool = ...,
        callback_u_r_ls: collections.abc.Iterable[builtins.str] | None = ...,
        id_token_validity: builtins.int = ...,
        allowed_o_auth_scopes: collections.abc.Iterable[builtins.str] | None = ...,
        token_validity_units: global___UserPoolClientTokenValidityUnits | None = ...,
        read_attributes: collections.abc.Iterable[builtins.str] | None = ...,
        allowed_o_auth_flows_user_pool_client: builtins.bool = ...,
        default_redirect_u_r_i: builtins.str = ...,
        supported_identity_providers: collections.abc.Iterable[builtins.str] | None = ...,
        client_name: builtins.str = ...,
        user_pool_id: builtins.str = ...,
        allowed_o_auth_flows: collections.abc.Iterable[builtins.str] | None = ...,
        explicit_auth_flows: collections.abc.Iterable[builtins.str] | None = ...,
        logout_u_r_ls: collections.abc.Iterable[builtins.str] | None = ...,
        access_token_validity: builtins.int = ...,
        refresh_token_validity: builtins.int = ...,
        write_attributes: collections.abc.Iterable[builtins.str] | None = ...,
        prevent_user_existence_errors: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["analytics_configuration", b"analytics_configuration", "resource_info", b"resource_info", "token_validity_units", b"token_validity_units"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_token_validity", b"access_token_validity", "allowed_o_auth_flows", b"allowed_o_auth_flows", "allowed_o_auth_flows_user_pool_client", b"allowed_o_auth_flows_user_pool_client", "allowed_o_auth_scopes", b"allowed_o_auth_scopes", "analytics_configuration", b"analytics_configuration", "callback_u_r_ls", b"callback_u_r_ls", "client_name", b"client_name", "default_redirect_u_r_i", b"default_redirect_u_r_i", "explicit_auth_flows", b"explicit_auth_flows", "generate_secret", b"generate_secret", "id_token_validity", b"id_token_validity", "logout_u_r_ls", b"logout_u_r_ls", "prevent_user_existence_errors", b"prevent_user_existence_errors", "read_attributes", b"read_attributes", "refresh_token_validity", b"refresh_token_validity", "resource_info", b"resource_info", "supported_identity_providers", b"supported_identity_providers", "token_validity_units", b"token_validity_units", "user_pool_id", b"user_pool_id", "write_attributes", b"write_attributes"]) -> None: ...

global___UserPoolClient = UserPoolClient

@typing_extensions.final
class UserPoolDomainCustomDomainConfigType(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___UserPoolDomainCustomDomainConfigType = UserPoolDomainCustomDomainConfigType

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    USER_POOL_ID_FIELD_NUMBER: builtins.int
    CUSTOM_DOMAIN_CONFIG_FIELD_NUMBER: builtins.int
    DOMAIN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    user_pool_id: builtins.str
    @property
    def custom_domain_config(self) -> global___UserPoolDomainCustomDomainConfigType: ...
    domain: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        user_pool_id: builtins.str = ...,
        custom_domain_config: global___UserPoolDomainCustomDomainConfigType | None = ...,
        domain: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["custom_domain_config", b"custom_domain_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["custom_domain_config", b"custom_domain_config", "domain", b"domain", "resource_info", b"resource_info", "user_pool_id", b"user_pool_id"]) -> None: ...

global___UserPoolDomain = UserPoolDomain

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    GROUP_NAME_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    USER_POOL_ID_FIELD_NUMBER: builtins.int
    PRECEDENCE_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    group_name: builtins.str
    description: builtins.str
    user_pool_id: builtins.str
    precedence: builtins.float
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        group_name: builtins.str = ...,
        description: builtins.str = ...,
        user_pool_id: builtins.str = ...,
        precedence: builtins.float = ...,
        role_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["description", b"description", "group_name", b"group_name", "precedence", b"precedence", "resource_info", b"resource_info", "role_arn", b"role_arn", "user_pool_id", b"user_pool_id"]) -> None: ...

global___UserPoolGroup = UserPoolGroup

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

    @typing_extensions.final
    class AttributeMappingEntry(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 ProviderDetailsEntry(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
    PROVIDER_NAME_FIELD_NUMBER: builtins.int
    USER_POOL_ID_FIELD_NUMBER: builtins.int
    ATTRIBUTE_MAPPING_FIELD_NUMBER: builtins.int
    PROVIDER_DETAILS_FIELD_NUMBER: builtins.int
    PROVIDER_TYPE_FIELD_NUMBER: builtins.int
    IDP_IDENTIFIERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    provider_name: builtins.str
    user_pool_id: builtins.str
    @property
    def attribute_mapping(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def provider_details(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    provider_type: builtins.str
    @property
    def idp_identifiers(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        provider_name: builtins.str = ...,
        user_pool_id: builtins.str = ...,
        attribute_mapping: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        provider_details: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        provider_type: builtins.str = ...,
        idp_identifiers: 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["attribute_mapping", b"attribute_mapping", "idp_identifiers", b"idp_identifiers", "provider_details", b"provider_details", "provider_name", b"provider_name", "provider_type", b"provider_type", "resource_info", b"resource_info", "user_pool_id", b"user_pool_id"]) -> None: ...

global___UserPoolIdentityProvider = UserPoolIdentityProvider

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

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

global___UserPoolResourceServerResourceServerScopeType = UserPoolResourceServerResourceServerScopeType

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    USER_POOL_ID_FIELD_NUMBER: builtins.int
    IDENTIFIER_FIELD_NUMBER: builtins.int
    SCOPES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    user_pool_id: builtins.str
    identifier: builtins.str
    @property
    def scopes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolResourceServerResourceServerScopeType]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        user_pool_id: builtins.str = ...,
        identifier: builtins.str = ...,
        scopes: collections.abc.Iterable[global___UserPoolResourceServerResourceServerScopeType] | None = ...,
        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["identifier", b"identifier", "name", b"name", "resource_info", b"resource_info", "scopes", b"scopes", "user_pool_id", b"user_pool_id"]) -> None: ...

global___UserPoolResourceServer = UserPoolResourceServer

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

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

global___UserPoolRiskConfigurationAttachmentCompromisedCredentialsActionsType = UserPoolRiskConfigurationAttachmentCompromisedCredentialsActionsType

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

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

global___UserPoolRiskConfigurationAttachmentCompromisedCredentialsRiskConfigurationType = UserPoolRiskConfigurationAttachmentCompromisedCredentialsRiskConfigurationType

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NOTIFY_FIELD_NUMBER: builtins.int
    EVENT_ACTION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    notify: builtins.bool
    event_action: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        notify: builtins.bool = ...,
        event_action: 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_action", b"event_action", "notify", b"notify", "resource_info", b"resource_info"]) -> None: ...

global___UserPoolRiskConfigurationAttachmentAccountTakeoverActionType = UserPoolRiskConfigurationAttachmentAccountTakeoverActionType

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    HIGH_ACTION_FIELD_NUMBER: builtins.int
    LOW_ACTION_FIELD_NUMBER: builtins.int
    MEDIUM_ACTION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def high_action(self) -> global___UserPoolRiskConfigurationAttachmentAccountTakeoverActionType: ...
    @property
    def low_action(self) -> global___UserPoolRiskConfigurationAttachmentAccountTakeoverActionType: ...
    @property
    def medium_action(self) -> global___UserPoolRiskConfigurationAttachmentAccountTakeoverActionType: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        high_action: global___UserPoolRiskConfigurationAttachmentAccountTakeoverActionType | None = ...,
        low_action: global___UserPoolRiskConfigurationAttachmentAccountTakeoverActionType | None = ...,
        medium_action: global___UserPoolRiskConfigurationAttachmentAccountTakeoverActionType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["high_action", b"high_action", "low_action", b"low_action", "medium_action", b"medium_action", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["high_action", b"high_action", "low_action", b"low_action", "medium_action", b"medium_action", "resource_info", b"resource_info"]) -> None: ...

global___UserPoolRiskConfigurationAttachmentAccountTakeoverActionsType = UserPoolRiskConfigurationAttachmentAccountTakeoverActionsType

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

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

global___UserPoolRiskConfigurationAttachmentNotifyEmailType = UserPoolRiskConfigurationAttachmentNotifyEmailType

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BLOCK_EMAIL_FIELD_NUMBER: builtins.int
    REPLY_TO_FIELD_NUMBER: builtins.int
    SOURCE_ARN_FIELD_NUMBER: builtins.int
    NO_ACTION_EMAIL_FIELD_NUMBER: builtins.int
    FROM_FIELD_NUMBER: builtins.int
    MFA_EMAIL_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def block_email(self) -> global___UserPoolRiskConfigurationAttachmentNotifyEmailType: ...
    reply_to: builtins.str
    source_arn: builtins.str
    @property
    def no_action_email(self) -> global___UserPoolRiskConfigurationAttachmentNotifyEmailType: ...
    @property
    def mfa_email(self) -> global___UserPoolRiskConfigurationAttachmentNotifyEmailType: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        block_email: global___UserPoolRiskConfigurationAttachmentNotifyEmailType | None = ...,
        reply_to: builtins.str = ...,
        source_arn: builtins.str = ...,
        no_action_email: global___UserPoolRiskConfigurationAttachmentNotifyEmailType | None = ...,
        mfa_email: global___UserPoolRiskConfigurationAttachmentNotifyEmailType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["block_email", b"block_email", "mfa_email", b"mfa_email", "no_action_email", b"no_action_email", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["block_email", b"block_email", "from", b"from", "mfa_email", b"mfa_email", "no_action_email", b"no_action_email", "reply_to", b"reply_to", "resource_info", b"resource_info", "source_arn", b"source_arn"]) -> None: ...

global___UserPoolRiskConfigurationAttachmentNotifyConfigurationType = UserPoolRiskConfigurationAttachmentNotifyConfigurationType

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

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

global___UserPoolRiskConfigurationAttachmentAccountTakeoverRiskConfigurationType = UserPoolRiskConfigurationAttachmentAccountTakeoverRiskConfigurationType

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

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

global___UserPoolRiskConfigurationAttachmentRiskExceptionConfigurationType = UserPoolRiskConfigurationAttachmentRiskExceptionConfigurationType

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COMPROMISED_CREDENTIALS_RISK_CONFIGURATION_FIELD_NUMBER: builtins.int
    USER_POOL_ID_FIELD_NUMBER: builtins.int
    CLIENT_ID_FIELD_NUMBER: builtins.int
    ACCOUNT_TAKEOVER_RISK_CONFIGURATION_FIELD_NUMBER: builtins.int
    RISK_EXCEPTION_CONFIGURATION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def compromised_credentials_risk_configuration(self) -> global___UserPoolRiskConfigurationAttachmentCompromisedCredentialsRiskConfigurationType: ...
    user_pool_id: builtins.str
    client_id: builtins.str
    @property
    def account_takeover_risk_configuration(self) -> global___UserPoolRiskConfigurationAttachmentAccountTakeoverRiskConfigurationType: ...
    @property
    def risk_exception_configuration(self) -> global___UserPoolRiskConfigurationAttachmentRiskExceptionConfigurationType: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        compromised_credentials_risk_configuration: global___UserPoolRiskConfigurationAttachmentCompromisedCredentialsRiskConfigurationType | None = ...,
        user_pool_id: builtins.str = ...,
        client_id: builtins.str = ...,
        account_takeover_risk_configuration: global___UserPoolRiskConfigurationAttachmentAccountTakeoverRiskConfigurationType | None = ...,
        risk_exception_configuration: global___UserPoolRiskConfigurationAttachmentRiskExceptionConfigurationType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["account_takeover_risk_configuration", b"account_takeover_risk_configuration", "compromised_credentials_risk_configuration", b"compromised_credentials_risk_configuration", "resource_info", b"resource_info", "risk_exception_configuration", b"risk_exception_configuration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["account_takeover_risk_configuration", b"account_takeover_risk_configuration", "client_id", b"client_id", "compromised_credentials_risk_configuration", b"compromised_credentials_risk_configuration", "resource_info", b"resource_info", "risk_exception_configuration", b"risk_exception_configuration", "user_pool_id", b"user_pool_id"]) -> None: ...

global___UserPoolRiskConfigurationAttachment = UserPoolRiskConfigurationAttachment

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CS_S_FIELD_NUMBER: builtins.int
    USER_POOL_ID_FIELD_NUMBER: builtins.int
    CLIENT_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    cs_s: builtins.str
    user_pool_id: builtins.str
    client_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        cs_s: builtins.str = ...,
        user_pool_id: builtins.str = ...,
        client_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["client_id", b"client_id", "cs_s", b"cs_s", "resource_info", b"resource_info", "user_pool_id", b"user_pool_id"]) -> None: ...

global___UserPoolUICustomizationAttachment = UserPoolUICustomizationAttachment

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

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

global___UserPoolUserAttributeType = UserPoolUserAttributeType

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

    @typing_extensions.final
    class ClientMetadataEntry(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
    VALIDATION_DATA_FIELD_NUMBER: builtins.int
    USER_POOL_ID_FIELD_NUMBER: builtins.int
    USERNAME_FIELD_NUMBER: builtins.int
    MESSAGE_ACTION_FIELD_NUMBER: builtins.int
    CLIENT_METADATA_FIELD_NUMBER: builtins.int
    DESIRED_DELIVERY_MEDIUMS_FIELD_NUMBER: builtins.int
    FORCE_ALIAS_CREATION_FIELD_NUMBER: builtins.int
    USER_ATTRIBUTES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def validation_data(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolUserAttributeType]: ...
    user_pool_id: builtins.str
    username: builtins.str
    message_action: builtins.str
    @property
    def client_metadata(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def desired_delivery_mediums(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    force_alias_creation: builtins.bool
    @property
    def user_attributes(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___UserPoolUserAttributeType]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        validation_data: collections.abc.Iterable[global___UserPoolUserAttributeType] | None = ...,
        user_pool_id: builtins.str = ...,
        username: builtins.str = ...,
        message_action: builtins.str = ...,
        client_metadata: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        desired_delivery_mediums: collections.abc.Iterable[builtins.str] | None = ...,
        force_alias_creation: builtins.bool = ...,
        user_attributes: collections.abc.Iterable[global___UserPoolUserAttributeType] | 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["client_metadata", b"client_metadata", "desired_delivery_mediums", b"desired_delivery_mediums", "force_alias_creation", b"force_alias_creation", "message_action", b"message_action", "resource_info", b"resource_info", "user_attributes", b"user_attributes", "user_pool_id", b"user_pool_id", "username", b"username", "validation_data", b"validation_data"]) -> None: ...

global___UserPoolUser = UserPoolUser

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

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

global___UserPoolUserToGroupAttachment = UserPoolUserToGroupAttachment

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    MATCH_TYPE_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    CLAIM_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    match_type: builtins.str
    value: builtins.str
    claim: builtins.str
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        match_type: builtins.str = ...,
        value: builtins.str = ...,
        claim: builtins.str = ...,
        role_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["claim", b"claim", "match_type", b"match_type", "resource_info", b"resource_info", "role_arn", b"role_arn", "value", b"value"]) -> None: ...

global___IdentityPoolRoleAttachmentMappingRule = IdentityPoolRoleAttachmentMappingRule

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

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

global___IdentityPoolRoleAttachmentRulesConfigurationType = IdentityPoolRoleAttachmentRulesConfigurationType

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AMBIGUOUS_ROLE_RESOLUTION_FIELD_NUMBER: builtins.int
    RULES_CONFIGURATION_FIELD_NUMBER: builtins.int
    IDENTITY_PROVIDER_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    ambiguous_role_resolution: builtins.str
    @property
    def rules_configuration(self) -> global___IdentityPoolRoleAttachmentRulesConfigurationType: ...
    identity_provider: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        ambiguous_role_resolution: builtins.str = ...,
        rules_configuration: global___IdentityPoolRoleAttachmentRulesConfigurationType | None = ...,
        identity_provider: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "rules_configuration", b"rules_configuration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ambiguous_role_resolution", b"ambiguous_role_resolution", "identity_provider", b"identity_provider", "resource_info", b"resource_info", "rules_configuration", b"rules_configuration"]) -> None: ...

global___IdentityPoolRoleAttachmentRoleMapping = IdentityPoolRoleAttachmentRoleMapping
