blob: cef2788491c63999655cd8c4127b763ad8f32fad [file] [log] [blame]
import SchemaId from './schemaId';
export declare type JsonSchema = JsonSchemaOrg.Draft04.Schema | JsonSchemaOrg.Draft07.Schema;
export declare type JsonSchemaObject = JsonSchemaOrg.Draft04.Schema | JsonSchemaOrg.Draft07.SchemaObject;
export declare type SchemaType = 'Draft04' | 'Draft07';
export interface Schema {
type: SchemaType;
openApiVersion?: 2 | 3;
id: SchemaId;
content: JsonSchema;
rootSchema?: Schema;
}
export interface NormalizedSchema extends Schema {
content: JsonSchemaObject;
}
export declare function parseSchema(content: any, url?: string): Schema;
export declare function getSubSchema(rootSchema: Schema, pointer: string, id?: SchemaId): Schema;
export declare function getId(type: SchemaType, content: any): string | undefined;
export declare function searchAllSubSchema(schema: Schema, onFoundSchema: (subSchema: Schema) => void, onFoundReference: (refId: SchemaId) => void): void;