import React from 'react'; import { MenuSpec } from './types'; import { LayoutFrameState } from './state'; import type { MenuProps } from 'antd/lib/menu'; export interface LayoutFrameInstance { readonly name: any; subscribe(consumer: (state: LayoutFrameState) => void): () => void; update(update: (state: LayoutFrameState) => void): any; getState(): LayoutFrameState; dispose(): void; } export interface LayoutFrameOptions { name?: string; menus: MenuSpec[]; link?: ({ href }: { href: any; }) => React.ReactNode; menuProps?: Partial; } interface TypedUseSelectorHook { (selector: (state: TState) => TSelected, equalityFn?: (left: TSelected, right: TSelected) => boolean): TSelected; } export declare const useLayoutFrameSelector: TypedUseSelectorHook; export declare function useLayoutFrameOptions(): LayoutFrameOptions; export declare const LayoutFrameProvider: React.FC<{ layout: LayoutFrameInstance; options: LayoutFrameOptions; }>; export declare function useLayoutFrame(options?: { layout?: LayoutFrameInstance; initialState?: Partial | (() => Partial); name?: string; }): LayoutFrameInstance; export {};