import { Store } from '.'; import { StudioCustomLayoutProps } from '../components/public/StudioCustomLayout'; import { LayoutCommandProps, LayoutConfig } from '../types'; import type { LayoutOverrideKey, LayoutOverridePropsByKey } from '../typeConfigs/layout'; import { StudioBaseLayoutState } from '../components/public/StudioBase'; import { StudioLayoutComponentsConfig } from '../components/public/types'; export type CustomLayoutComponentFn

> = (props: P) => StudioLayoutComponentsConfig; export declare class LayoutStore { store: Store; customConfig?: LayoutConfig; layouts: LayoutCommandProps[]; layoutsById: Map void; }>; customLayoutComponents: Map>>; constructor(store: Store); get editor(): import("grapesjs").Editor | undefined; setCustomConfig(config: LayoutConfig): void; get layoutOverrides(): { colorPicker?: import("../types").LayoutOverrideCallback<"colorPicker"> | undefined; colorField?: import("../types").LayoutOverrideCallback<"colorField"> | undefined; }; getOverrideProps(key: K, opts: { props: LayoutOverridePropsByKey[K]; editor?: LayoutStore['editor']; }): LayoutOverridePropsByKey[K]; add(id: string, props: Omit): void; remove(id: string, opts?: { force?: boolean; layout?: LayoutCommandProps; }): void; get(id: string): LayoutCommandProps | undefined; clear(): void; addCustomLayoutComponent(type: string, component: CustomLayoutComponentFn): void; getCustomLayoutComponent(type: string): CustomLayoutComponentFn> | undefined; removeCustomLayoutComponent(type: string): void; get layoutChildren(): Map>; } export declare const useLayoutStore: () => LayoutStore; export declare const getLayoutStore: () => LayoutStore;