import { BasePlatformAdapter, MessageEvent, ProcessingOutcome, SendResult } from './platform-base.js'; import type { PlatformConfig } from './platform-base.js'; export interface DingTalkConfig extends PlatformConfig { clientId: string; clientSecret: string; requireMention?: boolean; allowedUsers?: string[]; freeResponseChats?: string[]; mentionPatterns?: string[]; homeChannel?: string; } declare const MAX_MESSAGE_LENGTH = 2048; export declare class DingTalkChannel extends BasePlatformAdapter { private clientId; private clientSecret; private requireMention; private allowedUsers; private freeResponseChats; private mentionPatterns; private homeChannel; private accessToken; private tokenExpiresAt; private reconnectAttempt; private seenMessages; private streaming; constructor(config: DingTalkConfig); connect(): Promise; disconnect(): Promise; private getAccessToken; private streamLoop; private runStreamSession; private connectStreamWebSocket; private handleStreamMessage; private chunkContent; private dingtalkApi; sendToWebhook(webhookUrl: string, content: string): Promise; 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; 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>; onProcessingComplete(_event: MessageEvent, _outcome: ProcessingOutcome): void; } export { MAX_MESSAGE_LENGTH }; //# sourceMappingURL=dingtalk.d.ts.map