import types
from typing import Any, overload

import proto
from google.oauth2.credentials import Credentials
from google.protobuf.message import Message
from typing_extensions import Literal

from google.ads.googleads import v16, v17, v18
from google.ads.googleads.config import _ConfigDataUnparsed

_V16 = Literal["v16"]
_V17 = Literal["v17"]
_V18 = Literal["v18"]
_V = _V16 | _V17 | _V18

class _EnumGetter:
    # Autogenerated enums
    AccessInvitationStatusEnum: type[
        v18.AccessInvitationStatusEnum.AccessInvitationStatus
    ]
    AccessReasonEnum: type[v18.AccessReasonEnum.AccessReason]
    AccessRoleEnum: type[v18.AccessRoleEnum.AccessRole]
    AccountBudgetProposalStatusEnum: type[
        v18.AccountBudgetProposalStatusEnum.AccountBudgetProposalStatus
    ]
    AccountBudgetProposalTypeEnum: type[
        v18.AccountBudgetProposalTypeEnum.AccountBudgetProposalType
    ]
    AccountBudgetStatusEnum: type[v18.AccountBudgetStatusEnum.AccountBudgetStatus]
    AccountLinkStatusEnum: type[v18.AccountLinkStatusEnum.AccountLinkStatus]
    AdCustomizerPlaceholderFieldEnum: type[
        v18.AdCustomizerPlaceholderFieldEnum.AdCustomizerPlaceholderField
    ]
    AdDestinationTypeEnum: type[v18.AdDestinationTypeEnum.AdDestinationType]
    AdFormatTypeEnum: type[v18.AdFormatTypeEnum.AdFormatType]
    AdGroupAdPrimaryStatusEnum: type[
        v18.AdGroupAdPrimaryStatusEnum.AdGroupAdPrimaryStatus
    ]
    AdGroupAdPrimaryStatusReasonEnum: type[
        v18.AdGroupAdPrimaryStatusReasonEnum.AdGroupAdPrimaryStatusReason
    ]
    AdGroupAdRotationModeEnum: type[v18.AdGroupAdRotationModeEnum.AdGroupAdRotationMode]
    AdGroupAdStatusEnum: type[v18.AdGroupAdStatusEnum.AdGroupAdStatus]
    AdGroupCriterionApprovalStatusEnum: type[
        v18.AdGroupCriterionApprovalStatusEnum.AdGroupCriterionApprovalStatus
    ]
    AdGroupCriterionPrimaryStatusEnum: type[
        v18.AdGroupCriterionPrimaryStatusEnum.AdGroupCriterionPrimaryStatus
    ]
    AdGroupCriterionPrimaryStatusReasonEnum: type[
        v18.AdGroupCriterionPrimaryStatusReasonEnum.AdGroupCriterionPrimaryStatusReason
    ]
    AdGroupCriterionStatusEnum: type[
        v18.AdGroupCriterionStatusEnum.AdGroupCriterionStatus
    ]
    AdGroupPrimaryStatusEnum: type[v18.AdGroupPrimaryStatusEnum.AdGroupPrimaryStatus]
    AdGroupPrimaryStatusReasonEnum: type[
        v18.AdGroupPrimaryStatusReasonEnum.AdGroupPrimaryStatusReason
    ]
    AdGroupStatusEnum: type[v18.AdGroupStatusEnum.AdGroupStatus]
    AdGroupTypeEnum: type[v18.AdGroupTypeEnum.AdGroupType]
    AdNetworkTypeEnum: type[v18.AdNetworkTypeEnum.AdNetworkType]
    AdServingOptimizationStatusEnum: type[
        v18.AdServingOptimizationStatusEnum.AdServingOptimizationStatus
    ]
    AdStrengthEnum: type[v18.AdStrengthEnum.AdStrength]
    AdTypeEnum: type[v18.AdTypeEnum.AdType]
    AdvertisingChannelSubTypeEnum: type[
        v18.AdvertisingChannelSubTypeEnum.AdvertisingChannelSubType
    ]
    AdvertisingChannelTypeEnum: type[
        v18.AdvertisingChannelTypeEnum.AdvertisingChannelType
    ]
    AffiliateLocationFeedRelationshipTypeEnum: type[
        v18.AffiliateLocationFeedRelationshipTypeEnum.AffiliateLocationFeedRelationshipType
    ]
    AffiliateLocationPlaceholderFieldEnum: type[
        v18.AffiliateLocationPlaceholderFieldEnum.AffiliateLocationPlaceholderField
    ]
    AgeRangeTypeEnum: type[v18.AgeRangeTypeEnum.AgeRangeType]
    AndroidPrivacyInteractionTypeEnum: type[
        v18.AndroidPrivacyInteractionTypeEnum.AndroidPrivacyInteractionType
    ]
    AndroidPrivacyNetworkTypeEnum: type[
        v18.AndroidPrivacyNetworkTypeEnum.AndroidPrivacyNetworkType
    ]
    AppBiddingGoalEnum: type[v18.AppBiddingGoalEnum.AppBiddingGoal]
    AppCampaignAppStoreEnum: type[v18.AppCampaignAppStoreEnum.AppCampaignAppStore]
    AppCampaignBiddingStrategyGoalTypeEnum: type[
        v18.AppCampaignBiddingStrategyGoalTypeEnum.AppCampaignBiddingStrategyGoalType
    ]
    AppPaymentModelTypeEnum: type[v18.AppPaymentModelTypeEnum.AppPaymentModelType]
    AppPlaceholderFieldEnum: type[v18.AppPlaceholderFieldEnum.AppPlaceholderField]
    AppStoreEnum: type[v18.AppStoreEnum.AppStore]
    AppUrlOperatingSystemTypeEnum: type[
        v18.AppUrlOperatingSystemTypeEnum.AppUrlOperatingSystemType
    ]
    AssetAutomationStatusEnum: type[v18.AssetAutomationStatusEnum.AssetAutomationStatus]
    AssetAutomationTypeEnum: type[v18.AssetAutomationTypeEnum.AssetAutomationType]
    AssetFieldTypeEnum: type[v18.AssetFieldTypeEnum.AssetFieldType]
    AssetGroupPrimaryStatusEnum: type[
        v18.AssetGroupPrimaryStatusEnum.AssetGroupPrimaryStatus
    ]
    AssetGroupPrimaryStatusReasonEnum: type[
        v18.AssetGroupPrimaryStatusReasonEnum.AssetGroupPrimaryStatusReason
    ]
    AssetGroupSignalApprovalStatusEnum: type[
        v18.AssetGroupSignalApprovalStatusEnum.AssetGroupSignalApprovalStatus
    ]
    AssetGroupStatusEnum: type[v18.AssetGroupStatusEnum.AssetGroupStatus]
    AssetLinkPrimaryStatusEnum: type[
        v18.AssetLinkPrimaryStatusEnum.AssetLinkPrimaryStatus
    ]
    AssetLinkPrimaryStatusReasonEnum: type[
        v18.AssetLinkPrimaryStatusReasonEnum.AssetLinkPrimaryStatusReason
    ]
    AssetLinkStatusEnum: type[v18.AssetLinkStatusEnum.AssetLinkStatus]
    AssetOfflineEvaluationErrorReasonsEnum: type[
        v18.AssetOfflineEvaluationErrorReasonsEnum.AssetOfflineEvaluationErrorReasons
    ]
    AssetPerformanceLabelEnum: type[v18.AssetPerformanceLabelEnum.AssetPerformanceLabel]
    AssetSetAssetStatusEnum: type[v18.AssetSetAssetStatusEnum.AssetSetAssetStatus]
    AssetSetLinkStatusEnum: type[v18.AssetSetLinkStatusEnum.AssetSetLinkStatus]
    AssetSetStatusEnum: type[v18.AssetSetStatusEnum.AssetSetStatus]
    AssetSetTypeEnum: type[v18.AssetSetTypeEnum.AssetSetType]
    AssetSourceEnum: type[v18.AssetSourceEnum.AssetSource]
    AssetTypeEnum: type[v18.AssetTypeEnum.AssetType]
    AsyncActionStatusEnum: type[v18.AsyncActionStatusEnum.AsyncActionStatus]
    AttributionModelEnum: type[v18.AttributionModelEnum.AttributionModel]
    AudienceInsightsDimensionEnum: type[
        v18.AudienceInsightsDimensionEnum.AudienceInsightsDimension
    ]
    AudienceInsightsMarketingObjectiveEnum: type[
        v18.AudienceInsightsMarketingObjectiveEnum.AudienceInsightsMarketingObjective
    ]
    AudienceScopeEnum: type[v18.AudienceScopeEnum.AudienceScope]
    AudienceStatusEnum: type[v18.AudienceStatusEnum.AudienceStatus]
    BatchJobStatusEnum: type[v18.BatchJobStatusEnum.BatchJobStatus]
    BidModifierSourceEnum: type[v18.BidModifierSourceEnum.BidModifierSource]
    BiddingSourceEnum: type[v18.BiddingSourceEnum.BiddingSource]
    BiddingStrategyStatusEnum: type[v18.BiddingStrategyStatusEnum.BiddingStrategyStatus]
    BiddingStrategySystemStatusEnum: type[
        v18.BiddingStrategySystemStatusEnum.BiddingStrategySystemStatus
    ]
    BiddingStrategyTypeEnum: type[v18.BiddingStrategyTypeEnum.BiddingStrategyType]
    BillingSetupStatusEnum: type[v18.BillingSetupStatusEnum.BillingSetupStatus]
    BrandRequestRejectionReasonEnum: type[
        v18.BrandRequestRejectionReasonEnum.BrandRequestRejectionReason
    ]
    BrandSafetySuitabilityEnum: type[
        v18.BrandSafetySuitabilityEnum.BrandSafetySuitability
    ]
    BrandStateEnum: type[v18.BrandStateEnum.BrandState]
    BudgetCampaignAssociationStatusEnum: type[
        v18.BudgetCampaignAssociationStatusEnum.BudgetCampaignAssociationStatus
    ]
    BudgetDeliveryMethodEnum: type[v18.BudgetDeliveryMethodEnum.BudgetDeliveryMethod]
    BudgetPeriodEnum: type[v18.BudgetPeriodEnum.BudgetPeriod]
    BudgetStatusEnum: type[v18.BudgetStatusEnum.BudgetStatus]
    BudgetTypeEnum: type[v18.BudgetTypeEnum.BudgetType]
    CallConversionReportingStateEnum: type[
        v18.CallConversionReportingStateEnum.CallConversionReportingState
    ]
    CallPlaceholderFieldEnum: type[v18.CallPlaceholderFieldEnum.CallPlaceholderField]
    CallToActionTypeEnum: type[v18.CallToActionTypeEnum.CallToActionType]
    CallTrackingDisplayLocationEnum: type[
        v18.CallTrackingDisplayLocationEnum.CallTrackingDisplayLocation
    ]
    CallTypeEnum: type[v18.CallTypeEnum.CallType]
    CalloutPlaceholderFieldEnum: type[
        v18.CalloutPlaceholderFieldEnum.CalloutPlaceholderField
    ]
    CampaignCriterionStatusEnum: type[
        v18.CampaignCriterionStatusEnum.CampaignCriterionStatus
    ]
    CampaignDraftStatusEnum: type[v18.CampaignDraftStatusEnum.CampaignDraftStatus]
    CampaignExperimentTypeEnum: type[
        v18.CampaignExperimentTypeEnum.CampaignExperimentType
    ]
    CampaignGroupStatusEnum: type[v18.CampaignGroupStatusEnum.CampaignGroupStatus]
    CampaignKeywordMatchTypeEnum: type[
        v18.CampaignKeywordMatchTypeEnum.CampaignKeywordMatchType
    ]
    CampaignPrimaryStatusEnum: type[v18.CampaignPrimaryStatusEnum.CampaignPrimaryStatus]
    CampaignPrimaryStatusReasonEnum: type[
        v18.CampaignPrimaryStatusReasonEnum.CampaignPrimaryStatusReason
    ]
    CampaignServingStatusEnum: type[v18.CampaignServingStatusEnum.CampaignServingStatus]
    CampaignSharedSetStatusEnum: type[
        v18.CampaignSharedSetStatusEnum.CampaignSharedSetStatus
    ]
    CampaignStatusEnum: type[v18.CampaignStatusEnum.CampaignStatus]
    ChainRelationshipTypeEnum: type[v18.ChainRelationshipTypeEnum.ChainRelationshipType]
    ChangeClientTypeEnum: type[v18.ChangeClientTypeEnum.ChangeClientType]
    ChangeEventResourceTypeEnum: type[
        v18.ChangeEventResourceTypeEnum.ChangeEventResourceType
    ]
    ChangeStatusOperationEnum: type[v18.ChangeStatusOperationEnum.ChangeStatusOperation]
    ChangeStatusResourceTypeEnum: type[
        v18.ChangeStatusResourceTypeEnum.ChangeStatusResourceType
    ]
    ClickTypeEnum: type[v18.ClickTypeEnum.ClickType]
    CombinedAudienceStatusEnum: type[
        v18.CombinedAudienceStatusEnum.CombinedAudienceStatus
    ]
    ConsentStatusEnum: type[v18.ConsentStatusEnum.ConsentStatus]
    ContentLabelTypeEnum: type[v18.ContentLabelTypeEnum.ContentLabelType]
    ConversionActionCategoryEnum: type[
        v18.ConversionActionCategoryEnum.ConversionActionCategory
    ]
    ConversionActionCountingTypeEnum: type[
        v18.ConversionActionCountingTypeEnum.ConversionActionCountingType
    ]
    ConversionActionStatusEnum: type[
        v18.ConversionActionStatusEnum.ConversionActionStatus
    ]
    ConversionActionTypeEnum: type[v18.ConversionActionTypeEnum.ConversionActionType]
    ConversionAdjustmentTypeEnum: type[
        v18.ConversionAdjustmentTypeEnum.ConversionAdjustmentType
    ]
    ConversionAttributionEventTypeEnum: type[
        v18.ConversionAttributionEventTypeEnum.ConversionAttributionEventType
    ]
    ConversionCustomVariableStatusEnum: type[
        v18.ConversionCustomVariableStatusEnum.ConversionCustomVariableStatus
    ]
    ConversionEnvironmentEnum: type[v18.ConversionEnvironmentEnum.ConversionEnvironment]
    ConversionLagBucketEnum: type[v18.ConversionLagBucketEnum.ConversionLagBucket]
    ConversionOrAdjustmentLagBucketEnum: type[
        v18.ConversionOrAdjustmentLagBucketEnum.ConversionOrAdjustmentLagBucket
    ]
    ConversionOriginEnum: type[v18.ConversionOriginEnum.ConversionOrigin]
    ConversionTrackingStatusEnum: type[
        v18.ConversionTrackingStatusEnum.ConversionTrackingStatus
    ]
    ConversionValueRulePrimaryDimensionEnum: type[
        v18.ConversionValueRulePrimaryDimensionEnum.ConversionValueRulePrimaryDimension
    ]
    ConversionValueRuleSetStatusEnum: type[
        v18.ConversionValueRuleSetStatusEnum.ConversionValueRuleSetStatus
    ]
    ConversionValueRuleStatusEnum: type[
        v18.ConversionValueRuleStatusEnum.ConversionValueRuleStatus
    ]
    ConvertingUserPriorEngagementTypeAndLtvBucketEnum: type[
        v18.ConvertingUserPriorEngagementTypeAndLtvBucketEnum.ConvertingUserPriorEngagementTypeAndLtvBucket
    ]
    CriterionCategoryChannelAvailabilityModeEnum: type[
        v18.CriterionCategoryChannelAvailabilityModeEnum.CriterionCategoryChannelAvailabilityMode
    ]
    CriterionCategoryLocaleAvailabilityModeEnum: type[
        v18.CriterionCategoryLocaleAvailabilityModeEnum.CriterionCategoryLocaleAvailabilityMode
    ]
    CriterionSystemServingStatusEnum: type[
        v18.CriterionSystemServingStatusEnum.CriterionSystemServingStatus
    ]
    CriterionTypeEnum: type[v18.CriterionTypeEnum.CriterionType]
    CustomAudienceMemberTypeEnum: type[
        v18.CustomAudienceMemberTypeEnum.CustomAudienceMemberType
    ]
    CustomAudienceStatusEnum: type[v18.CustomAudienceStatusEnum.CustomAudienceStatus]
    CustomAudienceTypeEnum: type[v18.CustomAudienceTypeEnum.CustomAudienceType]
    CustomConversionGoalStatusEnum: type[
        v18.CustomConversionGoalStatusEnum.CustomConversionGoalStatus
    ]
    CustomInterestMemberTypeEnum: type[
        v18.CustomInterestMemberTypeEnum.CustomInterestMemberType
    ]
    CustomInterestStatusEnum: type[v18.CustomInterestStatusEnum.CustomInterestStatus]
    CustomInterestTypeEnum: type[v18.CustomInterestTypeEnum.CustomInterestType]
    CustomPlaceholderFieldEnum: type[
        v18.CustomPlaceholderFieldEnum.CustomPlaceholderField
    ]
    CustomerAcquisitionOptimizationModeEnum: type[
        v18.CustomerAcquisitionOptimizationModeEnum.CustomerAcquisitionOptimizationMode
    ]
    CustomerMatchUploadKeyTypeEnum: type[
        v18.CustomerMatchUploadKeyTypeEnum.CustomerMatchUploadKeyType
    ]
    CustomerPayPerConversionEligibilityFailureReasonEnum: type[
        v18.CustomerPayPerConversionEligibilityFailureReasonEnum.CustomerPayPerConversionEligibilityFailureReason
    ]
    CustomerStatusEnum: type[v18.CustomerStatusEnum.CustomerStatus]
    CustomizerAttributeStatusEnum: type[
        v18.CustomizerAttributeStatusEnum.CustomizerAttributeStatus
    ]
    CustomizerAttributeTypeEnum: type[
        v18.CustomizerAttributeTypeEnum.CustomizerAttributeType
    ]
    CustomizerValueStatusEnum: type[v18.CustomizerValueStatusEnum.CustomizerValueStatus]
    DataDrivenModelStatusEnum: type[v18.DataDrivenModelStatusEnum.DataDrivenModelStatus]
    DataLinkStatusEnum: type[v18.DataLinkStatusEnum.DataLinkStatus]
    DataLinkTypeEnum: type[v18.DataLinkTypeEnum.DataLinkType]
    DayOfWeekEnum: type[v18.DayOfWeekEnum.DayOfWeek]
    DeviceEnum: type[v18.DeviceEnum.Device]
    DisplayAdFormatSettingEnum: type[
        v18.DisplayAdFormatSettingEnum.DisplayAdFormatSetting
    ]
    DisplayUploadProductTypeEnum: type[
        v18.DisplayUploadProductTypeEnum.DisplayUploadProductType
    ]
    DistanceBucketEnum: type[v18.DistanceBucketEnum.DistanceBucket]
    DsaPageFeedCriterionFieldEnum: type[
        v18.DsaPageFeedCriterionFieldEnum.DsaPageFeedCriterionField
    ]
    EducationPlaceholderFieldEnum: type[
        v18.EducationPlaceholderFieldEnum.EducationPlaceholderField
    ]
    ExperimentMetricDirectionEnum: type[
        v18.ExperimentMetricDirectionEnum.ExperimentMetricDirection
    ]
    ExperimentMetricEnum: type[v18.ExperimentMetricEnum.ExperimentMetric]
    ExperimentStatusEnum: type[v18.ExperimentStatusEnum.ExperimentStatus]
    ExperimentTypeEnum: type[v18.ExperimentTypeEnum.ExperimentType]
    ExtensionSettingDeviceEnum: type[
        v18.ExtensionSettingDeviceEnum.ExtensionSettingDevice
    ]
    ExtensionTypeEnum: type[v18.ExtensionTypeEnum.ExtensionType]
    ExternalConversionSourceEnum: type[
        v18.ExternalConversionSourceEnum.ExternalConversionSource
    ]
    FeedAttributeTypeEnum: type[v18.FeedAttributeTypeEnum.FeedAttributeType]
    FeedItemQualityApprovalStatusEnum: type[
        v18.FeedItemQualityApprovalStatusEnum.FeedItemQualityApprovalStatus
    ]
    FeedItemQualityDisapprovalReasonEnum: type[
        v18.FeedItemQualityDisapprovalReasonEnum.FeedItemQualityDisapprovalReason
    ]
    FeedItemSetStatusEnum: type[v18.FeedItemSetStatusEnum.FeedItemSetStatus]
    FeedItemSetStringFilterTypeEnum: type[
        v18.FeedItemSetStringFilterTypeEnum.FeedItemSetStringFilterType
    ]
    FeedItemStatusEnum: type[v18.FeedItemStatusEnum.FeedItemStatus]
    FeedItemTargetDeviceEnum: type[v18.FeedItemTargetDeviceEnum.FeedItemTargetDevice]
    FeedItemTargetStatusEnum: type[v18.FeedItemTargetStatusEnum.FeedItemTargetStatus]
    FeedItemTargetTypeEnum: type[v18.FeedItemTargetTypeEnum.FeedItemTargetType]
    FeedItemValidationStatusEnum: type[
        v18.FeedItemValidationStatusEnum.FeedItemValidationStatus
    ]
    FeedLinkStatusEnum: type[v18.FeedLinkStatusEnum.FeedLinkStatus]
    FeedMappingCriterionTypeEnum: type[
        v18.FeedMappingCriterionTypeEnum.FeedMappingCriterionType
    ]
    FeedMappingStatusEnum: type[v18.FeedMappingStatusEnum.FeedMappingStatus]
    FeedOriginEnum: type[v18.FeedOriginEnum.FeedOrigin]
    FeedStatusEnum: type[v18.FeedStatusEnum.FeedStatus]
    FixedCpmGoalEnum: type[v18.FixedCpmGoalEnum.FixedCpmGoal]
    FixedCpmTargetFrequencyTimeUnitEnum: type[
        v18.FixedCpmTargetFrequencyTimeUnitEnum.FixedCpmTargetFrequencyTimeUnit
    ]
    FlightPlaceholderFieldEnum: type[
        v18.FlightPlaceholderFieldEnum.FlightPlaceholderField
    ]
    FrequencyCapEventTypeEnum: type[v18.FrequencyCapEventTypeEnum.FrequencyCapEventType]
    FrequencyCapLevelEnum: type[v18.FrequencyCapLevelEnum.FrequencyCapLevel]
    FrequencyCapTimeUnitEnum: type[v18.FrequencyCapTimeUnitEnum.FrequencyCapTimeUnit]
    GenderTypeEnum: type[v18.GenderTypeEnum.GenderType]
    GeoTargetConstantStatusEnum: type[
        v18.GeoTargetConstantStatusEnum.GeoTargetConstantStatus
    ]
    GeoTargetingRestrictionEnum: type[
        v18.GeoTargetingRestrictionEnum.GeoTargetingRestriction
    ]
    GeoTargetingTypeEnum: type[v18.GeoTargetingTypeEnum.GeoTargetingType]
    GoalConfigLevelEnum: type[v18.GoalConfigLevelEnum.GoalConfigLevel]
    GoogleAdsFieldCategoryEnum: type[
        v18.GoogleAdsFieldCategoryEnum.GoogleAdsFieldCategory
    ]
    GoogleAdsFieldDataTypeEnum: type[
        v18.GoogleAdsFieldDataTypeEnum.GoogleAdsFieldDataType
    ]
    GoogleVoiceCallStatusEnum: type[v18.GoogleVoiceCallStatusEnum.GoogleVoiceCallStatus]
    HotelAssetSuggestionStatusEnum: type[
        v18.HotelAssetSuggestionStatusEnum.HotelAssetSuggestionStatus
    ]
    HotelDateSelectionTypeEnum: type[
        v18.HotelDateSelectionTypeEnum.HotelDateSelectionType
    ]
    HotelPlaceholderFieldEnum: type[v18.HotelPlaceholderFieldEnum.HotelPlaceholderField]
    HotelPriceBucketEnum: type[v18.HotelPriceBucketEnum.HotelPriceBucket]
    HotelRateTypeEnum: type[v18.HotelRateTypeEnum.HotelRateType]
    HotelReconciliationStatusEnum: type[
        v18.HotelReconciliationStatusEnum.HotelReconciliationStatus
    ]
    IdentityVerificationProgramEnum: type[
        v18.IdentityVerificationProgramEnum.IdentityVerificationProgram
    ]
    IdentityVerificationProgramStatusEnum: type[
        v18.IdentityVerificationProgramStatusEnum.IdentityVerificationProgramStatus
    ]
    ImagePlaceholderFieldEnum: type[v18.ImagePlaceholderFieldEnum.ImagePlaceholderField]
    IncomeRangeTypeEnum: type[v18.IncomeRangeTypeEnum.IncomeRangeType]
    InteractionEventTypeEnum: type[v18.InteractionEventTypeEnum.InteractionEventType]
    InteractionTypeEnum: type[v18.InteractionTypeEnum.InteractionType]
    InvoiceTypeEnum: type[v18.InvoiceTypeEnum.InvoiceType]
    JobPlaceholderFieldEnum: type[v18.JobPlaceholderFieldEnum.JobPlaceholderField]
    KeywordMatchTypeEnum: type[v18.KeywordMatchTypeEnum.KeywordMatchType]
    KeywordPlanAggregateMetricTypeEnum: type[
        v18.KeywordPlanAggregateMetricTypeEnum.KeywordPlanAggregateMetricType
    ]
    KeywordPlanCompetitionLevelEnum: type[
        v18.KeywordPlanCompetitionLevelEnum.KeywordPlanCompetitionLevel
    ]
    KeywordPlanConceptGroupTypeEnum: type[
        v18.KeywordPlanConceptGroupTypeEnum.KeywordPlanConceptGroupType
    ]
    KeywordPlanForecastIntervalEnum: type[
        v18.KeywordPlanForecastIntervalEnum.KeywordPlanForecastInterval
    ]
    KeywordPlanKeywordAnnotationEnum: type[
        v18.KeywordPlanKeywordAnnotationEnum.KeywordPlanKeywordAnnotation
    ]
    KeywordPlanNetworkEnum: type[v18.KeywordPlanNetworkEnum.KeywordPlanNetwork]
    LabelStatusEnum: type[v18.LabelStatusEnum.LabelStatus]
    LeadFormCallToActionTypeEnum: type[
        v18.LeadFormCallToActionTypeEnum.LeadFormCallToActionType
    ]
    LeadFormDesiredIntentEnum: type[v18.LeadFormDesiredIntentEnum.LeadFormDesiredIntent]
    LeadFormFieldUserInputTypeEnum: type[
        v18.LeadFormFieldUserInputTypeEnum.LeadFormFieldUserInputType
    ]
    LeadFormPostSubmitCallToActionTypeEnum: type[
        v18.LeadFormPostSubmitCallToActionTypeEnum.LeadFormPostSubmitCallToActionType
    ]
    LegacyAppInstallAdAppStoreEnum: type[
        v18.LegacyAppInstallAdAppStoreEnum.LegacyAppInstallAdAppStore
    ]
    LinkedAccountTypeEnum: type[v18.LinkedAccountTypeEnum.LinkedAccountType]
    LinkedProductTypeEnum: type[v18.LinkedProductTypeEnum.LinkedProductType]
    ListingGroupFilterCustomAttributeIndexEnum: type[
        v18.ListingGroupFilterCustomAttributeIndexEnum.ListingGroupFilterCustomAttributeIndex
    ]
    ListingGroupFilterListingSourceEnum: type[
        v18.ListingGroupFilterListingSourceEnum.ListingGroupFilterListingSource
    ]
    ListingGroupFilterProductCategoryLevelEnum: type[
        v18.ListingGroupFilterProductCategoryLevelEnum.ListingGroupFilterProductCategoryLevel
    ]
    ListingGroupFilterProductChannelEnum: type[
        v18.ListingGroupFilterProductChannelEnum.ListingGroupFilterProductChannel
    ]
    ListingGroupFilterProductConditionEnum: type[
        v18.ListingGroupFilterProductConditionEnum.ListingGroupFilterProductCondition
    ]
    ListingGroupFilterProductTypeLevelEnum: type[
        v18.ListingGroupFilterProductTypeLevelEnum.ListingGroupFilterProductTypeLevel
    ]
    ListingGroupFilterTypeEnum: type[
        v18.ListingGroupFilterTypeEnum.ListingGroupFilterType
    ]
    ListingGroupTypeEnum: type[v18.ListingGroupTypeEnum.ListingGroupType]
    ListingTypeEnum: type[v18.ListingTypeEnum.ListingType]
    LocalPlaceholderFieldEnum: type[v18.LocalPlaceholderFieldEnum.LocalPlaceholderField]
    LocalServicesBusinessRegistrationCheckRejectionReasonEnum: type[
        v18.LocalServicesBusinessRegistrationCheckRejectionReasonEnum.LocalServicesBusinessRegistrationCheckRejectionReason
    ]
    LocalServicesBusinessRegistrationTypeEnum: type[
        v18.LocalServicesBusinessRegistrationTypeEnum.LocalServicesBusinessRegistrationType
    ]
    LocalServicesCreditStateEnum: type[v18.LocalServicesCreditStateEnum.CreditState]
    LocalServicesEmployeeStatusEnum: type[
        v18.LocalServicesEmployeeStatusEnum.LocalServicesEmployeeStatus
    ]
    LocalServicesEmployeeTypeEnum: type[
        v18.LocalServicesEmployeeTypeEnum.LocalServicesEmployeeType
    ]
    LocalServicesInsuranceRejectionReasonEnum: type[
        v18.LocalServicesInsuranceRejectionReasonEnum.LocalServicesInsuranceRejectionReason
    ]
    LocalServicesLeadConversationTypeEnum: type[
        v18.LocalServicesLeadConversationTypeEnum.ConversationType
    ]
    LocalServicesLeadStatusEnum: type[v18.LocalServicesLeadStatusEnum.LeadStatus]
    LocalServicesLeadTypeEnum: type[v18.LocalServicesLeadTypeEnum.LeadType]
    LocalServicesLicenseRejectionReasonEnum: type[
        v18.LocalServicesLicenseRejectionReasonEnum.LocalServicesLicenseRejectionReason
    ]
    LocalServicesParticipantTypeEnum: type[
        v18.LocalServicesParticipantTypeEnum.ParticipantType
    ]
    LocalServicesVerificationArtifactStatusEnum: type[
        v18.LocalServicesVerificationArtifactStatusEnum.LocalServicesVerificationArtifactStatus
    ]
    LocalServicesVerificationArtifactTypeEnum: type[
        v18.LocalServicesVerificationArtifactTypeEnum.LocalServicesVerificationArtifactType
    ]
    LocalServicesVerificationStatusEnum: type[
        v18.LocalServicesVerificationStatusEnum.LocalServicesVerificationStatus
    ]
    LocationExtensionTargetingCriterionFieldEnum: type[
        v18.LocationExtensionTargetingCriterionFieldEnum.LocationExtensionTargetingCriterionField
    ]
    LocationGroupRadiusUnitsEnum: type[
        v18.LocationGroupRadiusUnitsEnum.LocationGroupRadiusUnits
    ]
    LocationOwnershipTypeEnum: type[v18.LocationOwnershipTypeEnum.LocationOwnershipType]
    LocationPlaceholderFieldEnum: type[
        v18.LocationPlaceholderFieldEnum.LocationPlaceholderField
    ]
    LocationSourceTypeEnum: type[v18.LocationSourceTypeEnum.LocationSourceType]
    LocationStringFilterTypeEnum: type[
        v18.LocationStringFilterTypeEnum.LocationStringFilterType
    ]
    LookalikeExpansionLevelEnum: type[
        v18.LookalikeExpansionLevelEnum.LookalikeExpansionLevel
    ]
    ManagerLinkStatusEnum: type[v18.ManagerLinkStatusEnum.ManagerLinkStatus]
    MatchingFunctionContextTypeEnum: type[
        v18.MatchingFunctionContextTypeEnum.MatchingFunctionContextType
    ]
    MatchingFunctionOperatorEnum: type[
        v18.MatchingFunctionOperatorEnum.MatchingFunctionOperator
    ]
    MediaTypeEnum: type[v18.MediaTypeEnum.MediaType]
    MessagePlaceholderFieldEnum: type[
        v18.MessagePlaceholderFieldEnum.MessagePlaceholderField
    ]
    MimeTypeEnum: type[v18.MimeTypeEnum.MimeType]
    MinuteOfHourEnum: type[v18.MinuteOfHourEnum.MinuteOfHour]
    MobileAppVendorEnum: type[v18.MobileAppVendorEnum.MobileAppVendor]
    MobileDeviceTypeEnum: type[v18.MobileDeviceTypeEnum.MobileDeviceType]
    MonthOfYearEnum: type[v18.MonthOfYearEnum.MonthOfYear]
    NegativeGeoTargetTypeEnum: type[v18.NegativeGeoTargetTypeEnum.NegativeGeoTargetType]
    OfflineConversionDiagnosticStatusEnum: type[
        v18.OfflineConversionDiagnosticStatusEnum.OfflineConversionDiagnosticStatus
    ]
    OfflineEventUploadClientEnum: type[
        v18.OfflineEventUploadClientEnum.OfflineEventUploadClient
    ]
    OfflineUserDataJobFailureReasonEnum: type[
        v18.OfflineUserDataJobFailureReasonEnum.OfflineUserDataJobFailureReason
    ]
    OfflineUserDataJobMatchRateRangeEnum: type[
        v18.OfflineUserDataJobMatchRateRangeEnum.OfflineUserDataJobMatchRateRange
    ]
    OfflineUserDataJobStatusEnum: type[
        v18.OfflineUserDataJobStatusEnum.OfflineUserDataJobStatus
    ]
    OfflineUserDataJobTypeEnum: type[
        v18.OfflineUserDataJobTypeEnum.OfflineUserDataJobType
    ]
    OperatingSystemVersionOperatorTypeEnum: type[
        v18.OperatingSystemVersionOperatorTypeEnum.OperatingSystemVersionOperatorType
    ]
    OptimizationGoalTypeEnum: type[v18.OptimizationGoalTypeEnum.OptimizationGoalType]
    ParentalStatusTypeEnum: type[v18.ParentalStatusTypeEnum.ParentalStatusType]
    PaymentModeEnum: type[v18.PaymentModeEnum.PaymentMode]
    PerformanceMaxUpgradeStatusEnum: type[
        v18.PerformanceMaxUpgradeStatusEnum.PerformanceMaxUpgradeStatus
    ]
    PlaceholderTypeEnum: type[v18.PlaceholderTypeEnum.PlaceholderType]
    PlacementTypeEnum: type[v18.PlacementTypeEnum.PlacementType]
    PolicyApprovalStatusEnum: type[v18.PolicyApprovalStatusEnum.PolicyApprovalStatus]
    PolicyReviewStatusEnum: type[v18.PolicyReviewStatusEnum.PolicyReviewStatus]
    PolicyTopicEntryTypeEnum: type[v18.PolicyTopicEntryTypeEnum.PolicyTopicEntryType]
    PolicyTopicEvidenceDestinationMismatchUrlTypeEnum: type[
        v18.PolicyTopicEvidenceDestinationMismatchUrlTypeEnum.PolicyTopicEvidenceDestinationMismatchUrlType
    ]
    PolicyTopicEvidenceDestinationNotWorkingDeviceEnum: type[
        v18.PolicyTopicEvidenceDestinationNotWorkingDeviceEnum.PolicyTopicEvidenceDestinationNotWorkingDevice
    ]
    PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum: type[
        v18.PolicyTopicEvidenceDestinationNotWorkingDnsErrorTypeEnum.PolicyTopicEvidenceDestinationNotWorkingDnsErrorType
    ]
    PositiveGeoTargetTypeEnum: type[v18.PositiveGeoTargetTypeEnum.PositiveGeoTargetType]
    PriceExtensionPriceQualifierEnum: type[
        v18.PriceExtensionPriceQualifierEnum.PriceExtensionPriceQualifier
    ]
    PriceExtensionPriceUnitEnum: type[
        v18.PriceExtensionPriceUnitEnum.PriceExtensionPriceUnit
    ]
    PriceExtensionTypeEnum: type[v18.PriceExtensionTypeEnum.PriceExtensionType]
    PricePlaceholderFieldEnum: type[v18.PricePlaceholderFieldEnum.PricePlaceholderField]
    ProductAvailabilityEnum: type[v18.ProductAvailabilityEnum.ProductAvailability]
    ProductCategoryLevelEnum: type[v18.ProductCategoryLevelEnum.ProductCategoryLevel]
    ProductCategoryStateEnum: type[v18.ProductCategoryStateEnum.ProductCategoryState]
    ProductChannelEnum: type[v18.ProductChannelEnum.ProductChannel]
    ProductChannelExclusivityEnum: type[
        v18.ProductChannelExclusivityEnum.ProductChannelExclusivity
    ]
    ProductConditionEnum: type[v18.ProductConditionEnum.ProductCondition]
    ProductCustomAttributeIndexEnum: type[
        v18.ProductCustomAttributeIndexEnum.ProductCustomAttributeIndex
    ]
    ProductIssueSeverityEnum: type[v18.ProductIssueSeverityEnum.ProductIssueSeverity]
    ProductLinkInvitationStatusEnum: type[
        v18.ProductLinkInvitationStatusEnum.ProductLinkInvitationStatus
    ]
    ProductStatusEnum: type[v18.ProductStatusEnum.ProductStatus]
    ProductTypeLevelEnum: type[v18.ProductTypeLevelEnum.ProductTypeLevel]
    PromotionExtensionDiscountModifierEnum: type[
        v18.PromotionExtensionDiscountModifierEnum.PromotionExtensionDiscountModifier
    ]
    PromotionExtensionOccasionEnum: type[
        v18.PromotionExtensionOccasionEnum.PromotionExtensionOccasion
    ]
    PromotionPlaceholderFieldEnum: type[
        v18.PromotionPlaceholderFieldEnum.PromotionPlaceholderField
    ]
    ProximityRadiusUnitsEnum: type[v18.ProximityRadiusUnitsEnum.ProximityRadiusUnits]
    QualityScoreBucketEnum: type[v18.QualityScoreBucketEnum.QualityScoreBucket]
    ReachPlanAgeRangeEnum: type[v18.ReachPlanAgeRangeEnum.ReachPlanAgeRange]
    ReachPlanNetworkEnum: type[v18.ReachPlanNetworkEnum.ReachPlanNetwork]
    ReachPlanSurfaceEnum: type[v18.ReachPlanSurfaceEnum.ReachPlanSurface]
    RealEstatePlaceholderFieldEnum: type[
        v18.RealEstatePlaceholderFieldEnum.RealEstatePlaceholderField
    ]
    RecommendationSubscriptionStatusEnum: type[
        v18.RecommendationSubscriptionStatusEnum.RecommendationSubscriptionStatus
    ]
    RecommendationTypeEnum: type[v18.RecommendationTypeEnum.RecommendationType]
    ResourceChangeOperationEnum: type[
        v18.ResourceChangeOperationEnum.ResourceChangeOperation
    ]
    ResourceLimitTypeEnum: type[v18.ResourceLimitTypeEnum.ResourceLimitType]
    ResponseContentTypeEnum: type[v18.ResponseContentTypeEnum.ResponseContentType]
    SearchEngineResultsPageTypeEnum: type[
        v18.SearchEngineResultsPageTypeEnum.SearchEngineResultsPageType
    ]
    SearchTermMatchTypeEnum: type[v18.SearchTermMatchTypeEnum.SearchTermMatchType]
    SearchTermTargetingStatusEnum: type[
        v18.SearchTermTargetingStatusEnum.SearchTermTargetingStatus
    ]
    SeasonalityEventScopeEnum: type[v18.SeasonalityEventScopeEnum.SeasonalityEventScope]
    SeasonalityEventStatusEnum: type[
        v18.SeasonalityEventStatusEnum.SeasonalityEventStatus
    ]
    ServedAssetFieldTypeEnum: type[v18.ServedAssetFieldTypeEnum.ServedAssetFieldType]
    SharedSetStatusEnum: type[v18.SharedSetStatusEnum.SharedSetStatus]
    SharedSetTypeEnum: type[v18.SharedSetTypeEnum.SharedSetType]
    ShoppingAddProductsToCampaignRecommendationEnum: type[
        v18.ShoppingAddProductsToCampaignRecommendationEnum.Reason
    ]
    SimulationModificationMethodEnum: type[
        v18.SimulationModificationMethodEnum.SimulationModificationMethod
    ]
    SimulationTypeEnum: type[v18.SimulationTypeEnum.SimulationType]
    SitelinkPlaceholderFieldEnum: type[
        v18.SitelinkPlaceholderFieldEnum.SitelinkPlaceholderField
    ]
    SkAdNetworkAdEventTypeEnum: type[
        v18.SkAdNetworkAdEventTypeEnum.SkAdNetworkAdEventType
    ]
    SkAdNetworkAttributionCreditEnum: type[
        v18.SkAdNetworkAttributionCreditEnum.SkAdNetworkAttributionCredit
    ]
    SkAdNetworkCoarseConversionValueEnum: type[
        v18.SkAdNetworkCoarseConversionValueEnum.SkAdNetworkCoarseConversionValue
    ]
    SkAdNetworkSourceTypeEnum: type[v18.SkAdNetworkSourceTypeEnum.SkAdNetworkSourceType]
    SkAdNetworkUserTypeEnum: type[v18.SkAdNetworkUserTypeEnum.SkAdNetworkUserType]
    SlotEnum: type[v18.SlotEnum.Slot]
    SmartCampaignNotEligibleReasonEnum: type[
        v18.SmartCampaignNotEligibleReasonEnum.SmartCampaignNotEligibleReason
    ]
    SmartCampaignStatusEnum: type[v18.SmartCampaignStatusEnum.SmartCampaignStatus]
    SpendingLimitTypeEnum: type[v18.SpendingLimitTypeEnum.SpendingLimitType]
    StructuredSnippetPlaceholderFieldEnum: type[
        v18.StructuredSnippetPlaceholderFieldEnum.StructuredSnippetPlaceholderField
    ]
    SummaryRowSettingEnum: type[v18.SummaryRowSettingEnum.SummaryRowSetting]
    SystemManagedResourceSourceEnum: type[
        v18.SystemManagedResourceSourceEnum.SystemManagedResourceSource
    ]
    TargetCpaOptInRecommendationGoalEnum: type[
        v18.TargetCpaOptInRecommendationGoalEnum.TargetCpaOptInRecommendationGoal
    ]
    TargetFrequencyTimeUnitEnum: type[
        v18.TargetFrequencyTimeUnitEnum.TargetFrequencyTimeUnit
    ]
    TargetImpressionShareLocationEnum: type[
        v18.TargetImpressionShareLocationEnum.TargetImpressionShareLocation
    ]
    TargetingDimensionEnum: type[v18.TargetingDimensionEnum.TargetingDimension]
    TimeTypeEnum: type[v18.TimeTypeEnum.TimeType]
    TrackingCodePageFormatEnum: type[
        v18.TrackingCodePageFormatEnum.TrackingCodePageFormat
    ]
    TrackingCodeTypeEnum: type[v18.TrackingCodeTypeEnum.TrackingCodeType]
    TravelPlaceholderFieldEnum: type[
        v18.TravelPlaceholderFieldEnum.TravelPlaceholderField
    ]
    UserIdentifierSourceEnum: type[v18.UserIdentifierSourceEnum.UserIdentifierSource]
    UserInterestTaxonomyTypeEnum: type[
        v18.UserInterestTaxonomyTypeEnum.UserInterestTaxonomyType
    ]
    UserListAccessStatusEnum: type[v18.UserListAccessStatusEnum.UserListAccessStatus]
    UserListClosingReasonEnum: type[v18.UserListClosingReasonEnum.UserListClosingReason]
    UserListCrmDataSourceTypeEnum: type[
        v18.UserListCrmDataSourceTypeEnum.UserListCrmDataSourceType
    ]
    UserListCustomerTypeCategoryEnum: type[
        v18.UserListCustomerTypeCategoryEnum.UserListCustomerTypeCategory
    ]
    UserListDateRuleItemOperatorEnum: type[
        v18.UserListDateRuleItemOperatorEnum.UserListDateRuleItemOperator
    ]
    UserListFlexibleRuleOperatorEnum: type[
        v18.UserListFlexibleRuleOperatorEnum.UserListFlexibleRuleOperator
    ]
    UserListLogicalRuleOperatorEnum: type[
        v18.UserListLogicalRuleOperatorEnum.UserListLogicalRuleOperator
    ]
    UserListMembershipStatusEnum: type[
        v18.UserListMembershipStatusEnum.UserListMembershipStatus
    ]
    UserListNumberRuleItemOperatorEnum: type[
        v18.UserListNumberRuleItemOperatorEnum.UserListNumberRuleItemOperator
    ]
    UserListPrepopulationStatusEnum: type[
        v18.UserListPrepopulationStatusEnum.UserListPrepopulationStatus
    ]
    UserListRuleTypeEnum: type[v18.UserListRuleTypeEnum.UserListRuleType]
    UserListSizeRangeEnum: type[v18.UserListSizeRangeEnum.UserListSizeRange]
    UserListStringRuleItemOperatorEnum: type[
        v18.UserListStringRuleItemOperatorEnum.UserListStringRuleItemOperator
    ]
    UserListTypeEnum: type[v18.UserListTypeEnum.UserListType]
    ValueRuleDeviceTypeEnum: type[v18.ValueRuleDeviceTypeEnum.ValueRuleDeviceType]
    ValueRuleGeoLocationMatchTypeEnum: type[
        v18.ValueRuleGeoLocationMatchTypeEnum.ValueRuleGeoLocationMatchType
    ]
    ValueRuleOperationEnum: type[v18.ValueRuleOperationEnum.ValueRuleOperation]
    ValueRuleSetAttachmentTypeEnum: type[
        v18.ValueRuleSetAttachmentTypeEnum.ValueRuleSetAttachmentType
    ]
    ValueRuleSetDimensionEnum: type[v18.ValueRuleSetDimensionEnum.ValueRuleSetDimension]
    VanityPharmaDisplayUrlModeEnum: type[
        v18.VanityPharmaDisplayUrlModeEnum.VanityPharmaDisplayUrlMode
    ]
    VanityPharmaTextEnum: type[v18.VanityPharmaTextEnum.VanityPharmaText]
    VideoThumbnailEnum: type[v18.VideoThumbnailEnum.VideoThumbnail]
    WebpageConditionOperandEnum: type[
        v18.WebpageConditionOperandEnum.WebpageConditionOperand
    ]
    WebpageConditionOperatorEnum: type[
        v18.WebpageConditionOperatorEnum.WebpageConditionOperator
    ]
    # End of autogenerated enums

class GoogleAdsClient:
    credentials: Credentials
    developer_token: str
    endpoint: str | None
    login_customer_id: str | None
    linked_customer_id: str | None
    version: str | None
    http_proxy: str | None
    use_proto_plus: bool
    enums: _EnumGetter
    @classmethod
    def copy_from(
        cls,
        destination: proto.Message | Message,
        origin: proto.Message | Message,
    ) -> None: ...
    @classmethod
    def load_from_env(cls, version: str | None = None) -> GoogleAdsClient: ...
    @classmethod
    def load_from_string(
        cls, yaml_str: str, version: str | None = None
    ) -> GoogleAdsClient: ...
    @classmethod
    def load_from_storage(
        cls, path: str | None = None, version: str | None = None
    ) -> GoogleAdsClient: ...
    @classmethod
    def load_from_dict(
        cls, config_dict: _ConfigDataUnparsed, version: str | None = None
    ) -> GoogleAdsClient: ...
    def __init__(
        self,
        credentials: Credentials,
        developer_token: str,
        endpoint: str | None = None,
        login_customer_id: str | None = None,
        logging_config: dict[Any, Any] | None = None,
        linked_customer_id: str | None = None,
        version: str | None = None,
        http_proxy: str | None = None,
        use_proto_plus: bool = False,
        use_cloud_org_for_api_access: bool | None = None,
    ) -> None: ...
    def get_type(cls, name: str, version: _V = "v18") -> Any: ...
    # Autogenerated service overloads
    @overload
    def get_service(
        self, name: Literal["AccountBudgetProposalService"], version: _V16
    ) -> v16.AccountBudgetProposalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AccountLinkService"], version: _V16
    ) -> v16.AccountLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAdLabelService"], version: _V16
    ) -> v16.AdGroupAdLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAdService"], version: _V16
    ) -> v16.AdGroupAdServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAssetService"], version: _V16
    ) -> v16.AdGroupAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAssetSetService"], version: _V16
    ) -> v16.AdGroupAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupBidModifierService"], version: _V16
    ) -> v16.AdGroupBidModifierServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionCustomizerService"], version: _V16
    ) -> v16.AdGroupCriterionCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionLabelService"], version: _V16
    ) -> v16.AdGroupCriterionLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionService"], version: _V16
    ) -> v16.AdGroupCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCustomizerService"], version: _V16
    ) -> v16.AdGroupCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupExtensionSettingService"], version: _V16
    ) -> v16.AdGroupExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupFeedService"], version: _V16
    ) -> v16.AdGroupFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupLabelService"], version: _V16
    ) -> v16.AdGroupLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupService"], version: _V16
    ) -> v16.AdGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdParameterService"], version: _V16
    ) -> v16.AdParameterServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdService"], version: _V16
    ) -> v16.AdServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupAssetService"], version: _V16
    ) -> v16.AssetGroupAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupListingGroupFilterService"], version: _V16
    ) -> v16.AssetGroupListingGroupFilterServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupService"], version: _V16
    ) -> v16.AssetGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupSignalService"], version: _V16
    ) -> v16.AssetGroupSignalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetService"], version: _V16
    ) -> v16.AssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetSetAssetService"], version: _V16
    ) -> v16.AssetSetAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetSetService"], version: _V16
    ) -> v16.AssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AudienceInsightsService"], version: _V16
    ) -> v16.AudienceInsightsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AudienceService"], version: _V16
    ) -> v16.AudienceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BatchJobService"], version: _V16
    ) -> v16.BatchJobServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingDataExclusionService"], version: _V16
    ) -> v16.BiddingDataExclusionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingSeasonalityAdjustmentService"], version: _V16
    ) -> v16.BiddingSeasonalityAdjustmentServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingStrategyService"], version: _V16
    ) -> v16.BiddingStrategyServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BillingSetupService"], version: _V16
    ) -> v16.BillingSetupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BrandSuggestionService"], version: _V16
    ) -> v16.BrandSuggestionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignAssetService"], version: _V16
    ) -> v16.CampaignAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignAssetSetService"], version: _V16
    ) -> v16.CampaignAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignBidModifierService"], version: _V16
    ) -> v16.CampaignBidModifierServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignBudgetService"], version: _V16
    ) -> v16.CampaignBudgetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignConversionGoalService"], version: _V16
    ) -> v16.CampaignConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignCriterionService"], version: _V16
    ) -> v16.CampaignCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignCustomizerService"], version: _V16
    ) -> v16.CampaignCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignDraftService"], version: _V16
    ) -> v16.CampaignDraftServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignExtensionSettingService"], version: _V16
    ) -> v16.CampaignExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignFeedService"], version: _V16
    ) -> v16.CampaignFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignGroupService"], version: _V16
    ) -> v16.CampaignGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignLabelService"], version: _V16
    ) -> v16.CampaignLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignLifecycleGoalService"], version: _V16
    ) -> v16.CampaignLifecycleGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignService"], version: _V16
    ) -> v16.CampaignServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignSharedSetService"], version: _V16
    ) -> v16.CampaignSharedSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionActionService"], version: _V16
    ) -> v16.ConversionActionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionAdjustmentUploadService"], version: _V16
    ) -> v16.ConversionAdjustmentUploadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionCustomVariableService"], version: _V16
    ) -> v16.ConversionCustomVariableServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionGoalCampaignConfigService"], version: _V16
    ) -> v16.ConversionGoalCampaignConfigServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionUploadService"], version: _V16
    ) -> v16.ConversionUploadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionValueRuleService"], version: _V16
    ) -> v16.ConversionValueRuleServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionValueRuleSetService"], version: _V16
    ) -> v16.ConversionValueRuleSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomAudienceService"], version: _V16
    ) -> v16.CustomAudienceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomConversionGoalService"], version: _V16
    ) -> v16.CustomConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomInterestService"], version: _V16
    ) -> v16.CustomInterestServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerAssetService"], version: _V16
    ) -> v16.CustomerAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerAssetSetService"], version: _V16
    ) -> v16.CustomerAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["Customer"], version: _V16
    ) -> v16.CustomerClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerClientLinkService"], version: _V16
    ) -> v16.CustomerClientLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerConversionGoalService"], version: _V16
    ) -> v16.CustomerConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerCustomizerService"], version: _V16
    ) -> v16.CustomerCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerExtensionSettingService"], version: _V16
    ) -> v16.CustomerExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerFeedService"], version: _V16
    ) -> v16.CustomerFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerLabelService"], version: _V16
    ) -> v16.CustomerLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerLifecycleGoalService"], version: _V16
    ) -> v16.CustomerLifecycleGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerManagerLinkService"], version: _V16
    ) -> v16.CustomerManagerLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerNegativeCriterionService"], version: _V16
    ) -> v16.CustomerNegativeCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerService"], version: _V16
    ) -> v16.CustomerServiceClient: ...
    @overload
    def get_service(
        self,
        name: Literal["CustomerSkAdNetworkConversionValueSchemaService"],
        version: _V16,
    ) -> v16.CustomerSkAdNetworkConversionValueSchemaServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerUserAccessInvitationService"], version: _V16
    ) -> v16.CustomerUserAccessInvitationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerUserAccessService"], version: _V16
    ) -> v16.CustomerUserAccessServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomizerAttributeService"], version: _V16
    ) -> v16.CustomizerAttributeServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExperimentArmService"], version: _V16
    ) -> v16.ExperimentArmServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExperimentService"], version: _V16
    ) -> v16.ExperimentServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExtensionFeedItemService"], version: _V16
    ) -> v16.ExtensionFeedItemServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemService"], version: _V16
    ) -> v16.FeedItemServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemSetLinkService"], version: _V16
    ) -> v16.FeedItemSetLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemSetService"], version: _V16
    ) -> v16.FeedItemSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemTargetService"], version: _V16
    ) -> v16.FeedItemTargetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedMappingService"], version: _V16
    ) -> v16.FeedMappingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedService"], version: _V16
    ) -> v16.FeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GeoTargetConstantService"], version: _V16
    ) -> v16.GeoTargetConstantServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GoogleAdsFieldService"], version: _V16
    ) -> v16.GoogleAdsFieldServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GoogleAdsService"], version: _V16
    ) -> v16.GoogleAdsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["IdentityVerificationService"], version: _V16
    ) -> v16.IdentityVerificationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["InvoiceService"], version: _V16
    ) -> v16.InvoiceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanAdGroupKeywordService"], version: _V16
    ) -> v16.KeywordPlanAdGroupKeywordServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanAdGroupService"], version: _V16
    ) -> v16.KeywordPlanAdGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanCampaignKeywordService"], version: _V16
    ) -> v16.KeywordPlanCampaignKeywordServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanCampaignService"], version: _V16
    ) -> v16.KeywordPlanCampaignServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanIdeaService"], version: _V16
    ) -> v16.KeywordPlanIdeaServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanService"], version: _V16
    ) -> v16.KeywordPlanServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordThemeConstantService"], version: _V16
    ) -> v16.KeywordThemeConstantServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["LabelService"], version: _V16
    ) -> v16.LabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["OfflineUserDataJobService"], version: _V16
    ) -> v16.OfflineUserDataJobServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["PaymentsAccountService"], version: _V16
    ) -> v16.PaymentsAccountServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ProductLinkInvitationService"], version: _V16
    ) -> v16.ProductLinkInvitationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ProductLinkService"], version: _V16
    ) -> v16.ProductLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ReachPlanService"], version: _V16
    ) -> v16.ReachPlanServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RecommendationService"], version: _V16
    ) -> v16.RecommendationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RecommendationSubscriptionService"], version: _V16
    ) -> v16.RecommendationSubscriptionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RemarketingActionService"], version: _V16
    ) -> v16.RemarketingActionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SharedCriterionService"], version: _V16
    ) -> v16.SharedCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SharedSetService"], version: _V16
    ) -> v16.SharedSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SmartCampaignSettingService"], version: _V16
    ) -> v16.SmartCampaignSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SmartCampaignSuggestService"], version: _V16
    ) -> v16.SmartCampaignSuggestServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ThirdPartyAppAnalyticsLinkService"], version: _V16
    ) -> v16.ThirdPartyAppAnalyticsLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["TravelAssetSuggestionService"], version: _V16
    ) -> v16.TravelAssetSuggestionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserDataService"], version: _V16
    ) -> v16.UserDataServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserListService"], version: _V16
    ) -> v16.UserListServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AccountBudgetProposalService"], version: _V17
    ) -> v17.AccountBudgetProposalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AccountLinkService"], version: _V17
    ) -> v17.AccountLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAdLabelService"], version: _V17
    ) -> v17.AdGroupAdLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAdService"], version: _V17
    ) -> v17.AdGroupAdServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAssetService"], version: _V17
    ) -> v17.AdGroupAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAssetSetService"], version: _V17
    ) -> v17.AdGroupAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupBidModifierService"], version: _V17
    ) -> v17.AdGroupBidModifierServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionCustomizerService"], version: _V17
    ) -> v17.AdGroupCriterionCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionLabelService"], version: _V17
    ) -> v17.AdGroupCriterionLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionService"], version: _V17
    ) -> v17.AdGroupCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCustomizerService"], version: _V17
    ) -> v17.AdGroupCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupExtensionSettingService"], version: _V17
    ) -> v17.AdGroupExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupFeedService"], version: _V17
    ) -> v17.AdGroupFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupLabelService"], version: _V17
    ) -> v17.AdGroupLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupService"], version: _V17
    ) -> v17.AdGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdParameterService"], version: _V17
    ) -> v17.AdParameterServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdService"], version: _V17
    ) -> v17.AdServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupAssetService"], version: _V17
    ) -> v17.AssetGroupAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupListingGroupFilterService"], version: _V17
    ) -> v17.AssetGroupListingGroupFilterServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupService"], version: _V17
    ) -> v17.AssetGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupSignalService"], version: _V17
    ) -> v17.AssetGroupSignalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetService"], version: _V17
    ) -> v17.AssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetSetAssetService"], version: _V17
    ) -> v17.AssetSetAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetSetService"], version: _V17
    ) -> v17.AssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AudienceInsightsService"], version: _V17
    ) -> v17.AudienceInsightsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AudienceService"], version: _V17
    ) -> v17.AudienceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BatchJobService"], version: _V17
    ) -> v17.BatchJobServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingDataExclusionService"], version: _V17
    ) -> v17.BiddingDataExclusionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingSeasonalityAdjustmentService"], version: _V17
    ) -> v17.BiddingSeasonalityAdjustmentServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingStrategyService"], version: _V17
    ) -> v17.BiddingStrategyServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BillingSetupService"], version: _V17
    ) -> v17.BillingSetupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BrandSuggestionService"], version: _V17
    ) -> v17.BrandSuggestionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignAssetService"], version: _V17
    ) -> v17.CampaignAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignAssetSetService"], version: _V17
    ) -> v17.CampaignAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignBidModifierService"], version: _V17
    ) -> v17.CampaignBidModifierServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignBudgetService"], version: _V17
    ) -> v17.CampaignBudgetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignConversionGoalService"], version: _V17
    ) -> v17.CampaignConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignCriterionService"], version: _V17
    ) -> v17.CampaignCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignCustomizerService"], version: _V17
    ) -> v17.CampaignCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignDraftService"], version: _V17
    ) -> v17.CampaignDraftServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignExtensionSettingService"], version: _V17
    ) -> v17.CampaignExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignFeedService"], version: _V17
    ) -> v17.CampaignFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignGroupService"], version: _V17
    ) -> v17.CampaignGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignLabelService"], version: _V17
    ) -> v17.CampaignLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignLifecycleGoalService"], version: _V17
    ) -> v17.CampaignLifecycleGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignService"], version: _V17
    ) -> v17.CampaignServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignSharedSetService"], version: _V17
    ) -> v17.CampaignSharedSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionActionService"], version: _V17
    ) -> v17.ConversionActionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionAdjustmentUploadService"], version: _V17
    ) -> v17.ConversionAdjustmentUploadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionCustomVariableService"], version: _V17
    ) -> v17.ConversionCustomVariableServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionGoalCampaignConfigService"], version: _V17
    ) -> v17.ConversionGoalCampaignConfigServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionUploadService"], version: _V17
    ) -> v17.ConversionUploadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionValueRuleService"], version: _V17
    ) -> v17.ConversionValueRuleServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionValueRuleSetService"], version: _V17
    ) -> v17.ConversionValueRuleSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomAudienceService"], version: _V17
    ) -> v17.CustomAudienceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomConversionGoalService"], version: _V17
    ) -> v17.CustomConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomInterestService"], version: _V17
    ) -> v17.CustomInterestServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerAssetService"], version: _V17
    ) -> v17.CustomerAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerAssetSetService"], version: _V17
    ) -> v17.CustomerAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["Customer"], version: _V17
    ) -> v17.CustomerClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerClientLinkService"], version: _V17
    ) -> v17.CustomerClientLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerConversionGoalService"], version: _V17
    ) -> v17.CustomerConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerCustomizerService"], version: _V17
    ) -> v17.CustomerCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerExtensionSettingService"], version: _V17
    ) -> v17.CustomerExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerFeedService"], version: _V17
    ) -> v17.CustomerFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerLabelService"], version: _V17
    ) -> v17.CustomerLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerLifecycleGoalService"], version: _V17
    ) -> v17.CustomerLifecycleGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerManagerLinkService"], version: _V17
    ) -> v17.CustomerManagerLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerNegativeCriterionService"], version: _V17
    ) -> v17.CustomerNegativeCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerService"], version: _V17
    ) -> v17.CustomerServiceClient: ...
    @overload
    def get_service(
        self,
        name: Literal["CustomerSkAdNetworkConversionValueSchemaService"],
        version: _V17,
    ) -> v17.CustomerSkAdNetworkConversionValueSchemaServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerUserAccessInvitationService"], version: _V17
    ) -> v17.CustomerUserAccessInvitationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerUserAccessService"], version: _V17
    ) -> v17.CustomerUserAccessServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomizerAttributeService"], version: _V17
    ) -> v17.CustomizerAttributeServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExperimentArmService"], version: _V17
    ) -> v17.ExperimentArmServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExperimentService"], version: _V17
    ) -> v17.ExperimentServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExtensionFeedItemService"], version: _V17
    ) -> v17.ExtensionFeedItemServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemService"], version: _V17
    ) -> v17.FeedItemServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemSetLinkService"], version: _V17
    ) -> v17.FeedItemSetLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemSetService"], version: _V17
    ) -> v17.FeedItemSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemTargetService"], version: _V17
    ) -> v17.FeedItemTargetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedMappingService"], version: _V17
    ) -> v17.FeedMappingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedService"], version: _V17
    ) -> v17.FeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GeoTargetConstantService"], version: _V17
    ) -> v17.GeoTargetConstantServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GoogleAdsFieldService"], version: _V17
    ) -> v17.GoogleAdsFieldServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GoogleAdsService"], version: _V17
    ) -> v17.GoogleAdsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["IdentityVerificationService"], version: _V17
    ) -> v17.IdentityVerificationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["InvoiceService"], version: _V17
    ) -> v17.InvoiceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanAdGroupKeywordService"], version: _V17
    ) -> v17.KeywordPlanAdGroupKeywordServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanAdGroupService"], version: _V17
    ) -> v17.KeywordPlanAdGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanCampaignKeywordService"], version: _V17
    ) -> v17.KeywordPlanCampaignKeywordServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanCampaignService"], version: _V17
    ) -> v17.KeywordPlanCampaignServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanIdeaService"], version: _V17
    ) -> v17.KeywordPlanIdeaServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanService"], version: _V17
    ) -> v17.KeywordPlanServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordThemeConstantService"], version: _V17
    ) -> v17.KeywordThemeConstantServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["LabelService"], version: _V17
    ) -> v17.LabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["LocalServicesLeadService"], version: _V17
    ) -> v17.LocalServicesLeadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["OfflineUserDataJobService"], version: _V17
    ) -> v17.OfflineUserDataJobServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["PaymentsAccountService"], version: _V17
    ) -> v17.PaymentsAccountServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ProductLinkInvitationService"], version: _V17
    ) -> v17.ProductLinkInvitationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ProductLinkService"], version: _V17
    ) -> v17.ProductLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ReachPlanService"], version: _V17
    ) -> v17.ReachPlanServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RecommendationService"], version: _V17
    ) -> v17.RecommendationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RecommendationSubscriptionService"], version: _V17
    ) -> v17.RecommendationSubscriptionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RemarketingActionService"], version: _V17
    ) -> v17.RemarketingActionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ShareablePreviewService"], version: _V17
    ) -> v17.ShareablePreviewServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SharedCriterionService"], version: _V17
    ) -> v17.SharedCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SharedSetService"], version: _V17
    ) -> v17.SharedSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SmartCampaignSettingService"], version: _V17
    ) -> v17.SmartCampaignSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SmartCampaignSuggestService"], version: _V17
    ) -> v17.SmartCampaignSuggestServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ThirdPartyAppAnalyticsLinkService"], version: _V17
    ) -> v17.ThirdPartyAppAnalyticsLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["TravelAssetSuggestionService"], version: _V17
    ) -> v17.TravelAssetSuggestionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserDataService"], version: _V17
    ) -> v17.UserDataServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserListCustomerTypeService"], version: _V17
    ) -> v17.UserListCustomerTypeServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserListService"], version: _V17
    ) -> v17.UserListServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AccountBudgetProposalService"], version: _V18
    ) -> v18.AccountBudgetProposalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AccountBudgetProposalService"]
    ) -> v18.AccountBudgetProposalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AccountLinkService"], version: _V18
    ) -> v18.AccountLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AccountLinkService"]
    ) -> v18.AccountLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAdLabelService"], version: _V18
    ) -> v18.AdGroupAdLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAdLabelService"]
    ) -> v18.AdGroupAdLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAdService"], version: _V18
    ) -> v18.AdGroupAdServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAdService"]
    ) -> v18.AdGroupAdServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAssetService"], version: _V18
    ) -> v18.AdGroupAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAssetService"]
    ) -> v18.AdGroupAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAssetSetService"], version: _V18
    ) -> v18.AdGroupAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupAssetSetService"]
    ) -> v18.AdGroupAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupBidModifierService"], version: _V18
    ) -> v18.AdGroupBidModifierServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupBidModifierService"]
    ) -> v18.AdGroupBidModifierServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionCustomizerService"], version: _V18
    ) -> v18.AdGroupCriterionCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionCustomizerService"]
    ) -> v18.AdGroupCriterionCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionLabelService"], version: _V18
    ) -> v18.AdGroupCriterionLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionLabelService"]
    ) -> v18.AdGroupCriterionLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionService"], version: _V18
    ) -> v18.AdGroupCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCriterionService"]
    ) -> v18.AdGroupCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCustomizerService"], version: _V18
    ) -> v18.AdGroupCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupCustomizerService"]
    ) -> v18.AdGroupCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupExtensionSettingService"], version: _V18
    ) -> v18.AdGroupExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupExtensionSettingService"]
    ) -> v18.AdGroupExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupFeedService"], version: _V18
    ) -> v18.AdGroupFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupFeedService"]
    ) -> v18.AdGroupFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupLabelService"], version: _V18
    ) -> v18.AdGroupLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupLabelService"]
    ) -> v18.AdGroupLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupService"], version: _V18
    ) -> v18.AdGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdGroupService"]
    ) -> v18.AdGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdParameterService"], version: _V18
    ) -> v18.AdParameterServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdParameterService"]
    ) -> v18.AdParameterServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AdService"], version: _V18
    ) -> v18.AdServiceClient: ...
    @overload
    def get_service(self, name: Literal["AdService"]) -> v18.AdServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupAssetService"], version: _V18
    ) -> v18.AssetGroupAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupAssetService"]
    ) -> v18.AssetGroupAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupListingGroupFilterService"], version: _V18
    ) -> v18.AssetGroupListingGroupFilterServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupListingGroupFilterService"]
    ) -> v18.AssetGroupListingGroupFilterServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupService"], version: _V18
    ) -> v18.AssetGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupService"]
    ) -> v18.AssetGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupSignalService"], version: _V18
    ) -> v18.AssetGroupSignalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetGroupSignalService"]
    ) -> v18.AssetGroupSignalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetService"], version: _V18
    ) -> v18.AssetServiceClient: ...
    @overload
    def get_service(self, name: Literal["AssetService"]) -> v18.AssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetSetAssetService"], version: _V18
    ) -> v18.AssetSetAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetSetAssetService"]
    ) -> v18.AssetSetAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetSetService"], version: _V18
    ) -> v18.AssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AssetSetService"]
    ) -> v18.AssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AudienceInsightsService"], version: _V18
    ) -> v18.AudienceInsightsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AudienceInsightsService"]
    ) -> v18.AudienceInsightsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AudienceService"], version: _V18
    ) -> v18.AudienceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["AudienceService"]
    ) -> v18.AudienceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BatchJobService"], version: _V18
    ) -> v18.BatchJobServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BatchJobService"]
    ) -> v18.BatchJobServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingDataExclusionService"], version: _V18
    ) -> v18.BiddingDataExclusionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingDataExclusionService"]
    ) -> v18.BiddingDataExclusionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingSeasonalityAdjustmentService"], version: _V18
    ) -> v18.BiddingSeasonalityAdjustmentServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingSeasonalityAdjustmentService"]
    ) -> v18.BiddingSeasonalityAdjustmentServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingStrategyService"], version: _V18
    ) -> v18.BiddingStrategyServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BiddingStrategyService"]
    ) -> v18.BiddingStrategyServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BillingSetupService"], version: _V18
    ) -> v18.BillingSetupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BillingSetupService"]
    ) -> v18.BillingSetupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BrandSuggestionService"], version: _V18
    ) -> v18.BrandSuggestionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["BrandSuggestionService"]
    ) -> v18.BrandSuggestionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignAssetService"], version: _V18
    ) -> v18.CampaignAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignAssetService"]
    ) -> v18.CampaignAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignAssetSetService"], version: _V18
    ) -> v18.CampaignAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignAssetSetService"]
    ) -> v18.CampaignAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignBidModifierService"], version: _V18
    ) -> v18.CampaignBidModifierServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignBidModifierService"]
    ) -> v18.CampaignBidModifierServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignBudgetService"], version: _V18
    ) -> v18.CampaignBudgetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignBudgetService"]
    ) -> v18.CampaignBudgetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignConversionGoalService"], version: _V18
    ) -> v18.CampaignConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignConversionGoalService"]
    ) -> v18.CampaignConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignCriterionService"], version: _V18
    ) -> v18.CampaignCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignCriterionService"]
    ) -> v18.CampaignCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignCustomizerService"], version: _V18
    ) -> v18.CampaignCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignCustomizerService"]
    ) -> v18.CampaignCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignDraftService"], version: _V18
    ) -> v18.CampaignDraftServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignDraftService"]
    ) -> v18.CampaignDraftServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignExtensionSettingService"], version: _V18
    ) -> v18.CampaignExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignExtensionSettingService"]
    ) -> v18.CampaignExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignFeedService"], version: _V18
    ) -> v18.CampaignFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignFeedService"]
    ) -> v18.CampaignFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignGroupService"], version: _V18
    ) -> v18.CampaignGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignGroupService"]
    ) -> v18.CampaignGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignLabelService"], version: _V18
    ) -> v18.CampaignLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignLabelService"]
    ) -> v18.CampaignLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignLifecycleGoalService"], version: _V18
    ) -> v18.CampaignLifecycleGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignLifecycleGoalService"]
    ) -> v18.CampaignLifecycleGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignService"], version: _V18
    ) -> v18.CampaignServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignService"]
    ) -> v18.CampaignServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignSharedSetService"], version: _V18
    ) -> v18.CampaignSharedSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CampaignSharedSetService"]
    ) -> v18.CampaignSharedSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ContentCreatorInsightsService"], version: _V18
    ) -> v18.ContentCreatorInsightsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ContentCreatorInsightsService"]
    ) -> v18.ContentCreatorInsightsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionActionService"], version: _V18
    ) -> v18.ConversionActionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionActionService"]
    ) -> v18.ConversionActionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionAdjustmentUploadService"], version: _V18
    ) -> v18.ConversionAdjustmentUploadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionAdjustmentUploadService"]
    ) -> v18.ConversionAdjustmentUploadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionCustomVariableService"], version: _V18
    ) -> v18.ConversionCustomVariableServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionCustomVariableService"]
    ) -> v18.ConversionCustomVariableServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionGoalCampaignConfigService"], version: _V18
    ) -> v18.ConversionGoalCampaignConfigServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionGoalCampaignConfigService"]
    ) -> v18.ConversionGoalCampaignConfigServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionUploadService"], version: _V18
    ) -> v18.ConversionUploadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionUploadService"]
    ) -> v18.ConversionUploadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionValueRuleService"], version: _V18
    ) -> v18.ConversionValueRuleServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionValueRuleService"]
    ) -> v18.ConversionValueRuleServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionValueRuleSetService"], version: _V18
    ) -> v18.ConversionValueRuleSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ConversionValueRuleSetService"]
    ) -> v18.ConversionValueRuleSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomAudienceService"], version: _V18
    ) -> v18.CustomAudienceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomAudienceService"]
    ) -> v18.CustomAudienceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomConversionGoalService"], version: _V18
    ) -> v18.CustomConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomConversionGoalService"]
    ) -> v18.CustomConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomInterestService"], version: _V18
    ) -> v18.CustomInterestServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomInterestService"]
    ) -> v18.CustomInterestServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerAssetService"], version: _V18
    ) -> v18.CustomerAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerAssetService"]
    ) -> v18.CustomerAssetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerAssetSetService"], version: _V18
    ) -> v18.CustomerAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerAssetSetService"]
    ) -> v18.CustomerAssetSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["Customer"], version: _V18
    ) -> v18.CustomerClient: ...
    @overload
    def get_service(self, name: Literal["Customer"]) -> v18.CustomerClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerClientLinkService"], version: _V18
    ) -> v18.CustomerClientLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerClientLinkService"]
    ) -> v18.CustomerClientLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerConversionGoalService"], version: _V18
    ) -> v18.CustomerConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerConversionGoalService"]
    ) -> v18.CustomerConversionGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerCustomizerService"], version: _V18
    ) -> v18.CustomerCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerCustomizerService"]
    ) -> v18.CustomerCustomizerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerExtensionSettingService"], version: _V18
    ) -> v18.CustomerExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerExtensionSettingService"]
    ) -> v18.CustomerExtensionSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerFeedService"], version: _V18
    ) -> v18.CustomerFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerFeedService"]
    ) -> v18.CustomerFeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerLabelService"], version: _V18
    ) -> v18.CustomerLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerLabelService"]
    ) -> v18.CustomerLabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerLifecycleGoalService"], version: _V18
    ) -> v18.CustomerLifecycleGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerLifecycleGoalService"]
    ) -> v18.CustomerLifecycleGoalServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerManagerLinkService"], version: _V18
    ) -> v18.CustomerManagerLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerManagerLinkService"]
    ) -> v18.CustomerManagerLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerNegativeCriterionService"], version: _V18
    ) -> v18.CustomerNegativeCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerNegativeCriterionService"]
    ) -> v18.CustomerNegativeCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerService"], version: _V18
    ) -> v18.CustomerServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerService"]
    ) -> v18.CustomerServiceClient: ...
    @overload
    def get_service(
        self,
        name: Literal["CustomerSkAdNetworkConversionValueSchemaService"],
        version: _V18,
    ) -> v18.CustomerSkAdNetworkConversionValueSchemaServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerSkAdNetworkConversionValueSchemaService"]
    ) -> v18.CustomerSkAdNetworkConversionValueSchemaServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerUserAccessInvitationService"], version: _V18
    ) -> v18.CustomerUserAccessInvitationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerUserAccessInvitationService"]
    ) -> v18.CustomerUserAccessInvitationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerUserAccessService"], version: _V18
    ) -> v18.CustomerUserAccessServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomerUserAccessService"]
    ) -> v18.CustomerUserAccessServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomizerAttributeService"], version: _V18
    ) -> v18.CustomizerAttributeServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["CustomizerAttributeService"]
    ) -> v18.CustomizerAttributeServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["DataLinkService"], version: _V18
    ) -> v18.DataLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["DataLinkService"]
    ) -> v18.DataLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExperimentArmService"], version: _V18
    ) -> v18.ExperimentArmServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExperimentArmService"]
    ) -> v18.ExperimentArmServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExperimentService"], version: _V18
    ) -> v18.ExperimentServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExperimentService"]
    ) -> v18.ExperimentServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExtensionFeedItemService"], version: _V18
    ) -> v18.ExtensionFeedItemServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ExtensionFeedItemService"]
    ) -> v18.ExtensionFeedItemServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemService"], version: _V18
    ) -> v18.FeedItemServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemService"]
    ) -> v18.FeedItemServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemSetLinkService"], version: _V18
    ) -> v18.FeedItemSetLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemSetLinkService"]
    ) -> v18.FeedItemSetLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemSetService"], version: _V18
    ) -> v18.FeedItemSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemSetService"]
    ) -> v18.FeedItemSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemTargetService"], version: _V18
    ) -> v18.FeedItemTargetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedItemTargetService"]
    ) -> v18.FeedItemTargetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedMappingService"], version: _V18
    ) -> v18.FeedMappingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedMappingService"]
    ) -> v18.FeedMappingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["FeedService"], version: _V18
    ) -> v18.FeedServiceClient: ...
    @overload
    def get_service(self, name: Literal["FeedService"]) -> v18.FeedServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GeoTargetConstantService"], version: _V18
    ) -> v18.GeoTargetConstantServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GeoTargetConstantService"]
    ) -> v18.GeoTargetConstantServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GoogleAdsFieldService"], version: _V18
    ) -> v18.GoogleAdsFieldServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GoogleAdsFieldService"]
    ) -> v18.GoogleAdsFieldServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GoogleAdsService"], version: _V18
    ) -> v18.GoogleAdsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["GoogleAdsService"]
    ) -> v18.GoogleAdsServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["IdentityVerificationService"], version: _V18
    ) -> v18.IdentityVerificationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["IdentityVerificationService"]
    ) -> v18.IdentityVerificationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["InvoiceService"], version: _V18
    ) -> v18.InvoiceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["InvoiceService"]
    ) -> v18.InvoiceServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanAdGroupKeywordService"], version: _V18
    ) -> v18.KeywordPlanAdGroupKeywordServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanAdGroupKeywordService"]
    ) -> v18.KeywordPlanAdGroupKeywordServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanAdGroupService"], version: _V18
    ) -> v18.KeywordPlanAdGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanAdGroupService"]
    ) -> v18.KeywordPlanAdGroupServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanCampaignKeywordService"], version: _V18
    ) -> v18.KeywordPlanCampaignKeywordServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanCampaignKeywordService"]
    ) -> v18.KeywordPlanCampaignKeywordServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanCampaignService"], version: _V18
    ) -> v18.KeywordPlanCampaignServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanCampaignService"]
    ) -> v18.KeywordPlanCampaignServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanIdeaService"], version: _V18
    ) -> v18.KeywordPlanIdeaServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanIdeaService"]
    ) -> v18.KeywordPlanIdeaServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanService"], version: _V18
    ) -> v18.KeywordPlanServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordPlanService"]
    ) -> v18.KeywordPlanServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordThemeConstantService"], version: _V18
    ) -> v18.KeywordThemeConstantServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["KeywordThemeConstantService"]
    ) -> v18.KeywordThemeConstantServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["LabelService"], version: _V18
    ) -> v18.LabelServiceClient: ...
    @overload
    def get_service(self, name: Literal["LabelService"]) -> v18.LabelServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["LocalServicesLeadService"], version: _V18
    ) -> v18.LocalServicesLeadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["LocalServicesLeadService"]
    ) -> v18.LocalServicesLeadServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["OfflineUserDataJobService"], version: _V18
    ) -> v18.OfflineUserDataJobServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["OfflineUserDataJobService"]
    ) -> v18.OfflineUserDataJobServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["PaymentsAccountService"], version: _V18
    ) -> v18.PaymentsAccountServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["PaymentsAccountService"]
    ) -> v18.PaymentsAccountServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ProductLinkInvitationService"], version: _V18
    ) -> v18.ProductLinkInvitationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ProductLinkInvitationService"]
    ) -> v18.ProductLinkInvitationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ProductLinkService"], version: _V18
    ) -> v18.ProductLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ProductLinkService"]
    ) -> v18.ProductLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ReachPlanService"], version: _V18
    ) -> v18.ReachPlanServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ReachPlanService"]
    ) -> v18.ReachPlanServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RecommendationService"], version: _V18
    ) -> v18.RecommendationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RecommendationService"]
    ) -> v18.RecommendationServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RecommendationSubscriptionService"], version: _V18
    ) -> v18.RecommendationSubscriptionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RecommendationSubscriptionService"]
    ) -> v18.RecommendationSubscriptionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RemarketingActionService"], version: _V18
    ) -> v18.RemarketingActionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["RemarketingActionService"]
    ) -> v18.RemarketingActionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ShareablePreviewService"], version: _V18
    ) -> v18.ShareablePreviewServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ShareablePreviewService"]
    ) -> v18.ShareablePreviewServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SharedCriterionService"], version: _V18
    ) -> v18.SharedCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SharedCriterionService"]
    ) -> v18.SharedCriterionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SharedSetService"], version: _V18
    ) -> v18.SharedSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SharedSetService"]
    ) -> v18.SharedSetServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SmartCampaignSettingService"], version: _V18
    ) -> v18.SmartCampaignSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SmartCampaignSettingService"]
    ) -> v18.SmartCampaignSettingServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SmartCampaignSuggestService"], version: _V18
    ) -> v18.SmartCampaignSuggestServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["SmartCampaignSuggestService"]
    ) -> v18.SmartCampaignSuggestServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ThirdPartyAppAnalyticsLinkService"], version: _V18
    ) -> v18.ThirdPartyAppAnalyticsLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["ThirdPartyAppAnalyticsLinkService"]
    ) -> v18.ThirdPartyAppAnalyticsLinkServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["TravelAssetSuggestionService"], version: _V18
    ) -> v18.TravelAssetSuggestionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["TravelAssetSuggestionService"]
    ) -> v18.TravelAssetSuggestionServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserDataService"], version: _V18
    ) -> v18.UserDataServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserDataService"]
    ) -> v18.UserDataServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserListCustomerTypeService"], version: _V18
    ) -> v18.UserListCustomerTypeServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserListCustomerTypeService"]
    ) -> v18.UserListCustomerTypeServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserListService"], version: _V18
    ) -> v18.UserListServiceClient: ...
    @overload
    def get_service(
        self, name: Literal["UserListService"]
    ) -> v18.UserListServiceClient: ...
    @overload
    def get_service(self, name: str, version: _V = "v18") -> Any: ...
    # End of autogenerated service overloads
