import * as z from "zod"; import type { ResolvedIntegrationAccount } from "../../automation/integrations.js"; export declare const GOOGLE_ADS_SCOPE = "https://www.googleapis.com/auth/adwords"; export declare const GOOGLE_DATA_MANAGER_SCOPE = "https://www.googleapis.com/auth/datamanager"; export declare const GOOGLE_ADS_CUSTOMER_CONTEXT_SHAPE: { readonly customerId: z.ZodPipe>; readonly loginCustomerId: z.ZodOptional>>; }; export declare const GOOGLE_ADS_RESOURCE_NAME_INPUT_SCHEMA: z.ZodString; /** * Executes one Google Ads request with platform retry classification. * * @param account - Resolved Google account identity. * @param path - Google Ads REST path after the API version. * @param options - Request options. * @param options.body - Optional JSON request body. * @param options.loginCustomerId - Optional manager account ID. * @param options.method - HTTP method override. * @param options.responseSchema - Schema for the response payload. */ export declare function requestGoogleAds(account: ResolvedIntegrationAccount<"google">, path: string, options: { body?: z.input>; loginCustomerId?: string; method?: "GET" | "POST"; responseSchema: TSchema; }): Promise>; /** * Executes one bounded Google Data Manager request for a Google Ads action. * * @param account - Resolved Google account identity. * @param path - Data Manager REST path after the API version. * @param options - Request options. * @param options.body - Optional JSON request body. * @param options.method - HTTP method override. * @param options.responseSchema - Schema for the response payload. */ export declare function requestGoogleDataManager(account: ResolvedIntegrationAccount<"google">, path: string, options: { body?: z.input>; method?: "GET" | "POST"; responseSchema: TSchema; }): Promise>; /** * Runs one fixed-size Google Ads search page. * * @param account - Resolved Google account identity. * @param input - Search request. * @param input.customerId - Target customer ID. * @param input.loginCustomerId - Optional manager account ID. * @param input.pageToken - Optional next-page token. * @param input.query - GAQL query. */ export declare function searchGoogleAds(account: ResolvedIntegrationAccount<"google">, input: { customerId: string; loginCustomerId?: string; pageToken?: string; query: string; }): Promise<{ results: { [x: string]: z.core.util.JSONType; adGroup?: { [x: string]: z.core.util.JSONType; resourceName: string; campaign?: string | undefined; cpcBidMicros?: string | undefined; id?: string | undefined; name?: string | undefined; status?: "PAUSED" | "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | undefined; targetCpaMicros?: string | undefined; type?: string | undefined; } | undefined; adGroupAd?: { [x: string]: z.core.util.JSONType; resourceName: string; ad?: { [x: string]: z.core.util.JSONType; resourceName: string; finalUrls?: string[] | undefined; id?: string | undefined; name?: string | undefined; responsiveSearchAd?: { [x: string]: z.core.util.JSONType; descriptions?: { [x: string]: z.core.util.JSONType; text: string; }[] | undefined; headlines?: { [x: string]: z.core.util.JSONType; text: string; }[] | undefined; path1?: string | undefined; path2?: string | undefined; } | undefined; type?: string | undefined; } | undefined; adGroup?: string | undefined; policySummary?: Record | undefined; status?: "PAUSED" | "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | undefined; } | undefined; asset?: { [x: string]: z.core.util.JSONType; resourceName: string; id?: string | undefined; name?: string | undefined; type?: string | undefined; } | undefined; audience?: { [x: string]: z.core.util.JSONType; resourceName: string; description?: string | undefined; dimensions?: z.core.util.JSONType[] | undefined; id?: string | undefined; name?: string | undefined; status?: "PAUSED" | "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | undefined; } | undefined; campaign?: { [x: string]: z.core.util.JSONType; resourceName: string; advertisingChannelSubType?: string | undefined; advertisingChannelType?: string | undefined; campaignBudget?: string | undefined; endDateTime?: string | undefined; id?: string | undefined; name?: string | undefined; servingStatus?: string | undefined; startDateTime?: string | undefined; status?: "PAUSED" | "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | undefined; } | undefined; campaignBudget?: { [x: string]: z.core.util.JSONType; resourceName: string; amountMicros?: string | undefined; deliveryMethod?: string | undefined; explicitlyShared?: boolean | undefined; id?: string | undefined; name?: string | undefined; status?: string | undefined; totalAmountMicros?: string | undefined; } | undefined; conversionAction?: { [x: string]: z.core.util.JSONType; resourceName: string; category?: string | undefined; clickThroughLookbackWindowDays?: string | undefined; countingType?: string | undefined; id?: string | undefined; name?: string | undefined; primaryForGoal?: boolean | undefined; status?: "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | "HIDDEN" | undefined; type?: string | undefined; valueSettings?: { [x: string]: z.core.util.JSONType; alwaysUseDefaultValue?: boolean | undefined; defaultCurrencyCode?: string | undefined; defaultValue?: number | undefined; } | undefined; } | undefined; customer?: { [x: string]: z.core.util.JSONType; resourceName: string; autoTaggingEnabled?: boolean | undefined; currencyCode?: string | undefined; descriptiveName?: string | undefined; id?: string | undefined; manager?: boolean | undefined; testAccount?: boolean | undefined; timeZone?: string | undefined; } | undefined; customerClient?: { [x: string]: z.core.util.JSONType; clientCustomer: string; resourceName: string; currencyCode?: string | undefined; descriptiveName?: string | undefined; hidden?: boolean | undefined; id?: string | undefined; level?: string | undefined; manager?: boolean | undefined; testAccount?: boolean | undefined; timeZone?: string | undefined; } | undefined; metrics?: Record | undefined; segments?: Record | undefined; userList?: { [x: string]: z.core.util.JSONType; resourceName: string; description?: string | undefined; id?: string | undefined; membershipLifeSpan?: string | undefined; membershipStatus?: string | undefined; name?: string | undefined; sizeForDisplay?: string | undefined; sizeForSearch?: string | undefined; type?: string | undefined; } | undefined; }[]; fieldMask?: string | undefined; nextPageToken?: string | undefined; queryResourceConsumption?: string | undefined; summaryRow?: { [x: string]: z.core.util.JSONType; adGroup?: { [x: string]: z.core.util.JSONType; resourceName: string; campaign?: string | undefined; cpcBidMicros?: string | undefined; id?: string | undefined; name?: string | undefined; status?: "PAUSED" | "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | undefined; targetCpaMicros?: string | undefined; type?: string | undefined; } | undefined; adGroupAd?: { [x: string]: z.core.util.JSONType; resourceName: string; ad?: { [x: string]: z.core.util.JSONType; resourceName: string; finalUrls?: string[] | undefined; id?: string | undefined; name?: string | undefined; responsiveSearchAd?: { [x: string]: z.core.util.JSONType; descriptions?: { [x: string]: z.core.util.JSONType; text: string; }[] | undefined; headlines?: { [x: string]: z.core.util.JSONType; text: string; }[] | undefined; path1?: string | undefined; path2?: string | undefined; } | undefined; type?: string | undefined; } | undefined; adGroup?: string | undefined; policySummary?: Record | undefined; status?: "PAUSED" | "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | undefined; } | undefined; asset?: { [x: string]: z.core.util.JSONType; resourceName: string; id?: string | undefined; name?: string | undefined; type?: string | undefined; } | undefined; audience?: { [x: string]: z.core.util.JSONType; resourceName: string; description?: string | undefined; dimensions?: z.core.util.JSONType[] | undefined; id?: string | undefined; name?: string | undefined; status?: "PAUSED" | "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | undefined; } | undefined; campaign?: { [x: string]: z.core.util.JSONType; resourceName: string; advertisingChannelSubType?: string | undefined; advertisingChannelType?: string | undefined; campaignBudget?: string | undefined; endDateTime?: string | undefined; id?: string | undefined; name?: string | undefined; servingStatus?: string | undefined; startDateTime?: string | undefined; status?: "PAUSED" | "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | undefined; } | undefined; campaignBudget?: { [x: string]: z.core.util.JSONType; resourceName: string; amountMicros?: string | undefined; deliveryMethod?: string | undefined; explicitlyShared?: boolean | undefined; id?: string | undefined; name?: string | undefined; status?: string | undefined; totalAmountMicros?: string | undefined; } | undefined; conversionAction?: { [x: string]: z.core.util.JSONType; resourceName: string; category?: string | undefined; clickThroughLookbackWindowDays?: string | undefined; countingType?: string | undefined; id?: string | undefined; name?: string | undefined; primaryForGoal?: boolean | undefined; status?: "ENABLED" | "UNSPECIFIED" | "UNKNOWN" | "REMOVED" | "HIDDEN" | undefined; type?: string | undefined; valueSettings?: { [x: string]: z.core.util.JSONType; alwaysUseDefaultValue?: boolean | undefined; defaultCurrencyCode?: string | undefined; defaultValue?: number | undefined; } | undefined; } | undefined; customer?: { [x: string]: z.core.util.JSONType; resourceName: string; autoTaggingEnabled?: boolean | undefined; currencyCode?: string | undefined; descriptiveName?: string | undefined; id?: string | undefined; manager?: boolean | undefined; testAccount?: boolean | undefined; timeZone?: string | undefined; } | undefined; customerClient?: { [x: string]: z.core.util.JSONType; clientCustomer: string; resourceName: string; currencyCode?: string | undefined; descriptiveName?: string | undefined; hidden?: boolean | undefined; id?: string | undefined; level?: string | undefined; manager?: boolean | undefined; testAccount?: boolean | undefined; timeZone?: string | undefined; } | undefined; metrics?: Record | undefined; segments?: Record | undefined; userList?: { [x: string]: z.core.util.JSONType; resourceName: string; description?: string | undefined; id?: string | undefined; membershipLifeSpan?: string | undefined; membershipStatus?: string | undefined; name?: string | undefined; sizeForDisplay?: string | undefined; sizeForSearch?: string | undefined; type?: string | undefined; } | undefined; } | undefined; totalResultsCount?: string | undefined; }>; /** * Runs one single-operation Google Ads resource mutation. * * @param account - Resolved Google account identity. * @param input - Mutation request. * @param input.body - Google Ads mutation body. * @param input.collection - REST resource collection. * @param input.customerId - Target customer ID. * @param input.loginCustomerId - Optional manager account ID. */ export declare function mutateGoogleAdsResource(account: ResolvedIntegrationAccount<"google">, input: { body: z.output>; collection: string; customerId: string; loginCustomerId?: string; }): Promise<{ resourceName: string; }>; /** * Builds a canonical resource name from either a numeric ID or full name. * * @param customerId - Target customer ID. * @param collection - REST resource collection. * @param reference - Numeric resource ID or full resource name. * @throws {TypeError} When the reference is neither a numeric ID nor a name. */ export declare function googleAdsResourceName(customerId: string, collection: string, reference: string): string; //# sourceMappingURL=lib.d.ts.map