import type { App } from '../App'; import type { Node } from '../Node'; import type { Group } from '../shapes/Group'; export type UiFactory = (props: Record, app: App) => Node; /** Compound canvas widgets whose listeners live on children — safe to wipe+rebuild chrome. */ export declare const UI_REBUILD_TYPES: Set; /** * Attach rebuild so setUiTheme can recreate compound chrome without replacing the root node. * Child listeners are re-wired by the factory; root identity (and user root listeners) stay. */ export declare function installUiRebuild(group: Group, app: App, factory: UiFactory): void; export declare function runUiRebuild(node: Node): boolean;