import type { BlipClient } from '../client.ts'; import { type Identity } from '../types/node.ts'; import type { WhatsAppTemplateLanguage } from '../types/whatsapp.ts'; import { type ConsumeOptions, Namespace, type SendCommandOptions } from './namespace.ts'; type AudienceSummary = { id: string; name: string; campaignStatus: string; failed: number; processed: number; read: number; received: number; total: number; scheduled?: string; created: string; }; export declare class ActiveCampaignNamespace extends Namespace { constructor(blipClient: BlipClient, defaultOptions?: SendCommandOptions); createAndDispatchBatchCampaign(campaign: { name: string; flowId: string; stateId: string; campaignSender: string; subbotIdentity?: Identity; agentEmail?: string; scheduled?: string; tags?: Array; canSendWithOpenTicket?: boolean; }, audiences: Array<{ recipient: string; buttonVariable?: string; mediaVariable?: string; bodyVariables: Array; additionalContactExtras?: Record; }>, message: { template: string; language: WhatsAppTemplateLanguage; }, opts?: ConsumeOptions): Promise<{ id: string; status: string; created: string; }>; cancelCampaign(campaign: string, opts?: ConsumeOptions): Promise; getCampaigns(filter?: { tags: Array; }, opts?: ConsumeOptions): Promise<{ id: string; name: string; }[]>; getCampaign(campaign: string, opts?: ConsumeOptions): Promise<{ id: string; name: string; campaignType: 'BATCH' | 'INDIVIDUAL'; masterState: Identity; flowId: string; stateId: string; campaignSender: Identity; status: string; created: string; }>; getCampaignMessage(campaign: string, opts?: ConsumeOptions): Promise<{ channelType: "WHATSAPP"; messageTemplate: string; messageTemplateLanguage: WhatsAppTemplateLanguage; messageParams: Array; }>; getAudienceSummaries(filter?: { scheduled?: boolean; campaignName?: string; }, opts?: ConsumeOptions): Promise>; getAudienceSummary(campaign: string, opts?: ConsumeOptions): Promise; getAudience(campaign: string, opts?: ConsumeOptions): Promise; status: string; validatedAccount: Identity; processed?: string; received?: string; read?: string; failed?: string; reasonCode?: number; reasonDescription?: string; }>>; /** * @param filters.createdDate Only audiences created on this date or after will be returned. Required. */ getCampaignsSummaries(filters: { createdDate: string | Date; source?: 'Portal' | 'Desk' | 'API'; campaignSender?: string; tags?: Array; }, opts?: ConsumeOptions): Promise; }>>; } export {}; //# sourceMappingURL=activecampaign.d.ts.map