import type { ToolInterface } from "./tools/index";
import type { ControlElement, Layout } from "@jsonforms/core/src/models/uischema";
import type { JsonSchema, Scoped, UISchemaElement } from "@jsonforms/core";
export declare const updatePropertyNameAndScope: (propertyName: string | undefined, tool: ToolInterface) => string;
export declare const cloneEmptyTool: (tool: ToolInterface, schema?: JsonSchema | undefined) => ToolInterface;
export declare const cloneToolWithSchema: (tool: ToolInterface, schema: JsonSchema, uischema?: UISchemaElement | undefined) => ToolInterface;
export declare const findBaseTool: (schema: JsonSchema, uischema: ControlElement | Layout | UISchemaElement | Scoped) => ToolInterface;
/** @deprecated **/
export declare const getItemsType: (schema: JsonSchema) => string | undefined;
export declare const createI18nTranslate: (localeCatalogue: Record<string, string>) => (key: string, defaultMessage: string, context: any) => string;
export declare const findAllProperties: (schema: JsonSchema, rootPath?: string) => Record<string, JsonSchema>;
export declare const findAllScopes: (uischema: ControlElement | Layout | UISchemaElement) => Array<string>;
type Callback = (ref: URI) => JsonSchema | undefined;
export declare const resolveSchema: (schema: any, callback?: Callback | undefined) => Promise<any>;
export {};
