@bemedev/types
Version:
Type definitions for Bemedev projects
109 lines • 6.63 kB
TypeScript
import type { Checker, Defaulted, Fn, NonN, Primitive, PrimitiveObject } from './commons.types';
import type { DeepNotReadonly, DeepPartial, DeepReadonly, DeepRequired, NotReadonly } from './objects.types';
import { Neverify } from './objects.types';
import type { Checker2 } from './types';
export declare const commons: import("../utils.js").FnBasic<(<T>(_?: unknown) => T), {
readonly partial: import("../utils.js").FnBasic<(<T extends object>(_?: T) => Partial<T>), {
readonly deep: <T extends object>(_?: T) => DeepPartial<T>;
}>;
readonly const: <const T extends object>(_?: T) => T;
readonly identity: <T>(_?: T) => T;
readonly is: {
readonly defined: <T>(_?: T) => T extends undefined ? false : true;
readonly undefined: <T>(_?: T) => T extends undefined ? true : false;
readonly null: <T>(_?: T) => T extends null ? true : false;
readonly notNull: <T>(_?: T) => T extends null ? false : true;
};
readonly unknown: <T>(value?: unknown) => T;
readonly any: import("../utils.js").FnBasic<(_?: any) => any, object & {
readonly forceCast: (_?: unknown) => any;
readonly dynamic: <U extends any>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends any ? true : false;
readonly type: any;
}>;
readonly neverify: <T>(_?: T) => Neverify<T>;
readonly required: import("../utils.js").FnBasic<(<T extends object>(_?: T) => Required<T>), {
readonly deep: <T extends object>(_?: T) => DeepRequired<T>;
}>;
readonly readonly: import("../utils.js").FnBasic<(<T extends object>(_?: T) => Required<T>), {
readonly deep: import("../utils.js").FnBasic<(<T extends object>(_?: T) => DeepReadonly<T>), {
readonly not: import("../utils.js").FnBasic<(<T extends object>(_?: T) => DeepNotReadonly<T>), {
readonly is: <T extends object>(_?: T) => T extends DeepNotReadonly<T> ? true : false;
}>;
readonly is: <T extends object>(_?: T) => T extends DeepReadonly<T> ? true : false;
}>;
readonly not: import("../utils.js").FnBasic<(<T extends object>(_?: T) => NotReadonly<T>), {
readonly is: <T extends object>(_?: T) => T extends NotReadonly<T> ? true : false;
}>;
readonly is: <T extends object>(_?: T) => T extends Readonly<T> ? true : false;
}>;
readonly primitive: import("../utils.js").FnBasic<(_?: Primitive) => Primitive, object & {
readonly forceCast: (_?: unknown) => Primitive;
readonly dynamic: <U extends Primitive>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends Primitive ? true : false;
readonly type: Primitive;
}>;
readonly primitiveObject: import("../utils.js").FnBasic<(_?: PrimitiveObject) => PrimitiveObject, object & {
readonly forceCast: (_?: unknown) => PrimitiveObject;
readonly dynamic: <U extends PrimitiveObject>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends PrimitiveObject ? true : false;
readonly type: PrimitiveObject;
}>;
readonly symbol: import("../utils.js").FnBasic<(_?: symbol | undefined) => symbol, object & {
readonly forceCast: (_?: unknown) => symbol;
readonly dynamic: <U extends symbol>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends symbol ? true : false;
readonly type: symbol;
}>;
readonly date: import("../utils.js").FnBasic<(_?: Date | undefined) => Date, object & {
readonly forceCast: (_?: unknown) => Date;
readonly dynamic: <U extends Date>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends Date ? true : false;
readonly type: Date;
}>;
readonly function: import("../utils.js").FnBasic<(<T extends any[], R = any>(..._: [...T, R]) => Fn<T, R>), {
readonly forceCast: <T extends any[], R = any>(_: unknown) => Fn<T, R>;
readonly is: <T extends any[], R = any>(_?: T, __?: R) => <U>(_?: U) => U extends Fn<T, R> ? true : false;
readonly dynamic: <T extends any[], R = any>(..._: [...T, R]) => Fn<T, R>;
readonly checker: import("../utils.js").FnBasic<(_?: Checker | undefined) => Checker, {
byType: import("../utils.js").FnBasic<(<T>(_?: Checker2<T>) => Checker2<T>), {
readonly forceCast: <T>(_?: Fn<[unknown], boolean>) => Checker2<T>;
}>;
} & {
readonly forceCast: (_?: unknown) => Checker;
readonly dynamic: <U extends Checker>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends Checker ? true : false;
readonly type: Checker;
}>;
}>;
readonly undefiny: <T>(_?: T) => T | undefined;
readonly extract: import("../utils.js").FnBasic<(<T, U extends any[]>(_?: T, ...__: U) => Extract<T, U[number]>), {
readonly const: <const T, const U extends T[]>(_?: T, ...__: U) => Extract<T, U[number]>;
}>;
readonly exclude: import("../utils.js").FnBasic<(<T, U extends any[]>(_?: T, ...__: U) => Exclude<T, U[number]>), {
readonly const: <const T, const U extends T[]>(_?: T, ...__: U) => Exclude<T, U[number]>;
}>;
readonly union: <const T extends any[]>(..._: T) => T[number];
readonly null: import("../utils.js").FnBasic<(_?: null | undefined) => null, object & {
readonly forceCast: (_?: unknown) => null;
readonly dynamic: <U extends null>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends null ? true : false;
readonly type: null;
}>;
readonly bigint: import("../utils.js").FnBasic<(_?: bigint | undefined) => bigint, object & {
readonly forceCast: (_?: unknown) => bigint;
readonly dynamic: <U extends bigint>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends bigint ? true : false;
readonly type: bigint;
}>;
readonly never: never;
readonly undefined: undefined;
readonly keys: import("../utils.js").FnBasic<(_?: string | number | symbol | undefined) => string | number | symbol, object & {
readonly forceCast: (_?: unknown) => string | number | symbol;
readonly dynamic: <U extends string | number | symbol>(_?: U | undefined) => U;
readonly is: <U>(_?: U | undefined) => U extends string | number | symbol ? true : false;
readonly type: string | number | symbol;
}>;
readonly defaulted: <T, U extends NonN<T>>(_?: T, __?: U) => Defaulted<T, U>;
}>;
//# sourceMappingURL=commons.d.ts.map