import type { DB } from '../db/client.js'; import { type Lead } from '../db/schema/leads.js'; import type { Emit } from '../events/emit.js'; export interface LeadStoreOptions { db: DB; funnelStates?: string[]; emit?: Emit; } export interface UpsertArgs { whatsapp: string; ctwaClid?: string | null; adData?: unknown; funnelState?: string; } export declare class LeadStore { readonly db: DB; readonly funnelStates: string[]; readonly emit: Emit | null; constructor({ db, funnelStates, emit }: LeadStoreOptions); get(whatsapp: string): Promise; exists(whatsapp: string): Promise; upsert({ whatsapp, ctwaClid, adData, funnelState }: UpsertArgs): Promise; optIn(whatsapp: string): Promise; optOut(whatsapp: string): Promise; isOptIn(whatsapp: string): Promise; setFunnelState(whatsapp: string, state: string): Promise; } //# sourceMappingURL=lead_store.d.ts.map