export interface WhatsAppTarget { kind: 'whatsapp'; senderId: string; gatewayUrl: string; serverPath: string; } export interface WebchatTarget { kind: 'webchat'; key: string; gatewayUrl: string; serverPath: string; } export type ChannelTarget = WhatsAppTarget | WebchatTarget; /** Per-session bound targets, at most one per kind. */ export interface ChannelTargetSet { whatsapp?: WhatsAppTarget; webchat?: WebchatTarget; } /** Add (or replace) a target of its kind. Pure. */ export declare function mergeTarget(set: ChannelTargetSet, t: ChannelTarget): ChannelTargetSet; /** The kinds currently bound, in no guaranteed order. */ export declare function targetKinds(set: ChannelTargetSet): Array; /** True when ≥2 distinct kinds are bound — the case that needs the unified * server (one reply tool fanning to every target). */ export declare function isMultiTarget(set: ChannelTargetSet): boolean; //# sourceMappingURL=channel-targets.d.ts.map