UNPKG

@bemedev/types

Version:

Type definitions for Bemedev projects

19 lines 1.16 kB
import type { AnyArray, Fn } from './types/types'; type PartialCall_F = <T extends AnyArray = AnyArray, U extends AnyArray = AnyArray, R = any>(f: Fn<[...T, ...U], R>, ...headArgs: T) => (...tailArgs: U) => R; export declare const partialCall: PartialCall_F; export declare function isPlainObject(value: any): value is object; export declare const _unknown: <T>(value?: unknown) => T; export type FnBasic<Main extends Fn, Tr extends object> = Tr & Main; export declare const castFn: <T>() => <const Tr extends object = object>(extensions?: Tr) => FnBasic<(arg: T) => T, Tr & { readonly forceCast: (arg: unknown) => T; readonly dynamic: <U extends T>(arg: U) => U; }>; export declare const typeFn: <T = any>() => <Tr extends object = object>(extensions?: Tr) => FnBasic<(_?: T) => T, Tr & { readonly forceCast: (_?: unknown) => T; readonly dynamic: <U extends T>(_?: U) => U; readonly is: <U>(_?: U) => U extends T ? true : false; readonly type: T; }>; export declare const expandFn: <Main extends Fn, const Tr extends object = object>(main: Main, extensions?: Tr) => FnBasic<Main, Tr>; export {}; //# sourceMappingURL=utils.d.ts.map