import { BasePlatformAdapter, MessageEvent, ProcessingOutcome, SendResult } from './platform-base.js'; import type { PlatformConfig } from './platform-base.js'; export interface BlueBubblesConfig extends PlatformConfig { serverUrl?: string; password?: string; webhookHost?: string; webhookPort?: number; webhookPath?: string; allowedNumbers?: string[]; homeChannel?: string; } declare const MAX_TEXT_LENGTH = 4000; declare const TAPBACK_ADDED: Record; declare const TAPBACK_REMOVED: Record; declare function redact(text: string): string; export declare class BlueBubblesChannel extends BasePlatformAdapter { private serverUrl; private password; private webhookHost; private webhookPort; private webhookPath; private allowedNumbers; private homeChannel; private seenMessages; constructor(config: BlueBubblesConfig); connect(): Promise; disconnect(): Promise; handleWebhookEvent(eventType: string, data: Record): Promise; private bbApi; private chunkContent; send(chatId: string, content: string, _replyTo?: string, _metadata?: Record): Promise; editMessage(_chatId: string, messageId: string, _content: string, _finalize?: boolean): Promise; sendTyping(chatId: string, _metadata?: Record): Promise; stopTyping(_chatId: string): Promise; sendTapback(chatId: string, messageGuid: string, reaction: string): Promise; sendImage(chatId: string, imageUrl: string, caption?: string, _replyTo?: string, _metadata?: Record): Promise; sendAnimation(chatId: string, animationUrl: string, caption?: string, replyTo?: string, metadata?: Record): Promise; getChatInfo(chatId: string): Promise>; get webhookEndpoint(): string; onProcessingComplete(_event: MessageEvent, _outcome: ProcessingOutcome): void; } export { MAX_TEXT_LENGTH, TAPBACK_ADDED, TAPBACK_REMOVED, redact }; //# sourceMappingURL=bluebubbles.d.ts.map