type-plus 6.8.1 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1054 -355
- package/cjs/array/{array.d.ts → array.at.d.ts} +4 -14
- package/cjs/array/array.at.d.ts.map +1 -0
- package/cjs/array/{pad_left.js → array.at.js} +1 -1
- package/cjs/array/array.at.js.map +1 -0
- package/cjs/array/array.concat.d.ts +13 -0
- package/cjs/array/array.concat.d.ts.map +1 -0
- package/cjs/array/array.concat.js +3 -0
- package/cjs/array/array.concat.js.map +1 -0
- package/cjs/array/array.entries.d.ts +17 -0
- package/cjs/array/array.entries.d.ts.map +1 -0
- package/cjs/array/array.entries.js +3 -0
- package/cjs/array/array.entries.js.map +1 -0
- package/cjs/array/array.find.d.ts +21 -0
- package/cjs/array/array.find.d.ts.map +1 -0
- package/cjs/array/{find_first.js → array.find.js} +1 -1
- package/cjs/array/array.find.js.map +1 -0
- package/cjs/array/array.find_last.d.ts +17 -0
- package/cjs/array/array.find_last.d.ts.map +1 -0
- package/cjs/array/array.find_last.js +3 -0
- package/cjs/array/array.find_last.js.map +1 -0
- package/cjs/array/array.reverse.d.ts +2 -0
- package/cjs/array/array.reverse.d.ts.map +1 -0
- package/cjs/array/array.reverse.js +3 -0
- package/cjs/array/array.reverse.js.map +1 -0
- package/cjs/array/array.some.d.ts +29 -0
- package/cjs/array/array.some.d.ts.map +1 -0
- package/cjs/array/array.some.js +3 -0
- package/cjs/array/array.some.js.map +1 -0
- package/cjs/array/array_index.d.ts +8 -8
- package/cjs/array/array_index.d.ts.map +1 -1
- package/cjs/array/array_plus.d.ts +9 -1
- package/cjs/array/array_plus.d.ts.map +1 -1
- package/cjs/array/array_plus.split_at.d.ts +30 -0
- package/cjs/array/array_plus.split_at.d.ts.map +1 -0
- package/cjs/array/array_plus.split_at.js +3 -0
- package/cjs/array/array_plus.split_at.js.map +1 -0
- package/cjs/array/drop.d.ts +2 -2
- package/cjs/array/drop.d.ts.map +1 -1
- package/cjs/array/index.d.ts +4 -5
- package/cjs/array/index.d.ts.map +1 -1
- package/cjs/array/index.js +4 -5
- package/cjs/array/index.js.map +1 -1
- package/cjs/array/pad_start.d.ts +32 -0
- package/cjs/array/pad_start.d.ts.map +1 -0
- package/cjs/array/{find_last.js → pad_start.js} +1 -1
- package/cjs/array/pad_start.js.map +1 -0
- package/cjs/assertion/assert_type.d.ts +3 -0
- package/cjs/assertion/assert_type.d.ts.map +1 -1
- package/cjs/assertion/assert_type.js +3 -0
- package/cjs/assertion/assert_type.js.map +1 -1
- package/cjs/bigint/cast.d.ts +10 -0
- package/cjs/bigint/cast.d.ts.map +1 -0
- package/cjs/{array/some.js → bigint/cast.js} +1 -1
- package/cjs/bigint/cast.js.map +1 -0
- package/cjs/equal/equal.d.ts +51 -3
- package/cjs/equal/equal.d.ts.map +1 -1
- package/cjs/functional/Maybe.d.ts +2 -2
- package/cjs/functional/Maybe.d.ts.map +1 -1
- package/cjs/index.d.ts +16 -7
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +6 -1
- package/cjs/index.js.map +1 -1
- package/cjs/math/abs.d.ts +6 -0
- package/cjs/math/abs.d.ts.map +1 -0
- package/cjs/math/{Add.js → abs.js} +1 -1
- package/cjs/math/abs.js.map +1 -0
- package/cjs/math/add.d.ts +7 -0
- package/cjs/math/add.d.ts.map +1 -0
- package/cjs/math/{Max.js → add.js} +1 -1
- package/cjs/math/add.js.map +1 -0
- package/cjs/math/greater_than.d.ts +4 -0
- package/cjs/math/greater_than.d.ts.map +1 -0
- package/cjs/math/greater_than.js +3 -0
- package/cjs/math/greater_than.js.map +1 -0
- package/cjs/math/index.d.ts +6 -6
- package/cjs/math/index.d.ts.map +1 -1
- package/cjs/math/math_plus.d.ts +5 -0
- package/cjs/math/math_plus.d.ts.map +1 -0
- package/cjs/math/math_plus.js +3 -0
- package/cjs/math/math_plus.js.map +1 -0
- package/cjs/math/math_plus.to_negative.d.ts +13 -0
- package/cjs/math/math_plus.to_negative.d.ts.map +1 -0
- package/cjs/math/math_plus.to_negative.js +3 -0
- package/cjs/math/math_plus.to_negative.js.map +1 -0
- package/cjs/math/max.d.ts +4 -0
- package/cjs/math/max.d.ts.map +1 -0
- package/cjs/math/{Abs.js → max.js} +1 -1
- package/cjs/math/max.js.map +1 -0
- package/cjs/math/multiply.d.ts +6 -0
- package/cjs/math/multiply.d.ts.map +1 -0
- package/cjs/{array/array.js → math/multiply.js} +1 -1
- package/cjs/math/multiply.js.map +1 -0
- package/cjs/math/numeric_struct.d.ts +1469 -0
- package/cjs/math/numeric_struct.d.ts.map +1 -0
- package/cjs/math/numeric_struct.js +3 -0
- package/cjs/math/numeric_struct.js.map +1 -0
- package/cjs/math/subtract.d.ts +7 -0
- package/cjs/math/subtract.d.ts.map +1 -0
- package/cjs/math/subtract.js +3 -0
- package/cjs/math/subtract.js.map +1 -0
- package/cjs/nominal/brand.js +2 -2
- package/cjs/nominal/brand.js.map +1 -1
- package/cjs/nominal/flavor.js +2 -2
- package/cjs/nominal/flavor.js.map +1 -1
- package/cjs/number/cast.d.ts +10 -0
- package/cjs/number/cast.d.ts.map +1 -0
- package/cjs/number/cast.js +3 -0
- package/cjs/number/cast.js.map +1 -0
- package/cjs/number/number_array.d.ts +0 -2
- package/cjs/number/number_array.d.ts.map +1 -1
- package/cjs/number/number_array.js +14 -1
- package/cjs/number/number_array.js.map +1 -1
- package/cjs/number/number_plus.d.ts +4 -5
- package/cjs/number/number_plus.d.ts.map +1 -1
- package/cjs/number/strict_number_type.d.ts +12 -0
- package/cjs/number/strict_number_type.d.ts.map +1 -1
- package/cjs/numeric/cast.d.ts +27 -0
- package/cjs/numeric/cast.d.ts.map +1 -0
- package/cjs/numeric/cast.js +3 -0
- package/cjs/numeric/cast.js.map +1 -0
- package/{esm/number → cjs/numeric}/integer.d.ts +2 -0
- package/cjs/numeric/integer.d.ts.map +1 -0
- package/cjs/{number → numeric}/integer.js.map +1 -1
- package/cjs/numeric/negative.d.ts.map +1 -0
- package/cjs/{number → numeric}/negative.js.map +1 -1
- package/cjs/numeric/numeric_plus.d.ts +5 -0
- package/cjs/numeric/numeric_plus.d.ts.map +1 -0
- package/cjs/numeric/numeric_plus.js +3 -0
- package/cjs/numeric/numeric_plus.js.map +1 -0
- package/cjs/numeric/numeric_type.d.ts.map +1 -0
- package/cjs/{number → numeric}/numeric_type.js.map +1 -1
- package/cjs/{number → numeric}/positive.d.ts +2 -2
- package/cjs/numeric/positive.d.ts.map +1 -0
- package/cjs/{number → numeric}/positive.js.map +1 -1
- package/cjs/object/ANotB.d.ts +3 -3
- package/cjs/object/ANotB.d.ts.map +1 -1
- package/cjs/object/Partial.d.ts +6 -0
- package/cjs/object/Partial.d.ts.map +1 -1
- package/cjs/object/Required.d.ts +4 -0
- package/cjs/object/Required.d.ts.map +1 -1
- package/cjs/object/index.d.ts +1 -1
- package/cjs/object/index.d.ts.map +1 -1
- package/cjs/object/object_type.d.ts +1 -1
- package/cjs/object/split.d.ts +3 -1
- package/cjs/object/split.d.ts.map +1 -1
- package/cjs/object/split.js.map +1 -1
- package/cjs/predicates/CanAssign.d.ts +35 -0
- package/cjs/predicates/CanAssign.d.ts.map +1 -1
- package/cjs/predicates/CanAssign.js.map +1 -1
- package/cjs/predicates/Extends.d.ts +2 -2
- package/cjs/predicates/Extends.d.ts.map +1 -1
- package/cjs/predicates/index.d.ts +0 -1
- package/cjs/predicates/index.d.ts.map +1 -1
- package/cjs/predicates/index.js +0 -1
- package/cjs/predicates/index.js.map +1 -1
- package/cjs/testing/test_type.d.ts +125 -50
- package/cjs/testing/test_type.d.ts.map +1 -1
- package/cjs/testing/test_type.js +4 -141
- package/cjs/testing/test_type.js.map +1 -1
- package/cjs/tuple/create_tuple.d.ts +28 -0
- package/cjs/tuple/create_tuple.d.ts.map +1 -0
- package/cjs/{array → tuple}/create_tuple.js.map +1 -1
- package/cjs/tuple/tuple_plus.d.ts +2 -0
- package/cjs/tuple/tuple_plus.d.ts.map +1 -0
- package/cjs/tuple/tuple_plus.js +18 -0
- package/cjs/tuple/tuple_plus.js.map +1 -0
- package/cjs/tuple/tuple_plus.pad_start.d.ts +22 -0
- package/cjs/tuple/tuple_plus.pad_start.d.ts.map +1 -0
- package/cjs/tuple/tuple_plus.pad_start.js +3 -0
- package/cjs/tuple/tuple_plus.pad_start.js.map +1 -0
- package/cjs/{predicates/isType.d.ts → type-guard/is_type.d.ts} +5 -3
- package/cjs/type-guard/is_type.d.ts.map +1 -0
- package/cjs/{predicates/isType.js → type-guard/is_type.js} +8 -2
- package/cjs/type-guard/is_type.js.map +1 -0
- package/esm/array/{array.d.ts → array.at.d.ts} +4 -14
- package/esm/array/array.at.d.ts.map +1 -0
- package/esm/array/array.at.js +2 -0
- package/esm/array/array.at.js.map +1 -0
- package/esm/array/array.concat.d.ts +13 -0
- package/esm/array/array.concat.d.ts.map +1 -0
- package/esm/array/array.concat.js +2 -0
- package/esm/array/array.concat.js.map +1 -0
- package/esm/array/array.entries.d.ts +17 -0
- package/esm/array/array.entries.d.ts.map +1 -0
- package/esm/array/array.entries.js +2 -0
- package/esm/array/array.entries.js.map +1 -0
- package/esm/array/array.find.d.ts +21 -0
- package/esm/array/array.find.d.ts.map +1 -0
- package/esm/array/array.find.js +2 -0
- package/esm/array/array.find.js.map +1 -0
- package/esm/array/array.find_last.d.ts +17 -0
- package/esm/array/array.find_last.d.ts.map +1 -0
- package/esm/array/array.find_last.js +2 -0
- package/esm/array/array.find_last.js.map +1 -0
- package/esm/array/array.reverse.d.ts +2 -0
- package/esm/array/array.reverse.d.ts.map +1 -0
- package/esm/array/array.reverse.js +2 -0
- package/esm/array/array.reverse.js.map +1 -0
- package/esm/array/array.some.d.ts +29 -0
- package/esm/array/array.some.d.ts.map +1 -0
- package/esm/array/array.some.js +2 -0
- package/esm/array/array.some.js.map +1 -0
- package/esm/array/array_index.d.ts +8 -8
- package/esm/array/array_index.d.ts.map +1 -1
- package/esm/array/array_plus.d.ts +9 -1
- package/esm/array/array_plus.d.ts.map +1 -1
- package/esm/array/array_plus.split_at.d.ts +30 -0
- package/esm/array/array_plus.split_at.d.ts.map +1 -0
- package/esm/array/array_plus.split_at.js +2 -0
- package/esm/array/array_plus.split_at.js.map +1 -0
- package/esm/array/drop.d.ts +2 -2
- package/esm/array/drop.d.ts.map +1 -1
- package/esm/array/index.d.ts +4 -5
- package/esm/array/index.d.ts.map +1 -1
- package/esm/array/index.js +4 -5
- package/esm/array/index.js.map +1 -1
- package/esm/array/pad_start.d.ts +32 -0
- package/esm/array/pad_start.d.ts.map +1 -0
- package/esm/array/pad_start.js +2 -0
- package/esm/array/pad_start.js.map +1 -0
- package/esm/assertion/assert_type.d.ts +3 -0
- package/esm/assertion/assert_type.d.ts.map +1 -1
- package/esm/assertion/assert_type.js +3 -0
- package/esm/assertion/assert_type.js.map +1 -1
- package/esm/bigint/cast.d.ts +10 -0
- package/esm/bigint/cast.d.ts.map +1 -0
- package/esm/bigint/cast.js +2 -0
- package/esm/bigint/cast.js.map +1 -0
- package/esm/equal/equal.d.ts +51 -3
- package/esm/equal/equal.d.ts.map +1 -1
- package/esm/functional/Maybe.d.ts +2 -2
- package/esm/functional/Maybe.d.ts.map +1 -1
- package/esm/index.d.ts +16 -7
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +5 -0
- package/esm/index.js.map +1 -1
- package/esm/math/abs.d.ts +6 -0
- package/esm/math/abs.d.ts.map +1 -0
- package/esm/math/abs.js +2 -0
- package/esm/math/abs.js.map +1 -0
- package/esm/math/add.d.ts +7 -0
- package/esm/math/add.d.ts.map +1 -0
- package/esm/math/add.js +2 -0
- package/esm/math/add.js.map +1 -0
- package/esm/math/greater_than.d.ts +4 -0
- package/esm/math/greater_than.d.ts.map +1 -0
- package/esm/math/greater_than.js +2 -0
- package/esm/math/greater_than.js.map +1 -0
- package/esm/math/index.d.ts +6 -6
- package/esm/math/index.d.ts.map +1 -1
- package/esm/math/math_plus.d.ts +5 -0
- package/esm/math/math_plus.d.ts.map +1 -0
- package/esm/math/math_plus.js +2 -0
- package/esm/math/math_plus.js.map +1 -0
- package/esm/math/math_plus.to_negative.d.ts +13 -0
- package/esm/math/math_plus.to_negative.d.ts.map +1 -0
- package/esm/math/math_plus.to_negative.js +2 -0
- package/esm/math/math_plus.to_negative.js.map +1 -0
- package/esm/math/max.d.ts +4 -0
- package/esm/math/max.d.ts.map +1 -0
- package/esm/math/max.js +2 -0
- package/esm/math/max.js.map +1 -0
- package/esm/math/multiply.d.ts +6 -0
- package/esm/math/multiply.d.ts.map +1 -0
- package/esm/math/multiply.js +2 -0
- package/esm/math/multiply.js.map +1 -0
- package/esm/math/numeric_struct.d.ts +1469 -0
- package/esm/math/numeric_struct.d.ts.map +1 -0
- package/esm/math/numeric_struct.js +2 -0
- package/esm/math/numeric_struct.js.map +1 -0
- package/esm/math/subtract.d.ts +7 -0
- package/esm/math/subtract.d.ts.map +1 -0
- package/esm/math/subtract.js +2 -0
- package/esm/math/subtract.js.map +1 -0
- package/esm/nominal/brand.js +1 -1
- package/esm/nominal/brand.js.map +1 -1
- package/esm/nominal/flavor.js +1 -1
- package/esm/nominal/flavor.js.map +1 -1
- package/esm/number/cast.d.ts +10 -0
- package/esm/number/cast.d.ts.map +1 -0
- package/esm/number/cast.js +2 -0
- package/esm/number/cast.js.map +1 -0
- package/esm/number/number_array.d.ts +1 -2
- package/esm/number/number_array.d.ts.map +1 -1
- package/esm/number/number_array.js +14 -0
- package/esm/number/number_array.js.map +1 -1
- package/esm/number/number_plus.d.ts +4 -5
- package/esm/number/number_plus.d.ts.map +1 -1
- package/esm/number/strict_number_type.d.ts +12 -0
- package/esm/number/strict_number_type.d.ts.map +1 -1
- package/esm/numeric/cast.d.ts +27 -0
- package/esm/numeric/cast.d.ts.map +1 -0
- package/esm/numeric/cast.js +2 -0
- package/esm/numeric/cast.js.map +1 -0
- package/{cjs/number → esm/numeric}/integer.d.ts +2 -0
- package/esm/numeric/integer.d.ts.map +1 -0
- package/esm/{number → numeric}/integer.js.map +1 -1
- package/esm/numeric/negative.d.ts.map +1 -0
- package/esm/{number → numeric}/negative.js.map +1 -1
- package/esm/numeric/numeric_plus.d.ts +5 -0
- package/esm/numeric/numeric_plus.d.ts.map +1 -0
- package/esm/numeric/numeric_plus.js +2 -0
- package/esm/numeric/numeric_plus.js.map +1 -0
- package/esm/numeric/numeric_type.d.ts.map +1 -0
- package/esm/{number → numeric}/numeric_type.js.map +1 -1
- package/esm/{number → numeric}/positive.d.ts +2 -2
- package/esm/numeric/positive.d.ts.map +1 -0
- package/esm/{number → numeric}/positive.js.map +1 -1
- package/esm/object/ANotB.d.ts +3 -3
- package/esm/object/ANotB.d.ts.map +1 -1
- package/esm/object/Partial.d.ts +6 -0
- package/esm/object/Partial.d.ts.map +1 -1
- package/esm/object/Required.d.ts +4 -0
- package/esm/object/Required.d.ts.map +1 -1
- package/esm/object/index.d.ts +1 -1
- package/esm/object/index.d.ts.map +1 -1
- package/esm/object/object_type.d.ts +1 -1
- package/esm/object/split.d.ts +3 -1
- package/esm/object/split.d.ts.map +1 -1
- package/esm/object/split.js.map +1 -1
- package/esm/predicates/CanAssign.d.ts +35 -0
- package/esm/predicates/CanAssign.d.ts.map +1 -1
- package/esm/predicates/CanAssign.js.map +1 -1
- package/esm/predicates/Extends.d.ts +2 -2
- package/esm/predicates/Extends.d.ts.map +1 -1
- package/esm/predicates/index.d.ts +0 -1
- package/esm/predicates/index.d.ts.map +1 -1
- package/esm/predicates/index.js +0 -1
- package/esm/predicates/index.js.map +1 -1
- package/esm/testing/test_type.d.ts +125 -50
- package/esm/testing/test_type.d.ts.map +1 -1
- package/esm/testing/test_type.js +4 -141
- package/esm/testing/test_type.js.map +1 -1
- package/esm/tuple/create_tuple.d.ts +28 -0
- package/esm/tuple/create_tuple.d.ts.map +1 -0
- package/esm/{array → tuple}/create_tuple.js.map +1 -1
- package/esm/tuple/tuple_plus.d.ts +2 -0
- package/esm/tuple/tuple_plus.d.ts.map +1 -0
- package/esm/tuple/tuple_plus.js +2 -0
- package/esm/tuple/tuple_plus.js.map +1 -0
- package/esm/tuple/tuple_plus.pad_start.d.ts +22 -0
- package/esm/tuple/tuple_plus.pad_start.d.ts.map +1 -0
- package/esm/tuple/tuple_plus.pad_start.js +2 -0
- package/esm/tuple/tuple_plus.pad_start.js.map +1 -0
- package/esm/{predicates/isType.d.ts → type-guard/is_type.d.ts} +5 -3
- package/esm/type-guard/is_type.d.ts.map +1 -0
- package/esm/{predicates/isType.js → type-guard/is_type.js} +8 -2
- package/esm/type-guard/is_type.js.map +1 -0
- package/package.json +1 -1
- package/ts/array/{array.ts → array.at.ts} +10 -15
- package/ts/array/array.concat.ts +12 -0
- package/ts/array/array.entries.ts +24 -0
- package/ts/array/array.find.ts +32 -0
- package/ts/array/array.find_last.ts +27 -0
- package/ts/array/array.reverse.ts +16 -0
- package/ts/array/array.some.ts +53 -0
- package/ts/array/array_index.ts +16 -10
- package/ts/array/array_plus.split_at.ts +47 -0
- package/ts/array/array_plus.ts +9 -1
- package/ts/array/drop.ts +2 -2
- package/ts/array/index.ts +4 -5
- package/ts/array/pad_start.ts +43 -0
- package/ts/array/readme.md +184 -4
- package/ts/assertion/assert_type.ts +6 -0
- package/ts/assertion/readme.md +132 -1
- package/ts/bigint/cast.ts +13 -0
- package/ts/bigint/readme.md +17 -17
- package/ts/equal/equal.ts +53 -3
- package/ts/equal/readme.md +30 -16
- package/ts/functional/Maybe.ts +2 -2
- package/ts/index.ts +22 -24
- package/ts/math/README.md +97 -7
- package/ts/math/abs.ts +18 -0
- package/ts/math/add.ts +14 -0
- package/ts/math/greater_than.ts +12 -0
- package/ts/math/index.ts +7 -6
- package/ts/math/math_plus.to_negative.ts +22 -0
- package/ts/math/math_plus.ts +4 -0
- package/ts/math/max.ts +13 -0
- package/ts/math/multiply.ts +12 -0
- package/ts/math/numeric_struct.ts +658 -0
- package/ts/math/subtract.ts +14 -0
- package/ts/nominal/brand.ts +1 -1
- package/ts/nominal/flavor.ts +1 -1
- package/ts/number/cast.ts +17 -0
- package/ts/number/number_array.ts +14 -14
- package/ts/number/number_plus.ts +6 -6
- package/ts/number/readme.md +0 -108
- package/ts/number/strict_number_type.ts +12 -0
- package/ts/numeric/cast.ts +28 -0
- package/ts/{number → numeric}/integer.ts +2 -0
- package/ts/numeric/numeric_plus.ts +12 -0
- package/ts/{number → numeric}/positive.ts +2 -2
- package/ts/numeric/readme.md +115 -0
- package/ts/object/ANotB.ts +3 -3
- package/ts/object/Partial.ts +5 -0
- package/ts/object/Required.ts +4 -0
- package/ts/object/index.ts +1 -1
- package/ts/object/object_type.ts +1 -1
- package/ts/object/split.ts +3 -1
- package/ts/predicates/CanAssign.ts +46 -0
- package/ts/predicates/Extends.ts +2 -2
- package/ts/predicates/index.ts +0 -1
- package/ts/testing/test_type.ts +131 -88
- package/ts/tuple/create_tuple.ts +42 -0
- package/ts/tuple/tuple_plus.pad_start.ts +42 -0
- package/ts/tuple/tuple_plus.ts +1 -0
- package/ts/{predicates/isType.ts → type-guard/is_type.ts} +11 -3
- package/ts/type-guard/readme.md +37 -0
- package/cjs/array/array.d.ts.map +0 -1
- package/cjs/array/array.js.map +0 -1
- package/cjs/array/create_tuple.d.ts +0 -11
- package/cjs/array/create_tuple.d.ts.map +0 -1
- package/cjs/array/find_first.d.ts +0 -6
- package/cjs/array/find_first.d.ts.map +0 -1
- package/cjs/array/find_first.js.map +0 -1
- package/cjs/array/find_last.d.ts +0 -2
- package/cjs/array/find_last.d.ts.map +0 -1
- package/cjs/array/find_last.js.map +0 -1
- package/cjs/array/pad_left.d.ts +0 -6
- package/cjs/array/pad_left.d.ts.map +0 -1
- package/cjs/array/pad_left.js.map +0 -1
- package/cjs/array/some.d.ts +0 -8
- package/cjs/array/some.d.ts.map +0 -1
- package/cjs/array/some.js.map +0 -1
- package/cjs/math/Abs.d.ts +0 -3
- package/cjs/math/Abs.d.ts.map +0 -1
- package/cjs/math/Abs.js.map +0 -1
- package/cjs/math/Add.d.ts +0 -19
- package/cjs/math/Add.d.ts.map +0 -1
- package/cjs/math/Add.js.map +0 -1
- package/cjs/math/Digit.d.ts +0 -100
- package/cjs/math/Digit.d.ts.map +0 -1
- package/cjs/math/Digit.js +0 -3
- package/cjs/math/Digit.js.map +0 -1
- package/cjs/math/GreaterThan.d.ts +0 -13
- package/cjs/math/GreaterThan.d.ts.map +0 -1
- package/cjs/math/GreaterThan.js +0 -3
- package/cjs/math/GreaterThan.js.map +0 -1
- package/cjs/math/Max.d.ts +0 -4
- package/cjs/math/Max.d.ts.map +0 -1
- package/cjs/math/Max.js.map +0 -1
- package/cjs/math/Subtract.d.ts +0 -19
- package/cjs/math/Subtract.d.ts.map +0 -1
- package/cjs/math/Subtract.js +0 -3
- package/cjs/math/Subtract.js.map +0 -1
- package/cjs/number/integer.d.ts.map +0 -1
- package/cjs/number/negative.d.ts.map +0 -1
- package/cjs/number/numeric_type.d.ts.map +0 -1
- package/cjs/number/positive.d.ts.map +0 -1
- package/cjs/predicates/isType.d.ts.map +0 -1
- package/cjs/predicates/isType.js.map +0 -1
- package/esm/array/array.d.ts.map +0 -1
- package/esm/array/array.js +0 -2
- package/esm/array/array.js.map +0 -1
- package/esm/array/create_tuple.d.ts +0 -11
- package/esm/array/create_tuple.d.ts.map +0 -1
- package/esm/array/find_first.d.ts +0 -6
- package/esm/array/find_first.d.ts.map +0 -1
- package/esm/array/find_first.js +0 -2
- package/esm/array/find_first.js.map +0 -1
- package/esm/array/find_last.d.ts +0 -2
- package/esm/array/find_last.d.ts.map +0 -1
- package/esm/array/find_last.js +0 -2
- package/esm/array/find_last.js.map +0 -1
- package/esm/array/pad_left.d.ts +0 -6
- package/esm/array/pad_left.d.ts.map +0 -1
- package/esm/array/pad_left.js +0 -2
- package/esm/array/pad_left.js.map +0 -1
- package/esm/array/some.d.ts +0 -8
- package/esm/array/some.d.ts.map +0 -1
- package/esm/array/some.js +0 -2
- package/esm/array/some.js.map +0 -1
- package/esm/math/Abs.d.ts +0 -3
- package/esm/math/Abs.d.ts.map +0 -1
- package/esm/math/Abs.js +0 -2
- package/esm/math/Abs.js.map +0 -1
- package/esm/math/Add.d.ts +0 -19
- package/esm/math/Add.d.ts.map +0 -1
- package/esm/math/Add.js +0 -2
- package/esm/math/Add.js.map +0 -1
- package/esm/math/Digit.d.ts +0 -100
- package/esm/math/Digit.d.ts.map +0 -1
- package/esm/math/Digit.js +0 -2
- package/esm/math/Digit.js.map +0 -1
- package/esm/math/GreaterThan.d.ts +0 -13
- package/esm/math/GreaterThan.d.ts.map +0 -1
- package/esm/math/GreaterThan.js +0 -2
- package/esm/math/GreaterThan.js.map +0 -1
- package/esm/math/Max.d.ts +0 -4
- package/esm/math/Max.d.ts.map +0 -1
- package/esm/math/Max.js +0 -2
- package/esm/math/Max.js.map +0 -1
- package/esm/math/Subtract.d.ts +0 -19
- package/esm/math/Subtract.d.ts.map +0 -1
- package/esm/math/Subtract.js +0 -2
- package/esm/math/Subtract.js.map +0 -1
- package/esm/number/integer.d.ts.map +0 -1
- package/esm/number/negative.d.ts.map +0 -1
- package/esm/number/numeric_type.d.ts.map +0 -1
- package/esm/number/positive.d.ts.map +0 -1
- package/esm/predicates/isType.d.ts.map +0 -1
- package/esm/predicates/isType.js.map +0 -1
- package/ts/array/create_tuple.ts +0 -17
- package/ts/array/find_first.ts +0 -16
- package/ts/array/find_last.ts +0 -11
- package/ts/array/pad_left.ts +0 -16
- package/ts/array/some.ts +0 -33
- package/ts/math/Abs.ts +0 -7
- package/ts/math/Add.ts +0 -58
- package/ts/math/Digit.ts +0 -152
- package/ts/math/GreaterThan.ts +0 -55
- package/ts/math/Max.ts +0 -10
- package/ts/math/Subtract.ts +0 -57
- /package/cjs/{number → numeric}/integer.js +0 -0
- /package/cjs/{number → numeric}/negative.d.ts +0 -0
- /package/cjs/{number → numeric}/negative.js +0 -0
- /package/cjs/{number → numeric}/numeric_type.d.ts +0 -0
- /package/cjs/{number → numeric}/numeric_type.js +0 -0
- /package/cjs/{number → numeric}/positive.js +0 -0
- /package/cjs/{array → tuple}/create_tuple.js +0 -0
- /package/esm/{number → numeric}/integer.js +0 -0
- /package/esm/{number → numeric}/negative.d.ts +0 -0
- /package/esm/{number → numeric}/negative.js +0 -0
- /package/esm/{number → numeric}/numeric_type.d.ts +0 -0
- /package/esm/{number → numeric}/numeric_type.js +0 -0
- /package/esm/{number → numeric}/positive.js +0 -0
- /package/esm/{array → tuple}/create_tuple.js +0 -0
- /package/ts/{number → numeric}/negative.ts +0 -0
- /package/ts/{number → numeric}/numeric_type.ts +0 -0
package/esm/math/Subtract.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import type { PadLeft, Some, Tail } from '../array/index.js';
|
|
2
|
-
import type { IsInteger } from '../number/integer.js';
|
|
3
|
-
import type { IsPositive } from '../number/positive.js';
|
|
4
|
-
import type { And } from '../predicates/index.js';
|
|
5
|
-
import type { Digit, DigitArray } from './Digit.js';
|
|
6
|
-
import type { Max } from './Max.js';
|
|
7
|
-
export type Subtract<A extends number, B extends number, Fail = never> = And<And<IsPositive<A>, IsInteger<A>>, And<IsPositive<B>, IsInteger<B>>> extends true ? DigitArray.Shift10<DigitArray.FromNumber<A>> extends infer DA ? DA extends number[] ? DigitArray.FromNumber<B> extends infer DB ? DB extends number[] ? Max<DA['length'], DB['length']> extends infer M ? M extends number ? PadLeft<DA, M, 0> extends infer PDA ? PDA extends number[] ? PadLeft<DB, M, 0> extends infer PDB ? PDB extends number[] ? Subtract.DigitArray<[], PDA, PDB> extends infer Result ? Result extends number[] ? Some<Result, never, 'strict'> extends true ? Fail : DigitArray.ToNumber<Result> : Fail : Fail : Fail : Fail : Fail : Fail : Fail : Fail : Fail : Fail : Fail : Fail : Fail;
|
|
8
|
-
export declare namespace Subtract {
|
|
9
|
-
type DigitArray<R extends number[], A extends number[], B extends number[]> = A['length'] extends 0 ? R : DigitArray<[...R, Digit<A[0], B[0]>], Tail<A>, Tail<B>>;
|
|
10
|
-
type Digit<A extends number, B extends number> = Digit.ToTuple[A] extends [
|
|
11
|
-
...infer U,
|
|
12
|
-
...Digit.ToTuple[B]
|
|
13
|
-
] ? U['length'] : never;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* A - 1
|
|
17
|
-
*/
|
|
18
|
-
export type Decrement<A extends number, Fail = never> = Subtract<A, 1, Fail>;
|
|
19
|
-
//# sourceMappingURL=Subtract.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Subtract.d.ts","sourceRoot":"","sources":["../../ts/math/Subtract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,EAAE,IAAI,GAAG,KAAK,IAAI,GAAG,CAC3E,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAChC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAChC,SAAS,IAAI,GACX,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,EAAE,GAC5D,EAAE,SAAS,MAAM,EAAE,GAClB,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,MAAM,EAAE,GACxC,EAAE,SAAS,MAAM,EAAE,GAClB,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,SAAS,MAAM,CAAC,GAC9C,CAAC,SAAS,MAAM,GACf,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,GAAG,GAClC,GAAG,SAAS,MAAM,EAAE,GACnB,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,GAAG,GAClC,GAAG,SAAS,MAAM,EAAE,GACnB,QAAQ,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,SAAS,MAAM,MAAM,GACrD,MAAM,SAAS,MAAM,EAAE,GACtB,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,IAAI,GACzC,IAAI,GACJ,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,GAC5B,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,GACL,IAAI,CAAA;AAEP,yBAAiB,QAAQ,CAAC;IACzB,KAAY,UAAU,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,CAAC,SAAS,MAAM,EAAE,EAAE,CAAC,SAAS,MAAM,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,GACvG,CAAC,GACD,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAE1D,KAAY,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAChF,GAAG,MAAM,CAAC;QACV,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;KACnB,GACE,CAAC,CAAC,QAAQ,CAAC,GACX,KAAK,CAAA;CACR;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAA"}
|
package/esm/math/Subtract.js
DELETED
package/esm/math/Subtract.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Subtract.js","sourceRoot":"","sources":["../../ts/math/Subtract.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"integer.d.ts","sourceRoot":"","sources":["../../ts/number/integer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAC5D,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CACzE,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;;GAUG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE1E;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"negative.d.ts","sourceRoot":"","sources":["../../ts/number/negative.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAE7C;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,KAAK,CACtD,CAAC,EACD,IAAI,GAAG,IAAI,EACX,OAAO,CACN,CAAC,EACD,IAAI,EACJ;IAAC,MAAM;IAAE,CAAC;CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,GAC5B,IAAI,GACJ,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,GAC/B,IAAI,GACJ,CAAC,SAAS,IAAI,GACd,IAAI,GACJ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,GAC7B,GAAG,CAAC,EAAE,SAAS,IAAI,MAAM,EAAE,GAC1B,IAAI,GACJ,IAAI,GACL,IAAI,CACP,CACD,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,KAAK,CACzD,CAAC,EACD,IAAI,GAAG,IAAI,EACX,OAAO,CACN,CAAC,EACD,IAAI,EACJ;IAAC,MAAM;IAAE,CAAC;CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,GAC5B,IAAI,GACJ,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,GAC/B,IAAI,GACJ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,GAC7B,GAAG,CAAC,EAAE,SAAS,IAAI,MAAM,EAAE,GAC1B,IAAI,GACJ,IAAI,GACL,IAAI,CACP,CACD,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"numeric_type.d.ts","sourceRoot":"","sources":["../../ts/number/numeric_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,GAAG,MAAM,CAAA;AAErC;;GAEG;AACH,MAAM,MAAM,IAAI,GAAG,CAAC,GAAG,EAAE,CAAA;AAEzB;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAA;AAE/G;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"positive.d.ts","sourceRoot":"","sources":["../../ts/number/positive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC;;;;;;;;;;GAUG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,KAAK,CACtD,CAAC,EACD,IAAI,GAAG,IAAI,EACX,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,IAAI,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAChG,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isType.d.ts","sourceRoot":"","sources":["../../ts/predicates/isType.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAE9C;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,IAAI,CAAC,CAAA;AACnD;;GAEG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO,IAAI,CAAC,CAAA;yBAAvE,MAAM;;;;;;AAatB;;GAEG;AACH,iBAAS,OAAO,CAAC,CAAC,SAAS,KAAK,KAAK,OAAO,CAAA;AAC5C;;GAEG;AACH,iBAAS,OAAO,CAAC,OAAO,EAAE,KAAK,GAAG,OAAO,IAAI,KAAK,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"isType.js","sourceRoot":"","sources":["../../ts/predicates/isType.ts"],"names":[],"mappings":"AAUA,MAAM,UAAU,MAAM,CAAC,OAAgB,EAAE,SAAmC;IAC3E,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AAC/C,CAAC;AAED,MAAM,CAAC,CAAC,GAAG,UAA0B,OAAW;IAC/C,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,CAAA;AACjD,CAAC,CAAA;AAED,MAAM,CAAC,CAAC,GAAG,UAA2B,OAAW;IAChD,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,CAAA;AAClD,CAAC,CAAA;AAUD,SAAS,OAAO,CAAC,OAAiB;IACjC,OAAO,IAAI,CAAA;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,GAAG,OAAO,CAAA;AAEtB;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,GAAG,cAA0C,CAAC,CAAA"}
|
package/ts/array/create_tuple.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { DigitArray } from '../math/index.js'
|
|
2
|
-
import type { IsInteger } from '../number/integer.js'
|
|
3
|
-
import type { IsPositive } from '../number/positive.js'
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Creates `Tuple<T>` with `L` number of elements.
|
|
7
|
-
* @note Other cool implementations by @lazytype, @jcalz:
|
|
8
|
-
* @see https://github.com/microsoft/TypeScript/issues/26223#issuecomment-674514787
|
|
9
|
-
* @see https://github.com/microsoft/TypeScript/issues/47874#issuecomment-1039157322
|
|
10
|
-
*/
|
|
11
|
-
export type CreateTuple<L extends number, T = unknown, Fail = never> = number extends L
|
|
12
|
-
? T[]
|
|
13
|
-
: IsPositive<L> extends true
|
|
14
|
-
? IsInteger<L> extends true
|
|
15
|
-
? DigitArray.ToTuple<[], DigitArray.FromNumber<L>, T>
|
|
16
|
-
: Fail
|
|
17
|
-
: Fail
|
package/ts/array/find_first.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export type FindFirst<A extends Array<any>, Criteria> = number extends A['length']
|
|
2
|
-
? A[0] extends Criteria
|
|
3
|
-
? A[0]
|
|
4
|
-
: never
|
|
5
|
-
: A['length'] extends 0
|
|
6
|
-
? never
|
|
7
|
-
: A extends [any, ...infer Tail]
|
|
8
|
-
? A[0] extends Criteria
|
|
9
|
-
? A[0]
|
|
10
|
-
: FindFirst<Tail, Criteria>
|
|
11
|
-
: never
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* @deprecated use FindFirst
|
|
15
|
-
*/
|
|
16
|
-
export type First<A extends any[], Criteria> = FindFirst<A, Criteria>
|
package/ts/array/find_last.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export type FindLast<A extends Array<any>, Criteria> = number extends A['length']
|
|
2
|
-
? A[0] extends Criteria
|
|
3
|
-
? A[0]
|
|
4
|
-
: never
|
|
5
|
-
: A['length'] extends 0
|
|
6
|
-
? never
|
|
7
|
-
: A extends [...infer Heads, infer Last]
|
|
8
|
-
? Last extends Criteria
|
|
9
|
-
? Last
|
|
10
|
-
: FindLast<Heads, Criteria>
|
|
11
|
-
: never
|
package/ts/array/pad_left.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { IsAny } from '../any/any_type.js'
|
|
2
|
-
import type { Equal } from '../equal/equal.js'
|
|
3
|
-
import type { CreateTuple } from './create_tuple.js'
|
|
4
|
-
import type { UnionOfValues } from './union_of_values.js'
|
|
5
|
-
|
|
6
|
-
export type PadLeft<A extends any[], Total extends number, PadWith = any> = number extends A['length']
|
|
7
|
-
? IsAny<UnionOfValues<A>> extends true
|
|
8
|
-
? A
|
|
9
|
-
: Equal<UnionOfValues<A>, PadWith> extends true
|
|
10
|
-
? A
|
|
11
|
-
: PadLeft<[...CreateTuple<Total, PadWith>, ...A], Total, PadWith>
|
|
12
|
-
: CreateTuple<Total, any> extends [...infer U, ...A]
|
|
13
|
-
? number extends U['length']
|
|
14
|
-
? A
|
|
15
|
-
: [...CreateTuple<U['length'], PadWith>, ...A]
|
|
16
|
-
: A
|
package/ts/array/some.ts
DELETED
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { Equal } from '../equal/equal.js'
|
|
2
|
-
import type { Tail } from './tail.js'
|
|
3
|
-
import type { UnionOfValues } from './union_of_values.js'
|
|
4
|
-
|
|
5
|
-
export type Some<
|
|
6
|
-
A extends any[],
|
|
7
|
-
Criteria,
|
|
8
|
-
Mode extends 'strict' | 'loose' = 'loose',
|
|
9
|
-
Then = true,
|
|
10
|
-
Else = false
|
|
11
|
-
> = Mode extends 'strict'
|
|
12
|
-
? Some.Strict<A, Criteria, Then, Else>
|
|
13
|
-
: number extends A['length']
|
|
14
|
-
? UnionOfValues<A> extends Criteria
|
|
15
|
-
? Then
|
|
16
|
-
: Else
|
|
17
|
-
: A['length'] extends 0
|
|
18
|
-
? Else
|
|
19
|
-
: A[0] extends Criteria
|
|
20
|
-
? Then
|
|
21
|
-
: Some<Tail<A>, Criteria, 'loose', Then, Else>
|
|
22
|
-
|
|
23
|
-
export namespace Some {
|
|
24
|
-
export type Strict<A extends any[], Criteria, Then, Else> = number extends A['length']
|
|
25
|
-
? Equal<UnionOfValues<A>, Criteria> extends true
|
|
26
|
-
? Then
|
|
27
|
-
: Else
|
|
28
|
-
: A['length'] extends 0
|
|
29
|
-
? Else
|
|
30
|
-
: Equal<A[0], Criteria> extends true
|
|
31
|
-
? Then
|
|
32
|
-
: Strict<Tail<A>, Criteria, Then, Else>
|
|
33
|
-
}
|
package/ts/math/Abs.ts
DELETED
package/ts/math/Add.ts
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import type { PadLeft } from '../array/index.js'
|
|
2
|
-
import type { IsInteger } from '../number/integer.js'
|
|
3
|
-
import type { IsPositive } from '../number/positive.js'
|
|
4
|
-
import type { And } from '../predicates/index.js'
|
|
5
|
-
import type { Digit, DigitArray } from './Digit.js'
|
|
6
|
-
import type { Max } from './Max.js'
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* Add two number literals.
|
|
10
|
-
*/
|
|
11
|
-
export type Add<A extends number, B extends number, Fail = never> = And<
|
|
12
|
-
And<IsPositive<A>, IsInteger<A>>,
|
|
13
|
-
And<IsPositive<B>, IsInteger<B>>
|
|
14
|
-
> extends false
|
|
15
|
-
? Fail
|
|
16
|
-
: DigitArray.FromNumber<A> extends infer DA
|
|
17
|
-
? DA extends number[]
|
|
18
|
-
? DigitArray.FromNumber<B> extends infer DB
|
|
19
|
-
? DB extends number[]
|
|
20
|
-
? Max<DA['length'], DB['length']> extends infer M
|
|
21
|
-
? M extends number
|
|
22
|
-
? PadLeft<DA, M, 0> extends infer PDA
|
|
23
|
-
? PDA extends number[]
|
|
24
|
-
? PadLeft<DB, M, 0> extends infer PDB
|
|
25
|
-
? PDB extends number[]
|
|
26
|
-
? DigitArray.ToNumber<Add.DigitArray<PDA, PDB>>
|
|
27
|
-
: Fail
|
|
28
|
-
: Fail
|
|
29
|
-
: Fail
|
|
30
|
-
: Fail
|
|
31
|
-
: Fail
|
|
32
|
-
: Fail
|
|
33
|
-
: Fail
|
|
34
|
-
: Fail
|
|
35
|
-
: Fail
|
|
36
|
-
: Fail
|
|
37
|
-
|
|
38
|
-
export namespace Add {
|
|
39
|
-
export type DigitArray<A extends number[], B extends number[]> = A extends [any, ...infer ATail]
|
|
40
|
-
? ATail extends number[]
|
|
41
|
-
? B extends [any, ...infer BTail]
|
|
42
|
-
? BTail extends number[]
|
|
43
|
-
? [Digit<A[0], B[0]>, ...DigitArray<ATail, BTail>]
|
|
44
|
-
: []
|
|
45
|
-
: [A[0], ...DigitArray<[], ATail>]
|
|
46
|
-
: []
|
|
47
|
-
: B extends [any, ...infer BTail]
|
|
48
|
-
? BTail extends number[]
|
|
49
|
-
? [B[0], ...DigitArray<[], BTail>]
|
|
50
|
-
: []
|
|
51
|
-
: []
|
|
52
|
-
|
|
53
|
-
export type Digit<A extends number, B extends number> = [...Digit.ToTuple[A], ...Digit.ToTuple[B]]['length']
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Increment `A` by 1.
|
|
57
|
-
*/
|
|
58
|
-
export type Increment<A extends number, Fail = never> = Add<A, 1, Fail>
|
package/ts/math/Digit.ts
DELETED
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
import type { Tail } from '../array/tail.js'
|
|
2
|
-
import type { IsInteger } from '../number/integer.js'
|
|
3
|
-
import type { IsPositive } from '../number/positive.js'
|
|
4
|
-
import type { And } from '../predicates/index.js'
|
|
5
|
-
|
|
6
|
-
export namespace Digit {
|
|
7
|
-
export type ToTuple<T = 1> = {
|
|
8
|
-
[k in number]: any[]
|
|
9
|
-
} & {
|
|
10
|
-
0: []
|
|
11
|
-
1: [T]
|
|
12
|
-
2: [T, T]
|
|
13
|
-
3: [T, T, T]
|
|
14
|
-
4: [T, T, T, T]
|
|
15
|
-
5: [T, T, T, T, T]
|
|
16
|
-
6: [T, T, T, T, T, T]
|
|
17
|
-
7: [T, T, T, T, T, T, T]
|
|
18
|
-
8: [T, T, T, T, T, T, T, T]
|
|
19
|
-
9: [T, T, T, T, T, T, T, T, T]
|
|
20
|
-
10: [T, T, T, T, T, T, T, T, T, T]
|
|
21
|
-
11: [T, T, T, T, T, T, T, T, T, T, T]
|
|
22
|
-
12: [T, T, T, T, T, T, T, T, T, T, T, T]
|
|
23
|
-
13: [T, T, T, T, T, T, T, T, T, T, T, T, T]
|
|
24
|
-
14: [T, T, T, T, T, T, T, T, T, T, T, T, T, T]
|
|
25
|
-
15: [T, T, T, T, T, T, T, T, T, T, T, T, T, T, T]
|
|
26
|
-
16: [T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T]
|
|
27
|
-
17: [T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T]
|
|
28
|
-
18: [T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T]
|
|
29
|
-
19: [T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T, T]
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* A > B for [1-9]
|
|
34
|
-
*/
|
|
35
|
-
export type GreaterThan<A extends number, B extends number> = B extends GreaterThanMap[A] ? true : false
|
|
36
|
-
|
|
37
|
-
export type GreaterThanMap = { [k in number]: number } & {
|
|
38
|
-
0: never
|
|
39
|
-
1: 0
|
|
40
|
-
2: 0 | 1
|
|
41
|
-
3: 0 | 1 | 2
|
|
42
|
-
4: 0 | 1 | 2 | 3
|
|
43
|
-
5: 0 | 1 | 2 | 3 | 4
|
|
44
|
-
6: 0 | 1 | 2 | 3 | 4 | 5
|
|
45
|
-
7: 0 | 1 | 2 | 3 | 4 | 5 | 6
|
|
46
|
-
8: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
|
|
47
|
-
9: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export namespace DigitArray {
|
|
52
|
-
export type ToNumber<C extends number[]> = ToTuple<[], C>['length']
|
|
53
|
-
|
|
54
|
-
export type ToTuple<R extends any[], S extends number[], X = any> = S['length'] extends 0
|
|
55
|
-
? R
|
|
56
|
-
: S['length'] extends 1
|
|
57
|
-
? [...R, ...Digit.ToTuple<X>[S[0]]]
|
|
58
|
-
: S extends [any, ...infer T]
|
|
59
|
-
? T extends any[]
|
|
60
|
-
? ToTuple<Multi10<[...R, ...Digit.ToTuple<X>[S[0]]]>, T>
|
|
61
|
-
: never
|
|
62
|
-
: never
|
|
63
|
-
|
|
64
|
-
export type Multi10<C extends any[]> = [...C, ...C, ...C, ...C, ...C, ...C, ...C, ...C, ...C, ...C]
|
|
65
|
-
|
|
66
|
-
export type FromNumber<N extends number> = FromString<NumberToString<N>>
|
|
67
|
-
export type FromNumberAbs<N extends number> = FromString<TrimMinusSign<`${N}`>>
|
|
68
|
-
export type TrimMinusSign<N extends string> = N extends `-${infer rest}` ? rest : N
|
|
69
|
-
|
|
70
|
-
export type NumberToString<N extends number> = And<IsPositive<N>, IsInteger<N>> extends true ? `${N}` : never
|
|
71
|
-
|
|
72
|
-
export type FromString<S extends string> = S extends `1${infer L}`
|
|
73
|
-
? [1, ...FromString<L>]
|
|
74
|
-
: S extends `2${infer L}`
|
|
75
|
-
? [2, ...FromString<L>]
|
|
76
|
-
: S extends `3${infer L}`
|
|
77
|
-
? [3, ...FromString<L>]
|
|
78
|
-
: S extends `4${infer L}`
|
|
79
|
-
? [4, ...FromString<L>]
|
|
80
|
-
: S extends `5${infer L}`
|
|
81
|
-
? [5, ...FromString<L>]
|
|
82
|
-
: S extends `6${infer L}`
|
|
83
|
-
? [6, ...FromString<L>]
|
|
84
|
-
: S extends `7${infer L}`
|
|
85
|
-
? [7, ...FromString<L>]
|
|
86
|
-
: S extends `8${infer L}`
|
|
87
|
-
? [8, ...FromString<L>]
|
|
88
|
-
: S extends `9${infer L}`
|
|
89
|
-
? [9, ...FromString<L>]
|
|
90
|
-
: S extends `0${infer L}`
|
|
91
|
-
? [0, ...FromString<L>]
|
|
92
|
-
: []
|
|
93
|
-
|
|
94
|
-
export type Shift10<DA extends number[]> = TrimLeadingZero<Shift10State<[], DA>>
|
|
95
|
-
export type Shift10State<R extends number[], DA extends number[]> = DA['length'] extends 0
|
|
96
|
-
? R
|
|
97
|
-
: DA['length'] extends 1
|
|
98
|
-
? [...R, ...DA]
|
|
99
|
-
: DA extends [any, ...infer T]
|
|
100
|
-
? T extends number[]
|
|
101
|
-
? DA[0] extends 0
|
|
102
|
-
? Shift10State<[...R, DA[0]], T>
|
|
103
|
-
: T extends [any, ...infer Y]
|
|
104
|
-
? Y extends number[]
|
|
105
|
-
? Shift10State<[...R, MinusOne[DA[0]]], [Plus10[T[0]], ...Y]>
|
|
106
|
-
: []
|
|
107
|
-
: []
|
|
108
|
-
: []
|
|
109
|
-
: []
|
|
110
|
-
|
|
111
|
-
export type TrimLeadingZero<A extends number[]> = A['length'] extends 0
|
|
112
|
-
? A
|
|
113
|
-
: A[0] extends 0
|
|
114
|
-
? TrimLeadingZero<Tail<A>>
|
|
115
|
-
: A
|
|
116
|
-
|
|
117
|
-
export type MinusOne = { [k in number]: number } & {
|
|
118
|
-
0: 0
|
|
119
|
-
1: 0
|
|
120
|
-
2: 1
|
|
121
|
-
3: 2
|
|
122
|
-
4: 3
|
|
123
|
-
5: 4
|
|
124
|
-
6: 5
|
|
125
|
-
7: 6
|
|
126
|
-
8: 7
|
|
127
|
-
9: 8
|
|
128
|
-
10: 9
|
|
129
|
-
11: 10
|
|
130
|
-
12: 11
|
|
131
|
-
13: 12
|
|
132
|
-
14: 13
|
|
133
|
-
15: 14
|
|
134
|
-
16: 15
|
|
135
|
-
17: 16
|
|
136
|
-
18: 17
|
|
137
|
-
19: 18
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
export type Plus10 = { [k in number]: number } & {
|
|
141
|
-
0: 10
|
|
142
|
-
1: 11
|
|
143
|
-
2: 12
|
|
144
|
-
3: 13
|
|
145
|
-
4: 14
|
|
146
|
-
5: 15
|
|
147
|
-
6: 16
|
|
148
|
-
7: 17
|
|
149
|
-
8: 18
|
|
150
|
-
9: 19
|
|
151
|
-
}
|
|
152
|
-
}
|
package/ts/math/GreaterThan.ts
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import type { Head, PadLeft, Tail } from '../array/index.js'
|
|
2
|
-
import type { Equal } from '../equal/equal.js'
|
|
3
|
-
import type { IsInteger } from '../number/integer.js'
|
|
4
|
-
import type { IsPositive } from '../number/positive.js'
|
|
5
|
-
import type { And, Or, Xor } from '../predicates/index.js'
|
|
6
|
-
import type { Digit, DigitArray } from './Digit.js'
|
|
7
|
-
import type { Max } from './Max.js'
|
|
8
|
-
|
|
9
|
-
export type GreaterThan<A extends number, B extends number, Fail = never> = And<
|
|
10
|
-
IsInteger<A>,
|
|
11
|
-
IsInteger<B>
|
|
12
|
-
> extends false
|
|
13
|
-
? Fail
|
|
14
|
-
: number extends A
|
|
15
|
-
? Fail
|
|
16
|
-
: number extends B
|
|
17
|
-
? Fail
|
|
18
|
-
: Equal<A, B> extends true
|
|
19
|
-
? false
|
|
20
|
-
: Xor<IsPositive<A>, IsPositive<B>> extends true
|
|
21
|
-
? IsPositive<A>
|
|
22
|
-
: Or<IsPositive<A>, IsPositive<B>> extends false
|
|
23
|
-
? GreaterThan.ForWholeNumber<B, A>
|
|
24
|
-
: GreaterThan.ForWholeNumber<A, B>
|
|
25
|
-
|
|
26
|
-
export namespace GreaterThan {
|
|
27
|
-
export type ForWholeNumber<
|
|
28
|
-
A extends number,
|
|
29
|
-
B extends number
|
|
30
|
-
> = DigitArray.FromNumberAbs<A> extends infer DA
|
|
31
|
-
? DA extends number[]
|
|
32
|
-
? DigitArray.FromNumberAbs<B> extends infer DB
|
|
33
|
-
? DB extends number[]
|
|
34
|
-
? Max<DA['length'], DB['length']> extends infer M
|
|
35
|
-
? M extends number
|
|
36
|
-
? PadLeft<DA, M, 0> extends infer PDA
|
|
37
|
-
? PDA extends number[]
|
|
38
|
-
? PadLeft<DB, M, 0> extends infer PDB
|
|
39
|
-
? PDB extends number[]
|
|
40
|
-
? ForDigitArray<PDA, PDB>
|
|
41
|
-
: never
|
|
42
|
-
: never
|
|
43
|
-
: never
|
|
44
|
-
: never
|
|
45
|
-
: never
|
|
46
|
-
: never
|
|
47
|
-
: never
|
|
48
|
-
: never
|
|
49
|
-
: never
|
|
50
|
-
: never
|
|
51
|
-
|
|
52
|
-
export type ForDigitArray<DA extends number[], DB extends number[]> = Equal<Head<DA>, Head<DB>> extends true
|
|
53
|
-
? ForDigitArray<Tail<DA>, Tail<DB>>
|
|
54
|
-
: Digit.GreaterThan<Head<DA>, Head<DB>>
|
|
55
|
-
}
|
package/ts/math/Max.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Equal } from '../equal/equal.js'
|
|
2
|
-
import type { GreaterThan } from './GreaterThan.js'
|
|
3
|
-
|
|
4
|
-
export type Max<A extends number, B extends number, Fail = never> = GreaterThan<A, B> extends infer Result
|
|
5
|
-
? Equal<Result, never> extends true
|
|
6
|
-
? Fail
|
|
7
|
-
: Result extends true
|
|
8
|
-
? A
|
|
9
|
-
: B
|
|
10
|
-
: never
|
package/ts/math/Subtract.ts
DELETED
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import type { PadLeft, Some, Tail } from '../array/index.js'
|
|
2
|
-
import type { IsInteger } from '../number/integer.js'
|
|
3
|
-
import type { IsPositive } from '../number/positive.js'
|
|
4
|
-
import type { And } from '../predicates/index.js'
|
|
5
|
-
import type { Digit, DigitArray } from './Digit.js'
|
|
6
|
-
import type { Max } from './Max.js'
|
|
7
|
-
|
|
8
|
-
export type Subtract<A extends number, B extends number, Fail = never> = And<
|
|
9
|
-
And<IsPositive<A>, IsInteger<A>>,
|
|
10
|
-
And<IsPositive<B>, IsInteger<B>>
|
|
11
|
-
> extends true
|
|
12
|
-
? DigitArray.Shift10<DigitArray.FromNumber<A>> extends infer DA
|
|
13
|
-
? DA extends number[]
|
|
14
|
-
? DigitArray.FromNumber<B> extends infer DB
|
|
15
|
-
? DB extends number[]
|
|
16
|
-
? Max<DA['length'], DB['length']> extends infer M
|
|
17
|
-
? M extends number
|
|
18
|
-
? PadLeft<DA, M, 0> extends infer PDA
|
|
19
|
-
? PDA extends number[]
|
|
20
|
-
? PadLeft<DB, M, 0> extends infer PDB
|
|
21
|
-
? PDB extends number[]
|
|
22
|
-
? Subtract.DigitArray<[], PDA, PDB> extends infer Result
|
|
23
|
-
? Result extends number[]
|
|
24
|
-
? Some<Result, never, 'strict'> extends true
|
|
25
|
-
? Fail
|
|
26
|
-
: DigitArray.ToNumber<Result>
|
|
27
|
-
: Fail
|
|
28
|
-
: Fail
|
|
29
|
-
: Fail
|
|
30
|
-
: Fail
|
|
31
|
-
: Fail
|
|
32
|
-
: Fail
|
|
33
|
-
: Fail
|
|
34
|
-
: Fail
|
|
35
|
-
: Fail
|
|
36
|
-
: Fail
|
|
37
|
-
: Fail
|
|
38
|
-
: Fail
|
|
39
|
-
: Fail
|
|
40
|
-
|
|
41
|
-
export namespace Subtract {
|
|
42
|
-
export type DigitArray<R extends number[], A extends number[], B extends number[]> = A['length'] extends 0
|
|
43
|
-
? R
|
|
44
|
-
: DigitArray<[...R, Digit<A[0], B[0]>], Tail<A>, Tail<B>>
|
|
45
|
-
|
|
46
|
-
export type Digit<A extends number, B extends number> = Digit.ToTuple[A] extends [
|
|
47
|
-
...infer U,
|
|
48
|
-
...Digit.ToTuple[B]
|
|
49
|
-
]
|
|
50
|
-
? U['length']
|
|
51
|
-
: never
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* A - 1
|
|
56
|
-
*/
|
|
57
|
-
export type Decrement<A extends number, Fail = never> = Subtract<A, 1, Fail>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|