@bemedev/types
Version:
Type definitions for Bemedev projects
1 lines • 3.53 kB
Source Map (JSON)
{"version":3,"file":"arrays.cjs","sources":["../../src/types/arrays.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { _unknown, expandFn } from '~utils';\nimport type {\n AnyArray,\n ExcludeArray,\n ExtractArray,\n IndexesOfArray,\n ReduceDeepArray,\n ReverseArray,\n RuA,\n TupleOf,\n} from './arrays.types';\nimport type { UnionToTuple } from './commons.types';\n\nexport const arrays = expandFn(\n <T extends AnyArray>(..._: T) => _unknown<T[number][]>(),\n {\n low: <T>(..._: T[]) => _unknown<T[]>(),\n\n is: <T>(_?: T) => _unknown<T extends unknown[] ? true : false>(),\n\n indexes: expandFn(\n <const T extends RuA>(..._: T) =>\n _unknown<UnionToTuple<IndexesOfArray<T>>>(),\n {\n union: <const T extends RuA>(..._: T) =>\n _unknown<IndexesOfArray<T>>(),\n },\n ),\n\n lengthOf: <const T extends RuA>(_?: T) => _unknown<T['length']>(),\n\n tupleOf: expandFn(<const T extends RuA>(..._: T) => _unknown<T>(), {\n number: expandFn(\n <const T, N extends number>(_?: T, __?: N) =>\n _unknown<TupleOf<T, N>>(),\n {\n is: <const U, N extends number>(_?: U, __?: N) => {\n const _out = <T>(_?: T) =>\n _unknown<T extends TupleOf<U, N> ? true : false>();\n return _out;\n },\n },\n ),\n is: <const T>(_?: T) => _unknown<T extends RuA ? true : false>(),\n }),\n\n reduce: expandFn(<T>(_: T | readonly T[] | T[]) => _unknown<T>(), {\n deep: <T>(_?: T) => _unknown<ReduceDeepArray<T>>(),\n }),\n\n reverse: <T extends RuA>(..._: T) => _unknown<ReverseArray<T>>(),\n\n toArray: <T>(_?: T) => _unknown<AnyArray<T>>(),\n\n freeze: <const T extends RuA>(..._: T) => _unknown<Readonly<T>>(),\n\n extract: <const T extends AnyArray, const U extends T[number][]>(\n _?: T,\n ...__: U\n ) => _unknown<ExtractArray<T, U[number]>>(),\n\n exclude: <const T extends AnyArray, const U extends T[number][]>(\n _?: T,\n ...__: U\n ) => _unknown<ExcludeArray<T, U[number]>>(),\n\n forceCast: (_?: unknown) => _unknown<unknown[]>(),\n\n dynamic: <T extends unknown[]>(_?: T) => _unknown<T>(),\n\n type: _unknown<unknown[]>(),\n },\n);\n"],"names":["expandFn","_unknown"],"mappings":";;;;AAAA;AAcO,MAAM,MAAM,GAAGA,cAAQ,CAC5B,CAAqB,GAAG,CAAI,KAAKC,cAAQ,EAAe,EACxD;IACE,GAAG,EAAE,CAAI,GAAG,CAAM,KAAKA,cAAQ,EAAO;AAEtC,IAAA,EAAE,EAAE,CAAI,CAAK,KAAKA,cAAQ,EAAsC;IAEhE,OAAO,EAAED,cAAQ,CACf,CAAsB,GAAG,CAAI,KAC3BC,cAAQ,EAAmC,EAC7C;QACE,KAAK,EAAE,CAAsB,GAAG,CAAI,KAClCA,cAAQ,EAAqB;KAChC,CACF;AAED,IAAA,QAAQ,EAAE,CAAsB,CAAK,KAAKA,cAAQ,EAAe;IAEjE,OAAO,EAAED,cAAQ,CAAC,CAAsB,GAAG,CAAI,KAAKC,cAAQ,EAAK,EAAE;AACjE,QAAA,MAAM,EAAED,cAAQ,CACd,CAA4B,CAAK,EAAE,EAAM,KACvCC,cAAQ,EAAiB,EAC3B;AACE,YAAA,EAAE,EAAE,CAA4B,CAAK,EAAE,EAAM,KAAI;gBAC/C,MAAM,IAAI,GAAG,CAAI,CAAK,KACpBA,cAAQ,EAA0C;AACpD,gBAAA,OAAO,IAAI;YACb,CAAC;SACF,CACF;AACD,QAAA,EAAE,EAAE,CAAU,CAAK,KAAKA,cAAQ,EAAgC;KACjE,CAAC;IAEF,MAAM,EAAED,cAAQ,CAAC,CAAI,CAAyB,KAAKC,cAAQ,EAAK,EAAE;AAChE,QAAA,IAAI,EAAE,CAAI,CAAK,KAAKA,cAAQ,EAAsB;KACnD,CAAC;IAEF,OAAO,EAAE,CAAgB,GAAG,CAAI,KAAKA,cAAQ,EAAmB;AAEhE,IAAA,OAAO,EAAE,CAAI,CAAK,KAAKA,cAAQ,EAAe;IAE9C,MAAM,EAAE,CAAsB,GAAG,CAAI,KAAKA,cAAQ,EAAe;IAEjE,OAAO,EAAE,CACP,CAAK,EACL,GAAG,EAAK,KACLA,cAAQ,EAA8B;IAE3C,OAAO,EAAE,CACP,CAAK,EACL,GAAG,EAAK,KACLA,cAAQ,EAA8B;AAE3C,IAAA,SAAS,EAAE,CAAC,CAAW,KAAKA,cAAQ,EAAa;AAEjD,IAAA,OAAO,EAAE,CAAsB,CAAK,KAAKA,cAAQ,EAAK;IAEtD,IAAI,EAAEA,cAAQ,EAAa;AAC5B,CAAA;;;;"}