import { BaseResponse } from '@/types/index';
import { ComponentCategory } from './category';
import { ComponentMeta } from './meta';
import { ComponentResource } from './resource';
/**
 * foxpage component
 */
export interface Component {
    id: string;
    name: string;
    label: string;
    type: string;
    version: string;
    isLiveVersion?: boolean;
    enableChildren?: boolean;
    schema?: string | Record<string, any>;
    meta?: ComponentMeta;
    /**
     * for editor or dependence component entry
     */
    components?: Component[];
    /**
     * curr component entry
     */
    resource?: ComponentResource;
    /**
     * category: group
     */
    category?: ComponentCategory;
    useStyleEditor?: boolean;
}
export interface ComponentProps {
    [name: string]: string | ComponentProps;
}
export declare type ComponentSourceMap = Record<string, Component>;
export interface ComponentFetchRes extends BaseResponse<Component[]> {
}
