import { SmrtObject } from '@happyvertical/smrt-core'; import { CampaignMetricSnapshotOptions } from '../types.js'; export declare class CampaignMetricSnapshot extends SmrtObject { tenantId: string | null; campaignId: string; /** Null for campaign rollups; set for channel-scoped evidence. */ campaignChannelId: string | null; periodStart: Date; periodEnd: Date; spendCents: number; impressions: number; clicks: number; conversions: number; leads: number; revenueCents: number | null; /** Ingestion source such as `google_ads`, `meta`, or `rollup_job`. */ source: string; dedupeKey: string; constructor(options?: CampaignMetricSnapshotOptions); initialize(): Promise; save(): Promise; delete(): Promise; private assertMetrics; private assertChannelMatchesCampaign; private serializeState; private static coerceDate; } export default CampaignMetricSnapshot; //# sourceMappingURL=CampaignMetricSnapshot.d.ts.map