UNPKG

konditions

Version:

A simple and customizable JSON-based condition engine in TypeScript (e.g. GreaterThan, StringLike, Every, Some)

35 lines (34 loc) 960 B
export interface Resolution { passed: boolean; resolutions?: Resolution[]; } export interface SuccessfulResolution extends Resolution { passed: true; } export interface UnsuccessfulResolution extends Resolution { passed: false; } export interface FailedResolution<E = any> extends UnsuccessfulResolution { passed: false; error: E; } export declare type AnyResolution<E = any> = SuccessfulResolution | UnsuccessfulResolution | FailedResolution<E>; export declare type FailedValidationResolution = FailedResolution<ValidationError>; export declare type UnexpectedError = { type: `UnexpectedError`; message: string; metadata?: { [key: string]: any; }; }; export declare type ValidationError = { type: `ValidationError`; reasons: Array<ValidationErrorReason>; metadata?: { [key: string]: any; }; }; export declare type ValidationErrorReason = { namespace: string; message: string; };