import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; import type { IBinaryWriter } from "@protobuf-ts/runtime"; import type { BinaryReadOptions } from "@protobuf-ts/runtime"; import type { IBinaryReader } from "@protobuf-ts/runtime"; import type { PartialMessage } from "@protobuf-ts/runtime"; import { MessageType } from "@protobuf-ts/runtime"; import { QualityScoreBucketEnum_QualityScoreBucket } from "../enums/quality_score_bucket"; import { AudienceInfo } from "../common/criteria"; import { CombinedAudienceInfo } from "../common/criteria"; import { CustomAudienceInfo } from "../common/criteria"; import { CustomIntentInfo } from "../common/criteria"; import { CustomAffinityInfo } from "../common/criteria"; import { AppPaymentModelInfo } from "../common/criteria"; import { WebpageInfo } from "../common/criteria"; import { UserInterestInfo } from "../common/criteria"; import { TopicInfo } from "../common/criteria"; import { YouTubeChannelInfo } from "../common/criteria"; import { YouTubeVideoInfo } from "../common/criteria"; import { UserListInfo } from "../common/criteria"; import { ParentalStatusInfo } from "../common/criteria"; import { IncomeRangeInfo } from "../common/criteria"; import { GenderInfo } from "../common/criteria"; import { AgeRangeInfo } from "../common/criteria"; import { ListingGroupInfo } from "../common/criteria"; import { MobileApplicationInfo } from "../common/criteria"; import { MobileAppCategoryInfo } from "../common/criteria"; import { PlacementInfo } from "../common/criteria"; import { KeywordInfo } from "../common/criteria"; import { CustomParameter } from "../common/custom_parameter"; import { BiddingSourceEnum_BiddingSource } from "../enums/bidding_source"; import { AdGroupCriterionApprovalStatusEnum_AdGroupCriterionApprovalStatus } from "../enums/ad_group_criterion_approval_status"; import { CriterionSystemServingStatusEnum_CriterionSystemServingStatus } from "../enums/criterion_system_serving_status"; import { CriterionTypeEnum_CriterionType } from "../enums/criterion_type"; import { AdGroupCriterionStatusEnum_AdGroupCriterionStatus } from "../enums/ad_group_criterion_status"; /** * An ad group criterion. * * @generated from protobuf message google.ads.googleads.v11.resources.AdGroupCriterion */ export interface AdGroupCriterion { /** * Immutable. The resource name of the ad group criterion. * Ad group criterion resource names have the form: * * `customers/{customer_id}/adGroupCriteria/{ad_group_id}~{criterion_id}` * * @generated from protobuf field: string resource_name = 1; */ resourceName: string; /** * Output only. The ID of the criterion. * * This field is ignored for mutates. * * @generated from protobuf field: optional int64 criterion_id = 56; */ criterionId?: bigint; /** * Output only. The display name of the criterion. * * This field is ignored for mutates. * * @generated from protobuf field: string display_name = 77; */ displayName: string; /** * The status of the criterion. * * This is the status of the ad group criterion entity, set by the client. * Note: UI reports may incorporate additional information that affects * whether a criterion is eligible to run. In some cases a criterion that's * REMOVED in the API can still show as enabled in the UI. * For example, campaigns by default show to users of all age ranges unless * excluded. The UI will show each age range as "enabled", since they're * eligible to see the ads; but AdGroupCriterion.status will show "removed", * since no positive criterion was added. * * @generated from protobuf field: google.ads.googleads.v11.enums.AdGroupCriterionStatusEnum.AdGroupCriterionStatus status = 3; */ status: AdGroupCriterionStatusEnum_AdGroupCriterionStatus; /** * Output only. Information regarding the quality of the criterion. * * @generated from protobuf field: google.ads.googleads.v11.resources.AdGroupCriterion.QualityInfo quality_info = 4; */ qualityInfo?: AdGroupCriterion_QualityInfo; /** * Immutable. The ad group to which the criterion belongs. * * @generated from protobuf field: optional string ad_group = 57; */ adGroup?: string; /** * Output only. The type of the criterion. * * @generated from protobuf field: google.ads.googleads.v11.enums.CriterionTypeEnum.CriterionType type = 25; */ type: CriterionTypeEnum_CriterionType; /** * Immutable. Whether to target (`false`) or exclude (`true`) the criterion. * * This field is immutable. To switch a criterion from positive to negative, * remove then re-add it. * * @generated from protobuf field: optional bool negative = 58; */ negative?: boolean; /** * Output only. Serving status of the criterion. * * @generated from protobuf field: google.ads.googleads.v11.enums.CriterionSystemServingStatusEnum.CriterionSystemServingStatus system_serving_status = 52; */ systemServingStatus: CriterionSystemServingStatusEnum_CriterionSystemServingStatus; /** * Output only. Approval status of the criterion. * * @generated from protobuf field: google.ads.googleads.v11.enums.AdGroupCriterionApprovalStatusEnum.AdGroupCriterionApprovalStatus approval_status = 53; */ approvalStatus: AdGroupCriterionApprovalStatusEnum_AdGroupCriterionApprovalStatus; /** * Output only. List of disapproval reasons of the criterion. * * The different reasons for disapproving a criterion can be found here: * https://support.google.com/adspolicy/answer/6008942 * * This field is read-only. * * @generated from protobuf field: repeated string disapproval_reasons = 59; */ disapprovalReasons: string[]; /** * Output only. The resource names of labels attached to this ad group criterion. * * @generated from protobuf field: repeated string labels = 60; */ labels: string[]; /** * The modifier for the bid when the criterion matches. The modifier must be * in the range: 0.1 - 10.0. Most targetable criteria types support modifiers. * * @generated from protobuf field: optional double bid_modifier = 61; */ bidModifier?: number; /** * The CPC (cost-per-click) bid. * * @generated from protobuf field: optional int64 cpc_bid_micros = 62; */ cpcBidMicros?: bigint; /** * The CPM (cost-per-thousand viewable impressions) bid. * * @generated from protobuf field: optional int64 cpm_bid_micros = 63; */ cpmBidMicros?: bigint; /** * The CPV (cost-per-view) bid. * * @generated from protobuf field: optional int64 cpv_bid_micros = 64; */ cpvBidMicros?: bigint; /** * The CPC bid amount, expressed as a fraction of the advertised price * for some good or service. The valid range for the fraction is [0,1) and the * value stored here is 1,000,000 * [fraction]. * * @generated from protobuf field: optional int64 percent_cpc_bid_micros = 65; */ percentCpcBidMicros?: bigint; /** * Output only. The effective CPC (cost-per-click) bid. * * @generated from protobuf field: optional int64 effective_cpc_bid_micros = 66; */ effectiveCpcBidMicros?: bigint; /** * Output only. The effective CPM (cost-per-thousand viewable impressions) bid. * * @generated from protobuf field: optional int64 effective_cpm_bid_micros = 67; */ effectiveCpmBidMicros?: bigint; /** * Output only. The effective CPV (cost-per-view) bid. * * @generated from protobuf field: optional int64 effective_cpv_bid_micros = 68; */ effectiveCpvBidMicros?: bigint; /** * Output only. The effective Percent CPC bid amount. * * @generated from protobuf field: optional int64 effective_percent_cpc_bid_micros = 69; */ effectivePercentCpcBidMicros?: bigint; /** * Output only. Source of the effective CPC bid. * * @generated from protobuf field: google.ads.googleads.v11.enums.BiddingSourceEnum.BiddingSource effective_cpc_bid_source = 21; */ effectiveCpcBidSource: BiddingSourceEnum_BiddingSource; /** * Output only. Source of the effective CPM bid. * * @generated from protobuf field: google.ads.googleads.v11.enums.BiddingSourceEnum.BiddingSource effective_cpm_bid_source = 22; */ effectiveCpmBidSource: BiddingSourceEnum_BiddingSource; /** * Output only. Source of the effective CPV bid. * * @generated from protobuf field: google.ads.googleads.v11.enums.BiddingSourceEnum.BiddingSource effective_cpv_bid_source = 23; */ effectiveCpvBidSource: BiddingSourceEnum_BiddingSource; /** * Output only. Source of the effective Percent CPC bid. * * @generated from protobuf field: google.ads.googleads.v11.enums.BiddingSourceEnum.BiddingSource effective_percent_cpc_bid_source = 35; */ effectivePercentCpcBidSource: BiddingSourceEnum_BiddingSource; /** * Output only. Estimates for criterion bids at various positions. * * @generated from protobuf field: google.ads.googleads.v11.resources.AdGroupCriterion.PositionEstimates position_estimates = 10; */ positionEstimates?: AdGroupCriterion_PositionEstimates; /** * The list of possible final URLs after all cross-domain redirects for the * ad. * * @generated from protobuf field: repeated string final_urls = 70; */ finalUrls: string[]; /** * The list of possible final mobile URLs after all cross-domain redirects. * * @generated from protobuf field: repeated string final_mobile_urls = 71; */ finalMobileUrls: string[]; /** * URL template for appending params to final URL. * * @generated from protobuf field: optional string final_url_suffix = 72; */ finalUrlSuffix?: string; /** * The URL template for constructing a tracking URL. * * @generated from protobuf field: optional string tracking_url_template = 73; */ trackingUrlTemplate?: string; /** * The list of mappings used to substitute custom parameter tags in a * `tracking_url_template`, `final_urls`, or `mobile_final_urls`. * * @generated from protobuf field: repeated google.ads.googleads.v11.common.CustomParameter url_custom_parameters = 14; */ urlCustomParameters: CustomParameter[]; /** * @generated from protobuf oneof: criterion */ criterion: { oneofKind: "keyword"; /** * Immutable. Keyword. * * @generated from protobuf field: google.ads.googleads.v11.common.KeywordInfo keyword = 27; */ keyword: KeywordInfo; } | { oneofKind: "placement"; /** * Immutable. Placement. * * @generated from protobuf field: google.ads.googleads.v11.common.PlacementInfo placement = 28; */ placement: PlacementInfo; } | { oneofKind: "mobileAppCategory"; /** * Immutable. Mobile app category. * * @generated from protobuf field: google.ads.googleads.v11.common.MobileAppCategoryInfo mobile_app_category = 29; */ mobileAppCategory: MobileAppCategoryInfo; } | { oneofKind: "mobileApplication"; /** * Immutable. Mobile application. * * @generated from protobuf field: google.ads.googleads.v11.common.MobileApplicationInfo mobile_application = 30; */ mobileApplication: MobileApplicationInfo; } | { oneofKind: "listingGroup"; /** * Immutable. Listing group. * * @generated from protobuf field: google.ads.googleads.v11.common.ListingGroupInfo listing_group = 32; */ listingGroup: ListingGroupInfo; } | { oneofKind: "ageRange"; /** * Immutable. Age range. * * @generated from protobuf field: google.ads.googleads.v11.common.AgeRangeInfo age_range = 36; */ ageRange: AgeRangeInfo; } | { oneofKind: "gender"; /** * Immutable. Gender. * * @generated from protobuf field: google.ads.googleads.v11.common.GenderInfo gender = 37; */ gender: GenderInfo; } | { oneofKind: "incomeRange"; /** * Immutable. Income range. * * @generated from protobuf field: google.ads.googleads.v11.common.IncomeRangeInfo income_range = 38; */ incomeRange: IncomeRangeInfo; } | { oneofKind: "parentalStatus"; /** * Immutable. Parental status. * * @generated from protobuf field: google.ads.googleads.v11.common.ParentalStatusInfo parental_status = 39; */ parentalStatus: ParentalStatusInfo; } | { oneofKind: "userList"; /** * Immutable. User List. * * @generated from protobuf field: google.ads.googleads.v11.common.UserListInfo user_list = 42; */ userList: UserListInfo; } | { oneofKind: "youtubeVideo"; /** * Immutable. YouTube Video. * * @generated from protobuf field: google.ads.googleads.v11.common.YouTubeVideoInfo youtube_video = 40; */ youtubeVideo: YouTubeVideoInfo; } | { oneofKind: "youtubeChannel"; /** * Immutable. YouTube Channel. * * @generated from protobuf field: google.ads.googleads.v11.common.YouTubeChannelInfo youtube_channel = 41; */ youtubeChannel: YouTubeChannelInfo; } | { oneofKind: "topic"; /** * Immutable. Topic. * * @generated from protobuf field: google.ads.googleads.v11.common.TopicInfo topic = 43; */ topic: TopicInfo; } | { oneofKind: "userInterest"; /** * Immutable. User Interest. * * @generated from protobuf field: google.ads.googleads.v11.common.UserInterestInfo user_interest = 45; */ userInterest: UserInterestInfo; } | { oneofKind: "webpage"; /** * Immutable. Webpage * * @generated from protobuf field: google.ads.googleads.v11.common.WebpageInfo webpage = 46; */ webpage: WebpageInfo; } | { oneofKind: "appPaymentModel"; /** * Immutable. App Payment Model. * * @generated from protobuf field: google.ads.googleads.v11.common.AppPaymentModelInfo app_payment_model = 47; */ appPaymentModel: AppPaymentModelInfo; } | { oneofKind: "customAffinity"; /** * Immutable. Custom Affinity. * * @generated from protobuf field: google.ads.googleads.v11.common.CustomAffinityInfo custom_affinity = 48; */ customAffinity: CustomAffinityInfo; } | { oneofKind: "customIntent"; /** * Immutable. Custom Intent. * * @generated from protobuf field: google.ads.googleads.v11.common.CustomIntentInfo custom_intent = 49; */ customIntent: CustomIntentInfo; } | { oneofKind: "customAudience"; /** * Immutable. Custom Audience. * * @generated from protobuf field: google.ads.googleads.v11.common.CustomAudienceInfo custom_audience = 74; */ customAudience: CustomAudienceInfo; } | { oneofKind: "combinedAudience"; /** * Immutable. Combined Audience. * * @generated from protobuf field: google.ads.googleads.v11.common.CombinedAudienceInfo combined_audience = 75; */ combinedAudience: CombinedAudienceInfo; } | { oneofKind: "audience"; /** * Immutable. Audience. * * @generated from protobuf field: google.ads.googleads.v11.common.AudienceInfo audience = 79; */ audience: AudienceInfo; } | { oneofKind: undefined; }; } /** * A container for ad group criterion quality information. * * @generated from protobuf message google.ads.googleads.v11.resources.AdGroupCriterion.QualityInfo */ export interface AdGroupCriterion_QualityInfo { /** * Output only. The quality score. * * This field may not be populated if Google does not have enough * information to determine a value. * * @generated from protobuf field: optional int32 quality_score = 5; */ qualityScore?: number; /** * Output only. The performance of the ad compared to other advertisers. * * @generated from protobuf field: google.ads.googleads.v11.enums.QualityScoreBucketEnum.QualityScoreBucket creative_quality_score = 2; */ creativeQualityScore: QualityScoreBucketEnum_QualityScoreBucket; /** * Output only. The quality score of the landing page. * * @generated from protobuf field: google.ads.googleads.v11.enums.QualityScoreBucketEnum.QualityScoreBucket post_click_quality_score = 3; */ postClickQualityScore: QualityScoreBucketEnum_QualityScoreBucket; /** * Output only. The click-through rate compared to that of other advertisers. * * @generated from protobuf field: google.ads.googleads.v11.enums.QualityScoreBucketEnum.QualityScoreBucket search_predicted_ctr = 4; */ searchPredictedCtr: QualityScoreBucketEnum_QualityScoreBucket; } /** * Estimates for criterion bids at various positions. * * @generated from protobuf message google.ads.googleads.v11.resources.AdGroupCriterion.PositionEstimates */ export interface AdGroupCriterion_PositionEstimates { /** * Output only. The estimate of the CPC bid required for ad to be shown on first * page of search results. * * @generated from protobuf field: optional int64 first_page_cpc_micros = 6; */ firstPageCpcMicros?: bigint; /** * Output only. The estimate of the CPC bid required for ad to be displayed in first * position, at the top of the first page of search results. * * @generated from protobuf field: optional int64 first_position_cpc_micros = 7; */ firstPositionCpcMicros?: bigint; /** * Output only. The estimate of the CPC bid required for ad to be displayed at the top * of the first page of search results. * * @generated from protobuf field: optional int64 top_of_page_cpc_micros = 8; */ topOfPageCpcMicros?: bigint; /** * Output only. Estimate of how many clicks per week you might get by changing your * keyword bid to the value in first_position_cpc_micros. * * @generated from protobuf field: optional int64 estimated_add_clicks_at_first_position_cpc = 9; */ estimatedAddClicksAtFirstPositionCpc?: bigint; /** * Output only. Estimate of how your cost per week might change when changing your * keyword bid to the value in first_position_cpc_micros. * * @generated from protobuf field: optional int64 estimated_add_cost_at_first_position_cpc = 10; */ estimatedAddCostAtFirstPositionCpc?: bigint; } declare class AdGroupCriterion$Type extends MessageType { constructor(); create(value?: PartialMessage): AdGroupCriterion; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AdGroupCriterion): AdGroupCriterion; internalBinaryWrite(message: AdGroupCriterion, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.AdGroupCriterion */ export declare const AdGroupCriterion: AdGroupCriterion$Type; declare class AdGroupCriterion_QualityInfo$Type extends MessageType { constructor(); create(value?: PartialMessage): AdGroupCriterion_QualityInfo; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AdGroupCriterion_QualityInfo): AdGroupCriterion_QualityInfo; internalBinaryWrite(message: AdGroupCriterion_QualityInfo, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.AdGroupCriterion.QualityInfo */ export declare const AdGroupCriterion_QualityInfo: AdGroupCriterion_QualityInfo$Type; declare class AdGroupCriterion_PositionEstimates$Type extends MessageType { constructor(); create(value?: PartialMessage): AdGroupCriterion_PositionEstimates; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: AdGroupCriterion_PositionEstimates): AdGroupCriterion_PositionEstimates; internalBinaryWrite(message: AdGroupCriterion_PositionEstimates, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.ads.googleads.v11.resources.AdGroupCriterion.PositionEstimates */ export declare const AdGroupCriterion_PositionEstimates: AdGroupCriterion_PositionEstimates$Type; export {};