"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.ads.google_ads.v6.proto.common.policy_pb2
import google.ads.google_ads.v6.proto.enums.asset_field_type_pb2
import google.ads.google_ads.v6.proto.enums.asset_performance_label_pb2
import google.ads.google_ads.v6.proto.enums.policy_approval_status_pb2
import google.ads.google_ads.v6.proto.enums.policy_review_status_pb2
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor = ...

class AdGroupAdAssetView(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    RESOURCE_NAME_FIELD_NUMBER: builtins.int
    AD_GROUP_AD_FIELD_NUMBER: builtins.int
    ASSET_FIELD_NUMBER: builtins.int
    FIELD_TYPE_FIELD_NUMBER: builtins.int
    ENABLED_FIELD_NUMBER: builtins.int
    POLICY_SUMMARY_FIELD_NUMBER: builtins.int
    PERFORMANCE_LABEL_FIELD_NUMBER: builtins.int
    resource_name: typing.Text = ...
    ad_group_ad: typing.Text = ...
    asset: typing.Text = ...
    field_type: google.ads.google_ads.v6.proto.enums.asset_field_type_pb2.AssetFieldTypeEnum.AssetFieldType.V = (
        ...
    )
    enabled: builtins.bool = ...
    performance_label: google.ads.google_ads.v6.proto.enums.asset_performance_label_pb2.AssetPerformanceLabelEnum.AssetPerformanceLabel.V = (
        ...
    )
    @property
    def policy_summary(self) -> global___AdGroupAdAssetPolicySummary: ...
    def __init__(
        self,
        *,
        resource_name: typing.Text = ...,
        ad_group_ad: typing.Text = ...,
        asset: typing.Text = ...,
        field_type: google.ads.google_ads.v6.proto.enums.asset_field_type_pb2.AssetFieldTypeEnum.AssetFieldType.V = ...,
        enabled: builtins.bool = ...,
        policy_summary: typing.Optional[global___AdGroupAdAssetPolicySummary] = ...,
        performance_label: google.ads.google_ads.v6.proto.enums.asset_performance_label_pb2.AssetPerformanceLabelEnum.AssetPerformanceLabel.V = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_ad_group_ad",
            b"_ad_group_ad",
            "_asset",
            b"_asset",
            "_enabled",
            b"_enabled",
            "ad_group_ad",
            b"ad_group_ad",
            "asset",
            b"asset",
            "enabled",
            b"enabled",
            "policy_summary",
            b"policy_summary",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_ad_group_ad",
            b"_ad_group_ad",
            "_asset",
            b"_asset",
            "_enabled",
            b"_enabled",
            "ad_group_ad",
            b"ad_group_ad",
            "asset",
            b"asset",
            "enabled",
            b"enabled",
            "field_type",
            b"field_type",
            "performance_label",
            b"performance_label",
            "policy_summary",
            b"policy_summary",
            "resource_name",
            b"resource_name",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_ad_group_ad", b"_ad_group_ad"]
    ) -> typing_extensions.Literal["ad_group_ad"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_asset", b"_asset"]
    ) -> typing_extensions.Literal["asset"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_enabled", b"_enabled"]
    ) -> typing_extensions.Literal["enabled"]: ...

global___AdGroupAdAssetView = AdGroupAdAssetView

class AdGroupAdAssetPolicySummary(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    POLICY_TOPIC_ENTRIES_FIELD_NUMBER: builtins.int
    REVIEW_STATUS_FIELD_NUMBER: builtins.int
    APPROVAL_STATUS_FIELD_NUMBER: builtins.int
    review_status: google.ads.google_ads.v6.proto.enums.policy_review_status_pb2.PolicyReviewStatusEnum.PolicyReviewStatus.V = (
        ...
    )
    approval_status: google.ads.google_ads.v6.proto.enums.policy_approval_status_pb2.PolicyApprovalStatusEnum.PolicyApprovalStatus.V = (
        ...
    )
    @property
    def policy_topic_entries(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        google.ads.google_ads.v6.proto.common.policy_pb2.PolicyTopicEntry
    ]: ...
    def __init__(
        self,
        *,
        policy_topic_entries: typing.Optional[
            typing.Iterable[
                google.ads.google_ads.v6.proto.common.policy_pb2.PolicyTopicEntry
            ]
        ] = ...,
        review_status: google.ads.google_ads.v6.proto.enums.policy_review_status_pb2.PolicyReviewStatusEnum.PolicyReviewStatus.V = ...,
        approval_status: google.ads.google_ads.v6.proto.enums.policy_approval_status_pb2.PolicyApprovalStatusEnum.PolicyApprovalStatus.V = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "approval_status",
            b"approval_status",
            "policy_topic_entries",
            b"policy_topic_entries",
            "review_status",
            b"review_status",
        ],
    ) -> None: ...

global___AdGroupAdAssetPolicySummary = AdGroupAdAssetPolicySummary
