import { Revoke } from '../../../manager/src/index/src/revoke';
import { DesignerProps, PageSchema } from '../../../types/src/index';
import { InjectionKey } from 'vue';
export interface DesignerContext {
    handleDelete: () => void;
    handleDuplicate: () => void;
    handleImported: (data: PageSchema) => void;
    handleToggleDeviceMode: (mode: string) => void;
    pageSchema: PageSchema;
    preview: () => void;
    props: DesignerProps;
    reset: () => void;
    revoke: Revoke;
    save: () => void;
    setDisabledHover: (disabledHover: boolean) => void;
    setHoverNode: (schema: any) => void;
    setSelectedNode: (schema: any) => void;
    state: {
        disabledHover: boolean;
        hoverNode: any;
        matched: any[];
        selectedNode: any;
    };
}
export declare const DESIGNER_CONTEXT_KEY: InjectionKey<DesignerContext>;
export declare function useDesignerContext(): DesignerContext;
