one-schema
Version:
one-schema object validator
86 lines (85 loc) • 4.17 kB
TypeScript
import { FieldDataType, IFieldValidatorSettingsBase, IFieldValidatorSettingsBool, IFieldValidatorSettingsString, IFieldValidatorSettingsInt32, IFieldValidatorSettingsFloat64, IFieldValidatorSettingsObject, IFieldValidatorSettingsArray, IValidatorInputOptions, IFieldValidatorBase, IFieldValidatorReal, IFieldValidatorSchema } from '../types/core';
declare const VALID_TYPES: string[];
declare class FieldValidatorBase implements IFieldValidatorBase {
settings: IFieldValidatorSettingsBase;
constructor();
required(required?: boolean): this;
defaultValue(_inputValue: any): this;
tags(tags: string[]): this;
description(description: string): this;
example(_example: any): this;
validator(validator: IValidatorInputOptions): this;
}
declare class FieldValidatorBool extends FieldValidatorBase implements IFieldValidatorReal {
settings: IFieldValidatorSettingsBool;
constructor(base: IFieldValidatorSettingsBase);
defaultValue(inputValue: boolean): this;
example(example: boolean): this;
oneOf(inputValues: boolean[]): this;
}
declare class FieldValidatorString extends FieldValidatorBase implements IFieldValidatorReal {
settings: IFieldValidatorSettingsString;
constructor(base: IFieldValidatorSettingsBase);
defaultValue(inputValue: string): this;
example(example: string): this;
max(inputMax: number): this;
min(inputMin: number): this;
allowNull(allowNull?: boolean): this;
primaryKey(primaryKey?: boolean): this;
autoIncrement(autoIncrement?: boolean): this;
oneOf(inputValues: string[]): this;
uuid(isUuid?: boolean): this;
}
declare class FieldValidatorInt32 extends FieldValidatorBase implements IFieldValidatorReal {
settings: IFieldValidatorSettingsInt32;
constructor(base: IFieldValidatorSettingsBase);
defaultValue(inputValue: number): this;
example(example: number): this;
max(inputMax: number): this;
min(inputMin: number): this;
primaryKey(primaryKey?: boolean): this;
autoIncrement(autoIncrement?: boolean): this;
oneOf(inputValues: number[]): this;
}
declare class FieldValidatorFloat64 extends FieldValidatorBase implements IFieldValidatorReal {
settings: IFieldValidatorSettingsFloat64;
constructor(base: IFieldValidatorSettingsBase);
defaultValue(inputValue: number): this;
example(example: number): this;
max(inputMax: number): this;
min(inputMin: number): this;
oneOf(inputValues: number[]): this;
allowNaN(allowNaN?: boolean): this;
}
declare class FieldValidatorObject extends FieldValidatorBase implements IFieldValidatorReal {
settings: IFieldValidatorSettingsObject;
constructor(base: IFieldValidatorSettingsBase);
defaultValue(inputValue: Record<string, unknown>): this;
example(example: Record<string, unknown>): this;
schema(inputSchema: IFieldValidatorSchema): this;
}
declare class FieldValidatorArray extends FieldValidatorBase implements IFieldValidatorReal {
settings: IFieldValidatorSettingsArray;
constructor(base: IFieldValidatorSettingsBase);
defaultValue(inputValue: any[]): this;
example(example: any[]): this;
max(inputMax: number): this;
min(inputMin: number): this;
arrayOf(inputSchema: IFieldValidatorReal): this;
}
declare class FieldValidatorStart extends FieldValidatorBase {
constructor();
bool(): any;
string(): any;
int32(): any;
float64(): any;
object(schema?: IFieldValidatorSchema): any;
obj(schema: any): any;
array(): any;
type(inputType: FieldDataType): any;
arrayOf(schema: IFieldValidatorReal): any;
}
declare type FieldValidatorInstance = FieldValidatorBool | FieldValidatorString | FieldValidatorInt32 | FieldValidatorFloat64 | FieldValidatorObject | FieldValidatorArray;
declare type FieldValidatorPrimitive = FieldValidatorBool | FieldValidatorString | FieldValidatorInt32 | FieldValidatorFloat64;
export { FieldValidatorBase, FieldValidatorBool, FieldValidatorString, FieldValidatorInt32, FieldValidatorFloat64, FieldValidatorObject, FieldValidatorArray, FieldValidatorInstance, FieldValidatorPrimitive, VALID_TYPES, };
export default FieldValidatorStart;