import { ISchema, SchemaEnum, SchemaProperties, SchemaReaction, SchemaTypes, SchemaKey, ISchemaTransformerOptions, Slot } from './types'; import { IFieldFactoryProps } from '@formily/core'; export declare class Schema implements ISchema { parent?: Schema; root?: Schema; name?: SchemaKey; title?: Message; description?: Message; default?: any; readOnly?: boolean; writeOnly?: boolean; type?: SchemaTypes; enum?: SchemaEnum; const?: any; multipleOf?: number; maximum?: number; exclusiveMaximum?: number; minimum?: number; exclusiveMinimum?: number; maxLength?: number; minLength?: number; pattern?: string | RegExp; maxItems?: number; minItems?: number; uniqueItems?: boolean; maxProperties?: number; minProperties?: number; required?: string[] | boolean | string; format?: string; /** nested json schema spec **/ definitions?: Record>; properties?: Record>; items?: Schema | Schema[]; additionalItems?: Schema; patternProperties?: Record>; additionalProperties?: Schema; ['x-index']?: number; ['x-pattern']?: Pattern; ['x-display']?: Display; ['x-validator']?: Validator; ['x-decorator']?: Decorator; ['x-decorator-props']?: DecoratorProps; ['x-component']?: Component; ['x-component-props']?: ComponentProps; ['x-reactions']?: SchemaReaction[]; ['x-content']?: any; ['x-data']?: any; ['x-visible']?: boolean; ['x-hidden']?: boolean; ['x-disabled']?: boolean; ['x-editable']?: boolean; ['x-read-only']?: boolean; ['x-read-pretty']?: boolean; ['x-compile-omitted']?: string[]; ['x-slot-node']?: Slot; [key: `x-${string | number}` | symbol]: any; _isJSONSchemaObject: boolean; version: string; constructor(json: ISchema, parent?: Schema); addProperty: (key: SchemaKey, schema: ISchema) => Schema; removeProperty: (key: SchemaKey) => Schema; setProperties: (properties: SchemaProperties) => this; addPatternProperty: (key: SchemaKey, schema: ISchema) => Schema; removePatternProperty: (key: SchemaKey) => Schema; setPatternProperties: (properties: SchemaProperties) => this; setAdditionalProperties: (properties: ISchema) => Schema; setItems: (schema: ISchema | ISchema[]) => Schema | Schema[]; setAdditionalItems: (items: ISchema) => Schema; findDefinitions: (ref: string) => any; mapProperties: (callback?: (schema: Schema, key: SchemaKey, index: number) => T) => T[]; mapPatternProperties: (callback?: (schema: Schema, key: SchemaKey, index: number) => T) => T[]; reduceProperties: (callback?: (buffer: P, schema: Schema, key: SchemaKey, index: number) => R, predicate?: P) => R; reducePatternProperties: (callback?: (buffer: P, schema: Schema, key: SchemaKey, index: number) => R, predicate?: P) => R; compile: (scope?: any) => Schema; fromJSON: (json: ISchema) => Schema; toJSON: (recursion?: boolean) => ISchema; toFieldProps: (options?: ISchemaTransformerOptions) => IFieldFactoryProps; static getOrderProperties: (schema?: ISchema, propertiesName?: keyof ISchema) => any[]; static compile: (expression: any, scope?: any) => any; static shallowCompile: (expression: any, scope?: any) => any; static isSchemaInstance: (value: any) => value is Schema; static registerCompiler: (compiler: (expression: string, scope: any) => any) => void; static registerPatches: (...args: import("./types").SchemaPatch[]) => void; static registerVoidComponents: (components: string[]) => void; static registerTypeDefaultComponents: (maps: Record) => void; static registerPolyfills: (version: string, patch: import("./types").SchemaPatch) => void; static enablePolyfills: (versions?: string[]) => void; static silent: (value?: boolean) => void; }