UNPKG

@shedevro/assert

Version:

Assertion typescript library for better, comfortable and safe coding. See readme!

30 lines (29 loc) 1.04 kB
declare namespace Types { type One = (...args: any[]) => any; type OneNullable = One | null; type Array = One[]; type ArrayNullable = Array | null; } declare namespace Function { type AssertsTemplate<R> = { function(value: unknown, message?: string): asserts value is R; }; type ValueIsTemplate<R> = { function(value: unknown): value is R; }; } export declare namespace FunctionFunctions { namespace Asserts { type One = Function.AssertsTemplate<Types.One>; type OneNullable = Function.AssertsTemplate<Types.OneNullable>; type Array = Function.AssertsTemplate<Types.Array>; type ArrayNullable = Function.AssertsTemplate<Types.ArrayNullable>; } namespace ValueIs { type One = Function.ValueIsTemplate<Types.One>; type OneNullable = Function.ValueIsTemplate<Types.OneNullable>; type Array = Function.ValueIsTemplate<Types.Array>; type ArrayNullable = Function.ValueIsTemplate<Types.ArrayNullable>; } } export {};