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

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

global___CachePolicyCookiesConfig = CachePolicyCookiesConfig

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

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

global___CachePolicyHeadersConfig = CachePolicyHeadersConfig

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

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

global___CachePolicyQueryStringsConfig = CachePolicyQueryStringsConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COOKIES_CONFIG_FIELD_NUMBER: builtins.int
    ENABLE_ACCEPT_ENCODING_GZIP_FIELD_NUMBER: builtins.int
    HEADERS_CONFIG_FIELD_NUMBER: builtins.int
    QUERY_STRINGS_CONFIG_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def cookies_config(self) -> global___CachePolicyCookiesConfig: ...
    enable_accept_encoding_gzip: builtins.bool
    @property
    def headers_config(self) -> global___CachePolicyHeadersConfig: ...
    @property
    def query_strings_config(self) -> global___CachePolicyQueryStringsConfig: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        cookies_config: global___CachePolicyCookiesConfig | None = ...,
        enable_accept_encoding_gzip: builtins.bool = ...,
        headers_config: global___CachePolicyHeadersConfig | None = ...,
        query_strings_config: global___CachePolicyQueryStringsConfig | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["cookies_config", b"cookies_config", "headers_config", b"headers_config", "query_strings_config", b"query_strings_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["cookies_config", b"cookies_config", "enable_accept_encoding_gzip", b"enable_accept_encoding_gzip", "headers_config", b"headers_config", "query_strings_config", b"query_strings_config", "resource_info", b"resource_info"]) -> None: ...

global___CachePolicyParametersInCacheKeyAndForwardedToOrigin = CachePolicyParametersInCacheKeyAndForwardedToOrigin

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COMMENT_FIELD_NUMBER: builtins.int
    DEFAULT_TTL_FIELD_NUMBER: builtins.int
    MAX_TTL_FIELD_NUMBER: builtins.int
    MIN_TTL_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PARAMETERS_IN_CACHE_KEY_AND_FORWARDED_TO_ORIGIN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    comment: builtins.str
    default_ttl: builtins.float
    max_ttl: builtins.float
    min_ttl: builtins.float
    name: builtins.str
    @property
    def parameters_in_cache_key_and_forwarded_to_origin(self) -> global___CachePolicyParametersInCacheKeyAndForwardedToOrigin: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        comment: builtins.str = ...,
        default_ttl: builtins.float = ...,
        max_ttl: builtins.float = ...,
        min_ttl: builtins.float = ...,
        name: builtins.str = ...,
        parameters_in_cache_key_and_forwarded_to_origin: global___CachePolicyParametersInCacheKeyAndForwardedToOrigin | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["parameters_in_cache_key_and_forwarded_to_origin", b"parameters_in_cache_key_and_forwarded_to_origin", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["comment", b"comment", "default_ttl", b"default_ttl", "max_ttl", b"max_ttl", "min_ttl", b"min_ttl", "name", b"name", "parameters_in_cache_key_and_forwarded_to_origin", b"parameters_in_cache_key_and_forwarded_to_origin", "resource_info", b"resource_info"]) -> None: ...

global___CachePolicyCachePolicyConfig = CachePolicyCachePolicyConfig

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

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

global___CachePolicy = CachePolicy

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

    CACHE_POLICY_FIELD_NUMBER: builtins.int
    DISTRIBUTION_FIELD_NUMBER: builtins.int
    ORIGIN_REQUEST_POLICY_FIELD_NUMBER: builtins.int
    REALTIME_LOG_CONFIG_FIELD_NUMBER: builtins.int
    STREAMING_DISTRIBUTION_FIELD_NUMBER: builtins.int
    @property
    def cache_policy(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CachePolicy]: ...
    @property
    def distribution(self) -> global___Distribution: ...
    @property
    def origin_request_policy(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___OriginRequestPolicy]: ...
    @property
    def realtime_log_config(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RealtimeLogConfig]: ...
    @property
    def streaming_distribution(self) -> global___StreamingDistribution: ...
    def __init__(
        self,
        *,
        cache_policy: collections.abc.Iterable[global___CachePolicy] | None = ...,
        distribution: global___Distribution | None = ...,
        origin_request_policy: collections.abc.Iterable[global___OriginRequestPolicy] | None = ...,
        realtime_log_config: collections.abc.Iterable[global___RealtimeLogConfig] | None = ...,
        streaming_distribution: global___StreamingDistribution | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["distribution", b"distribution", "streaming_distribution", b"streaming_distribution"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["cache_policy", b"cache_policy", "distribution", b"distribution", "origin_request_policy", b"origin_request_policy", "realtime_log_config", b"realtime_log_config", "streaming_distribution", b"streaming_distribution"]) -> None: ...

global___CloudFront = CloudFront

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

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

global___CloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig = CloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig

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

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

global___CloudFrontOriginAccessIdentity = CloudFrontOriginAccessIdentity

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INCLUDE_COOKIES_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    PREFIX_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    include_cookies: builtins.bool
    bucket: builtins.str
    prefix: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        include_cookies: builtins.bool = ...,
        bucket: builtins.str = ...,
        prefix: 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["bucket", b"bucket", "include_cookies", b"include_cookies", "prefix", b"prefix", "resource_info", b"resource_info"]) -> None: ...

global___DistributionLogging = DistributionLogging

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

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

global___DistributionOriginCustomHeader = DistributionOriginCustomHeader

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

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

global___DistributionS3OriginConfig = DistributionS3OriginConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ORIGIN_READ_TIMEOUT_FIELD_NUMBER: builtins.int
    HTTP_S_PORT_FIELD_NUMBER: builtins.int
    ORIGIN_KEEPALIVE_TIMEOUT_FIELD_NUMBER: builtins.int
    ORIGIN_SSL_PROTOCOLS_FIELD_NUMBER: builtins.int
    HTTP_PORT_FIELD_NUMBER: builtins.int
    ORIGIN_PROTOCOL_POLICY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    origin_read_timeout: builtins.int
    http_s_port: builtins.int
    origin_keepalive_timeout: builtins.int
    @property
    def origin_ssl_protocols(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    http_port: builtins.int
    origin_protocol_policy: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        origin_read_timeout: builtins.int = ...,
        http_s_port: builtins.int = ...,
        origin_keepalive_timeout: builtins.int = ...,
        origin_ssl_protocols: collections.abc.Iterable[builtins.str] | None = ...,
        http_port: builtins.int = ...,
        origin_protocol_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["http_port", b"http_port", "http_s_port", b"http_s_port", "origin_keepalive_timeout", b"origin_keepalive_timeout", "origin_protocol_policy", b"origin_protocol_policy", "origin_read_timeout", b"origin_read_timeout", "origin_ssl_protocols", b"origin_ssl_protocols", "resource_info", b"resource_info"]) -> None: ...

global___DistributionCustomOriginConfig = DistributionCustomOriginConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONNECTION_TIMEOUT_FIELD_NUMBER: builtins.int
    ORIGIN_CUSTOM_HEADERS_FIELD_NUMBER: builtins.int
    CONNECTION_ATTEMPTS_FIELD_NUMBER: builtins.int
    DOMAIN_NAME_FIELD_NUMBER: builtins.int
    S3_ORIGIN_CONFIG_FIELD_NUMBER: builtins.int
    ORIGIN_PATH_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    CUSTOM_ORIGIN_CONFIG_FIELD_NUMBER: builtins.int
    DISTRIBUTION_CONFIG_FIELD_NUMBER: builtins.int
    CUSTOM_HEADERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    connection_timeout: builtins.int
    @property
    def origin_custom_headers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DistributionOriginCustomHeader]: ...
    connection_attempts: builtins.int
    domain_name: builtins.str
    @property
    def s3_origin_config(self) -> global___DistributionS3OriginConfig: ...
    origin_path: builtins.str
    id: builtins.str
    @property
    def custom_origin_config(self) -> global___DistributionCustomOriginConfig: ...
    @property
    def distribution_config(self) -> global___DistributionDistributionConfig: ...
    custom_headers: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        connection_timeout: builtins.int = ...,
        origin_custom_headers: collections.abc.Iterable[global___DistributionOriginCustomHeader] | None = ...,
        connection_attempts: builtins.int = ...,
        domain_name: builtins.str = ...,
        s3_origin_config: global___DistributionS3OriginConfig | None = ...,
        origin_path: builtins.str = ...,
        id: builtins.str = ...,
        custom_origin_config: global___DistributionCustomOriginConfig | None = ...,
        distribution_config: global___DistributionDistributionConfig | None = ...,
        custom_headers: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["custom_origin_config", b"custom_origin_config", "distribution_config", b"distribution_config", "resource_info", b"resource_info", "s3_origin_config", b"s3_origin_config"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["connection_attempts", b"connection_attempts", "connection_timeout", b"connection_timeout", "custom_headers", b"custom_headers", "custom_origin_config", b"custom_origin_config", "distribution_config", b"distribution_config", "domain_name", b"domain_name", "id", b"id", "origin_custom_headers", b"origin_custom_headers", "origin_path", b"origin_path", "resource_info", b"resource_info", "s3_origin_config", b"s3_origin_config"]) -> None: ...

global___DistributionOrigin = DistributionOrigin

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    IAM_CERTIFICATE_ID_FIELD_NUMBER: builtins.int
    SSL_SUPPORT_METHOD_FIELD_NUMBER: builtins.int
    MINIMUM_PROTOCOL_VERSION_FIELD_NUMBER: builtins.int
    CLOUD_FRONT_DEFAULT_CERTIFICATE_FIELD_NUMBER: builtins.int
    ACM_CERTIFICATE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    iam_certificate_id: builtins.str
    ssl_support_method: builtins.str
    minimum_protocol_version: builtins.str
    cloud_front_default_certificate: builtins.bool
    acm_certificate_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        iam_certificate_id: builtins.str = ...,
        ssl_support_method: builtins.str = ...,
        minimum_protocol_version: builtins.str = ...,
        cloud_front_default_certificate: builtins.bool = ...,
        acm_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["acm_certificate_arn", b"acm_certificate_arn", "cloud_front_default_certificate", b"cloud_front_default_certificate", "iam_certificate_id", b"iam_certificate_id", "minimum_protocol_version", b"minimum_protocol_version", "resource_info", b"resource_info", "ssl_support_method", b"ssl_support_method"]) -> None: ...

global___DistributionViewerCertificate = DistributionViewerCertificate

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INCLUDE_BODY_FIELD_NUMBER: builtins.int
    EVENT_TYPE_FIELD_NUMBER: builtins.int
    LAMBDA_FUNCTION_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    include_body: builtins.bool
    event_type: builtins.str
    lambda_function_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        include_body: builtins.bool = ...,
        event_type: builtins.str = ...,
        lambda_function_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["event_type", b"event_type", "include_body", b"include_body", "lambda_function_arn", b"lambda_function_arn", "resource_info", b"resource_info"]) -> None: ...

global___DistributionLambdaFunctionAssociation = DistributionLambdaFunctionAssociation

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

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

global___DistributionCookies = DistributionCookies

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COOKIES_FIELD_NUMBER: builtins.int
    HEADERS_FIELD_NUMBER: builtins.int
    QUERY_STRING_FIELD_NUMBER: builtins.int
    QUERY_STRING_CACHE_KEYS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def cookies(self) -> global___DistributionCookies: ...
    @property
    def headers(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    query_string: builtins.bool
    @property
    def query_string_cache_keys(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        cookies: global___DistributionCookies | None = ...,
        headers: collections.abc.Iterable[builtins.str] | None = ...,
        query_string: builtins.bool = ...,
        query_string_cache_keys: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["cookies", b"cookies", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["cookies", b"cookies", "headers", b"headers", "query_string", b"query_string", "query_string_cache_keys", b"query_string_cache_keys", "resource_info", b"resource_info"]) -> None: ...

global___DistributionForwardedValues = DistributionForwardedValues

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COMPRESS_FIELD_NUMBER: builtins.int
    LAMBDA_FUNCTION_ASSOCIATIONS_FIELD_NUMBER: builtins.int
    TARGET_ORIGIN_ID_FIELD_NUMBER: builtins.int
    VIEWER_PROTOCOL_POLICY_FIELD_NUMBER: builtins.int
    REALTIME_LOG_CONFIG_ARN_FIELD_NUMBER: builtins.int
    TRUSTED_SIGNERS_FIELD_NUMBER: builtins.int
    DEFAULT_TTL_FIELD_NUMBER: builtins.int
    FIELD_LEVEL_ENCRYPTION_ID_FIELD_NUMBER: builtins.int
    ALLOWED_METHODS_FIELD_NUMBER: builtins.int
    CACHED_METHODS_FIELD_NUMBER: builtins.int
    SMOOTH_STREAMING_FIELD_NUMBER: builtins.int
    FORWARDED_VALUES_FIELD_NUMBER: builtins.int
    ORIGIN_REQUEST_POLICY_ID_FIELD_NUMBER: builtins.int
    MIN_TTL_FIELD_NUMBER: builtins.int
    CACHE_POLICY_ID_FIELD_NUMBER: builtins.int
    MAX_TTL_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    compress: builtins.bool
    @property
    def lambda_function_associations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DistributionLambdaFunctionAssociation]: ...
    target_origin_id: builtins.str
    viewer_protocol_policy: builtins.str
    realtime_log_config_arn: builtins.str
    @property
    def trusted_signers(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    default_ttl: builtins.float
    field_level_encryption_id: builtins.str
    @property
    def allowed_methods(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def cached_methods(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    smooth_streaming: builtins.bool
    @property
    def forwarded_values(self) -> global___DistributionForwardedValues: ...
    origin_request_policy_id: builtins.str
    min_ttl: builtins.float
    cache_policy_id: builtins.str
    max_ttl: builtins.float
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        compress: builtins.bool = ...,
        lambda_function_associations: collections.abc.Iterable[global___DistributionLambdaFunctionAssociation] | None = ...,
        target_origin_id: builtins.str = ...,
        viewer_protocol_policy: builtins.str = ...,
        realtime_log_config_arn: builtins.str = ...,
        trusted_signers: collections.abc.Iterable[builtins.str] | None = ...,
        default_ttl: builtins.float = ...,
        field_level_encryption_id: builtins.str = ...,
        allowed_methods: collections.abc.Iterable[builtins.str] | None = ...,
        cached_methods: collections.abc.Iterable[builtins.str] | None = ...,
        smooth_streaming: builtins.bool = ...,
        forwarded_values: global___DistributionForwardedValues | None = ...,
        origin_request_policy_id: builtins.str = ...,
        min_ttl: builtins.float = ...,
        cache_policy_id: builtins.str = ...,
        max_ttl: builtins.float = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["forwarded_values", b"forwarded_values", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_methods", b"allowed_methods", "cache_policy_id", b"cache_policy_id", "cached_methods", b"cached_methods", "compress", b"compress", "default_ttl", b"default_ttl", "field_level_encryption_id", b"field_level_encryption_id", "forwarded_values", b"forwarded_values", "lambda_function_associations", b"lambda_function_associations", "max_ttl", b"max_ttl", "min_ttl", b"min_ttl", "origin_request_policy_id", b"origin_request_policy_id", "realtime_log_config_arn", b"realtime_log_config_arn", "resource_info", b"resource_info", "smooth_streaming", b"smooth_streaming", "target_origin_id", b"target_origin_id", "trusted_signers", b"trusted_signers", "viewer_protocol_policy", b"viewer_protocol_policy"]) -> None: ...

global___DistributionDefaultCacheBehavior = DistributionDefaultCacheBehavior

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    RESPONSE_CODE_FIELD_NUMBER: builtins.int
    ERROR_CACHING_MIN_TTL_FIELD_NUMBER: builtins.int
    ERROR_CODE_FIELD_NUMBER: builtins.int
    RESPONSE_PAGE_PATH_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    response_code: builtins.int
    error_caching_min_ttl: builtins.float
    error_code: builtins.int
    response_page_path: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        response_code: builtins.int = ...,
        error_caching_min_ttl: builtins.float = ...,
        error_code: builtins.int = ...,
        response_page_path: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["error_caching_min_ttl", b"error_caching_min_ttl", "error_code", b"error_code", "resource_info", b"resource_info", "response_code", b"response_code", "response_page_path", b"response_page_path"]) -> None: ...

global___DistributionCustomErrorResponse = DistributionCustomErrorResponse

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

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

global___DistributionStatusCodes = DistributionStatusCodes

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

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

global___DistributionOriginGroupFailoverCriteria = DistributionOriginGroupFailoverCriteria

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

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

global___DistributionOriginGroupMember = DistributionOriginGroupMember

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

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

global___DistributionOriginGroupMembers = DistributionOriginGroupMembers

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    FAILOVER_CRITERIA_FIELD_NUMBER: builtins.int
    MEMBERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    id: builtins.str
    @property
    def failover_criteria(self) -> global___DistributionOriginGroupFailoverCriteria: ...
    @property
    def members(self) -> global___DistributionOriginGroupMembers: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        id: builtins.str = ...,
        failover_criteria: global___DistributionOriginGroupFailoverCriteria | None = ...,
        members: global___DistributionOriginGroupMembers | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["failover_criteria", b"failover_criteria", "members", b"members", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["failover_criteria", b"failover_criteria", "id", b"id", "members", b"members", "resource_info", b"resource_info"]) -> None: ...

global___DistributionOriginGroup = DistributionOriginGroup

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

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

global___DistributionOriginGroups = DistributionOriginGroups

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

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

global___DistributionGeoRestriction = DistributionGeoRestriction

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

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

global___DistributionRestrictions = DistributionRestrictions

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COMPRESS_FIELD_NUMBER: builtins.int
    LAMBDA_FUNCTION_ASSOCIATIONS_FIELD_NUMBER: builtins.int
    TARGET_ORIGIN_ID_FIELD_NUMBER: builtins.int
    VIEWER_PROTOCOL_POLICY_FIELD_NUMBER: builtins.int
    REALTIME_LOG_CONFIG_ARN_FIELD_NUMBER: builtins.int
    TRUSTED_SIGNERS_FIELD_NUMBER: builtins.int
    DEFAULT_TTL_FIELD_NUMBER: builtins.int
    FIELD_LEVEL_ENCRYPTION_ID_FIELD_NUMBER: builtins.int
    ALLOWED_METHODS_FIELD_NUMBER: builtins.int
    PATH_PATTERN_FIELD_NUMBER: builtins.int
    CACHED_METHODS_FIELD_NUMBER: builtins.int
    SMOOTH_STREAMING_FIELD_NUMBER: builtins.int
    FORWARDED_VALUES_FIELD_NUMBER: builtins.int
    ORIGIN_REQUEST_POLICY_ID_FIELD_NUMBER: builtins.int
    MIN_TTL_FIELD_NUMBER: builtins.int
    CACHE_POLICY_ID_FIELD_NUMBER: builtins.int
    MAX_TTL_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    compress: builtins.bool
    @property
    def lambda_function_associations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DistributionLambdaFunctionAssociation]: ...
    target_origin_id: builtins.str
    viewer_protocol_policy: builtins.str
    realtime_log_config_arn: builtins.str
    @property
    def trusted_signers(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    default_ttl: builtins.float
    field_level_encryption_id: builtins.str
    @property
    def allowed_methods(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    path_pattern: builtins.str
    @property
    def cached_methods(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    smooth_streaming: builtins.bool
    @property
    def forwarded_values(self) -> global___DistributionForwardedValues: ...
    origin_request_policy_id: builtins.str
    min_ttl: builtins.float
    cache_policy_id: builtins.str
    max_ttl: builtins.float
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        compress: builtins.bool = ...,
        lambda_function_associations: collections.abc.Iterable[global___DistributionLambdaFunctionAssociation] | None = ...,
        target_origin_id: builtins.str = ...,
        viewer_protocol_policy: builtins.str = ...,
        realtime_log_config_arn: builtins.str = ...,
        trusted_signers: collections.abc.Iterable[builtins.str] | None = ...,
        default_ttl: builtins.float = ...,
        field_level_encryption_id: builtins.str = ...,
        allowed_methods: collections.abc.Iterable[builtins.str] | None = ...,
        path_pattern: builtins.str = ...,
        cached_methods: collections.abc.Iterable[builtins.str] | None = ...,
        smooth_streaming: builtins.bool = ...,
        forwarded_values: global___DistributionForwardedValues | None = ...,
        origin_request_policy_id: builtins.str = ...,
        min_ttl: builtins.float = ...,
        cache_policy_id: builtins.str = ...,
        max_ttl: builtins.float = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["forwarded_values", b"forwarded_values", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_methods", b"allowed_methods", "cache_policy_id", b"cache_policy_id", "cached_methods", b"cached_methods", "compress", b"compress", "default_ttl", b"default_ttl", "field_level_encryption_id", b"field_level_encryption_id", "forwarded_values", b"forwarded_values", "lambda_function_associations", b"lambda_function_associations", "max_ttl", b"max_ttl", "min_ttl", b"min_ttl", "origin_request_policy_id", b"origin_request_policy_id", "path_pattern", b"path_pattern", "realtime_log_config_arn", b"realtime_log_config_arn", "resource_info", b"resource_info", "smooth_streaming", b"smooth_streaming", "target_origin_id", b"target_origin_id", "trusted_signers", b"trusted_signers", "viewer_protocol_policy", b"viewer_protocol_policy"]) -> None: ...

global___DistributionCacheBehavior = DistributionCacheBehavior

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    LOGGING_FIELD_NUMBER: builtins.int
    COMMENT_FIELD_NUMBER: builtins.int
    DEFAULT_ROOT_OBJECT_FIELD_NUMBER: builtins.int
    ORIGINS_FIELD_NUMBER: builtins.int
    VIEWER_CERTIFICATE_FIELD_NUMBER: builtins.int
    PRICE_CLASS_FIELD_NUMBER: builtins.int
    DEFAULT_CACHE_BEHAVIOR_FIELD_NUMBER: builtins.int
    CUSTOM_ERROR_RESPONSES_FIELD_NUMBER: builtins.int
    ORIGIN_GROUPS_FIELD_NUMBER: builtins.int
    ENABLED_FIELD_NUMBER: builtins.int
    ALIASES_FIELD_NUMBER: builtins.int
    IP_V6_ENABLED_FIELD_NUMBER: builtins.int
    WEB_A_C_L_ID_FIELD_NUMBER: builtins.int
    HTTP_VERSION_FIELD_NUMBER: builtins.int
    RESTRICTIONS_FIELD_NUMBER: builtins.int
    CACHE_BEHAVIORS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def logging(self) -> global___DistributionLogging: ...
    comment: builtins.str
    default_root_object: builtins.str
    @property
    def origins(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DistributionOrigin]: ...
    @property
    def viewer_certificate(self) -> global___DistributionViewerCertificate: ...
    price_class: builtins.str
    @property
    def default_cache_behavior(self) -> global___DistributionDefaultCacheBehavior: ...
    @property
    def custom_error_responses(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DistributionCustomErrorResponse]: ...
    @property
    def origin_groups(self) -> global___DistributionOriginGroups: ...
    enabled: builtins.bool
    @property
    def aliases(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    ip_v6_enabled: builtins.bool
    web_a_c_l_id: builtins.str
    http_version: builtins.str
    @property
    def restrictions(self) -> global___DistributionRestrictions: ...
    @property
    def cache_behaviors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DistributionCacheBehavior]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        logging: global___DistributionLogging | None = ...,
        comment: builtins.str = ...,
        default_root_object: builtins.str = ...,
        origins: collections.abc.Iterable[global___DistributionOrigin] | None = ...,
        viewer_certificate: global___DistributionViewerCertificate | None = ...,
        price_class: builtins.str = ...,
        default_cache_behavior: global___DistributionDefaultCacheBehavior | None = ...,
        custom_error_responses: collections.abc.Iterable[global___DistributionCustomErrorResponse] | None = ...,
        origin_groups: global___DistributionOriginGroups | None = ...,
        enabled: builtins.bool = ...,
        aliases: collections.abc.Iterable[builtins.str] | None = ...,
        ip_v6_enabled: builtins.bool = ...,
        web_a_c_l_id: builtins.str = ...,
        http_version: builtins.str = ...,
        restrictions: global___DistributionRestrictions | None = ...,
        cache_behaviors: collections.abc.Iterable[global___DistributionCacheBehavior] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["default_cache_behavior", b"default_cache_behavior", "logging", b"logging", "origin_groups", b"origin_groups", "resource_info", b"resource_info", "restrictions", b"restrictions", "viewer_certificate", b"viewer_certificate"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["aliases", b"aliases", "cache_behaviors", b"cache_behaviors", "comment", b"comment", "custom_error_responses", b"custom_error_responses", "default_cache_behavior", b"default_cache_behavior", "default_root_object", b"default_root_object", "enabled", b"enabled", "http_version", b"http_version", "ip_v6_enabled", b"ip_v6_enabled", "logging", b"logging", "origin_groups", b"origin_groups", "origins", b"origins", "price_class", b"price_class", "resource_info", b"resource_info", "restrictions", b"restrictions", "viewer_certificate", b"viewer_certificate", "web_a_c_l_id", b"web_a_c_l_id"]) -> None: ...

global___DistributionDistributionConfig = DistributionDistributionConfig

@typing_extensions.final
class Distribution(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
    DISTRIBUTION_CONFIG_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def distribution_config(self) -> global___DistributionDistributionConfig: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        distribution_config: global___DistributionDistributionConfig | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["distribution_config", b"distribution_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["distribution_config", b"distribution_config", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___Distribution = Distribution

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

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

global___OriginRequestPolicyCookiesConfig = OriginRequestPolicyCookiesConfig

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

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

global___OriginRequestPolicyHeadersConfig = OriginRequestPolicyHeadersConfig

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

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

global___OriginRequestPolicyQueryStringsConfig = OriginRequestPolicyQueryStringsConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COMMENT_FIELD_NUMBER: builtins.int
    COOKIES_CONFIG_FIELD_NUMBER: builtins.int
    HEADERS_CONFIG_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    QUERY_STRINGS_CONFIG_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    comment: builtins.str
    @property
    def cookies_config(self) -> global___OriginRequestPolicyCookiesConfig: ...
    @property
    def headers_config(self) -> global___OriginRequestPolicyHeadersConfig: ...
    name: builtins.str
    @property
    def query_strings_config(self) -> global___OriginRequestPolicyQueryStringsConfig: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        comment: builtins.str = ...,
        cookies_config: global___OriginRequestPolicyCookiesConfig | None = ...,
        headers_config: global___OriginRequestPolicyHeadersConfig | None = ...,
        name: builtins.str = ...,
        query_strings_config: global___OriginRequestPolicyQueryStringsConfig | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["cookies_config", b"cookies_config", "headers_config", b"headers_config", "query_strings_config", b"query_strings_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["comment", b"comment", "cookies_config", b"cookies_config", "headers_config", b"headers_config", "name", b"name", "query_strings_config", b"query_strings_config", "resource_info", b"resource_info"]) -> None: ...

global___OriginRequestPolicyOriginRequestPolicyConfig = OriginRequestPolicyOriginRequestPolicyConfig

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

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

global___OriginRequestPolicy = OriginRequestPolicy

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    STREAM_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    role_arn: builtins.str
    stream_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        role_arn: builtins.str = ...,
        stream_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_arn", b"stream_arn"]) -> None: ...

global___RealtimeLogConfigKinesisStreamConfig = RealtimeLogConfigKinesisStreamConfig

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

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

global___RealtimeLogConfigEndPoint = RealtimeLogConfigEndPoint

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    END_POINTS_FIELD_NUMBER: builtins.int
    FIELDS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    SAMPLING_RATE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def end_points(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RealtimeLogConfigEndPoint]: ...
    @property
    def fields(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    name: builtins.str
    sampling_rate: builtins.float
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        end_points: collections.abc.Iterable[global___RealtimeLogConfigEndPoint] | None = ...,
        fields: collections.abc.Iterable[builtins.str] | None = ...,
        name: builtins.str = ...,
        sampling_rate: builtins.float = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["end_points", b"end_points", "fields", b"fields", "name", b"name", "resource_info", b"resource_info", "sampling_rate", b"sampling_rate"]) -> None: ...

global___RealtimeLogConfig = RealtimeLogConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    ENABLED_FIELD_NUMBER: builtins.int
    PREFIX_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    bucket: builtins.str
    enabled: builtins.bool
    prefix: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        bucket: builtins.str = ...,
        enabled: builtins.bool = ...,
        prefix: 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["bucket", b"bucket", "enabled", b"enabled", "prefix", b"prefix", "resource_info", b"resource_info"]) -> None: ...

global___StreamingDistributionLogging = StreamingDistributionLogging

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

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

global___StreamingDistributionS3Origin = StreamingDistributionS3Origin

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

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

global___StreamingDistributionTrustedSigners = StreamingDistributionTrustedSigners

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    LOGGING_FIELD_NUMBER: builtins.int
    COMMENT_FIELD_NUMBER: builtins.int
    PRICE_CLASS_FIELD_NUMBER: builtins.int
    S3_ORIGIN_FIELD_NUMBER: builtins.int
    ENABLED_FIELD_NUMBER: builtins.int
    ALIASES_FIELD_NUMBER: builtins.int
    TRUSTED_SIGNERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def logging(self) -> global___StreamingDistributionLogging: ...
    comment: builtins.str
    price_class: builtins.str
    @property
    def s3_origin(self) -> global___StreamingDistributionS3Origin: ...
    enabled: builtins.bool
    @property
    def aliases(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def trusted_signers(self) -> global___StreamingDistributionTrustedSigners: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        logging: global___StreamingDistributionLogging | None = ...,
        comment: builtins.str = ...,
        price_class: builtins.str = ...,
        s3_origin: global___StreamingDistributionS3Origin | None = ...,
        enabled: builtins.bool = ...,
        aliases: collections.abc.Iterable[builtins.str] | None = ...,
        trusted_signers: global___StreamingDistributionTrustedSigners | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["logging", b"logging", "resource_info", b"resource_info", "s3_origin", b"s3_origin", "trusted_signers", b"trusted_signers"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["aliases", b"aliases", "comment", b"comment", "enabled", b"enabled", "logging", b"logging", "price_class", b"price_class", "resource_info", b"resource_info", "s3_origin", b"s3_origin", "trusted_signers", b"trusted_signers"]) -> None: ...

global___StreamingDistributionStreamingDistributionConfig = StreamingDistributionStreamingDistributionConfig

@typing_extensions.final
class StreamingDistribution(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
    STREAMING_DISTRIBUTION_CONFIG_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def streaming_distribution_config(self) -> global___StreamingDistributionStreamingDistributionConfig: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        streaming_distribution_config: global___StreamingDistributionStreamingDistributionConfig | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "streaming_distribution_config", b"streaming_distribution_config"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "streaming_distribution_config", b"streaming_distribution_config", "tags", b"tags"]) -> None: ...

global___StreamingDistribution = StreamingDistribution
