mirror of
https://github.com/FlipsideCrypto/DefinitelyTyped.git
synced 2026-02-06 10:56:53 +00:00
Added z-schema project
This commit is contained in:
parent
faeb4da92d
commit
363e73e7ef
34
z-schema/z-schema-tests.ts
Normal file
34
z-schema/z-schema-tests.ts
Normal file
@ -0,0 +1,34 @@
|
||||
/// <reference path="z-schema.d.ts" />
|
||||
|
||||
import ZSchema = require('z-schema');
|
||||
|
||||
var options: ZSchema.Options = {
|
||||
noTypeless: true,
|
||||
forceItems: true,
|
||||
};
|
||||
|
||||
var validator: ZSchema.Validator = new ZSchema(options);
|
||||
var json: any = {
|
||||
foo: 'bar',
|
||||
};
|
||||
|
||||
var schema: any = {
|
||||
'type': 'object',
|
||||
properties: {
|
||||
foo: {
|
||||
'type': 'string',
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
validator.validate(json, schema);
|
||||
validator.validate(json, schema, function (err: any, valid: boolean) {
|
||||
if (err) {
|
||||
console.log(err);
|
||||
} else {
|
||||
console.log('valid = ' + valid);
|
||||
}
|
||||
});
|
||||
|
||||
var error: ZSchema.SchemaError = validator.getLastError();
|
||||
var errors: ZSchema.SchemaError[] = validator.getLastErrors();
|
||||
62
z-schema/z-schema.d.ts
vendored
Normal file
62
z-schema/z-schema.d.ts
vendored
Normal file
@ -0,0 +1,62 @@
|
||||
// Type definitions for z-schema v3.16.0
|
||||
// Project: https://github.com/zaggino/z-schema
|
||||
// Definitions by: Adam Meadows <https://github.com/job13er>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
|
||||
declare module ZSchema {
|
||||
|
||||
export interface Options {
|
||||
asyncTimeout?: number;
|
||||
forceAdditional?: boolean;
|
||||
assumeAdditional?: boolean;
|
||||
forceItems?: boolean;
|
||||
forceMinItems?: boolean;
|
||||
forceMaxItems?: boolean;
|
||||
forceMinLength?: boolean;
|
||||
forceMaxLength?: boolean;
|
||||
forceProperties?: boolean;
|
||||
ignoreUnresolvableReferences?: boolean;
|
||||
noExtraKeywords?: boolean;
|
||||
noTypeless?: boolean;
|
||||
noEmptyStrings?: boolean;
|
||||
noEmptyArrays?: boolean;
|
||||
strictUris?: boolean;
|
||||
strictMode?: boolean;
|
||||
reportPathAsArray?: boolean;
|
||||
breakOnFirstError?: boolean;
|
||||
pedanticCheck?: boolean;
|
||||
ignoreUnknownFormats?: boolean;
|
||||
}
|
||||
|
||||
export interface SchemaError {
|
||||
code: string;
|
||||
description: string;
|
||||
message: string;
|
||||
params: string[];
|
||||
path: string;
|
||||
}
|
||||
|
||||
export class Validator {
|
||||
constructor(options: Options);
|
||||
|
||||
/**
|
||||
* @param json - either a JSON string or a parsed JSON object
|
||||
* @param schema - the JSON object representing the schema
|
||||
* @returns true if json matches schema
|
||||
*/
|
||||
validate(json: any, schema: any): boolean;
|
||||
|
||||
/**
|
||||
* @param json - either a JSON string or a parsed JSON object
|
||||
* @param schema - the JSON object representing the schema
|
||||
*/
|
||||
validate(json: any, schema: any, callback: (err: any, valid: boolean) => void): void;
|
||||
|
||||
getLastError(): SchemaError;
|
||||
getLastErrors(): SchemaError[];
|
||||
}
|
||||
}
|
||||
|
||||
declare module "z-schema" {
|
||||
export = ZSchema.Validator;
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user