decode-it
Version:
a simple zero-dependency type safe json decoder for typescript
17 lines (16 loc) • 743 B
TypeScript
export interface FailedValidation {
value: unknown;
type: 'boolean' | 'literal' | 'none' | 'null' | 'number' | 'object' | 'string' | 'unknown' | 'validator';
state: 'failed';
wrapper?: 'array' | 'optional' | 'tuple' | 'union';
path?: string;
literal?: unknown;
}
export interface PassedValidation {
state: 'passed';
}
export declare const passedValidation: PassedValidation;
export declare type ValidationResult = FailedValidation | PassedValidation;
export declare const isFailedValidation: (v: ValidationResult) => v is FailedValidation;
export declare const isPassedValidation: (v: ValidationResult) => v is PassedValidation;
export declare type FailedValidationConstructor = (arg: unknown) => FailedValidation;