import { SchemaInterface, FieldInterface } from "./interfaces"; import { ErrorReport } from "./errors"; export declare abstract class AbstractSchema implements SchemaInterface { protected fields: FieldInterface[]; private errors; load(data: any, target?: Type): Type; dump(data: Type): any; reset(): void; hasErrors(): boolean; getErrors(): ErrorReport[]; createFields(): FieldInterface[]; createObject(): Type; getFields(): FieldInterface[]; } export declare class DeclarativeSchema extends AbstractSchema { createFields(): FieldInterface[]; protected isValueField(value: any): boolean; protected matchFieldInterface(value: any): boolean; }