google-ads-api-client
Version:
A friendly and exhaustive client to the google-ads-api, code generated directly from google's published protobuf schema.
533 lines • 114 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Recommendation_UpgradeLocalCampaignToPerformanceMaxRecommendation = exports.Recommendation_DisplayExpansionOptInRecommendation = exports.Recommendation_UpgradeSmartShoppingCampaignToPerformanceMaxRecommendation = exports.Recommendation_UseBroadMatchKeywordRecommendation = exports.Recommendation_ResponsiveSearchAdRecommendation = exports.Recommendation_ResponsiveSearchAdImproveAdStrengthRecommendation = exports.Recommendation_ResponsiveSearchAdAssetRecommendation = exports.Recommendation_TargetRoasOptInRecommendation = exports.Recommendation_MoveUnusedBudgetRecommendation = exports.Recommendation_KeywordMatchTypeRecommendation = exports.Recommendation_CallExtensionRecommendation = exports.Recommendation_SitelinkExtensionRecommendation = exports.Recommendation_CalloutExtensionRecommendation = exports.Recommendation_OptimizeAdRotationRecommendation = exports.Recommendation_MaximizeClicksOptInRecommendation = exports.Recommendation_SearchPartnersOptInRecommendation = exports.Recommendation_EnhancedCpcOptInRecommendation = exports.Recommendation_MaximizeConversionsOptInRecommendation = exports.Recommendation_TargetCpaOptInRecommendation_TargetCpaOptInRecommendationOption = exports.Recommendation_TargetCpaOptInRecommendation = exports.Recommendation_TextAdRecommendation = exports.Recommendation_KeywordRecommendation = exports.Recommendation_CampaignBudgetRecommendation_CampaignBudgetRecommendationOption = exports.Recommendation_CampaignBudgetRecommendation = exports.Recommendation_RecommendationMetrics = exports.Recommendation_RecommendationImpact = exports.Recommendation = void 0;
const runtime_1 = require("@protobuf-ts/runtime");
const runtime_2 = require("@protobuf-ts/runtime");
const runtime_3 = require("@protobuf-ts/runtime");
const runtime_4 = require("@protobuf-ts/runtime");
const runtime_5 = require("@protobuf-ts/runtime");
const keyword_match_type_1 = require("../enums/keyword_match_type");
const extensions_1 = require("../common/extensions");
const extensions_2 = require("../common/extensions");
const extensions_3 = require("../common/extensions");
const target_cpa_opt_in_recommendation_goal_1 = require("../enums/target_cpa_opt_in_recommendation_goal");
const ad_1 = require("./ad");
const criteria_1 = require("../common/criteria");
const recommendation_type_1 = require("../enums/recommendation_type");
// @generated message type with reflection information, may provide speed optimized methods
class Recommendation$Type extends runtime_5.MessageType {
constructor() {
super("google.ads.googleads.v11.resources.Recommendation", [
{ no: 1, name: "resource_name", kind: "scalar", T: 9 /*ScalarType.STRING*/, options: { "google.api.field_behavior": ["IMMUTABLE"], "google.api.resource_reference": { type: "googleads.googleapis.com/Recommendation" } } },
{ no: 2, name: "type", kind: "enum", T: () => ["google.ads.googleads.v11.enums.RecommendationTypeEnum.RecommendationType", recommendation_type_1.RecommendationTypeEnum_RecommendationType], options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 3, name: "impact", kind: "message", T: () => exports.Recommendation_RecommendationImpact, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 24, name: "campaign_budget", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"], "google.api.resource_reference": { type: "googleads.googleapis.com/CampaignBudget" } } },
{ no: 25, name: "campaign", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"], "google.api.resource_reference": { type: "googleads.googleapis.com/Campaign" } } },
{ no: 26, name: "ad_group", kind: "scalar", opt: true, T: 9 /*ScalarType.STRING*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"], "google.api.resource_reference": { type: "googleads.googleapis.com/AdGroup" } } },
{ no: 27, name: "dismissed", kind: "scalar", opt: true, T: 8 /*ScalarType.BOOL*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 4, name: "campaign_budget_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_CampaignBudgetRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 22, name: "forecasting_campaign_budget_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_CampaignBudgetRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 8, name: "keyword_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_KeywordRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 9, name: "text_ad_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_TextAdRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 10, name: "target_cpa_opt_in_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_TargetCpaOptInRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 11, name: "maximize_conversions_opt_in_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_MaximizeConversionsOptInRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 12, name: "enhanced_cpc_opt_in_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_EnhancedCpcOptInRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 14, name: "search_partners_opt_in_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_SearchPartnersOptInRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 15, name: "maximize_clicks_opt_in_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_MaximizeClicksOptInRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 16, name: "optimize_ad_rotation_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_OptimizeAdRotationRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 17, name: "callout_extension_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_CalloutExtensionRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 18, name: "sitelink_extension_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_SitelinkExtensionRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 19, name: "call_extension_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_CallExtensionRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 20, name: "keyword_match_type_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_KeywordMatchTypeRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 21, name: "move_unused_budget_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_MoveUnusedBudgetRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 23, name: "target_roas_opt_in_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_TargetRoasOptInRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 28, name: "responsive_search_ad_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_ResponsiveSearchAdRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 29, name: "marginal_roi_campaign_budget_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_CampaignBudgetRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 30, name: "use_broad_match_keyword_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_UseBroadMatchKeywordRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 31, name: "responsive_search_ad_asset_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_ResponsiveSearchAdAssetRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 32, name: "upgrade_smart_shopping_campaign_to_performance_max_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_UpgradeSmartShoppingCampaignToPerformanceMaxRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 33, name: "responsive_search_ad_improve_ad_strength_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_ResponsiveSearchAdImproveAdStrengthRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 34, name: "display_expansion_opt_in_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_DisplayExpansionOptInRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 35, name: "upgrade_local_campaign_to_performance_max_recommendation", kind: "message", oneof: "recommendation", T: () => exports.Recommendation_UpgradeLocalCampaignToPerformanceMaxRecommendation, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } }
], { "google.api.resource": { type: "googleads.googleapis.com/Recommendation", pattern: ["customers/{customer_id}/recommendations/{recommendation_id}"] } });
}
create(value) {
const message = { resourceName: "", type: 0, recommendation: { oneofKind: undefined } };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* string resource_name */ 1:
message.resourceName = reader.string();
break;
case /* google.ads.googleads.v11.enums.RecommendationTypeEnum.RecommendationType type */ 2:
message.type = reader.int32();
break;
case /* google.ads.googleads.v11.resources.Recommendation.RecommendationImpact impact */ 3:
message.impact = exports.Recommendation_RecommendationImpact.internalBinaryRead(reader, reader.uint32(), options, message.impact);
break;
case /* optional string campaign_budget */ 24:
message.campaignBudget = reader.string();
break;
case /* optional string campaign */ 25:
message.campaign = reader.string();
break;
case /* optional string ad_group */ 26:
message.adGroup = reader.string();
break;
case /* optional bool dismissed */ 27:
message.dismissed = reader.bool();
break;
case /* google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation campaign_budget_recommendation */ 4:
message.recommendation = {
oneofKind: "campaignBudgetRecommendation",
campaignBudgetRecommendation: exports.Recommendation_CampaignBudgetRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.campaignBudgetRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation forecasting_campaign_budget_recommendation */ 22:
message.recommendation = {
oneofKind: "forecastingCampaignBudgetRecommendation",
forecastingCampaignBudgetRecommendation: exports.Recommendation_CampaignBudgetRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.forecastingCampaignBudgetRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.KeywordRecommendation keyword_recommendation */ 8:
message.recommendation = {
oneofKind: "keywordRecommendation",
keywordRecommendation: exports.Recommendation_KeywordRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.keywordRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.TextAdRecommendation text_ad_recommendation */ 9:
message.recommendation = {
oneofKind: "textAdRecommendation",
textAdRecommendation: exports.Recommendation_TextAdRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.textAdRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.TargetCpaOptInRecommendation target_cpa_opt_in_recommendation */ 10:
message.recommendation = {
oneofKind: "targetCpaOptInRecommendation",
targetCpaOptInRecommendation: exports.Recommendation_TargetCpaOptInRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.targetCpaOptInRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.MaximizeConversionsOptInRecommendation maximize_conversions_opt_in_recommendation */ 11:
message.recommendation = {
oneofKind: "maximizeConversionsOptInRecommendation",
maximizeConversionsOptInRecommendation: exports.Recommendation_MaximizeConversionsOptInRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.maximizeConversionsOptInRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.EnhancedCpcOptInRecommendation enhanced_cpc_opt_in_recommendation */ 12:
message.recommendation = {
oneofKind: "enhancedCpcOptInRecommendation",
enhancedCpcOptInRecommendation: exports.Recommendation_EnhancedCpcOptInRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.enhancedCpcOptInRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.SearchPartnersOptInRecommendation search_partners_opt_in_recommendation */ 14:
message.recommendation = {
oneofKind: "searchPartnersOptInRecommendation",
searchPartnersOptInRecommendation: exports.Recommendation_SearchPartnersOptInRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.searchPartnersOptInRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.MaximizeClicksOptInRecommendation maximize_clicks_opt_in_recommendation */ 15:
message.recommendation = {
oneofKind: "maximizeClicksOptInRecommendation",
maximizeClicksOptInRecommendation: exports.Recommendation_MaximizeClicksOptInRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.maximizeClicksOptInRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.OptimizeAdRotationRecommendation optimize_ad_rotation_recommendation */ 16:
message.recommendation = {
oneofKind: "optimizeAdRotationRecommendation",
optimizeAdRotationRecommendation: exports.Recommendation_OptimizeAdRotationRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.optimizeAdRotationRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.CalloutExtensionRecommendation callout_extension_recommendation */ 17:
message.recommendation = {
oneofKind: "calloutExtensionRecommendation",
calloutExtensionRecommendation: exports.Recommendation_CalloutExtensionRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.calloutExtensionRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.SitelinkExtensionRecommendation sitelink_extension_recommendation */ 18:
message.recommendation = {
oneofKind: "sitelinkExtensionRecommendation",
sitelinkExtensionRecommendation: exports.Recommendation_SitelinkExtensionRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.sitelinkExtensionRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.CallExtensionRecommendation call_extension_recommendation */ 19:
message.recommendation = {
oneofKind: "callExtensionRecommendation",
callExtensionRecommendation: exports.Recommendation_CallExtensionRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.callExtensionRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.KeywordMatchTypeRecommendation keyword_match_type_recommendation */ 20:
message.recommendation = {
oneofKind: "keywordMatchTypeRecommendation",
keywordMatchTypeRecommendation: exports.Recommendation_KeywordMatchTypeRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.keywordMatchTypeRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.MoveUnusedBudgetRecommendation move_unused_budget_recommendation */ 21:
message.recommendation = {
oneofKind: "moveUnusedBudgetRecommendation",
moveUnusedBudgetRecommendation: exports.Recommendation_MoveUnusedBudgetRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.moveUnusedBudgetRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.TargetRoasOptInRecommendation target_roas_opt_in_recommendation */ 23:
message.recommendation = {
oneofKind: "targetRoasOptInRecommendation",
targetRoasOptInRecommendation: exports.Recommendation_TargetRoasOptInRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.targetRoasOptInRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.ResponsiveSearchAdRecommendation responsive_search_ad_recommendation */ 28:
message.recommendation = {
oneofKind: "responsiveSearchAdRecommendation",
responsiveSearchAdRecommendation: exports.Recommendation_ResponsiveSearchAdRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.responsiveSearchAdRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation marginal_roi_campaign_budget_recommendation */ 29:
message.recommendation = {
oneofKind: "marginalRoiCampaignBudgetRecommendation",
marginalRoiCampaignBudgetRecommendation: exports.Recommendation_CampaignBudgetRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.marginalRoiCampaignBudgetRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.UseBroadMatchKeywordRecommendation use_broad_match_keyword_recommendation */ 30:
message.recommendation = {
oneofKind: "useBroadMatchKeywordRecommendation",
useBroadMatchKeywordRecommendation: exports.Recommendation_UseBroadMatchKeywordRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.useBroadMatchKeywordRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.ResponsiveSearchAdAssetRecommendation responsive_search_ad_asset_recommendation */ 31:
message.recommendation = {
oneofKind: "responsiveSearchAdAssetRecommendation",
responsiveSearchAdAssetRecommendation: exports.Recommendation_ResponsiveSearchAdAssetRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.responsiveSearchAdAssetRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.UpgradeSmartShoppingCampaignToPerformanceMaxRecommendation upgrade_smart_shopping_campaign_to_performance_max_recommendation */ 32:
message.recommendation = {
oneofKind: "upgradeSmartShoppingCampaignToPerformanceMaxRecommendation",
upgradeSmartShoppingCampaignToPerformanceMaxRecommendation: exports.Recommendation_UpgradeSmartShoppingCampaignToPerformanceMaxRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.upgradeSmartShoppingCampaignToPerformanceMaxRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.ResponsiveSearchAdImproveAdStrengthRecommendation responsive_search_ad_improve_ad_strength_recommendation */ 33:
message.recommendation = {
oneofKind: "responsiveSearchAdImproveAdStrengthRecommendation",
responsiveSearchAdImproveAdStrengthRecommendation: exports.Recommendation_ResponsiveSearchAdImproveAdStrengthRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.responsiveSearchAdImproveAdStrengthRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.DisplayExpansionOptInRecommendation display_expansion_opt_in_recommendation */ 34:
message.recommendation = {
oneofKind: "displayExpansionOptInRecommendation",
displayExpansionOptInRecommendation: exports.Recommendation_DisplayExpansionOptInRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.displayExpansionOptInRecommendation)
};
break;
case /* google.ads.googleads.v11.resources.Recommendation.UpgradeLocalCampaignToPerformanceMaxRecommendation upgrade_local_campaign_to_performance_max_recommendation */ 35:
message.recommendation = {
oneofKind: "upgradeLocalCampaignToPerformanceMaxRecommendation",
upgradeLocalCampaignToPerformanceMaxRecommendation: exports.Recommendation_UpgradeLocalCampaignToPerformanceMaxRecommendation.internalBinaryRead(reader, reader.uint32(), options, message.recommendation.upgradeLocalCampaignToPerformanceMaxRecommendation)
};
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* string resource_name = 1; */
if (message.resourceName !== "")
writer.tag(1, runtime_1.WireType.LengthDelimited).string(message.resourceName);
/* google.ads.googleads.v11.enums.RecommendationTypeEnum.RecommendationType type = 2; */
if (message.type !== 0)
writer.tag(2, runtime_1.WireType.Varint).int32(message.type);
/* google.ads.googleads.v11.resources.Recommendation.RecommendationImpact impact = 3; */
if (message.impact)
exports.Recommendation_RecommendationImpact.internalBinaryWrite(message.impact, writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* optional string campaign_budget = 24; */
if (message.campaignBudget !== undefined)
writer.tag(24, runtime_1.WireType.LengthDelimited).string(message.campaignBudget);
/* optional string campaign = 25; */
if (message.campaign !== undefined)
writer.tag(25, runtime_1.WireType.LengthDelimited).string(message.campaign);
/* optional string ad_group = 26; */
if (message.adGroup !== undefined)
writer.tag(26, runtime_1.WireType.LengthDelimited).string(message.adGroup);
/* optional bool dismissed = 27; */
if (message.dismissed !== undefined)
writer.tag(27, runtime_1.WireType.Varint).bool(message.dismissed);
/* google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation campaign_budget_recommendation = 4; */
if (message.recommendation.oneofKind === "campaignBudgetRecommendation")
exports.Recommendation_CampaignBudgetRecommendation.internalBinaryWrite(message.recommendation.campaignBudgetRecommendation, writer.tag(4, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation forecasting_campaign_budget_recommendation = 22; */
if (message.recommendation.oneofKind === "forecastingCampaignBudgetRecommendation")
exports.Recommendation_CampaignBudgetRecommendation.internalBinaryWrite(message.recommendation.forecastingCampaignBudgetRecommendation, writer.tag(22, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.KeywordRecommendation keyword_recommendation = 8; */
if (message.recommendation.oneofKind === "keywordRecommendation")
exports.Recommendation_KeywordRecommendation.internalBinaryWrite(message.recommendation.keywordRecommendation, writer.tag(8, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.TextAdRecommendation text_ad_recommendation = 9; */
if (message.recommendation.oneofKind === "textAdRecommendation")
exports.Recommendation_TextAdRecommendation.internalBinaryWrite(message.recommendation.textAdRecommendation, writer.tag(9, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.TargetCpaOptInRecommendation target_cpa_opt_in_recommendation = 10; */
if (message.recommendation.oneofKind === "targetCpaOptInRecommendation")
exports.Recommendation_TargetCpaOptInRecommendation.internalBinaryWrite(message.recommendation.targetCpaOptInRecommendation, writer.tag(10, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.MaximizeConversionsOptInRecommendation maximize_conversions_opt_in_recommendation = 11; */
if (message.recommendation.oneofKind === "maximizeConversionsOptInRecommendation")
exports.Recommendation_MaximizeConversionsOptInRecommendation.internalBinaryWrite(message.recommendation.maximizeConversionsOptInRecommendation, writer.tag(11, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.EnhancedCpcOptInRecommendation enhanced_cpc_opt_in_recommendation = 12; */
if (message.recommendation.oneofKind === "enhancedCpcOptInRecommendation")
exports.Recommendation_EnhancedCpcOptInRecommendation.internalBinaryWrite(message.recommendation.enhancedCpcOptInRecommendation, writer.tag(12, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.SearchPartnersOptInRecommendation search_partners_opt_in_recommendation = 14; */
if (message.recommendation.oneofKind === "searchPartnersOptInRecommendation")
exports.Recommendation_SearchPartnersOptInRecommendation.internalBinaryWrite(message.recommendation.searchPartnersOptInRecommendation, writer.tag(14, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.MaximizeClicksOptInRecommendation maximize_clicks_opt_in_recommendation = 15; */
if (message.recommendation.oneofKind === "maximizeClicksOptInRecommendation")
exports.Recommendation_MaximizeClicksOptInRecommendation.internalBinaryWrite(message.recommendation.maximizeClicksOptInRecommendation, writer.tag(15, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.OptimizeAdRotationRecommendation optimize_ad_rotation_recommendation = 16; */
if (message.recommendation.oneofKind === "optimizeAdRotationRecommendation")
exports.Recommendation_OptimizeAdRotationRecommendation.internalBinaryWrite(message.recommendation.optimizeAdRotationRecommendation, writer.tag(16, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.CalloutExtensionRecommendation callout_extension_recommendation = 17; */
if (message.recommendation.oneofKind === "calloutExtensionRecommendation")
exports.Recommendation_CalloutExtensionRecommendation.internalBinaryWrite(message.recommendation.calloutExtensionRecommendation, writer.tag(17, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.SitelinkExtensionRecommendation sitelink_extension_recommendation = 18; */
if (message.recommendation.oneofKind === "sitelinkExtensionRecommendation")
exports.Recommendation_SitelinkExtensionRecommendation.internalBinaryWrite(message.recommendation.sitelinkExtensionRecommendation, writer.tag(18, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.CallExtensionRecommendation call_extension_recommendation = 19; */
if (message.recommendation.oneofKind === "callExtensionRecommendation")
exports.Recommendation_CallExtensionRecommendation.internalBinaryWrite(message.recommendation.callExtensionRecommendation, writer.tag(19, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.KeywordMatchTypeRecommendation keyword_match_type_recommendation = 20; */
if (message.recommendation.oneofKind === "keywordMatchTypeRecommendation")
exports.Recommendation_KeywordMatchTypeRecommendation.internalBinaryWrite(message.recommendation.keywordMatchTypeRecommendation, writer.tag(20, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.MoveUnusedBudgetRecommendation move_unused_budget_recommendation = 21; */
if (message.recommendation.oneofKind === "moveUnusedBudgetRecommendation")
exports.Recommendation_MoveUnusedBudgetRecommendation.internalBinaryWrite(message.recommendation.moveUnusedBudgetRecommendation, writer.tag(21, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.TargetRoasOptInRecommendation target_roas_opt_in_recommendation = 23; */
if (message.recommendation.oneofKind === "targetRoasOptInRecommendation")
exports.Recommendation_TargetRoasOptInRecommendation.internalBinaryWrite(message.recommendation.targetRoasOptInRecommendation, writer.tag(23, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.ResponsiveSearchAdRecommendation responsive_search_ad_recommendation = 28; */
if (message.recommendation.oneofKind === "responsiveSearchAdRecommendation")
exports.Recommendation_ResponsiveSearchAdRecommendation.internalBinaryWrite(message.recommendation.responsiveSearchAdRecommendation, writer.tag(28, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation marginal_roi_campaign_budget_recommendation = 29; */
if (message.recommendation.oneofKind === "marginalRoiCampaignBudgetRecommendation")
exports.Recommendation_CampaignBudgetRecommendation.internalBinaryWrite(message.recommendation.marginalRoiCampaignBudgetRecommendation, writer.tag(29, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.UseBroadMatchKeywordRecommendation use_broad_match_keyword_recommendation = 30; */
if (message.recommendation.oneofKind === "useBroadMatchKeywordRecommendation")
exports.Recommendation_UseBroadMatchKeywordRecommendation.internalBinaryWrite(message.recommendation.useBroadMatchKeywordRecommendation, writer.tag(30, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.ResponsiveSearchAdAssetRecommendation responsive_search_ad_asset_recommendation = 31; */
if (message.recommendation.oneofKind === "responsiveSearchAdAssetRecommendation")
exports.Recommendation_ResponsiveSearchAdAssetRecommendation.internalBinaryWrite(message.recommendation.responsiveSearchAdAssetRecommendation, writer.tag(31, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.UpgradeSmartShoppingCampaignToPerformanceMaxRecommendation upgrade_smart_shopping_campaign_to_performance_max_recommendation = 32; */
if (message.recommendation.oneofKind === "upgradeSmartShoppingCampaignToPerformanceMaxRecommendation")
exports.Recommendation_UpgradeSmartShoppingCampaignToPerformanceMaxRecommendation.internalBinaryWrite(message.recommendation.upgradeSmartShoppingCampaignToPerformanceMaxRecommendation, writer.tag(32, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.ResponsiveSearchAdImproveAdStrengthRecommendation responsive_search_ad_improve_ad_strength_recommendation = 33; */
if (message.recommendation.oneofKind === "responsiveSearchAdImproveAdStrengthRecommendation")
exports.Recommendation_ResponsiveSearchAdImproveAdStrengthRecommendation.internalBinaryWrite(message.recommendation.responsiveSearchAdImproveAdStrengthRecommendation, writer.tag(33, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.DisplayExpansionOptInRecommendation display_expansion_opt_in_recommendation = 34; */
if (message.recommendation.oneofKind === "displayExpansionOptInRecommendation")
exports.Recommendation_DisplayExpansionOptInRecommendation.internalBinaryWrite(message.recommendation.displayExpansionOptInRecommendation, writer.tag(34, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.UpgradeLocalCampaignToPerformanceMaxRecommendation upgrade_local_campaign_to_performance_max_recommendation = 35; */
if (message.recommendation.oneofKind === "upgradeLocalCampaignToPerformanceMaxRecommendation")
exports.Recommendation_UpgradeLocalCampaignToPerformanceMaxRecommendation.internalBinaryWrite(message.recommendation.upgradeLocalCampaignToPerformanceMaxRecommendation, writer.tag(35, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message google.ads.googleads.v11.resources.Recommendation
*/
exports.Recommendation = new Recommendation$Type();
// @generated message type with reflection information, may provide speed optimized methods
class Recommendation_RecommendationImpact$Type extends runtime_5.MessageType {
constructor() {
super("google.ads.googleads.v11.resources.Recommendation.RecommendationImpact", [
{ no: 1, name: "base_metrics", kind: "message", T: () => exports.Recommendation_RecommendationMetrics, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 2, name: "potential_metrics", kind: "message", T: () => exports.Recommendation_RecommendationMetrics, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } }
]);
}
create(value) {
const message = {};
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* google.ads.googleads.v11.resources.Recommendation.RecommendationMetrics base_metrics */ 1:
message.baseMetrics = exports.Recommendation_RecommendationMetrics.internalBinaryRead(reader, reader.uint32(), options, message.baseMetrics);
break;
case /* google.ads.googleads.v11.resources.Recommendation.RecommendationMetrics potential_metrics */ 2:
message.potentialMetrics = exports.Recommendation_RecommendationMetrics.internalBinaryRead(reader, reader.uint32(), options, message.potentialMetrics);
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* google.ads.googleads.v11.resources.Recommendation.RecommendationMetrics base_metrics = 1; */
if (message.baseMetrics)
exports.Recommendation_RecommendationMetrics.internalBinaryWrite(message.baseMetrics, writer.tag(1, runtime_1.WireType.LengthDelimited).fork(), options).join();
/* google.ads.googleads.v11.resources.Recommendation.RecommendationMetrics potential_metrics = 2; */
if (message.potentialMetrics)
exports.Recommendation_RecommendationMetrics.internalBinaryWrite(message.potentialMetrics, writer.tag(2, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message google.ads.googleads.v11.resources.Recommendation.RecommendationImpact
*/
exports.Recommendation_RecommendationImpact = new Recommendation_RecommendationImpact$Type();
// @generated message type with reflection information, may provide speed optimized methods
class Recommendation_RecommendationMetrics$Type extends runtime_5.MessageType {
constructor() {
super("google.ads.googleads.v11.resources.Recommendation.RecommendationMetrics", [
{ no: 6, name: "impressions", kind: "scalar", opt: true, T: 1 /*ScalarType.DOUBLE*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 7, name: "clicks", kind: "scalar", opt: true, T: 1 /*ScalarType.DOUBLE*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 8, name: "cost_micros", kind: "scalar", opt: true, T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 9, name: "conversions", kind: "scalar", opt: true, T: 1 /*ScalarType.DOUBLE*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 10, name: "video_views", kind: "scalar", opt: true, T: 1 /*ScalarType.DOUBLE*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } }
]);
}
create(value) {
const message = {};
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* optional double impressions */ 6:
message.impressions = reader.double();
break;
case /* optional double clicks */ 7:
message.clicks = reader.double();
break;
case /* optional int64 cost_micros */ 8:
message.costMicros = reader.int64().toBigInt();
break;
case /* optional double conversions */ 9:
message.conversions = reader.double();
break;
case /* optional double video_views */ 10:
message.videoViews = reader.double();
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* optional double impressions = 6; */
if (message.impressions !== undefined)
writer.tag(6, runtime_1.WireType.Bit64).double(message.impressions);
/* optional double clicks = 7; */
if (message.clicks !== undefined)
writer.tag(7, runtime_1.WireType.Bit64).double(message.clicks);
/* optional int64 cost_micros = 8; */
if (message.costMicros !== undefined)
writer.tag(8, runtime_1.WireType.Varint).int64(message.costMicros);
/* optional double conversions = 9; */
if (message.conversions !== undefined)
writer.tag(9, runtime_1.WireType.Bit64).double(message.conversions);
/* optional double video_views = 10; */
if (message.videoViews !== undefined)
writer.tag(10, runtime_1.WireType.Bit64).double(message.videoViews);
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message google.ads.googleads.v11.resources.Recommendation.RecommendationMetrics
*/
exports.Recommendation_RecommendationMetrics = new Recommendation_RecommendationMetrics$Type();
// @generated message type with reflection information, may provide speed optimized methods
class Recommendation_CampaignBudgetRecommendation$Type extends runtime_5.MessageType {
constructor() {
super("google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation", [
{ no: 7, name: "current_budget_amount_micros", kind: "scalar", opt: true, T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 8, name: "recommended_budget_amount_micros", kind: "scalar", opt: true, T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } },
{ no: 3, name: "budget_options", kind: "message", repeat: 1 /*RepeatType.PACKED*/, T: () => exports.Recommendation_CampaignBudgetRecommendation_CampaignBudgetRecommendationOption, options: { "google.api.field_behavior": ["OUTPUT_ONLY"] } }
]);
}
create(value) {
const message = { budgetOptions: [] };
globalThis.Object.defineProperty(message, runtime_4.MESSAGE_TYPE, { enumerable: false, value: this });
if (value !== undefined)
(0, runtime_3.reflectionMergePartial)(this, message, value);
return message;
}
internalBinaryRead(reader, length, options, target) {
let message = target ?? this.create(), end = reader.pos + length;
while (reader.pos < end) {
let [fieldNo, wireType] = reader.tag();
switch (fieldNo) {
case /* optional int64 current_budget_amount_micros */ 7:
message.currentBudgetAmountMicros = reader.int64().toBigInt();
break;
case /* optional int64 recommended_budget_amount_micros */ 8:
message.recommendedBudgetAmountMicros = reader.int64().toBigInt();
break;
case /* repeated google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation.CampaignBudgetRecommendationOption budget_options */ 3:
message.budgetOptions.push(exports.Recommendation_CampaignBudgetRecommendation_CampaignBudgetRecommendationOption.internalBinaryRead(reader, reader.uint32(), options));
break;
default:
let u = options.readUnknownField;
if (u === "throw")
throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
let d = reader.skip(wireType);
if (u !== false)
(u === true ? runtime_2.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
}
}
return message;
}
internalBinaryWrite(message, writer, options) {
/* optional int64 current_budget_amount_micros = 7; */
if (message.currentBudgetAmountMicros !== undefined)
writer.tag(7, runtime_1.WireType.Varint).int64(message.currentBudgetAmountMicros);
/* optional int64 recommended_budget_amount_micros = 8; */
if (message.recommendedBudgetAmountMicros !== undefined)
writer.tag(8, runtime_1.WireType.Varint).int64(message.recommendedBudgetAmountMicros);
/* repeated google.ads.googleads.v11.resources.Recommendation.CampaignBudgetRecommendation.CampaignBudgetRecommendationOption budget_options = 3; */
for (let i = 0; i < message.budgetOptions.length; i++)
exports.Recommendation_CampaignBudgetRecommendation_CampaignBudgetRecommendationOption.internalBinaryWrite(message.budgetOptions[i], writer.tag(3, runtime_1.WireType.LengthDelimited).fork(), options).join();
let u = options.writeUnknownFields;
if (u !== false)
(u == true ? runtime_2.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
return writer;
}
}
/**
* @generated MessageType for protobuf message goo