UNPKG

@bemedev/types

Version:

Type definitions for Bemedev projects

1 lines 6.63 kB
{"version":3,"file":"commons.cjs","sources":["../../src/types/commons.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n\nimport { _unknown, expandFn, typeFn } from '~utils';\nimport type {\n Checker,\n Defaulted,\n Fn,\n Keys,\n NonN,\n Primitive,\n PrimitiveObject,\n} from './commons.types';\nimport type {\n DeepNotReadonly,\n DeepPartial,\n DeepReadonly,\n DeepRequired,\n NotReadonly,\n} from './objects.types';\nimport { Neverify } from './objects.types';\nimport type { Checker2 } from './types';\n\nexport const commons = expandFn(<T>(_?: unknown) => _unknown<T>(), {\n partial: expandFn(<T extends object>(_?: T) => _unknown<Partial<T>>(), {\n deep: <T extends object>(_?: T) => _unknown<DeepPartial<T>>(),\n }),\n\n const: <const T extends object>(_?: T) => _unknown<T>(),\n\n identity: <T>(_?: T) => _unknown<T>(),\n\n is: {\n defined: <T>(_?: T) => _unknown<T extends undefined ? false : true>(),\n undefined: <T>(_?: T) =>\n _unknown<T extends undefined ? true : false>(),\n null: <T>(_?: T) => _unknown<T extends null ? true : false>(),\n notNull: <T>(_?: T) => _unknown<T extends null ? false : true>(),\n },\n\n unknown: _unknown,\n\n any: typeFn()(),\n\n neverify: <T>(_?: T) => _unknown<Neverify<T>>(),\n\n required: expandFn(\n <T extends object>(_?: T) => _unknown<Required<T>>(),\n {\n deep: <T extends object>(_?: T) => _unknown<DeepRequired<T>>(),\n },\n ),\n\n readonly: expandFn(\n <T extends object>(_?: T) => _unknown<Required<T>>(),\n {\n deep: expandFn(\n <T extends object>(_?: T) => _unknown<DeepReadonly<T>>(),\n {\n not: expandFn(\n <T extends object>(_?: T) => _unknown<DeepNotReadonly<T>>(),\n {\n is: <T extends object>(_?: T) =>\n _unknown<T extends DeepNotReadonly<T> ? true : false>(),\n },\n ),\n\n is: <T extends object>(_?: T) =>\n _unknown<T extends DeepReadonly<T> ? true : false>(),\n },\n ),\n\n not: expandFn(\n <T extends object>(_?: T) => _unknown<NotReadonly<T>>(),\n {\n is: <T extends object>(_?: T) =>\n _unknown<T extends NotReadonly<T> ? true : false>(),\n },\n ),\n\n is: <T extends object>(_?: T) =>\n _unknown<T extends Readonly<T> ? true : false>(),\n },\n ),\n\n primitive: typeFn<Primitive>()(),\n\n primitiveObject: typeFn<PrimitiveObject>()(),\n\n symbol: typeFn<symbol>()(),\n\n date: typeFn<Date>()(),\n\n function: expandFn(\n <T extends any[], R = any>(..._: [...T, R]) => _unknown<Fn<T, R>>(),\n {\n forceCast: <T extends any[], R = any>(_: unknown) =>\n _unknown<Fn<T, R>>(),\n\n is: <T extends any[], R = any>(_?: T, __?: R) => {\n const _out = <U>(_?: U) =>\n _unknown<U extends Fn<T, R> ? true : false>();\n return _out;\n },\n\n dynamic: <T extends any[], R = any>(..._: [...T, R]) =>\n _unknown<Fn<T, R>>(),\n\n checker: typeFn<Checker>()({\n byType: expandFn(<T>(_?: Checker2<T>) => _unknown<Checker2<T>>(), {\n forceCast: <T>(_?: Fn<[unknown], boolean>) =>\n _unknown<Checker2<T>>(),\n }),\n }),\n },\n ),\n\n undefiny: <T>(_?: T) => _unknown<T | undefined>(),\n\n extract: expandFn(\n <T, U extends any[]>(_?: T, ...__: U) =>\n _unknown<Extract<T, U[number]>>(),\n {\n const: <const T, const U extends T[]>(_?: T, ...__: U) =>\n _unknown<Extract<T, U[number]>>(),\n },\n ),\n\n exclude: expandFn(\n <T, U extends any[]>(_?: T, ...__: U) =>\n _unknown<Exclude<T, U[number]>>(),\n {\n const: <const T, const U extends T[]>(_?: T, ...__: U) =>\n _unknown<Exclude<T, U[number]>>(),\n },\n ),\n\n union: <const T extends any[]>(..._: T) => _unknown<T[number]>(),\n\n null: typeFn<null>()(),\n bigint: typeFn<bigint>()(),\n never: _unknown<never>(),\n undefined: _unknown<undefined>(),\n\n keys: typeFn<Keys>()(),\n\n defaulted: <T, U extends NonN<T>>(_?: T, __?: U) =>\n _unknown<Defaulted<T, U>>(),\n});\n"],"names":["expandFn","_unknown","typeFn"],"mappings":"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"}