/** * pi-telegram-webhook — Type definitions. */ export interface Config { botToken: string; webhookUrl: string; webhookPort?: number; webhookHost?: string; webhookPath?: string; webhookSecret: string; allowedChatIds?: string[]; streamingThrottleMs?: number; minInitialChars?: number; trustedProxies?: string[]; maxConcurrent?: number; timeoutMs?: number; idleTimeoutMinutes?: number; model?: string; extensions?: string[]; } export interface TelegramMessage { message_id: number; from?: { id: number; username?: string; first_name?: string; }; chat: { id: number; type: string; title?: string; }; date: number; text?: string; } export interface TelegramUpdate { update_id: number; message?: TelegramMessage; } export interface SenderSession { chatId: string; queue: QueuedMessage[]; processing: boolean; abortController: AbortController | null; messageCount: number; startedAt: number; } export interface QueuedMessage { id: string; chatId: string; text: string; enqueuedAt: number; } export interface RunResult { ok: boolean; response: string; error?: string; durationMs: number; exitCode: number; }