"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import google.rpc.status_pb2
import typing
import typing_extensions

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

class UploadClickConversionsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CUSTOMER_ID_FIELD_NUMBER: builtins.int
    CONVERSIONS_FIELD_NUMBER: builtins.int
    PARTIAL_FAILURE_FIELD_NUMBER: builtins.int
    VALIDATE_ONLY_FIELD_NUMBER: builtins.int
    customer_id: typing.Text = ...
    partial_failure: builtins.bool = ...
    validate_only: builtins.bool = ...
    @property
    def conversions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ClickConversion
    ]: ...
    def __init__(
        self,
        *,
        customer_id: typing.Text = ...,
        conversions: typing.Optional[typing.Iterable[global___ClickConversion]] = ...,
        partial_failure: builtins.bool = ...,
        validate_only: builtins.bool = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "conversions",
            b"conversions",
            "customer_id",
            b"customer_id",
            "partial_failure",
            b"partial_failure",
            "validate_only",
            b"validate_only",
        ],
    ) -> None: ...

global___UploadClickConversionsRequest = UploadClickConversionsRequest

class UploadClickConversionsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    PARTIAL_FAILURE_ERROR_FIELD_NUMBER: builtins.int
    RESULTS_FIELD_NUMBER: builtins.int
    @property
    def partial_failure_error(self) -> google.rpc.status_pb2.Status: ...
    @property
    def results(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ClickConversionResult
    ]: ...
    def __init__(
        self,
        *,
        partial_failure_error: typing.Optional[google.rpc.status_pb2.Status] = ...,
        results: typing.Optional[typing.Iterable[global___ClickConversionResult]] = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "partial_failure_error", b"partial_failure_error"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "partial_failure_error", b"partial_failure_error", "results", b"results"
        ],
    ) -> None: ...

global___UploadClickConversionsResponse = UploadClickConversionsResponse

class UploadCallConversionsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CUSTOMER_ID_FIELD_NUMBER: builtins.int
    CONVERSIONS_FIELD_NUMBER: builtins.int
    PARTIAL_FAILURE_FIELD_NUMBER: builtins.int
    VALIDATE_ONLY_FIELD_NUMBER: builtins.int
    customer_id: typing.Text = ...
    partial_failure: builtins.bool = ...
    validate_only: builtins.bool = ...
    @property
    def conversions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___CallConversion
    ]: ...
    def __init__(
        self,
        *,
        customer_id: typing.Text = ...,
        conversions: typing.Optional[typing.Iterable[global___CallConversion]] = ...,
        partial_failure: builtins.bool = ...,
        validate_only: builtins.bool = ...,
    ) -> None: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "conversions",
            b"conversions",
            "customer_id",
            b"customer_id",
            "partial_failure",
            b"partial_failure",
            "validate_only",
            b"validate_only",
        ],
    ) -> None: ...

global___UploadCallConversionsRequest = UploadCallConversionsRequest

class UploadCallConversionsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    PARTIAL_FAILURE_ERROR_FIELD_NUMBER: builtins.int
    RESULTS_FIELD_NUMBER: builtins.int
    @property
    def partial_failure_error(self) -> google.rpc.status_pb2.Status: ...
    @property
    def results(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___CallConversionResult
    ]: ...
    def __init__(
        self,
        *,
        partial_failure_error: typing.Optional[google.rpc.status_pb2.Status] = ...,
        results: typing.Optional[typing.Iterable[global___CallConversionResult]] = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "partial_failure_error", b"partial_failure_error"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "partial_failure_error", b"partial_failure_error", "results", b"results"
        ],
    ) -> None: ...

global___UploadCallConversionsResponse = UploadCallConversionsResponse

class ClickConversion(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    GCLID_FIELD_NUMBER: builtins.int
    CONVERSION_ACTION_FIELD_NUMBER: builtins.int
    CONVERSION_DATE_TIME_FIELD_NUMBER: builtins.int
    CONVERSION_VALUE_FIELD_NUMBER: builtins.int
    CURRENCY_CODE_FIELD_NUMBER: builtins.int
    ORDER_ID_FIELD_NUMBER: builtins.int
    EXTERNAL_ATTRIBUTION_DATA_FIELD_NUMBER: builtins.int
    gclid: typing.Text = ...
    conversion_action: typing.Text = ...
    conversion_date_time: typing.Text = ...
    conversion_value: builtins.float = ...
    currency_code: typing.Text = ...
    order_id: typing.Text = ...
    @property
    def external_attribution_data(self) -> global___ExternalAttributionData: ...
    def __init__(
        self,
        *,
        gclid: typing.Text = ...,
        conversion_action: typing.Text = ...,
        conversion_date_time: typing.Text = ...,
        conversion_value: builtins.float = ...,
        currency_code: typing.Text = ...,
        order_id: typing.Text = ...,
        external_attribution_data: typing.Optional[
            global___ExternalAttributionData
        ] = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_conversion_action",
            b"_conversion_action",
            "_conversion_date_time",
            b"_conversion_date_time",
            "_conversion_value",
            b"_conversion_value",
            "_currency_code",
            b"_currency_code",
            "_gclid",
            b"_gclid",
            "_order_id",
            b"_order_id",
            "conversion_action",
            b"conversion_action",
            "conversion_date_time",
            b"conversion_date_time",
            "conversion_value",
            b"conversion_value",
            "currency_code",
            b"currency_code",
            "external_attribution_data",
            b"external_attribution_data",
            "gclid",
            b"gclid",
            "order_id",
            b"order_id",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_conversion_action",
            b"_conversion_action",
            "_conversion_date_time",
            b"_conversion_date_time",
            "_conversion_value",
            b"_conversion_value",
            "_currency_code",
            b"_currency_code",
            "_gclid",
            b"_gclid",
            "_order_id",
            b"_order_id",
            "conversion_action",
            b"conversion_action",
            "conversion_date_time",
            b"conversion_date_time",
            "conversion_value",
            b"conversion_value",
            "currency_code",
            b"currency_code",
            "external_attribution_data",
            b"external_attribution_data",
            "gclid",
            b"gclid",
            "order_id",
            b"order_id",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_action", b"_conversion_action"
        ],
    ) -> typing_extensions.Literal["conversion_action"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_date_time", b"_conversion_date_time"
        ],
    ) -> typing_extensions.Literal["conversion_date_time"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_value", b"_conversion_value"
        ],
    ) -> typing_extensions.Literal["conversion_value"]: ...
    @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["_gclid", b"_gclid"]
    ) -> typing_extensions.Literal["gclid"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_order_id", b"_order_id"]
    ) -> typing_extensions.Literal["order_id"]: ...

global___ClickConversion = ClickConversion

class CallConversion(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CALLER_ID_FIELD_NUMBER: builtins.int
    CALL_START_DATE_TIME_FIELD_NUMBER: builtins.int
    CONVERSION_ACTION_FIELD_NUMBER: builtins.int
    CONVERSION_DATE_TIME_FIELD_NUMBER: builtins.int
    CONVERSION_VALUE_FIELD_NUMBER: builtins.int
    CURRENCY_CODE_FIELD_NUMBER: builtins.int
    caller_id: typing.Text = ...
    call_start_date_time: typing.Text = ...
    conversion_action: typing.Text = ...
    conversion_date_time: typing.Text = ...
    conversion_value: builtins.float = ...
    currency_code: typing.Text = ...
    def __init__(
        self,
        *,
        caller_id: typing.Text = ...,
        call_start_date_time: typing.Text = ...,
        conversion_action: typing.Text = ...,
        conversion_date_time: typing.Text = ...,
        conversion_value: builtins.float = ...,
        currency_code: typing.Text = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_call_start_date_time",
            b"_call_start_date_time",
            "_caller_id",
            b"_caller_id",
            "_conversion_action",
            b"_conversion_action",
            "_conversion_date_time",
            b"_conversion_date_time",
            "_conversion_value",
            b"_conversion_value",
            "_currency_code",
            b"_currency_code",
            "call_start_date_time",
            b"call_start_date_time",
            "caller_id",
            b"caller_id",
            "conversion_action",
            b"conversion_action",
            "conversion_date_time",
            b"conversion_date_time",
            "conversion_value",
            b"conversion_value",
            "currency_code",
            b"currency_code",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_call_start_date_time",
            b"_call_start_date_time",
            "_caller_id",
            b"_caller_id",
            "_conversion_action",
            b"_conversion_action",
            "_conversion_date_time",
            b"_conversion_date_time",
            "_conversion_value",
            b"_conversion_value",
            "_currency_code",
            b"_currency_code",
            "call_start_date_time",
            b"call_start_date_time",
            "caller_id",
            b"caller_id",
            "conversion_action",
            b"conversion_action",
            "conversion_date_time",
            b"conversion_date_time",
            "conversion_value",
            b"conversion_value",
            "currency_code",
            b"currency_code",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_call_start_date_time", b"_call_start_date_time"
        ],
    ) -> typing_extensions.Literal["call_start_date_time"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_caller_id", b"_caller_id"]
    ) -> typing_extensions.Literal["caller_id"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_action", b"_conversion_action"
        ],
    ) -> typing_extensions.Literal["conversion_action"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_date_time", b"_conversion_date_time"
        ],
    ) -> typing_extensions.Literal["conversion_date_time"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_value", b"_conversion_value"
        ],
    ) -> typing_extensions.Literal["conversion_value"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal["_currency_code", b"_currency_code"],
    ) -> typing_extensions.Literal["currency_code"]: ...

global___CallConversion = CallConversion

class ExternalAttributionData(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    EXTERNAL_ATTRIBUTION_CREDIT_FIELD_NUMBER: builtins.int
    EXTERNAL_ATTRIBUTION_MODEL_FIELD_NUMBER: builtins.int
    external_attribution_credit: builtins.float = ...
    external_attribution_model: typing.Text = ...
    def __init__(
        self,
        *,
        external_attribution_credit: builtins.float = ...,
        external_attribution_model: typing.Text = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_external_attribution_credit",
            b"_external_attribution_credit",
            "_external_attribution_model",
            b"_external_attribution_model",
            "external_attribution_credit",
            b"external_attribution_credit",
            "external_attribution_model",
            b"external_attribution_model",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_external_attribution_credit",
            b"_external_attribution_credit",
            "_external_attribution_model",
            b"_external_attribution_model",
            "external_attribution_credit",
            b"external_attribution_credit",
            "external_attribution_model",
            b"external_attribution_model",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_external_attribution_credit", b"_external_attribution_credit"
        ],
    ) -> typing_extensions.Literal["external_attribution_credit"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_external_attribution_model", b"_external_attribution_model"
        ],
    ) -> typing_extensions.Literal["external_attribution_model"]: ...

global___ExternalAttributionData = ExternalAttributionData

class ClickConversionResult(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    GCLID_FIELD_NUMBER: builtins.int
    CONVERSION_ACTION_FIELD_NUMBER: builtins.int
    CONVERSION_DATE_TIME_FIELD_NUMBER: builtins.int
    gclid: typing.Text = ...
    conversion_action: typing.Text = ...
    conversion_date_time: typing.Text = ...
    def __init__(
        self,
        *,
        gclid: typing.Text = ...,
        conversion_action: typing.Text = ...,
        conversion_date_time: typing.Text = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_conversion_action",
            b"_conversion_action",
            "_conversion_date_time",
            b"_conversion_date_time",
            "_gclid",
            b"_gclid",
            "conversion_action",
            b"conversion_action",
            "conversion_date_time",
            b"conversion_date_time",
            "gclid",
            b"gclid",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_conversion_action",
            b"_conversion_action",
            "_conversion_date_time",
            b"_conversion_date_time",
            "_gclid",
            b"_gclid",
            "conversion_action",
            b"conversion_action",
            "conversion_date_time",
            b"conversion_date_time",
            "gclid",
            b"gclid",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_action", b"_conversion_action"
        ],
    ) -> typing_extensions.Literal["conversion_action"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_date_time", b"_conversion_date_time"
        ],
    ) -> typing_extensions.Literal["conversion_date_time"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_gclid", b"_gclid"]
    ) -> typing_extensions.Literal["gclid"]: ...

global___ClickConversionResult = ClickConversionResult

class CallConversionResult(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor = ...
    CALLER_ID_FIELD_NUMBER: builtins.int
    CALL_START_DATE_TIME_FIELD_NUMBER: builtins.int
    CONVERSION_ACTION_FIELD_NUMBER: builtins.int
    CONVERSION_DATE_TIME_FIELD_NUMBER: builtins.int
    caller_id: typing.Text = ...
    call_start_date_time: typing.Text = ...
    conversion_action: typing.Text = ...
    conversion_date_time: typing.Text = ...
    def __init__(
        self,
        *,
        caller_id: typing.Text = ...,
        call_start_date_time: typing.Text = ...,
        conversion_action: typing.Text = ...,
        conversion_date_time: typing.Text = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "_call_start_date_time",
            b"_call_start_date_time",
            "_caller_id",
            b"_caller_id",
            "_conversion_action",
            b"_conversion_action",
            "_conversion_date_time",
            b"_conversion_date_time",
            "call_start_date_time",
            b"call_start_date_time",
            "caller_id",
            b"caller_id",
            "conversion_action",
            b"conversion_action",
            "conversion_date_time",
            b"conversion_date_time",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "_call_start_date_time",
            b"_call_start_date_time",
            "_caller_id",
            b"_caller_id",
            "_conversion_action",
            b"_conversion_action",
            "_conversion_date_time",
            b"_conversion_date_time",
            "call_start_date_time",
            b"call_start_date_time",
            "caller_id",
            b"caller_id",
            "conversion_action",
            b"conversion_action",
            "conversion_date_time",
            b"conversion_date_time",
        ],
    ) -> None: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_call_start_date_time", b"_call_start_date_time"
        ],
    ) -> typing_extensions.Literal["call_start_date_time"]: ...
    @typing.overload
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["_caller_id", b"_caller_id"]
    ) -> typing_extensions.Literal["caller_id"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_action", b"_conversion_action"
        ],
    ) -> typing_extensions.Literal["conversion_action"]: ...
    @typing.overload
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "_conversion_date_time", b"_conversion_date_time"
        ],
    ) -> typing_extensions.Literal["conversion_date_time"]: ...

global___CallConversionResult = CallConversionResult
