import { i as OpenClawConfig } from "./types.openclaw-fYj4Ft14.js"; import { n as ChannelConfigSchema } from "./types.config-D1pSqbn8.js"; import { $n as PluginRuntime } from "./types-C_nat0ED.js"; import { a as ClickClackMessage, c as ClickClackWorkspace, i as ClickClackEvent, l as CoreConfig, o as ClickClackTarget, r as ClickClackChannel, s as ClickClackUser, u as ResolvedClickClackAccount } from "./channel-DeeXMzHT.js"; import { WebSocket as WebSocket$1 } from "ws"; //#region extensions/clickclack/src/accounts.d.ts declare const listClickClackAccountIds: (cfg: OpenClawConfig) => string[], resolveDefaultClickClackAccountId: (cfg: OpenClawConfig) => string; /** * Builds the normalized account snapshot used by gateway, outbound delivery, * status reporting, and channel routing. */ declare function resolveClickClackAccount(params: { cfg: CoreConfig; accountId?: string | null; env?: NodeJS.ProcessEnv; }): ResolvedClickClackAccount; /** * Returns all enabled accounts, including the implicit default account when * legacy top-level ClickClack config is present. */ declare function listEnabledClickClackAccounts(cfg: CoreConfig): ResolvedClickClackAccount[]; //#endregion //#region extensions/clickclack/src/config-schema.d.ts /** * Config schema exported to core so `openclaw doctor` and config validation * understand both default and named ClickClack accounts. */ declare const clickClackConfigSchema: ChannelConfigSchema; //#endregion //#region extensions/clickclack/src/http-client.d.ts type ClientOptions = { baseUrl: string; token: string; fetch?: typeof fetch; }; /** * Creates a typed client for the ClickClack API using bearer-token auth. */ declare function createClickClackClient(options: ClientOptions): { me: () => Promise; workspaces: () => Promise; channels: (workspaceId: string) => Promise; channelMessages: (channelId: string, afterSeq: number, limit?: number) => Promise; directMessages: (conversationId: string, afterSeq: number, limit?: number) => Promise; thread: (messageId: string) => Promise<{ root: ClickClackMessage; replies: ClickClackMessage[]; }>; createChannelMessage: (channelId: string, body: string) => Promise; createThreadReply: (messageId: string, body: string) => Promise; createDirectConversation: (workspaceId: string, memberIds: string[]) => Promise<{ id: string; }>; createDirectMessage: (conversationId: string, body: string) => Promise; events: (workspaceId: string, afterCursor?: string) => Promise; websocket: (workspaceId: string, afterCursor?: string) => WebSocket$1; }; //#endregion //#region extensions/clickclack/src/runtime.d.ts declare const setClickClackRuntime: (next: PluginRuntime) => void, getClickClackRuntime: () => PluginRuntime; //#endregion //#region extensions/clickclack/src/target.d.ts /** * Parses `channel:name`, `thread:msg_id`, `dm:usr_id`, or a bare channel name. */ declare function parseClickClackTarget(raw: string): ClickClackTarget; /** Formats a parsed ClickClack target back into canonical target syntax. */ declare function buildClickClackTarget(target: ClickClackTarget): string; //#endregion export { createClickClackClient as a, listEnabledClickClackAccounts as c, setClickClackRuntime as i, resolveClickClackAccount as l, parseClickClackTarget as n, clickClackConfigSchema as o, getClickClackRuntime as r, listClickClackAccountIds as s, buildClickClackTarget as t, resolveDefaultClickClackAccountId as u };