import { Root } from 'react-dom/client'; import { GUIItemConfig, GUIItemTypeEnum, type GUIDefineItem } from '../components/GUIRoot'; export { type GUIItemConfig }; export { GUIItemTypeEnum }; declare const themeMap: { readonly light: string; readonly dark: string; }; declare abstract class GUIBase { abstract render(): void; abstract add(keyName: string, item: GUIItemConfig): void; abstract add(data: object, keyName: string, item: GUIItemConfig): void; abstract add(sourceDataOrKeyName: object | string, keyNameOrItem: string | GUIItemConfig, item?: GUIItemConfig): void; } declare class GUI implements GUIBase { private _containerId; private _container; private _root; private _data; private _items; private _theme; get container(): HTMLDivElement; get root(): Root; get data(): Record; get items(): GUIDefineItem[]; get theme(): any; constructor(data: Record, items?: GUIItemConfig[]); private _prepareContainer; render(container?: HTMLDivElement): void; add(keyName: string, item: GUIItemConfig): void; add(data: object, keyName: string, item: GUIItemConfig): void; addGroup(groupName: string, items: GUIItemConfig[]): void; private _update; dispose(): void; setTheme(theme?: keyof typeof themeMap): void; } export { GUI };