@xylabs/typeof
Version:
Base functionality used throughout XY Labs TypeScript/JavaScript libraries
80 lines • 6.76 kB
TypeScript
export type AnyFunction = (...args: unknown[]) => unknown;
export type RecordKey = string | number | symbol;
export declare function isUndefined(value: unknown): value is undefined;
export declare function isUndefined<T>(value: T): value is Extract<T, undefined>;
export declare function isDefined<T>(value: T): value is Exclude<T, undefined>;
export declare function isNull(value: unknown): value is null;
export declare function isNull<T>(value: T): value is Extract<T, null>;
export declare function isDefinedNotNull<T>(value: T): value is Exclude<T, undefined | null>;
export declare function isUndefinedOrNull(value: unknown): value is undefined | null;
export declare function isUndefinedOrNull<T>(value: T): value is Extract<T, undefined | null>;
export declare function isBigInt(value: unknown): value is bigint;
export declare function isBigInt<T extends bigint>(value: T): value is Extract<T, bigint>;
export declare function isString(value: unknown): value is string;
export declare function isString<T extends string>(value: T): value is Extract<T, string>;
export declare function isNumber(value: unknown): value is number;
export declare function isNumber<T extends number>(value: T): value is Extract<T, number>;
export declare function isObject(value: unknown): value is object;
export declare function isObject<T extends object>(value: T): value is Extract<T, object>;
export declare function isArray(value: unknown): value is readonly unknown[];
export declare function isArray<T>(value: T): value is Extract<T, readonly unknown[]>;
export declare function isFunction(value: unknown): value is AnyFunction;
export declare function isFunction<T extends AnyFunction>(value: T): value is Extract<T, AnyFunction>;
export declare function isSymbol(value: unknown): value is symbol;
export declare function isSymbol<T extends symbol>(value: T): value is Extract<T, symbol>;
export declare function isEmptyObject(value: unknown): value is {};
export declare function isEmptyObject<K extends RecordKey, V, T extends Record<K, V>>(value: T): value is Extract<T, Record<K, never>>;
export declare function isEmptyString(value: unknown): value is '';
export declare function isEmptyString<T extends string>(value: T): value is Extract<T, ''>;
export declare function isEmptyArray(value: unknown): value is [];
export declare function isEmptyArray<T extends Array<unknown>>(value: T): value is Extract<T, Array<unknown>>;
export declare function isPopulatedArray(value: unknown): value is readonly unknown[];
export declare function isPopulatedArray<T extends Array<unknown>>(value: T): value is Extract<T, readonly unknown[]>;
export declare function isEmpty<T>(value: unknown): value is T;
export declare function isEmpty<K extends RecordKey, V, T extends Record<K, V>>(value: T): value is Extract<T, Record<K, never>>;
export declare function isEmpty<T extends Array<unknown>>(value: T): value is Extract<T, Array<never>>;
export declare function isFalsy<T>(value: T): value is Extract<T, 0 | null | undefined | false | '' | 0n>;
export declare function isFalsy<T extends boolean>(value: T): value is Extract<T, false>;
export declare function isFalsy<T extends number>(value: T): value is Extract<T, 0>;
export declare function isFalsy<T extends bigint>(value: T): value is Extract<T, 0n>;
export declare function isFalsy<T extends null>(value: T): value is Extract<T, null>;
export declare function isFalsy<T extends undefined>(value: T): value is Extract<T, undefined>;
export declare function isFalsy<T extends string>(value: T): value is Extract<T, ''>;
export declare function isTruthy<T>(value: T): value is Exclude<T, 0 | null | undefined | false | '' | 0n>;
export declare function isTruthy<T extends boolean>(value: T): value is Extract<T, true>;
export declare function isTruthy<T extends number>(value: T): value is Extract<T, number>;
export declare function isTruthy<T extends bigint>(value: T): value is Extract<T, bigint>;
export declare function isTruthy<T extends null>(value: T): value is Extract<T, null>;
export declare function isTruthy<T extends undefined>(value: T): value is Extract<T, undefined>;
export declare function isTruthy<T extends string>(value: T): value is Extract<T, string>;
export declare function isBoolean(value: unknown): value is boolean;
export declare function isBoolean<T extends boolean>(value: T): value is Extract<T, boolean>;
export declare function isDateString(value: unknown): value is string;
export declare function isDateString<T>(value: T): value is Extract<T, string>;
export declare function isDate(value: unknown): value is Date;
export declare function isDate<T>(value: T): value is Extract<T, Date>;
export declare function isRegExp(value: unknown): value is RegExp;
export declare function isRegExp<T extends RegExp>(value: T): value is Extract<T, RegExp>;
export declare function isError(value: unknown): value is Error;
export declare function isError<T>(value: T): value is Extract<T, Error>;
export declare function isPromise(value: unknown): value is Promise<unknown>;
export declare function isPromise<T>(value: T): value is Extract<T, Promise<unknown>>;
export declare function isPromiseLike(value: unknown): value is Promise<unknown>;
export declare function isPromiseLike<T>(value: T): value is Extract<T, Promise<unknown>>;
export declare function isMap(value: unknown): value is Map<unknown, unknown>;
export declare function isMap<K, V, T extends Map<K, V>>(value: T): value is Extract<T, Map<K, V>>;
export declare function isArrayBufferView(value: unknown): value is ArrayBufferView;
export declare function isArrayBufferView<T extends ArrayBufferView>(value: T): value is Extract<T, ArrayBufferView>;
export declare function isSet(value: unknown): value is Set<unknown>;
export declare function isSet<T extends Set<unknown>>(value: unknown | Set<T>): value is Extract<T, Set<unknown>>;
export declare function isWeakMap(value: unknown): value is WeakMap<WeakKey, unknown>;
export declare function isWeakMap<K extends WeakKey, V, T extends WeakMap<K, V>>(value: T): value is Extract<T, WeakMap<K, V>>;
export declare function isWeakSet(value: unknown): value is WeakSet<WeakKey>;
export declare function isWeakSet<K extends WeakKey, T extends WeakSet<K>>(value: T): value is Extract<T, WeakSet<K>>;
export declare function isDataView(value: unknown): value is DataView;
export declare function isDataView<T>(value: T): value is Extract<T, DataView>;
export declare function isBlob(value: unknown): value is Blob;
export declare function isBlob<T extends Blob>(value: T): value is Extract<T, Blob>;
export declare function isFile(value: unknown): value is File;
export declare function isFile<T extends File>(value: T): value is Extract<T, File>;
//# sourceMappingURL=is.d.ts.map