"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.ads.google_ads.v5.proto.enums.customer_pay_per_conversion_eligibility_failure_reason_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 Customer(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    RESOURCE_NAME_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    DESCRIPTIVE_NAME_FIELD_NUMBER: builtins.int
    CURRENCY_CODE_FIELD_NUMBER: builtins.int
    TIME_ZONE_FIELD_NUMBER: builtins.int
    TRACKING_URL_TEMPLATE_FIELD_NUMBER: builtins.int
    FINAL_URL_SUFFIX_FIELD_NUMBER: builtins.int
    AUTO_TAGGING_ENABLED_FIELD_NUMBER: builtins.int
    HAS_PARTNERS_BADGE_FIELD_NUMBER: builtins.int
    MANAGER_FIELD_NUMBER: builtins.int
    TEST_ACCOUNT_FIELD_NUMBER: builtins.int
    CALL_REPORTING_SETTING_FIELD_NUMBER: builtins.int
    CONVERSION_TRACKING_SETTING_FIELD_NUMBER: builtins.int
    REMARKETING_SETTING_FIELD_NUMBER: builtins.int
    PAY_PER_CONVERSION_ELIGIBILITY_FAILURE_REASONS_FIELD_NUMBER: builtins.int
    OPTIMIZATION_SCORE_FIELD_NUMBER: builtins.int
    resource_name: typing.Text = ...
    id: builtins.int = ...
    descriptive_name: typing.Text = ...
    currency_code: typing.Text = ...
    time_zone: typing.Text = ...
    tracking_url_template: typing.Text = ...
    final_url_suffix: typing.Text = ...
    auto_tagging_enabled: builtins.bool = ...
    has_partners_badge: builtins.bool = ...
    manager: builtins.bool = ...
    test_account: builtins.bool = ...
    pay_per_conversion_eligibility_failure_reasons: google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        google.ads.google_ads.v5.proto.enums.customer_pay_per_conversion_eligibility_failure_reason_pb2.CustomerPayPerConversionEligibilityFailureReasonEnum.CustomerPayPerConversionEligibilityFailureReason.V
    ] = ...
    optimization_score: builtins.float = ...
    @property
    def call_reporting_setting(self) -> global___CallReportingSetting: ...
    @property
    def conversion_tracking_setting(self) -> global___ConversionTrackingSetting: ...
    @property
    def remarketing_setting(self) -> global___RemarketingSetting: ...
    def __init__(
        self,
        *,
        resource_name: typing.Text = ...,
        id: builtins.int = ...,
        descriptive_name: typing.Text = ...,
        currency_code: typing.Text = ...,
        time_zone: typing.Text = ...,
        tracking_url_template: typing.Text = ...,
        final_url_suffix: typing.Text = ...,
        auto_tagging_enabled: builtins.bool = ...,
        has_partners_badge: builtins.bool = ...,
        manager: builtins.bool = ...,
        test_account: builtins.bool = ...,
        call_reporting_setting: typing.Optional[global___CallReportingSetting] = ...,
        conversion_tracking_setting: typing.Optional[
            global___ConversionTrackingSetting
        ] = ...,
        remarketing_setting: typing.Optional[global___RemarketingSetting] = ...,
        pay_per_conversion_eligibility_failure_reasons: typing.Optional[
            typing.Iterable[
                google.ads.google_ads.v5.proto.enums.customer_pay_per_conversion_eligibility_failure_reason_pb2.CustomerPayPerConversionEligibilityFailureReasonEnum.CustomerPayPerConversionEligibilityFailureReason.V
            ]
        ] = ...,
        optimization_score: builtins.float = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_auto_tagging_enabled",
            b"_auto_tagging_enabled",
            "_currency_code",
            b"_currency_code",
            "_descriptive_name",
            b"_descriptive_name",
            "_final_url_suffix",
            b"_final_url_suffix",
            "_has_partners_badge",
            b"_has_partners_badge",
            "_id",
            b"_id",
            "_manager",
            b"_manager",
            "_optimization_score",
            b"_optimization_score",
            "_test_account",
            b"_test_account",
            "_time_zone",
            b"_time_zone",
            "_tracking_url_template",
            b"_tracking_url_template",
            "auto_tagging_enabled",
            b"auto_tagging_enabled",
            "call_reporting_setting",
            b"call_reporting_setting",
            "conversion_tracking_setting",
            b"conversion_tracking_setting",
            "currency_code",
            b"currency_code",
            "descriptive_name",
            b"descriptive_name",
            "final_url_suffix",
            b"final_url_suffix",
            "has_partners_badge",
            b"has_partners_badge",
            "id",
            b"id",
            "manager",
            b"manager",
            "optimization_score",
            b"optimization_score",
            "remarketing_setting",
            b"remarketing_setting",
            "test_account",
            b"test_account",
            "time_zone",
            b"time_zone",
            "tracking_url_template",
            b"tracking_url_template",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_auto_tagging_enabled",
            b"_auto_tagging_enabled",
            "_currency_code",
            b"_currency_code",
            "_descriptive_name",
            b"_descriptive_name",
            "_final_url_suffix",
            b"_final_url_suffix",
            "_has_partners_badge",
            b"_has_partners_badge",
            "_id",
            b"_id",
            "_manager",
            b"_manager",
            "_optimization_score",
            b"_optimization_score",
            "_test_account",
            b"_test_account",
            "_time_zone",
            b"_time_zone",
            "_tracking_url_template",
            b"_tracking_url_template",
            "auto_tagging_enabled",
            b"auto_tagging_enabled",
            "call_reporting_setting",
            b"call_reporting_setting",
            "conversion_tracking_setting",
            b"conversion_tracking_setting",
            "currency_code",
            b"currency_code",
            "descriptive_name",
            b"descriptive_name",
            "final_url_suffix",
            b"final_url_suffix",
            "has_partners_badge",
            b"has_partners_badge",
            "id",
            b"id",
            "manager",
            b"manager",
            "optimization_score",
            b"optimization_score",
            "pay_per_conversion_eligibility_failure_reasons",
            b"pay_per_conversion_eligibility_failure_reasons",
            "remarketing_setting",
            b"remarketing_setting",
            "resource_name",
            b"resource_name",
            "test_account",
            b"test_account",
            "time_zone",
            b"time_zone",
            "tracking_url_template",
            b"tracking_url_template",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_auto_tagging_enabled", b"_auto_tagging_enabled"
        ],
    ) -> typing_extensions.Literal["auto_tagging_enabled"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal["_currency_code", b"_currency_code"],
    ) -> typing_extensions.Literal["currency_code"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_descriptive_name", b"_descriptive_name"
        ],
    ) -> typing_extensions.Literal["descriptive_name"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_final_url_suffix", b"_final_url_suffix"
        ],
    ) -> typing_extensions.Literal["final_url_suffix"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_has_partners_badge", b"_has_partners_badge"
        ],
    ) -> typing_extensions.Literal["has_partners_badge"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_id", b"_id"]
    ) -> typing_extensions.Literal["id"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_manager", b"_manager"]
    ) -> typing_extensions.Literal["manager"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_optimization_score", b"_optimization_score"
        ],
    ) -> typing_extensions.Literal["optimization_score"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_test_account", b"_test_account"]
    ) -> typing_extensions.Literal["test_account"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_time_zone", b"_time_zone"]
    ) -> typing_extensions.Literal["time_zone"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_tracking_url_template", b"_tracking_url_template"
        ],
    ) -> typing_extensions.Literal["tracking_url_template"]: ...

global___Customer = Customer

class CallReportingSetting(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CALL_REPORTING_ENABLED_FIELD_NUMBER: builtins.int
    CALL_CONVERSION_REPORTING_ENABLED_FIELD_NUMBER: builtins.int
    CALL_CONVERSION_ACTION_FIELD_NUMBER: builtins.int
    call_reporting_enabled: builtins.bool = ...
    call_conversion_reporting_enabled: builtins.bool = ...
    call_conversion_action: typing.Text = ...
    def __init__(
        self,
        *,
        call_reporting_enabled: builtins.bool = ...,
        call_conversion_reporting_enabled: builtins.bool = ...,
        call_conversion_action: typing.Text = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_call_conversion_action",
            b"_call_conversion_action",
            "_call_conversion_reporting_enabled",
            b"_call_conversion_reporting_enabled",
            "_call_reporting_enabled",
            b"_call_reporting_enabled",
            "call_conversion_action",
            b"call_conversion_action",
            "call_conversion_reporting_enabled",
            b"call_conversion_reporting_enabled",
            "call_reporting_enabled",
            b"call_reporting_enabled",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_call_conversion_action",
            b"_call_conversion_action",
            "_call_conversion_reporting_enabled",
            b"_call_conversion_reporting_enabled",
            "_call_reporting_enabled",
            b"_call_reporting_enabled",
            "call_conversion_action",
            b"call_conversion_action",
            "call_conversion_reporting_enabled",
            b"call_conversion_reporting_enabled",
            "call_reporting_enabled",
            b"call_reporting_enabled",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_call_conversion_action", b"_call_conversion_action"
        ],
    ) -> typing_extensions.Literal["call_conversion_action"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_call_conversion_reporting_enabled", b"_call_conversion_reporting_enabled"
        ],
    ) -> typing_extensions.Literal["call_conversion_reporting_enabled"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_call_reporting_enabled", b"_call_reporting_enabled"
        ],
    ) -> typing_extensions.Literal["call_reporting_enabled"]: ...

global___CallReportingSetting = CallReportingSetting

class ConversionTrackingSetting(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CONVERSION_TRACKING_ID_FIELD_NUMBER: builtins.int
    CROSS_ACCOUNT_CONVERSION_TRACKING_ID_FIELD_NUMBER: builtins.int
    conversion_tracking_id: builtins.int = ...
    cross_account_conversion_tracking_id: builtins.int = ...
    def __init__(
        self,
        *,
        conversion_tracking_id: builtins.int = ...,
        cross_account_conversion_tracking_id: builtins.int = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_conversion_tracking_id",
            b"_conversion_tracking_id",
            "_cross_account_conversion_tracking_id",
            b"_cross_account_conversion_tracking_id",
            "conversion_tracking_id",
            b"conversion_tracking_id",
            "cross_account_conversion_tracking_id",
            b"cross_account_conversion_tracking_id",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_conversion_tracking_id",
            b"_conversion_tracking_id",
            "_cross_account_conversion_tracking_id",
            b"_cross_account_conversion_tracking_id",
            "conversion_tracking_id",
            b"conversion_tracking_id",
            "cross_account_conversion_tracking_id",
            b"cross_account_conversion_tracking_id",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_tracking_id", b"_conversion_tracking_id"
        ],
    ) -> typing_extensions.Literal["conversion_tracking_id"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_cross_account_conversion_tracking_id",
            b"_cross_account_conversion_tracking_id",
        ],
    ) -> typing_extensions.Literal["cross_account_conversion_tracking_id"]: ...

global___ConversionTrackingSetting = ConversionTrackingSetting

class RemarketingSetting(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    GOOGLE_GLOBAL_SITE_TAG_FIELD_NUMBER: builtins.int
    google_global_site_tag: typing.Text = ...
    def __init__(
        self,
        *,
        google_global_site_tag: typing.Text = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_google_global_site_tag",
            b"_google_global_site_tag",
            "google_global_site_tag",
            b"google_global_site_tag",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_google_global_site_tag",
            b"_google_global_site_tag",
            "google_global_site_tag",
            b"google_global_site_tag",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_google_global_site_tag", b"_google_global_site_tag"
        ],
    ) -> typing_extensions.Literal["google_global_site_tag"]: ...

global___RemarketingSetting = RemarketingSetting
