/**
 * Feishu/Lark capability for the workflow progress broker.
 *
 * Feishu exposes `im.v1.message.update`, so we get the same edit-in-place UX
 * as Telegram: send the first snapshot, then update the same message on
 * every subsequent throttled tick. Key events (phase change / new error /
 * tool_end) bypass the throttle so milestones land promptly.
 *
 * Per-bot send rate ~5 msg/sec/account (Feishu open API limit); a 5-second
 * default throttle leaves comfortable headroom even when several workflows
 * run concurrently.
 *
 * Routing: sessionKey `main:feishu:<accountId>:<dm|group|channel>:<peerId>`.
 * - DM peerId is an `open_id` (starts with `ou_`) → use `receive_id_type=open_id`.
 * - Group / channel peerId is a `chat_id` → use `receive_id_type=chat_id`.
 *
 * Failure handling:
 * - "edit must not modify same content" / "message_not_modified" → swallow, keep id.
 * - Edit target gone (deleted / 410-class errors) → fall back to a fresh send.
 * - Other errors → rethrow so the broker logs and drops the update; the next
 *   key event (or the next throttle tick) retries.
 */
import type { ChannelProgressCapability } from '@xopcai/xopc/agent/workflow/index.js';
import type { Config } from '@xopcai/xopc/config/schema.js';
export declare function createFeishuWorkflowProgressCapability(opts: {
    getConfig: () => Config | undefined;
}): ChannelProgressCapability;
