# @generated by mypy-protobuf.  Do not edit manually!
import sys
from typing import (
    Iterable as typing___Iterable,
    Optional as typing___Optional,
    Text as typing___Text,
    overload as typing___overload,
)

from google.protobuf.descriptor import (
    Descriptor as google___protobuf___descriptor___Descriptor,
    FileDescriptor as google___protobuf___descriptor___FileDescriptor,
)
from google.protobuf.internal.containers import (
    RepeatedCompositeFieldContainer as google___protobuf___internal___containers___RepeatedCompositeFieldContainer,
    RepeatedScalarFieldContainer as google___protobuf___internal___containers___RepeatedScalarFieldContainer,
)
from google.protobuf.message import Message as google___protobuf___message___Message
from typing_extensions import Literal as typing_extensions___Literal

from google.ads.google_ads.v6.proto.enums.age_range_type_pb2 import (
    AgeRangeTypeEnum as google___ads___googleads___v6___enums___age_range_type_pb2___AgeRangeTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.app_payment_model_type_pb2 import (
    AppPaymentModelTypeEnum as google___ads___googleads___v6___enums___app_payment_model_type_pb2___AppPaymentModelTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.content_label_type_pb2 import (
    ContentLabelTypeEnum as google___ads___googleads___v6___enums___content_label_type_pb2___ContentLabelTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.day_of_week_pb2 import (
    DayOfWeekEnum as google___ads___googleads___v6___enums___day_of_week_pb2___DayOfWeekEnum,
)
from google.ads.google_ads.v6.proto.enums.device_pb2 import (
    DeviceEnum as google___ads___googleads___v6___enums___device_pb2___DeviceEnum,
)
from google.ads.google_ads.v6.proto.enums.gender_type_pb2 import (
    GenderTypeEnum as google___ads___googleads___v6___enums___gender_type_pb2___GenderTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.hotel_date_selection_type_pb2 import (
    HotelDateSelectionTypeEnum as google___ads___googleads___v6___enums___hotel_date_selection_type_pb2___HotelDateSelectionTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.income_range_type_pb2 import (
    IncomeRangeTypeEnum as google___ads___googleads___v6___enums___income_range_type_pb2___IncomeRangeTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.interaction_type_pb2 import (
    InteractionTypeEnum as google___ads___googleads___v6___enums___interaction_type_pb2___InteractionTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.keyword_match_type_pb2 import (
    KeywordMatchTypeEnum as google___ads___googleads___v6___enums___keyword_match_type_pb2___KeywordMatchTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.listing_group_type_pb2 import (
    ListingGroupTypeEnum as google___ads___googleads___v6___enums___listing_group_type_pb2___ListingGroupTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.location_group_radius_units_pb2 import (
    LocationGroupRadiusUnitsEnum as google___ads___googleads___v6___enums___location_group_radius_units_pb2___LocationGroupRadiusUnitsEnum,
)
from google.ads.google_ads.v6.proto.enums.minute_of_hour_pb2 import (
    MinuteOfHourEnum as google___ads___googleads___v6___enums___minute_of_hour_pb2___MinuteOfHourEnum,
)
from google.ads.google_ads.v6.proto.enums.parental_status_type_pb2 import (
    ParentalStatusTypeEnum as google___ads___googleads___v6___enums___parental_status_type_pb2___ParentalStatusTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.preferred_content_type_pb2 import (
    PreferredContentTypeEnum as google___ads___googleads___v6___enums___preferred_content_type_pb2___PreferredContentTypeEnum,
)
from google.ads.google_ads.v6.proto.enums.product_bidding_category_level_pb2 import (
    ProductBiddingCategoryLevelEnum as google___ads___googleads___v6___enums___product_bidding_category_level_pb2___ProductBiddingCategoryLevelEnum,
)
from google.ads.google_ads.v6.proto.enums.product_channel_exclusivity_pb2 import (
    ProductChannelExclusivityEnum as google___ads___googleads___v6___enums___product_channel_exclusivity_pb2___ProductChannelExclusivityEnum,
)
from google.ads.google_ads.v6.proto.enums.product_channel_pb2 import (
    ProductChannelEnum as google___ads___googleads___v6___enums___product_channel_pb2___ProductChannelEnum,
)
from google.ads.google_ads.v6.proto.enums.product_condition_pb2 import (
    ProductConditionEnum as google___ads___googleads___v6___enums___product_condition_pb2___ProductConditionEnum,
)
from google.ads.google_ads.v6.proto.enums.product_custom_attribute_index_pb2 import (
    ProductCustomAttributeIndexEnum as google___ads___googleads___v6___enums___product_custom_attribute_index_pb2___ProductCustomAttributeIndexEnum,
)
from google.ads.google_ads.v6.proto.enums.product_type_level_pb2 import (
    ProductTypeLevelEnum as google___ads___googleads___v6___enums___product_type_level_pb2___ProductTypeLevelEnum,
)
from google.ads.google_ads.v6.proto.enums.proximity_radius_units_pb2 import (
    ProximityRadiusUnitsEnum as google___ads___googleads___v6___enums___proximity_radius_units_pb2___ProximityRadiusUnitsEnum,
)
from google.ads.google_ads.v6.proto.enums.webpage_condition_operand_pb2 import (
    WebpageConditionOperandEnum as google___ads___googleads___v6___enums___webpage_condition_operand_pb2___WebpageConditionOperandEnum,
)
from google.ads.google_ads.v6.proto.enums.webpage_condition_operator_pb2 import (
    WebpageConditionOperatorEnum as google___ads___googleads___v6___enums___webpage_condition_operator_pb2___WebpageConditionOperatorEnum,
)

builtin___bool = bool
builtin___bytes = bytes
builtin___float = float
builtin___int = int

DESCRIPTOR: google___protobuf___descriptor___FileDescriptor = ...

class KeywordInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    text: typing___Text = ...
    match_type: google___ads___googleads___v6___enums___keyword_match_type_pb2___KeywordMatchTypeEnum.KeywordMatchTypeValue = ...
    def __init__(
        self,
        *,
        text: typing___Optional[typing___Text] = None,
        match_type: typing___Optional[
            google___ads___googleads___v6___enums___keyword_match_type_pb2___KeywordMatchTypeEnum.KeywordMatchTypeValue
        ] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal["_text", b"_text", "text", b"text"],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_text", b"_text", "match_type", b"match_type", "text", b"text"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_text", b"_text"]
    ) -> typing_extensions___Literal["text"]: ...

type___KeywordInfo = KeywordInfo

class PlacementInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    url: typing___Text = ...
    def __init__(self, *, url: typing___Optional[typing___Text] = None,) -> None: ...
    def HasField(
        self, field_name: typing_extensions___Literal["_url", b"_url", "url", b"url"]
    ) -> builtin___bool: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["_url", b"_url", "url", b"url"]
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_url", b"_url"]
    ) -> typing_extensions___Literal["url"]: ...

type___PlacementInfo = PlacementInfo

class MobileAppCategoryInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    mobile_app_category_constant: typing___Text = ...
    def __init__(
        self, *, mobile_app_category_constant: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_mobile_app_category_constant",
            b"_mobile_app_category_constant",
            "mobile_app_category_constant",
            b"mobile_app_category_constant",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_mobile_app_category_constant",
            b"_mobile_app_category_constant",
            "mobile_app_category_constant",
            b"mobile_app_category_constant",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_mobile_app_category_constant", b"_mobile_app_category_constant"
        ],
    ) -> typing_extensions___Literal["mobile_app_category_constant"]: ...

type___MobileAppCategoryInfo = MobileAppCategoryInfo

class MobileApplicationInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    app_id: typing___Text = ...
    name: typing___Text = ...
    def __init__(
        self,
        *,
        app_id: typing___Optional[typing___Text] = None,
        name: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_app_id",
            b"_app_id",
            "_name",
            b"_name",
            "app_id",
            b"app_id",
            "name",
            b"name",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_app_id",
            b"_app_id",
            "_name",
            b"_name",
            "app_id",
            b"app_id",
            "name",
            b"name",
        ],
    ) -> None: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_app_id", b"_app_id"]
    ) -> typing_extensions___Literal["app_id"]: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_name", b"_name"]
    ) -> typing_extensions___Literal["name"]: ...

type___MobileApplicationInfo = MobileApplicationInfo

class LocationInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    geo_target_constant: typing___Text = ...
    def __init__(
        self, *, geo_target_constant: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_geo_target_constant",
            b"_geo_target_constant",
            "geo_target_constant",
            b"geo_target_constant",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_geo_target_constant",
            b"_geo_target_constant",
            "geo_target_constant",
            b"geo_target_constant",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_geo_target_constant", b"_geo_target_constant"
        ],
    ) -> typing_extensions___Literal["geo_target_constant"]: ...

type___LocationInfo = LocationInfo

class DeviceInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___device_pb2___DeviceEnum.DeviceValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___device_pb2___DeviceEnum.DeviceValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___DeviceInfo = DeviceInfo

class PreferredContentInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___preferred_content_type_pb2___PreferredContentTypeEnum.PreferredContentTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___preferred_content_type_pb2___PreferredContentTypeEnum.PreferredContentTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___PreferredContentInfo = PreferredContentInfo

class ListingGroupInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___listing_group_type_pb2___ListingGroupTypeEnum.ListingGroupTypeValue = ...
    parent_ad_group_criterion: typing___Text = ...
    @property
    def case_value(self) -> type___ListingDimensionInfo: ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___listing_group_type_pb2___ListingGroupTypeEnum.ListingGroupTypeValue
        ] = None,
        case_value: typing___Optional[type___ListingDimensionInfo] = None,
        parent_ad_group_criterion: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_parent_ad_group_criterion",
            b"_parent_ad_group_criterion",
            "case_value",
            b"case_value",
            "parent_ad_group_criterion",
            b"parent_ad_group_criterion",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_parent_ad_group_criterion",
            b"_parent_ad_group_criterion",
            "case_value",
            b"case_value",
            "parent_ad_group_criterion",
            b"parent_ad_group_criterion",
            "type",
            b"type",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_parent_ad_group_criterion", b"_parent_ad_group_criterion"
        ],
    ) -> typing_extensions___Literal["parent_ad_group_criterion"]: ...

type___ListingGroupInfo = ListingGroupInfo

class ListingScopeInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    @property
    def dimensions(
        self,
    ) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___ListingDimensionInfo
    ]: ...
    def __init__(
        self,
        *,
        dimensions: typing___Optional[
            typing___Iterable[type___ListingDimensionInfo]
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["dimensions", b"dimensions"]
    ) -> None: ...

type___ListingScopeInfo = ListingScopeInfo

class ListingDimensionInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    @property
    def hotel_id(self) -> type___HotelIdInfo: ...
    @property
    def hotel_class(self) -> type___HotelClassInfo: ...
    @property
    def hotel_country_region(self) -> type___HotelCountryRegionInfo: ...
    @property
    def hotel_state(self) -> type___HotelStateInfo: ...
    @property
    def hotel_city(self) -> type___HotelCityInfo: ...
    @property
    def product_bidding_category(self) -> type___ProductBiddingCategoryInfo: ...
    @property
    def product_brand(self) -> type___ProductBrandInfo: ...
    @property
    def product_channel(self) -> type___ProductChannelInfo: ...
    @property
    def product_channel_exclusivity(self) -> type___ProductChannelExclusivityInfo: ...
    @property
    def product_condition(self) -> type___ProductConditionInfo: ...
    @property
    def product_custom_attribute(self) -> type___ProductCustomAttributeInfo: ...
    @property
    def product_item_id(self) -> type___ProductItemIdInfo: ...
    @property
    def product_type(self) -> type___ProductTypeInfo: ...
    @property
    def unknown_listing_dimension(self) -> type___UnknownListingDimensionInfo: ...
    def __init__(
        self,
        *,
        hotel_id: typing___Optional[type___HotelIdInfo] = None,
        hotel_class: typing___Optional[type___HotelClassInfo] = None,
        hotel_country_region: typing___Optional[type___HotelCountryRegionInfo] = None,
        hotel_state: typing___Optional[type___HotelStateInfo] = None,
        hotel_city: typing___Optional[type___HotelCityInfo] = None,
        product_bidding_category: typing___Optional[
            type___ProductBiddingCategoryInfo
        ] = None,
        product_brand: typing___Optional[type___ProductBrandInfo] = None,
        product_channel: typing___Optional[type___ProductChannelInfo] = None,
        product_channel_exclusivity: typing___Optional[
            type___ProductChannelExclusivityInfo
        ] = None,
        product_condition: typing___Optional[type___ProductConditionInfo] = None,
        product_custom_attribute: typing___Optional[
            type___ProductCustomAttributeInfo
        ] = None,
        product_item_id: typing___Optional[type___ProductItemIdInfo] = None,
        product_type: typing___Optional[type___ProductTypeInfo] = None,
        unknown_listing_dimension: typing___Optional[
            type___UnknownListingDimensionInfo
        ] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "dimension",
            b"dimension",
            "hotel_city",
            b"hotel_city",
            "hotel_class",
            b"hotel_class",
            "hotel_country_region",
            b"hotel_country_region",
            "hotel_id",
            b"hotel_id",
            "hotel_state",
            b"hotel_state",
            "product_bidding_category",
            b"product_bidding_category",
            "product_brand",
            b"product_brand",
            "product_channel",
            b"product_channel",
            "product_channel_exclusivity",
            b"product_channel_exclusivity",
            "product_condition",
            b"product_condition",
            "product_custom_attribute",
            b"product_custom_attribute",
            "product_item_id",
            b"product_item_id",
            "product_type",
            b"product_type",
            "unknown_listing_dimension",
            b"unknown_listing_dimension",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "dimension",
            b"dimension",
            "hotel_city",
            b"hotel_city",
            "hotel_class",
            b"hotel_class",
            "hotel_country_region",
            b"hotel_country_region",
            "hotel_id",
            b"hotel_id",
            "hotel_state",
            b"hotel_state",
            "product_bidding_category",
            b"product_bidding_category",
            "product_brand",
            b"product_brand",
            "product_channel",
            b"product_channel",
            "product_channel_exclusivity",
            b"product_channel_exclusivity",
            "product_condition",
            b"product_condition",
            "product_custom_attribute",
            b"product_custom_attribute",
            "product_item_id",
            b"product_item_id",
            "product_type",
            b"product_type",
            "unknown_listing_dimension",
            b"unknown_listing_dimension",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["dimension", b"dimension"]
    ) -> typing_extensions___Literal[
        "hotel_id",
        "hotel_class",
        "hotel_country_region",
        "hotel_state",
        "hotel_city",
        "product_bidding_category",
        "product_brand",
        "product_channel",
        "product_channel_exclusivity",
        "product_condition",
        "product_custom_attribute",
        "product_item_id",
        "product_type",
        "unknown_listing_dimension",
    ]: ...

type___ListingDimensionInfo = ListingDimensionInfo

class HotelIdInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    value: typing___Text = ...
    def __init__(self, *, value: typing___Optional[typing___Text] = None,) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_value", b"_value"]
    ) -> typing_extensions___Literal["value"]: ...

type___HotelIdInfo = HotelIdInfo

class HotelClassInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    value: builtin___int = ...
    def __init__(self, *, value: typing___Optional[builtin___int] = None,) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_value", b"_value"]
    ) -> typing_extensions___Literal["value"]: ...

type___HotelClassInfo = HotelClassInfo

class HotelCountryRegionInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    country_region_criterion: typing___Text = ...
    def __init__(
        self, *, country_region_criterion: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_country_region_criterion",
            b"_country_region_criterion",
            "country_region_criterion",
            b"country_region_criterion",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_country_region_criterion",
            b"_country_region_criterion",
            "country_region_criterion",
            b"country_region_criterion",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_country_region_criterion", b"_country_region_criterion"
        ],
    ) -> typing_extensions___Literal["country_region_criterion"]: ...

type___HotelCountryRegionInfo = HotelCountryRegionInfo

class HotelStateInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    state_criterion: typing___Text = ...
    def __init__(
        self, *, state_criterion: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_state_criterion",
            b"_state_criterion",
            "state_criterion",
            b"state_criterion",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_state_criterion",
            b"_state_criterion",
            "state_criterion",
            b"state_criterion",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_state_criterion", b"_state_criterion"
        ],
    ) -> typing_extensions___Literal["state_criterion"]: ...

type___HotelStateInfo = HotelStateInfo

class HotelCityInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    city_criterion: typing___Text = ...
    def __init__(
        self, *, city_criterion: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_city_criterion", b"_city_criterion", "city_criterion", b"city_criterion"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_city_criterion", b"_city_criterion", "city_criterion", b"city_criterion"
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_city_criterion", b"_city_criterion"],
    ) -> typing_extensions___Literal["city_criterion"]: ...

type___HotelCityInfo = HotelCityInfo

class ProductBiddingCategoryInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    id: builtin___int = ...
    country_code: typing___Text = ...
    level: google___ads___googleads___v6___enums___product_bidding_category_level_pb2___ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevelValue = ...
    def __init__(
        self,
        *,
        id: typing___Optional[builtin___int] = None,
        country_code: typing___Optional[typing___Text] = None,
        level: typing___Optional[
            google___ads___googleads___v6___enums___product_bidding_category_level_pb2___ProductBiddingCategoryLevelEnum.ProductBiddingCategoryLevelValue
        ] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_country_code",
            b"_country_code",
            "_id",
            b"_id",
            "country_code",
            b"country_code",
            "id",
            b"id",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_country_code",
            b"_country_code",
            "_id",
            b"_id",
            "country_code",
            b"country_code",
            "id",
            b"id",
            "level",
            b"level",
        ],
    ) -> None: ...
    @typing___overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_country_code", b"_country_code"],
    ) -> typing_extensions___Literal["country_code"]: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_id", b"_id"]
    ) -> typing_extensions___Literal["id"]: ...

type___ProductBiddingCategoryInfo = ProductBiddingCategoryInfo

class ProductBrandInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    value: typing___Text = ...
    def __init__(self, *, value: typing___Optional[typing___Text] = None,) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_value", b"_value"]
    ) -> typing_extensions___Literal["value"]: ...

type___ProductBrandInfo = ProductBrandInfo

class ProductChannelInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    channel: google___ads___googleads___v6___enums___product_channel_pb2___ProductChannelEnum.ProductChannelValue = ...
    def __init__(
        self,
        *,
        channel: typing___Optional[
            google___ads___googleads___v6___enums___product_channel_pb2___ProductChannelEnum.ProductChannelValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["channel", b"channel"]
    ) -> None: ...

type___ProductChannelInfo = ProductChannelInfo

class ProductChannelExclusivityInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    channel_exclusivity: google___ads___googleads___v6___enums___product_channel_exclusivity_pb2___ProductChannelExclusivityEnum.ProductChannelExclusivityValue = ...
    def __init__(
        self,
        *,
        channel_exclusivity: typing___Optional[
            google___ads___googleads___v6___enums___product_channel_exclusivity_pb2___ProductChannelExclusivityEnum.ProductChannelExclusivityValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "channel_exclusivity", b"channel_exclusivity"
        ],
    ) -> None: ...

type___ProductChannelExclusivityInfo = ProductChannelExclusivityInfo

class ProductConditionInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    condition: google___ads___googleads___v6___enums___product_condition_pb2___ProductConditionEnum.ProductConditionValue = ...
    def __init__(
        self,
        *,
        condition: typing___Optional[
            google___ads___googleads___v6___enums___product_condition_pb2___ProductConditionEnum.ProductConditionValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["condition", b"condition"]
    ) -> None: ...

type___ProductConditionInfo = ProductConditionInfo

class ProductCustomAttributeInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    value: typing___Text = ...
    index: google___ads___googleads___v6___enums___product_custom_attribute_index_pb2___ProductCustomAttributeIndexEnum.ProductCustomAttributeIndexValue = ...
    def __init__(
        self,
        *,
        value: typing___Optional[typing___Text] = None,
        index: typing___Optional[
            google___ads___googleads___v6___enums___product_custom_attribute_index_pb2___ProductCustomAttributeIndexEnum.ProductCustomAttributeIndexValue
        ] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_value", b"_value", "index", b"index", "value", b"value"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_value", b"_value"]
    ) -> typing_extensions___Literal["value"]: ...

type___ProductCustomAttributeInfo = ProductCustomAttributeInfo

class ProductItemIdInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    value: typing___Text = ...
    def __init__(self, *, value: typing___Optional[typing___Text] = None,) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_value", b"_value"]
    ) -> typing_extensions___Literal["value"]: ...

type___ProductItemIdInfo = ProductItemIdInfo

class ProductTypeInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    value: typing___Text = ...
    level: google___ads___googleads___v6___enums___product_type_level_pb2___ProductTypeLevelEnum.ProductTypeLevelValue = ...
    def __init__(
        self,
        *,
        value: typing___Optional[typing___Text] = None,
        level: typing___Optional[
            google___ads___googleads___v6___enums___product_type_level_pb2___ProductTypeLevelEnum.ProductTypeLevelValue
        ] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal["_value", b"_value", "value", b"value"],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_value", b"_value", "level", b"level", "value", b"value"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_value", b"_value"]
    ) -> typing_extensions___Literal["value"]: ...

type___ProductTypeInfo = ProductTypeInfo

class UnknownListingDimensionInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    def __init__(self,) -> None: ...

type___UnknownListingDimensionInfo = UnknownListingDimensionInfo

class HotelDateSelectionTypeInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___hotel_date_selection_type_pb2___HotelDateSelectionTypeEnum.HotelDateSelectionTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___hotel_date_selection_type_pb2___HotelDateSelectionTypeEnum.HotelDateSelectionTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___HotelDateSelectionTypeInfo = HotelDateSelectionTypeInfo

class HotelAdvanceBookingWindowInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    min_days: builtin___int = ...
    max_days: builtin___int = ...
    def __init__(
        self,
        *,
        min_days: typing___Optional[builtin___int] = None,
        max_days: typing___Optional[builtin___int] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_max_days",
            b"_max_days",
            "_min_days",
            b"_min_days",
            "max_days",
            b"max_days",
            "min_days",
            b"min_days",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_max_days",
            b"_max_days",
            "_min_days",
            b"_min_days",
            "max_days",
            b"max_days",
            "min_days",
            b"min_days",
        ],
    ) -> None: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_max_days", b"_max_days"]
    ) -> typing_extensions___Literal["max_days"]: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_min_days", b"_min_days"]
    ) -> typing_extensions___Literal["min_days"]: ...

type___HotelAdvanceBookingWindowInfo = HotelAdvanceBookingWindowInfo

class HotelLengthOfStayInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    min_nights: builtin___int = ...
    max_nights: builtin___int = ...
    def __init__(
        self,
        *,
        min_nights: typing___Optional[builtin___int] = None,
        max_nights: typing___Optional[builtin___int] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_max_nights",
            b"_max_nights",
            "_min_nights",
            b"_min_nights",
            "max_nights",
            b"max_nights",
            "min_nights",
            b"min_nights",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_max_nights",
            b"_max_nights",
            "_min_nights",
            b"_min_nights",
            "max_nights",
            b"max_nights",
            "min_nights",
            b"min_nights",
        ],
    ) -> None: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_max_nights", b"_max_nights"]
    ) -> typing_extensions___Literal["max_nights"]: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_min_nights", b"_min_nights"]
    ) -> typing_extensions___Literal["min_nights"]: ...

type___HotelLengthOfStayInfo = HotelLengthOfStayInfo

class HotelCheckInDayInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    day_of_week: google___ads___googleads___v6___enums___day_of_week_pb2___DayOfWeekEnum.DayOfWeekValue = ...
    def __init__(
        self,
        *,
        day_of_week: typing___Optional[
            google___ads___googleads___v6___enums___day_of_week_pb2___DayOfWeekEnum.DayOfWeekValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["day_of_week", b"day_of_week"]
    ) -> None: ...

type___HotelCheckInDayInfo = HotelCheckInDayInfo

class InteractionTypeInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___interaction_type_pb2___InteractionTypeEnum.InteractionTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___interaction_type_pb2___InteractionTypeEnum.InteractionTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___InteractionTypeInfo = InteractionTypeInfo

class AdScheduleInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    start_minute: google___ads___googleads___v6___enums___minute_of_hour_pb2___MinuteOfHourEnum.MinuteOfHourValue = ...
    end_minute: google___ads___googleads___v6___enums___minute_of_hour_pb2___MinuteOfHourEnum.MinuteOfHourValue = ...
    start_hour: builtin___int = ...
    end_hour: builtin___int = ...
    day_of_week: google___ads___googleads___v6___enums___day_of_week_pb2___DayOfWeekEnum.DayOfWeekValue = ...
    def __init__(
        self,
        *,
        start_minute: typing___Optional[
            google___ads___googleads___v6___enums___minute_of_hour_pb2___MinuteOfHourEnum.MinuteOfHourValue
        ] = None,
        end_minute: typing___Optional[
            google___ads___googleads___v6___enums___minute_of_hour_pb2___MinuteOfHourEnum.MinuteOfHourValue
        ] = None,
        start_hour: typing___Optional[builtin___int] = None,
        end_hour: typing___Optional[builtin___int] = None,
        day_of_week: typing___Optional[
            google___ads___googleads___v6___enums___day_of_week_pb2___DayOfWeekEnum.DayOfWeekValue
        ] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_end_hour",
            b"_end_hour",
            "_start_hour",
            b"_start_hour",
            "end_hour",
            b"end_hour",
            "start_hour",
            b"start_hour",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_end_hour",
            b"_end_hour",
            "_start_hour",
            b"_start_hour",
            "day_of_week",
            b"day_of_week",
            "end_hour",
            b"end_hour",
            "end_minute",
            b"end_minute",
            "start_hour",
            b"start_hour",
            "start_minute",
            b"start_minute",
        ],
    ) -> None: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_end_hour", b"_end_hour"]
    ) -> typing_extensions___Literal["end_hour"]: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_start_hour", b"_start_hour"]
    ) -> typing_extensions___Literal["start_hour"]: ...

type___AdScheduleInfo = AdScheduleInfo

class AgeRangeInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___age_range_type_pb2___AgeRangeTypeEnum.AgeRangeTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___age_range_type_pb2___AgeRangeTypeEnum.AgeRangeTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___AgeRangeInfo = AgeRangeInfo

class GenderInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___gender_type_pb2___GenderTypeEnum.GenderTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___gender_type_pb2___GenderTypeEnum.GenderTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___GenderInfo = GenderInfo

class IncomeRangeInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___income_range_type_pb2___IncomeRangeTypeEnum.IncomeRangeTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___income_range_type_pb2___IncomeRangeTypeEnum.IncomeRangeTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___IncomeRangeInfo = IncomeRangeInfo

class ParentalStatusInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___parental_status_type_pb2___ParentalStatusTypeEnum.ParentalStatusTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___parental_status_type_pb2___ParentalStatusTypeEnum.ParentalStatusTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___ParentalStatusInfo = ParentalStatusInfo

class YouTubeVideoInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    video_id: typing___Text = ...
    def __init__(
        self, *, video_id: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_video_id", b"_video_id", "video_id", b"video_id"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_video_id", b"_video_id", "video_id", b"video_id"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_video_id", b"_video_id"]
    ) -> typing_extensions___Literal["video_id"]: ...

type___YouTubeVideoInfo = YouTubeVideoInfo

class YouTubeChannelInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    channel_id: typing___Text = ...
    def __init__(
        self, *, channel_id: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_channel_id", b"_channel_id", "channel_id", b"channel_id"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_channel_id", b"_channel_id", "channel_id", b"channel_id"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_channel_id", b"_channel_id"]
    ) -> typing_extensions___Literal["channel_id"]: ...

type___YouTubeChannelInfo = YouTubeChannelInfo

class UserListInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    user_list: typing___Text = ...
    def __init__(
        self, *, user_list: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_user_list", b"_user_list", "user_list", b"user_list"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_user_list", b"_user_list", "user_list", b"user_list"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_user_list", b"_user_list"]
    ) -> typing_extensions___Literal["user_list"]: ...

type___UserListInfo = UserListInfo

class ProximityInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    radius: builtin___float = ...
    radius_units: google___ads___googleads___v6___enums___proximity_radius_units_pb2___ProximityRadiusUnitsEnum.ProximityRadiusUnitsValue = ...
    @property
    def geo_point(self) -> type___GeoPointInfo: ...
    @property
    def address(self) -> type___AddressInfo: ...
    def __init__(
        self,
        *,
        geo_point: typing___Optional[type___GeoPointInfo] = None,
        radius: typing___Optional[builtin___float] = None,
        radius_units: typing___Optional[
            google___ads___googleads___v6___enums___proximity_radius_units_pb2___ProximityRadiusUnitsEnum.ProximityRadiusUnitsValue
        ] = None,
        address: typing___Optional[type___AddressInfo] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_radius",
            b"_radius",
            "address",
            b"address",
            "geo_point",
            b"geo_point",
            "radius",
            b"radius",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_radius",
            b"_radius",
            "address",
            b"address",
            "geo_point",
            b"geo_point",
            "radius",
            b"radius",
            "radius_units",
            b"radius_units",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_radius", b"_radius"]
    ) -> typing_extensions___Literal["radius"]: ...

type___ProximityInfo = ProximityInfo

class GeoPointInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    longitude_in_micro_degrees: builtin___int = ...
    latitude_in_micro_degrees: builtin___int = ...
    def __init__(
        self,
        *,
        longitude_in_micro_degrees: typing___Optional[builtin___int] = None,
        latitude_in_micro_degrees: typing___Optional[builtin___int] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_latitude_in_micro_degrees",
            b"_latitude_in_micro_degrees",
            "_longitude_in_micro_degrees",
            b"_longitude_in_micro_degrees",
            "latitude_in_micro_degrees",
            b"latitude_in_micro_degrees",
            "longitude_in_micro_degrees",
            b"longitude_in_micro_degrees",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_latitude_in_micro_degrees",
            b"_latitude_in_micro_degrees",
            "_longitude_in_micro_degrees",
            b"_longitude_in_micro_degrees",
            "latitude_in_micro_degrees",
            b"latitude_in_micro_degrees",
            "longitude_in_micro_degrees",
            b"longitude_in_micro_degrees",
        ],
    ) -> None: ...
    @typing___overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_latitude_in_micro_degrees", b"_latitude_in_micro_degrees"
        ],
    ) -> typing_extensions___Literal["latitude_in_micro_degrees"]: ...
    @typing___overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_longitude_in_micro_degrees", b"_longitude_in_micro_degrees"
        ],
    ) -> typing_extensions___Literal["longitude_in_micro_degrees"]: ...

type___GeoPointInfo = GeoPointInfo

class AddressInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    postal_code: typing___Text = ...
    province_code: typing___Text = ...
    country_code: typing___Text = ...
    province_name: typing___Text = ...
    street_address: typing___Text = ...
    street_address2: typing___Text = ...
    city_name: typing___Text = ...
    def __init__(
        self,
        *,
        postal_code: typing___Optional[typing___Text] = None,
        province_code: typing___Optional[typing___Text] = None,
        country_code: typing___Optional[typing___Text] = None,
        province_name: typing___Optional[typing___Text] = None,
        street_address: typing___Optional[typing___Text] = None,
        street_address2: typing___Optional[typing___Text] = None,
        city_name: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_city_name",
            b"_city_name",
            "_country_code",
            b"_country_code",
            "_postal_code",
            b"_postal_code",
            "_province_code",
            b"_province_code",
            "_province_name",
            b"_province_name",
            "_street_address",
            b"_street_address",
            "_street_address2",
            b"_street_address2",
            "city_name",
            b"city_name",
            "country_code",
            b"country_code",
            "postal_code",
            b"postal_code",
            "province_code",
            b"province_code",
            "province_name",
            b"province_name",
            "street_address",
            b"street_address",
            "street_address2",
            b"street_address2",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_city_name",
            b"_city_name",
            "_country_code",
            b"_country_code",
            "_postal_code",
            b"_postal_code",
            "_province_code",
            b"_province_code",
            "_province_name",
            b"_province_name",
            "_street_address",
            b"_street_address",
            "_street_address2",
            b"_street_address2",
            "city_name",
            b"city_name",
            "country_code",
            b"country_code",
            "postal_code",
            b"postal_code",
            "province_code",
            b"province_code",
            "province_name",
            b"province_name",
            "street_address",
            b"street_address",
            "street_address2",
            b"street_address2",
        ],
    ) -> None: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_city_name", b"_city_name"]
    ) -> typing_extensions___Literal["city_name"]: ...
    @typing___overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_country_code", b"_country_code"],
    ) -> typing_extensions___Literal["country_code"]: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_postal_code", b"_postal_code"]
    ) -> typing_extensions___Literal["postal_code"]: ...
    @typing___overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_province_code", b"_province_code"],
    ) -> typing_extensions___Literal["province_code"]: ...
    @typing___overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_province_name", b"_province_name"],
    ) -> typing_extensions___Literal["province_name"]: ...
    @typing___overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_street_address", b"_street_address"],
    ) -> typing_extensions___Literal["street_address"]: ...
    @typing___overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_street_address2", b"_street_address2"
        ],
    ) -> typing_extensions___Literal["street_address2"]: ...

type___AddressInfo = AddressInfo

class TopicInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    topic_constant: typing___Text = ...
    path: google___protobuf___internal___containers___RepeatedScalarFieldContainer[
        typing___Text
    ] = ...
    def __init__(
        self,
        *,
        topic_constant: typing___Optional[typing___Text] = None,
        path: typing___Optional[typing___Iterable[typing___Text]] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_topic_constant", b"_topic_constant", "topic_constant", b"topic_constant"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_topic_constant",
            b"_topic_constant",
            "path",
            b"path",
            "topic_constant",
            b"topic_constant",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_topic_constant", b"_topic_constant"],
    ) -> typing_extensions___Literal["topic_constant"]: ...

type___TopicInfo = TopicInfo

class LanguageInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    language_constant: typing___Text = ...
    def __init__(
        self, *, language_constant: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_language_constant",
            b"_language_constant",
            "language_constant",
            b"language_constant",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_language_constant",
            b"_language_constant",
            "language_constant",
            b"language_constant",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_language_constant", b"_language_constant"
        ],
    ) -> typing_extensions___Literal["language_constant"]: ...

type___LanguageInfo = LanguageInfo

class IpBlockInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    ip_address: typing___Text = ...
    def __init__(
        self, *, ip_address: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_ip_address", b"_ip_address", "ip_address", b"ip_address"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_ip_address", b"_ip_address", "ip_address", b"ip_address"
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_ip_address", b"_ip_address"]
    ) -> typing_extensions___Literal["ip_address"]: ...

type___IpBlockInfo = IpBlockInfo

class ContentLabelInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___content_label_type_pb2___ContentLabelTypeEnum.ContentLabelTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___content_label_type_pb2___ContentLabelTypeEnum.ContentLabelTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___ContentLabelInfo = ContentLabelInfo

class CarrierInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    carrier_constant: typing___Text = ...
    def __init__(
        self, *, carrier_constant: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_carrier_constant",
            b"_carrier_constant",
            "carrier_constant",
            b"carrier_constant",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_carrier_constant",
            b"_carrier_constant",
            "carrier_constant",
            b"carrier_constant",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_carrier_constant", b"_carrier_constant"
        ],
    ) -> typing_extensions___Literal["carrier_constant"]: ...

type___CarrierInfo = CarrierInfo

class UserInterestInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    user_interest_category: typing___Text = ...
    def __init__(
        self, *, user_interest_category: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_user_interest_category",
            b"_user_interest_category",
            "user_interest_category",
            b"user_interest_category",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_user_interest_category",
            b"_user_interest_category",
            "user_interest_category",
            b"user_interest_category",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_user_interest_category", b"_user_interest_category"
        ],
    ) -> typing_extensions___Literal["user_interest_category"]: ...

type___UserInterestInfo = UserInterestInfo

class WebpageInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    criterion_name: typing___Text = ...
    @property
    def conditions(
        self,
    ) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[
        type___WebpageConditionInfo
    ]: ...
    def __init__(
        self,
        *,
        criterion_name: typing___Optional[typing___Text] = None,
        conditions: typing___Optional[
            typing___Iterable[type___WebpageConditionInfo]
        ] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_criterion_name", b"_criterion_name", "criterion_name", b"criterion_name"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_criterion_name",
            b"_criterion_name",
            "conditions",
            b"conditions",
            "criterion_name",
            b"criterion_name",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_criterion_name", b"_criterion_name"],
    ) -> typing_extensions___Literal["criterion_name"]: ...

type___WebpageInfo = WebpageInfo

class WebpageConditionInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    operand: google___ads___googleads___v6___enums___webpage_condition_operand_pb2___WebpageConditionOperandEnum.WebpageConditionOperandValue = ...
    operator: google___ads___googleads___v6___enums___webpage_condition_operator_pb2___WebpageConditionOperatorEnum.WebpageConditionOperatorValue = ...
    argument: typing___Text = ...
    def __init__(
        self,
        *,
        operand: typing___Optional[
            google___ads___googleads___v6___enums___webpage_condition_operand_pb2___WebpageConditionOperandEnum.WebpageConditionOperandValue
        ] = None,
        operator: typing___Optional[
            google___ads___googleads___v6___enums___webpage_condition_operator_pb2___WebpageConditionOperatorEnum.WebpageConditionOperatorValue
        ] = None,
        argument: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_argument", b"_argument", "argument", b"argument"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_argument",
            b"_argument",
            "argument",
            b"argument",
            "operand",
            b"operand",
            "operator",
            b"operator",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_argument", b"_argument"]
    ) -> typing_extensions___Literal["argument"]: ...

type___WebpageConditionInfo = WebpageConditionInfo

class OperatingSystemVersionInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    operating_system_version_constant: typing___Text = ...
    def __init__(
        self,
        *,
        operating_system_version_constant: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_operating_system_version_constant",
            b"_operating_system_version_constant",
            "operating_system_version_constant",
            b"operating_system_version_constant",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_operating_system_version_constant",
            b"_operating_system_version_constant",
            "operating_system_version_constant",
            b"operating_system_version_constant",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_operating_system_version_constant", b"_operating_system_version_constant"
        ],
    ) -> typing_extensions___Literal["operating_system_version_constant"]: ...

type___OperatingSystemVersionInfo = OperatingSystemVersionInfo

class AppPaymentModelInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    type: google___ads___googleads___v6___enums___app_payment_model_type_pb2___AppPaymentModelTypeEnum.AppPaymentModelTypeValue = ...
    def __init__(
        self,
        *,
        type: typing___Optional[
            google___ads___googleads___v6___enums___app_payment_model_type_pb2___AppPaymentModelTypeEnum.AppPaymentModelTypeValue
        ] = None,
    ) -> None: ...
    def ClearField(
        self, field_name: typing_extensions___Literal["type", b"type"]
    ) -> None: ...

type___AppPaymentModelInfo = AppPaymentModelInfo

class MobileDeviceInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    mobile_device_constant: typing___Text = ...
    def __init__(
        self, *, mobile_device_constant: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_mobile_device_constant",
            b"_mobile_device_constant",
            "mobile_device_constant",
            b"mobile_device_constant",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_mobile_device_constant",
            b"_mobile_device_constant",
            "mobile_device_constant",
            b"mobile_device_constant",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_mobile_device_constant", b"_mobile_device_constant"
        ],
    ) -> typing_extensions___Literal["mobile_device_constant"]: ...

type___MobileDeviceInfo = MobileDeviceInfo

class CustomAffinityInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    custom_affinity: typing___Text = ...
    def __init__(
        self, *, custom_affinity: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_custom_affinity",
            b"_custom_affinity",
            "custom_affinity",
            b"custom_affinity",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_custom_affinity",
            b"_custom_affinity",
            "custom_affinity",
            b"custom_affinity",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal[
            "_custom_affinity", b"_custom_affinity"
        ],
    ) -> typing_extensions___Literal["custom_affinity"]: ...

type___CustomAffinityInfo = CustomAffinityInfo

class CustomIntentInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    custom_intent: typing___Text = ...
    def __init__(
        self, *, custom_intent: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_custom_intent", b"_custom_intent", "custom_intent", b"custom_intent"
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_custom_intent", b"_custom_intent", "custom_intent", b"custom_intent"
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions___Literal["_custom_intent", b"_custom_intent"],
    ) -> typing_extensions___Literal["custom_intent"]: ...

type___CustomIntentInfo = CustomIntentInfo

class LocationGroupInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    feed: typing___Text = ...
    geo_target_constants: google___protobuf___internal___containers___RepeatedScalarFieldContainer[
        typing___Text
    ] = ...
    radius: builtin___int = ...
    radius_units: google___ads___googleads___v6___enums___location_group_radius_units_pb2___LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnitsValue = ...
    feed_item_sets: google___protobuf___internal___containers___RepeatedScalarFieldContainer[
        typing___Text
    ] = ...
    def __init__(
        self,
        *,
        feed: typing___Optional[typing___Text] = None,
        geo_target_constants: typing___Optional[
            typing___Iterable[typing___Text]
        ] = None,
        radius: typing___Optional[builtin___int] = None,
        radius_units: typing___Optional[
            google___ads___googleads___v6___enums___location_group_radius_units_pb2___LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnitsValue
        ] = None,
        feed_item_sets: typing___Optional[typing___Iterable[typing___Text]] = None,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions___Literal[
            "_feed",
            b"_feed",
            "_radius",
            b"_radius",
            "feed",
            b"feed",
            "radius",
            b"radius",
        ],
    ) -> builtin___bool: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "_feed",
            b"_feed",
            "_radius",
            b"_radius",
            "feed",
            b"feed",
            "feed_item_sets",
            b"feed_item_sets",
            "geo_target_constants",
            b"geo_target_constants",
            "radius",
            b"radius",
            "radius_units",
            b"radius_units",
        ],
    ) -> None: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_feed", b"_feed"]
    ) -> typing_extensions___Literal["feed"]: ...
    @typing___overload
    def WhichOneof(
        self, oneof_group: typing_extensions___Literal["_radius", b"_radius"]
    ) -> typing_extensions___Literal["radius"]: ...

type___LocationGroupInfo = LocationGroupInfo

class CustomAudienceInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    custom_audience: typing___Text = ...
    def __init__(
        self, *, custom_audience: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal["custom_audience", b"custom_audience"],
    ) -> None: ...

type___CustomAudienceInfo = CustomAudienceInfo

class CombinedAudienceInfo(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    combined_audience: typing___Text = ...
    def __init__(
        self, *, combined_audience: typing___Optional[typing___Text] = None,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing_extensions___Literal[
            "combined_audience", b"combined_audience"
        ],
    ) -> None: ...

type___CombinedAudienceInfo = CombinedAudienceInfo
