import { type ReactNode } from 'react'; export interface WidgetPickerItem { /** Stable widget-type id reported via `onPick`. */ id: string; /** Visible name (consumer-translated). */ title: string; /** One-line explanation (consumer-translated). */ description?: string; /** Small illustrative icon. */ icon?: ReactNode; /** Group heading (consumer-translated). Ungrouped items render first. */ category?: string; /** Visible but not pickable. */ disabled?: boolean; /** Short annotation rendered as a badge (e.g. "Requires reconnect"). */ badge?: string; } export interface WidgetPickerProps { /** Controlled visibility. */ open: boolean; onOpenChange: (open: boolean) => void; /** The catalogue. */ items: WidgetPickerItem[]; /** * Called with the picked item id; the picker then closes itself via * `onOpenChange(false)`. */ onPick: (id: string) => void; /** Dialog title. Defaults to the kit's translated "Add a widget". */ title?: string; /** Opaque instance id — emitted as `data-component-id` for the agent registry. */ id?: string; } export interface WidgetPickerHandle { /** * Pick an item programmatically. False when the picker is closed, the id * is unknown, or the item is disabled. */ pick: (id: string) => boolean; getPickerState: () => { open: boolean; items: Array<{ id: string; disabled: boolean; }>; }; } export declare const WidgetPicker: import("react").ForwardRefExoticComponent>; //# sourceMappingURL=widget-picker.d.ts.map