import type { OAuth2Client } from 'google-auth-library'; import type { GoogleAdsConfig } from './config.js'; export declare const REPORT_METRIC_NOTE = "cost is in account currency, not micros. conversions are Google Ads conversions, not necessarily installs. Legacy installs/cpi aliases do not establish install CPI or cohort D7 ROAS."; export interface DateRange { startDate: string; endDate: string; } /** * 응답은 배열이 아니라 `{ resourceNames: ['customers/', …] }` 다 — 계정이 없으면 protobuf JSON 이 * 필드를 생략하므로 빈 배열로 채운다. 반환 타입을 고정해 두지 않으면 호출부가 `.length` 를 읽어도 * 컴파일러가 못 잡는다(setup-cli 가 "계정 undefined개" 를 찍었다). */ export declare function listAccessibleCustomers(auth: OAuth2Client, cfg: GoogleAdsConfig): Promise<{ resourceNames: string[]; }>; export declare function listCampaigns(auth: OAuth2Client, cfg: GoogleAdsConfig): Promise<{ id: string | undefined; name: string | undefined; status: string | undefined; channelType: string | undefined; channelSubType: string | undefined; startDate: string | undefined; endDate: string | undefined; dailyBudget: number; }[]>; export declare function getCampaignReport(auth: OAuth2Client, cfg: GoogleAdsConfig, range: DateRange): Promise<{ currencyCode: string | undefined; timeZone: string | undefined; id: string | undefined; name: string | undefined; status: string | undefined; channelType: string | undefined; channelSubType: string | undefined; clicks: number; impressions: number; cost: number; conversions: number; conversionsValue: number; costPerConversion: number | null; cpi: number; ctr: number; avgCpc: number; }[]>; export declare function getUacReport(auth: OAuth2Client, cfg: GoogleAdsConfig, range: DateRange): Promise<{ id: string; name: string; status: string; subType: string; clicks: number; impressions: number; cost: number; conversions: number; conversionsValue: number; costPerConversion: number | null; installs: number; installsValue: number; cpi: number; dateRange: { from: string; to: string; }; }[]>;