flagpole
Version:
Simple and fast DOM integration, headless or headful browser, and REST API testing framework.
24 lines (23 loc) • 1.21 kB
TypeScript
import { iAjvLike, JsonSchema } from "./interfaces";
export declare function getSchemaPath(schemaName: string): string;
export declare function getSchema(schemaName: string): JsonSchema;
export declare function writeSchema(json: any, schemaName: string): JsonSchema;
export declare function generateAjvSchema(json: any): JsonSchema;
export declare class SchemaValidator {
private _schema;
constructor(schema: any);
isValid(item: any): boolean;
}
export declare class AssertionSchema implements iAjvLike {
protected _errors: Error[];
get errors(): Error[];
isValid(schema: any, root: any): boolean;
validate(schema: any, root: any): Promise<boolean>;
protected _logError(message: string): void;
protected _matchesType(schema: any, document: any, path: string): boolean;
protected _matchesEnum(schema: any, document: any, path: string): boolean;
protected _matchesPattern(schema: any, document: any, path: string): boolean;
protected _matchesItems(schema: any, document: any, path: string): boolean;
protected _matchesProperties(schema: any, document: any, path: string): boolean;
protected _isValid(schema: any, document: any, path: string): boolean;
}