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

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

global___ResourcePolicy = ResourcePolicy

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

    RESOURCE_POLICY_FIELD_NUMBER: builtins.int
    ROTATION_SCHEDULE_FIELD_NUMBER: builtins.int
    SECRET_FIELD_NUMBER: builtins.int
    SECRET_TARGET_ATTACHMENT_FIELD_NUMBER: builtins.int
    @property
    def resource_policy(self) -> global___ResourcePolicy: ...
    @property
    def rotation_schedule(self) -> global___RotationSchedule: ...
    @property
    def secret(self) -> global___Secret: ...
    @property
    def secret_target_attachment(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SecretTargetAttachment]: ...
    def __init__(
        self,
        *,
        resource_policy: global___ResourcePolicy | None = ...,
        rotation_schedule: global___RotationSchedule | None = ...,
        secret: global___Secret | None = ...,
        secret_target_attachment: collections.abc.Iterable[global___SecretTargetAttachment] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_policy", b"resource_policy", "rotation_schedule", b"rotation_schedule", "secret", b"secret"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_policy", b"resource_policy", "rotation_schedule", b"rotation_schedule", "secret", b"secret", "secret_target_attachment", b"secret_target_attachment"]) -> None: ...

global___SecretsManager = SecretsManager

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ROTATION_TYPE_FIELD_NUMBER: builtins.int
    ROTATION_LAMBDA_NAME_FIELD_NUMBER: builtins.int
    KMS_KEY_ARN_FIELD_NUMBER: builtins.int
    MASTER_SECRET_ARN_FIELD_NUMBER: builtins.int
    VPC_SECURITY_GROUP_IDS_FIELD_NUMBER: builtins.int
    MASTER_SECRET_KMS_KEY_ARN_FIELD_NUMBER: builtins.int
    VPC_SUBNET_IDS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    rotation_type: builtins.str
    rotation_lambda_name: builtins.str
    kms_key_arn: builtins.str
    master_secret_arn: builtins.str
    vpc_security_group_ids: builtins.str
    master_secret_kms_key_arn: builtins.str
    vpc_subnet_ids: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        rotation_type: builtins.str = ...,
        rotation_lambda_name: builtins.str = ...,
        kms_key_arn: builtins.str = ...,
        master_secret_arn: builtins.str = ...,
        vpc_security_group_ids: builtins.str = ...,
        master_secret_kms_key_arn: builtins.str = ...,
        vpc_subnet_ids: 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["kms_key_arn", b"kms_key_arn", "master_secret_arn", b"master_secret_arn", "master_secret_kms_key_arn", b"master_secret_kms_key_arn", "resource_info", b"resource_info", "rotation_lambda_name", b"rotation_lambda_name", "rotation_type", b"rotation_type", "vpc_security_group_ids", b"vpc_security_group_ids", "vpc_subnet_ids", b"vpc_subnet_ids"]) -> None: ...

global___RotationScheduleHostedRotationLambda = RotationScheduleHostedRotationLambda

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

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

global___RotationScheduleRotationRules = RotationScheduleRotationRules

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SECRET_ID_FIELD_NUMBER: builtins.int
    HOSTED_ROTATION_LAMBDA_FIELD_NUMBER: builtins.int
    ROTATION_LAMBDA_ARN_FIELD_NUMBER: builtins.int
    ROTATION_RULES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    secret_id: builtins.str
    @property
    def hosted_rotation_lambda(self) -> global___RotationScheduleHostedRotationLambda: ...
    rotation_lambda_arn: builtins.str
    @property
    def rotation_rules(self) -> global___RotationScheduleRotationRules: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        secret_id: builtins.str = ...,
        hosted_rotation_lambda: global___RotationScheduleHostedRotationLambda | None = ...,
        rotation_lambda_arn: builtins.str = ...,
        rotation_rules: global___RotationScheduleRotationRules | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["hosted_rotation_lambda", b"hosted_rotation_lambda", "resource_info", b"resource_info", "rotation_rules", b"rotation_rules"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["hosted_rotation_lambda", b"hosted_rotation_lambda", "resource_info", b"resource_info", "rotation_lambda_arn", b"rotation_lambda_arn", "rotation_rules", b"rotation_rules", "secret_id", b"secret_id"]) -> None: ...

global___RotationSchedule = RotationSchedule

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EXCLUDE_UPPERCASE_FIELD_NUMBER: builtins.int
    REQUIRE_EACH_INCLUDED_TYPE_FIELD_NUMBER: builtins.int
    INCLUDE_SPACE_FIELD_NUMBER: builtins.int
    EXCLUDE_CHARACTERS_FIELD_NUMBER: builtins.int
    GENERATE_STRING_KEY_FIELD_NUMBER: builtins.int
    PASSWORD_LENGTH_FIELD_NUMBER: builtins.int
    EXCLUDE_PUNCTUATION_FIELD_NUMBER: builtins.int
    EXCLUDE_LOWERCASE_FIELD_NUMBER: builtins.int
    SECRET_STRING_TEMPLATE_FIELD_NUMBER: builtins.int
    EXCLUDE_NUMBERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    exclude_uppercase: builtins.bool
    require_each_included_type: builtins.bool
    include_space: builtins.bool
    exclude_characters: builtins.str
    generate_string_key: builtins.str
    password_length: builtins.int
    exclude_punctuation: builtins.bool
    exclude_lowercase: builtins.bool
    secret_string_template: builtins.str
    exclude_numbers: builtins.bool
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        exclude_uppercase: builtins.bool = ...,
        require_each_included_type: builtins.bool = ...,
        include_space: builtins.bool = ...,
        exclude_characters: builtins.str = ...,
        generate_string_key: builtins.str = ...,
        password_length: builtins.int = ...,
        exclude_punctuation: builtins.bool = ...,
        exclude_lowercase: builtins.bool = ...,
        secret_string_template: builtins.str = ...,
        exclude_numbers: 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["exclude_characters", b"exclude_characters", "exclude_lowercase", b"exclude_lowercase", "exclude_numbers", b"exclude_numbers", "exclude_punctuation", b"exclude_punctuation", "exclude_uppercase", b"exclude_uppercase", "generate_string_key", b"generate_string_key", "include_space", b"include_space", "password_length", b"password_length", "require_each_included_type", b"require_each_included_type", "resource_info", b"resource_info", "secret_string_template", b"secret_string_template"]) -> None: ...

global___SecretGenerateSecretString = SecretGenerateSecretString

@typing_extensions.final
class Secret(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
    DESCRIPTION_FIELD_NUMBER: builtins.int
    KMS_KEY_ID_FIELD_NUMBER: builtins.int
    SECRET_STRING_FIELD_NUMBER: builtins.int
    GENERATE_SECRET_STRING_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    description: builtins.str
    kms_key_id: builtins.str
    secret_string: builtins.str
    @property
    def generate_secret_string(self) -> global___SecretGenerateSecretString: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        description: builtins.str = ...,
        kms_key_id: builtins.str = ...,
        secret_string: builtins.str = ...,
        generate_secret_string: global___SecretGenerateSecretString | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["generate_secret_string", b"generate_secret_string", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "generate_secret_string", b"generate_secret_string", "kms_key_id", b"kms_key_id", "name", b"name", "resource_info", b"resource_info", "secret_string", b"secret_string", "tags", b"tags"]) -> None: ...

global___Secret = Secret

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SECRET_ID_FIELD_NUMBER: builtins.int
    TARGET_TYPE_FIELD_NUMBER: builtins.int
    TARGET_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    secret_id: builtins.str
    target_type: builtins.str
    target_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        secret_id: builtins.str = ...,
        target_type: builtins.str = ...,
        target_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["resource_info", b"resource_info", "secret_id", b"secret_id", "target_id", b"target_id", "target_type", b"target_type"]) -> None: ...

global___SecretTargetAttachment = SecretTargetAttachment
