import type { WidgetLogger } from "./types.js"; export { WIDGET_SPECS, buildWidgetRegistry } from "./registry.js"; export type { WidgetRegistry, WidgetsConfig } from "./registry.js"; export { WidgetValidationError } from "./errors.js"; export { SHOW_WIDGET_TOOL_NAME, buildShowWidgetDescription, buildShowWidgetParameters, createShowWidgetTool, } from "./tool.js"; export type { ShowWidgetTool, ShowWidgetToolResult } from "./tool.js"; export type { RegisteredWidget, WidgetPayload, WidgetResult, WidgetSpec } from "./types.js"; /** The slice of the OpenClaw plugin API this module needs. */ export interface WidgetToolPluginApi { registerTool(tool: (ctx: { sessionId?: string; }) => unknown, opts?: { names?: string[]; optional?: boolean; }): void; } export interface RegisterShowWidgetToolOptions { api: WidgetToolPluginApi; /** The plugin config `widgets` block: `{ "": boolean }`. */ widgetsConfig?: unknown; logger?: WidgetLogger; } /** * Register `show_widget` as a plugin tool factory. * * A factory (rather than a static descriptor) so each agent turn gets the * session id from the trusted tool context for logging. Registration is * skipped when config leaves no widget type enabled — an empty `widget_type` * enum would be an invalid schema. */ export declare function registerShowWidgetTool(options: RegisterShowWidgetToolOptions): boolean; //# sourceMappingURL=index.d.ts.map