perlica
Version:
<h1 align="center">Perlica</h1>
158 lines (157 loc) • 4.58 kB
TypeScript
import * as P from ".";
/**
* Any typed array
*
* @category Instances
*/
export type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array | BigInt64Array | BigUint64Array;
/**
* Returns a new `Predicate<T>`.
* Returns `true` if `value` is length less or equal to a pre-defined `count`.
*
* @category Predicate
* @example
* import { max } from "perlica/Predicate/Array"
*
* const predicate = max(5);
*
* expect(predicate([1, 2, 3, 4])).toBeTrue();
* expect(predicate([1, 2, 3, 4, 5])).toBeFalse();
*/
export declare const maxLen: <T>(count: number) => P.Predicate<T[]>;
/**
* Returns a new `Predicate<T>`.
* Returns `true` if `value` is length greater or equal to a pre-defined `count`.
*
* @category Predicate
* @example
* import { min } from "perlica/Predicate/Array"
*
* const predicate = min(4);
*
* expect(predicate([1, 2, 3, 4])).toBeTrue();
* expect(predicate([1, 2, 3])).toBeFalse();
*/
export declare const minLen: <T>(count: number) => P.Predicate<T[]>;
/**
* Returns a new `Predicate<T>`.
* Return `true` if `value` is length equal to a pre-defined `count`.
*
* @category Predicate
* @example
* import { len } from "perlica/Predicate/Array"
*
* const predicate = len(4);
*
* expect(predicate([1, 2, 3, 4])).toBeTrue();
* expect(predicate([1, 2])).toBeFalse();
* expect(predicate([1, 2, 3, 4, 5])).toBeFalse();
*/
export declare const len: <T>(count: number) => P.Predicate<T[]>;
/**
* Returns `true` if `value` is `Array`, otherwise returns `false`.
*
* @category Guard
* @example
* import { isArray } from "perlica/Predicate"
*
* expect(isArray([])).toBeTrue();
* expect(isArray(4)).toBeFalse();
* expect(isArray(null)).toBeFalse();
* expect(isArray(true)).toBeFalse();
*/
export declare const isArray: P.Guard<unknown, unknown[]>;
/**
* Returns `true` if `self` is empty, otherwise returns `false`.
*
* @category Guard
* @example
* import { isEmpty } from "perlica/Predicate/Array"
*
* expect(isEmpty([4])).toBeFalse();
* expect(isEmpty([])).toBeTrue();
*/
export declare const isEmpty: <T>(self: T[]) => self is [];
/**
* Returns `true` if `self` is not empty, otherwise returns `false`.
*
* @category Guard
* @example
* import { isNonEmpty } from "perlica/Predicate/Array"
*
* expect(isEmpty([4])).toBeTrue();
* expect(isEmpty([])).toBeFalse();
*/
export declare const isNonEmpty: <T>(self: T[]) => self is [T, ...T[]];
/**
* Returns `true` if `value` is `TypedArray`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isTypedArray: P.Guard<unknown, TypedArray>;
/**
* Returns `true` if `value` is `Int8Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isInt8Array: P.Guard<unknown, Int8Array>;
/**
* Returns `true` if `value` is `Uint8Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isUint8Array: P.Guard<unknown, Uint8Array>;
/**
* Returns `true` if `value` is `Uint8ClampedArray`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isUint8ClampedArray: P.Guard<unknown, Uint8ClampedArray>;
/**
* Returns `true` if `value` is `Int16Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isInt16Array: P.Guard<unknown, Int16Array>;
/**
* Returns `true` if `value` is `Uint16Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isUint16Array: P.Guard<unknown, Uint16Array>;
/**
* Returns `true` if `value` is `Int32Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isInt32Array: P.Guard<unknown, Int32Array>;
/**
* Returns `true` if `value` is `Uint32Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isUint32Array: P.Guard<unknown, Uint32Array>;
/**
* Returns `true` if `value` is `Float32Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isFloat32Array: P.Guard<unknown, Float32Array>;
/**
* Returns `true` if `value` is `Float64Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isFloat64Array: P.Guard<unknown, Float64Array>;
/**
* Returns `true` if `value` is `BigInt64Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isBigInt64Array: P.Guard<unknown, BigInt64Array>;
/**
* Returns `true` if `value` is `BigUint64Array`, otherwise returns `false`.
*
* @category Guards
*/
export declare const isBigUint64Array: P.Guard<unknown, BigUint64Array>;