import type { RenderSchemaFilter, RendererBasicConfig, RendererComponent, RendererConfig, Schema } from 'jamis-core';
export declare const hasRendererByName: (name: string) => boolean;
export declare function addSchemaFilter(fn: RenderSchemaFilter): void;
export declare function filterSchema(schema: Schema, render: RendererConfig, props?: any): Schema;
/**
 * 普通组件的注解方法, 用于将一个组件转换成符合amis规范的渲染器
 * 类似的方法还是form组件里的FormItem
 * 注意: 如果配置了storeType时, 本方法会调用mobx的observer, 外面就不要再指定了
 */
export declare function Renderer(config: RendererBasicConfig): <T extends RendererComponent>(component: T) => T;
export declare function registerRenderer(config: RendererConfig): RendererConfig;
export declare function unRegisterRenderer(config: RendererConfig | string): void;
export declare function loadRenderer(schema: Schema, path: string): JSX.Element;
export declare function resolveRenderer(path: string, schema?: Schema): null | RendererConfig;
export declare function getRenderers(): RendererConfig[];
export declare function getRendererByName(name: string): RendererConfig | undefined;
export declare function loadAsyncRenderer(renderer: RendererConfig): Promise<void>;
export declare function isAsyncRenderer(item: RendererConfig): false | (() => Promise<{
    default: RendererComponent;
} | any>) | undefined;
export declare function hasAsyncRenderers(): boolean;
export declare function loadAsyncRenderersByType(type: string | Array<string>, ignore?: boolean): Promise<void>;
export declare function loadAllAsyncRenderers(): Promise<void>;
