import { ComponentConfigModel, ComponentConfigModelRecords, Components, ComponentSchemaGroups, ComponentType } from '../../../types/src/index';
export declare function useComponentManager(): {
    addBaseComponentType: (baseComponentType: string) => void;
    addComponent: (componentType: string, component: ComponentType, priority?: number) => void;
    baseComponentTypes: string[];
    clearComponentGroupNameMap: () => void;
    clearSortedGroups: () => void;
    componentConfigs: ComponentConfigModelRecords;
    componentGroupNameMap: Record<string, string>;
    components: Components;
    componentSchemaGroups: import('vue').Ref<{
        list: {
            [x: string]: any;
            children?: /*elided*/ any[] | undefined;
            description?: string | undefined;
            editData?: object | undefined;
            field?: string | undefined;
            id?: string | undefined;
            input?: boolean | undefined;
            label?: string | undefined;
            noFormItem?: boolean | undefined;
            on?: {
                [eventName: string]: import('epic-designer').ActionsModel[];
            } | undefined;
            props?: any;
            rules?: {
                [x: string]: any;
                trigger?: string | string[] | undefined;
                enum?: Array<boolean | null | number | string | undefined> | undefined;
                isValidator?: boolean | undefined;
                len?: number | undefined;
                max?: number | undefined;
                message?: ((a?: string) => string) | string | undefined;
                min?: number | undefined;
                pattern?: (RegExp | string) | undefined;
                required?: boolean | undefined;
                type?: string | undefined;
                validator?: (Function | string) | undefined;
                whitespace?: boolean | undefined;
            }[] | undefined;
            show?: ((renderCallbackParams: import('../../../types/src/index').RenderCallbackParams) => boolean) | boolean | undefined;
            slotName?: string | undefined;
            slots?: {
                [slotName: string]: import('../../../types/src/index').ComponentSchema[];
            } | undefined;
            type: string;
        }[];
        title: string;
    }[], ComponentSchemaGroups | {
        list: {
            [x: string]: any;
            children?: /*elided*/ any[] | undefined;
            description?: string | undefined;
            editData?: object | undefined;
            field?: string | undefined;
            id?: string | undefined;
            input?: boolean | undefined;
            label?: string | undefined;
            noFormItem?: boolean | undefined;
            on?: {
                [eventName: string]: import('epic-designer').ActionsModel[];
            } | undefined;
            props?: any;
            rules?: {
                [x: string]: any;
                trigger?: string | string[] | undefined;
                enum?: Array<boolean | null | number | string | undefined> | undefined;
                isValidator?: boolean | undefined;
                len?: number | undefined;
                max?: number | undefined;
                message?: ((a?: string) => string) | string | undefined;
                min?: number | undefined;
                pattern?: (RegExp | string) | undefined;
                required?: boolean | undefined;
                type?: string | undefined;
                validator?: (Function | string) | undefined;
                whitespace?: boolean | undefined;
            }[] | undefined;
            show?: ((renderCallbackParams: import('../../../types/src/index').RenderCallbackParams) => boolean) | boolean | undefined;
            slotName?: string | undefined;
            slots?: {
                [slotName: string]: import('../../../types/src/index').ComponentSchema[];
            } | undefined;
            type: string;
        }[];
        title: string;
    }[]>;
    getComponent: (type: string) => ComponentType;
    getComponentConfigByType: (type: string) => ComponentConfigModel;
    getComponentConfigs: () => ComponentConfigModelRecords;
    getComponents: () => Components;
    getComponentSchemaGroups: () => import('vue').Ref<{
        list: {
            [x: string]: any;
            children?: /*elided*/ any[] | undefined;
            description?: string | undefined;
            editData?: object | undefined;
            field?: string | undefined;
            id?: string | undefined;
            input?: boolean | undefined;
            label?: string | undefined;
            noFormItem?: boolean | undefined;
            on?: {
                [eventName: string]: import('epic-designer').ActionsModel[];
            } | undefined;
            props?: any;
            rules?: {
                [x: string]: any;
                trigger?: string | string[] | undefined;
                enum?: Array<boolean | null | number | string | undefined> | undefined;
                isValidator?: boolean | undefined;
                len?: number | undefined;
                max?: number | undefined;
                message?: ((a?: string) => string) | string | undefined;
                min?: number | undefined;
                pattern?: (RegExp | string) | undefined;
                required?: boolean | undefined;
                type?: string | undefined;
                validator?: (Function | string) | undefined;
                whitespace?: boolean | undefined;
            }[] | undefined;
            show?: ((renderCallbackParams: import('../../../types/src/index').RenderCallbackParams) => boolean) | boolean | undefined;
            slotName?: string | undefined;
            slots?: {
                [slotName: string]: import('../../../types/src/index').ComponentSchema[];
            } | undefined;
            type: string;
        }[];
        title: string;
    }[], ComponentSchemaGroups | {
        list: {
            [x: string]: any;
            children?: /*elided*/ any[] | undefined;
            description?: string | undefined;
            editData?: object | undefined;
            field?: string | undefined;
            id?: string | undefined;
            input?: boolean | undefined;
            label?: string | undefined;
            noFormItem?: boolean | undefined;
            on?: {
                [eventName: string]: import('epic-designer').ActionsModel[];
            } | undefined;
            props?: any;
            rules?: {
                [x: string]: any;
                trigger?: string | string[] | undefined;
                enum?: Array<boolean | null | number | string | undefined> | undefined;
                isValidator?: boolean | undefined;
                len?: number | undefined;
                max?: number | undefined;
                message?: ((a?: string) => string) | string | undefined;
                min?: number | undefined;
                pattern?: (RegExp | string) | undefined;
                required?: boolean | undefined;
                type?: string | undefined;
                validator?: (Function | string) | undefined;
                whitespace?: boolean | undefined;
            }[] | undefined;
            show?: ((renderCallbackParams: import('../../../types/src/index').RenderCallbackParams) => boolean) | boolean | undefined;
            slotName?: string | undefined;
            slots?: {
                [slotName: string]: import('../../../types/src/index').ComponentSchema[];
            } | undefined;
            type: string;
        }[];
        title: string;
    }[]>;
    getIcon: (type: string) => string;
    getLabel: (type: string) => string;
    getLocked: (type: string) => boolean | undefined;
    hiddenComponents: string[];
    hideComponent: (type: string) => void;
    registerComponent: (componentConfig: ComponentConfigModel) => void;
    removeBaseComponents: () => void;
    removeComponent: (componentType: string) => void;
    setBaseComponentTypes: (baseTypes: string[]) => void;
    setComponentGroupNameMap: (groupName: string, mapName: string) => void;
    setHideComponents: (types: string[]) => void;
    setSortedGroups: (groups: string[]) => void;
    showComponent: (type: string) => void;
    sortedGroups: string[];
};
