import type { GridStackNode } from "gridstack"; import type { GridStackWidget } from "./types"; export interface UseWidgetSerializerOptions> { serialize?: () => T | undefined; deserialize?: (data: T) => void; } /** * Registers serialize/deserialize for a widget component. * `serialize` is called during `grid.save()`; `deserialize` is called when GS * updates the node (e.g. after `grid.load()` or `updateCB`). */ export declare function useWidgetSerializer>(_opts: UseWidgetSerializerOptions): void; export declare function useGridStack(): { grid: import("gridstack").GridStack | null; layoutVersion: number; registerWidgetSerializer: (id: string, serialize: () => Record | undefined, deserialize?: ((data: Record) => void) | undefined) => () => void; addWidget: (w: GridStackWidget) => import("gridstack").GridItemHTMLElement | undefined; removeWidget: (el: import("gridstack").GridStackElement, removeDOM?: boolean, triggerEvent?: boolean) => import("gridstack").GridStack | undefined; removeAll: (removeDOM?: boolean) => import("gridstack").GridStack | undefined; save: (saveContent?: boolean, saveGridOpt?: boolean) => import("gridstack").GridStackOptions | import("gridstack").GridStackWidget[] | undefined; }; export type UseGridStackItemResult = { id: string; node: GridStackNode | undefined; }; export declare function useGridStackItem(): UseGridStackItemResult; //# sourceMappingURL=hooks.d.ts.map