# @generated by generate_proto_mypy_stubs.py.  Do not edit!
import sys
from google.ads.google_ads.v1.proto.enums.page_one_promoted_strategy_goal_pb2 import (
    PageOnePromotedStrategyGoalEnum as google___ads___googleads___v1___enums___page_one_promoted_strategy_goal_pb2___PageOnePromotedStrategyGoalEnum,
)

from google.ads.google_ads.v1.proto.enums.target_impression_share_location_pb2 import (
    TargetImpressionShareLocationEnum as google___ads___googleads___v1___enums___target_impression_share_location_pb2___TargetImpressionShareLocationEnum,
)

from google.protobuf.descriptor import (
    Descriptor as google___protobuf___descriptor___Descriptor,
)

from google.protobuf.message import (
    Message as google___protobuf___message___Message,
)

from google.protobuf.wrappers_pb2 import (
    BoolValue as google___protobuf___wrappers_pb2___BoolValue,
    DoubleValue as google___protobuf___wrappers_pb2___DoubleValue,
    Int32Value as google___protobuf___wrappers_pb2___Int32Value,
    Int64Value as google___protobuf___wrappers_pb2___Int64Value,
    StringValue as google___protobuf___wrappers_pb2___StringValue,
)

from typing import (
    Optional as typing___Optional,
)

from typing_extensions import (
    Literal as typing_extensions___Literal,
)


class Commission(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def commission_rate_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    def __init__(self,
        *,
        commission_rate_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> Commission: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"commission_rate_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"commission_rate_micros"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"commission_rate_micros",b"commission_rate_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"commission_rate_micros",b"commission_rate_micros"]) -> None: ...

class EnhancedCpc(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> EnhancedCpc: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class ManualCpc(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def enhanced_cpc_enabled(self) -> google___protobuf___wrappers_pb2___BoolValue: ...

    def __init__(self,
        *,
        enhanced_cpc_enabled : typing___Optional[google___protobuf___wrappers_pb2___BoolValue] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> ManualCpc: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"enhanced_cpc_enabled"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"enhanced_cpc_enabled"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"enhanced_cpc_enabled",b"enhanced_cpc_enabled"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"enhanced_cpc_enabled",b"enhanced_cpc_enabled"]) -> None: ...

class ManualCpm(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> ManualCpm: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class ManualCpv(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> ManualCpv: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class MaximizeConversions(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> MaximizeConversions: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class MaximizeConversionValue(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def target_roas(self) -> google___protobuf___wrappers_pb2___DoubleValue: ...

    def __init__(self,
        *,
        target_roas : typing___Optional[google___protobuf___wrappers_pb2___DoubleValue] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> MaximizeConversionValue: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"target_roas"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"target_roas"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"target_roas",b"target_roas"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"target_roas",b"target_roas"]) -> None: ...

class PageOnePromoted(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    strategy_goal = ... # type: google___ads___googleads___v1___enums___page_one_promoted_strategy_goal_pb2___PageOnePromotedStrategyGoalEnum.PageOnePromotedStrategyGoal

    @property
    def cpc_bid_ceiling_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    @property
    def bid_modifier(self) -> google___protobuf___wrappers_pb2___DoubleValue: ...

    @property
    def only_raise_cpc_bids(self) -> google___protobuf___wrappers_pb2___BoolValue: ...

    @property
    def raise_cpc_bid_when_budget_constrained(self) -> google___protobuf___wrappers_pb2___BoolValue: ...

    @property
    def raise_cpc_bid_when_quality_score_is_low(self) -> google___protobuf___wrappers_pb2___BoolValue: ...

    def __init__(self,
        *,
        strategy_goal : typing___Optional[google___ads___googleads___v1___enums___page_one_promoted_strategy_goal_pb2___PageOnePromotedStrategyGoalEnum.PageOnePromotedStrategyGoal] = None,
        cpc_bid_ceiling_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        bid_modifier : typing___Optional[google___protobuf___wrappers_pb2___DoubleValue] = None,
        only_raise_cpc_bids : typing___Optional[google___protobuf___wrappers_pb2___BoolValue] = None,
        raise_cpc_bid_when_budget_constrained : typing___Optional[google___protobuf___wrappers_pb2___BoolValue] = None,
        raise_cpc_bid_when_quality_score_is_low : typing___Optional[google___protobuf___wrappers_pb2___BoolValue] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> PageOnePromoted: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"bid_modifier",u"cpc_bid_ceiling_micros",u"only_raise_cpc_bids",u"raise_cpc_bid_when_budget_constrained",u"raise_cpc_bid_when_quality_score_is_low"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"bid_modifier",u"cpc_bid_ceiling_micros",u"only_raise_cpc_bids",u"raise_cpc_bid_when_budget_constrained",u"raise_cpc_bid_when_quality_score_is_low",u"strategy_goal"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"bid_modifier",b"bid_modifier",u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"only_raise_cpc_bids",b"only_raise_cpc_bids",u"raise_cpc_bid_when_budget_constrained",b"raise_cpc_bid_when_budget_constrained",u"raise_cpc_bid_when_quality_score_is_low",b"raise_cpc_bid_when_quality_score_is_low"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"bid_modifier",b"bid_modifier",u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"only_raise_cpc_bids",b"only_raise_cpc_bids",u"raise_cpc_bid_when_budget_constrained",b"raise_cpc_bid_when_budget_constrained",u"raise_cpc_bid_when_quality_score_is_low",b"raise_cpc_bid_when_quality_score_is_low",u"strategy_goal",b"strategy_goal"]) -> None: ...

class TargetCpa(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def target_cpa_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    @property
    def cpc_bid_ceiling_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    @property
    def cpc_bid_floor_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    def __init__(self,
        *,
        target_cpa_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        cpc_bid_ceiling_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        cpc_bid_floor_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> TargetCpa: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"cpc_bid_floor_micros",u"target_cpa_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"cpc_bid_floor_micros",u"target_cpa_micros"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"cpc_bid_floor_micros",b"cpc_bid_floor_micros",u"target_cpa_micros",b"target_cpa_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"cpc_bid_floor_micros",b"cpc_bid_floor_micros",u"target_cpa_micros",b"target_cpa_micros"]) -> None: ...

class TargetCpm(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> TargetCpm: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

class TargetImpressionShare(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    location = ... # type: google___ads___googleads___v1___enums___target_impression_share_location_pb2___TargetImpressionShareLocationEnum.TargetImpressionShareLocation

    @property
    def location_fraction_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    @property
    def cpc_bid_ceiling_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    def __init__(self,
        *,
        location : typing___Optional[google___ads___googleads___v1___enums___target_impression_share_location_pb2___TargetImpressionShareLocationEnum.TargetImpressionShareLocation] = None,
        location_fraction_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        cpc_bid_ceiling_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> TargetImpressionShare: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"location_fraction_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"location",u"location_fraction_micros"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"location_fraction_micros",b"location_fraction_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"location",b"location",u"location_fraction_micros",b"location_fraction_micros"]) -> None: ...

class TargetOutrankShare(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def target_outrank_share_micros(self) -> google___protobuf___wrappers_pb2___Int32Value: ...

    @property
    def competitor_domain(self) -> google___protobuf___wrappers_pb2___StringValue: ...

    @property
    def cpc_bid_ceiling_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    @property
    def only_raise_cpc_bids(self) -> google___protobuf___wrappers_pb2___BoolValue: ...

    @property
    def raise_cpc_bid_when_quality_score_is_low(self) -> google___protobuf___wrappers_pb2___BoolValue: ...

    def __init__(self,
        *,
        target_outrank_share_micros : typing___Optional[google___protobuf___wrappers_pb2___Int32Value] = None,
        competitor_domain : typing___Optional[google___protobuf___wrappers_pb2___StringValue] = None,
        cpc_bid_ceiling_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        only_raise_cpc_bids : typing___Optional[google___protobuf___wrappers_pb2___BoolValue] = None,
        raise_cpc_bid_when_quality_score_is_low : typing___Optional[google___protobuf___wrappers_pb2___BoolValue] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> TargetOutrankShare: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"competitor_domain",u"cpc_bid_ceiling_micros",u"only_raise_cpc_bids",u"raise_cpc_bid_when_quality_score_is_low",u"target_outrank_share_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"competitor_domain",u"cpc_bid_ceiling_micros",u"only_raise_cpc_bids",u"raise_cpc_bid_when_quality_score_is_low",u"target_outrank_share_micros"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"competitor_domain",b"competitor_domain",u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"only_raise_cpc_bids",b"only_raise_cpc_bids",u"raise_cpc_bid_when_quality_score_is_low",b"raise_cpc_bid_when_quality_score_is_low",u"target_outrank_share_micros",b"target_outrank_share_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"competitor_domain",b"competitor_domain",u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"only_raise_cpc_bids",b"only_raise_cpc_bids",u"raise_cpc_bid_when_quality_score_is_low",b"raise_cpc_bid_when_quality_score_is_low",u"target_outrank_share_micros",b"target_outrank_share_micros"]) -> None: ...

class TargetRoas(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def target_roas(self) -> google___protobuf___wrappers_pb2___DoubleValue: ...

    @property
    def cpc_bid_ceiling_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    @property
    def cpc_bid_floor_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    def __init__(self,
        *,
        target_roas : typing___Optional[google___protobuf___wrappers_pb2___DoubleValue] = None,
        cpc_bid_ceiling_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        cpc_bid_floor_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> TargetRoas: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"cpc_bid_floor_micros",u"target_roas"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"cpc_bid_floor_micros",u"target_roas"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"cpc_bid_floor_micros",b"cpc_bid_floor_micros",u"target_roas",b"target_roas"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"cpc_bid_floor_micros",b"cpc_bid_floor_micros",u"target_roas",b"target_roas"]) -> None: ...

class TargetSpend(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def target_spend_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    @property
    def cpc_bid_ceiling_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    def __init__(self,
        *,
        target_spend_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        cpc_bid_ceiling_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> TargetSpend: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"target_spend_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"target_spend_micros"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"target_spend_micros",b"target_spend_micros"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"target_spend_micros",b"target_spend_micros"]) -> None: ...

class PercentCpc(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def cpc_bid_ceiling_micros(self) -> google___protobuf___wrappers_pb2___Int64Value: ...

    @property
    def enhanced_cpc_enabled(self) -> google___protobuf___wrappers_pb2___BoolValue: ...

    def __init__(self,
        *,
        cpc_bid_ceiling_micros : typing___Optional[google___protobuf___wrappers_pb2___Int64Value] = None,
        enhanced_cpc_enabled : typing___Optional[google___protobuf___wrappers_pb2___BoolValue] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> PercentCpc: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"enhanced_cpc_enabled"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",u"enhanced_cpc_enabled"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"enhanced_cpc_enabled",b"enhanced_cpc_enabled"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"cpc_bid_ceiling_micros",b"cpc_bid_ceiling_micros",u"enhanced_cpc_enabled",b"enhanced_cpc_enabled"]) -> None: ...
