UNPKG

@shedevro/assert

Version:

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

57 lines (56 loc) 2.62 kB
declare namespace Types { type Default = any[]; type Nullable = Default | null; type Not = void; } declare namespace Array { type AssertsTemplate<R> = { array(value: unknown, message?: string): asserts value is R; }; type ValueIsTemplate<R> = { array(value: unknown): value is R; }; } declare namespace ArrayLength { type AssertsTemplate<R> = { arrayLength(value: unknown, expectedLength: number, message?: string): asserts value is R; }; type ValueIsTemplate<R> = { arrayLength(value: unknown, expectedLength: number): value is R; }; } declare namespace ArrayMinLength { type AssertsTemplate<R> = { arrayMinLength(value: unknown, limit: number, message?: string): asserts value is R; }; type ValueIsTemplate<R> = { arrayMinLength(value: unknown, limit: number): value is R; }; } declare namespace ArrayMaxLength { type AssertsTemplate<R> = { arrayMaxLength(value: unknown, limit: number, message?: string): asserts value is R; }; type ValueIsTemplate<R> = { arrayMaxLength(value: unknown, limit: number): value is R; }; } declare namespace ArrayLengthBetween { type AssertsTemplate<R> = { arrayLengthBetween(value: unknown, min: number, max: number, message?: string): asserts value is R; }; type ValueIsTemplate<R> = { arrayLengthBetween(value: unknown, min: number, max: number): value is R; }; } export declare namespace ArrayFunctions { namespace Asserts { type Default = Array.AssertsTemplate<Types.Default> & ArrayLength.AssertsTemplate<Types.Default> & ArrayMinLength.AssertsTemplate<Types.Default> & ArrayMaxLength.AssertsTemplate<Types.Default> & ArrayLengthBetween.AssertsTemplate<Types.Default>; type Nullable = Array.AssertsTemplate<Types.Nullable> & ArrayLength.AssertsTemplate<Types.Nullable> & ArrayMinLength.AssertsTemplate<Types.Nullable> & ArrayMaxLength.AssertsTemplate<Types.Nullable> & ArrayLengthBetween.AssertsTemplate<Types.Nullable>; } namespace ValueIs { type Default = Array.ValueIsTemplate<Types.Default> & ArrayLength.ValueIsTemplate<Types.Default> & ArrayMinLength.ValueIsTemplate<Types.Default> & ArrayMaxLength.ValueIsTemplate<Types.Default> & ArrayLengthBetween.ValueIsTemplate<Types.Default>; type Nullable = Array.ValueIsTemplate<Types.Nullable> & ArrayLength.ValueIsTemplate<Types.Nullable> & ArrayMinLength.ValueIsTemplate<Types.Nullable> & ArrayMaxLength.ValueIsTemplate<Types.Nullable> & ArrayLengthBetween.ValueIsTemplate<Types.Nullable>; } } export {};