type-plus 7.6.0 → 8.0.0-beta.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/esm/array/array.at.d.ts +2 -2
- package/esm/array/array.at.d.ts.map +1 -1
- package/esm/array/array.entries.d.ts +2 -2
- package/esm/array/array.entries.d.ts.map +1 -1
- package/esm/array/array.find_last.d.ts +1 -1
- package/esm/array/array.find_last.d.ts.map +1 -1
- package/esm/array/array.reverse.d.ts +5 -1
- package/esm/array/array.reverse.d.ts.map +1 -1
- package/esm/array/array.some.d.ts +7 -7
- package/esm/array/array.some.d.ts.map +1 -1
- package/esm/array/array_plus.common_prop_keys.d.ts +2 -2
- package/esm/array/array_plus.common_prop_keys.d.ts.map +1 -1
- package/esm/array/array_plus.concat.d.ts +1 -1
- package/esm/array/array_plus.concat.d.ts.map +1 -1
- package/esm/array/array_plus.d.ts +3 -1
- package/esm/array/array_plus.d.ts.map +1 -1
- package/esm/array/array_plus.drop_match.d.ts +3 -0
- package/esm/array/array_plus.drop_match.d.ts.map +1 -1
- package/esm/array/array_plus.element_match.d.ts +11 -11
- package/esm/array/array_plus.element_match.d.ts.map +1 -1
- package/esm/array/array_plus.filter.d.ts +24 -1
- package/esm/array/array_plus.filter.d.ts.map +1 -1
- package/esm/array/array_plus.filter.js +1 -0
- package/esm/array/array_plus.filter.js.map +1 -1
- package/esm/array/array_plus.find.d.ts +10 -10
- package/esm/array/array_plus.find.d.ts.map +1 -1
- package/esm/array/array_plus.index_at.d.ts +28 -0
- package/esm/array/array_plus.index_at.d.ts.map +1 -0
- package/esm/array/array_plus.index_at.js +2 -0
- package/esm/array/array_plus.index_at.js.map +1 -0
- package/esm/array/array_plus.is_index_out_of_bound.d.ts +18 -0
- package/esm/array/array_plus.is_index_out_of_bound.d.ts.map +1 -0
- package/esm/array/array_plus.is_index_out_of_bound.js +2 -0
- package/esm/array/array_plus.is_index_out_of_bound.js.map +1 -0
- package/esm/array/array_plus.is_readonly.d.ts +30 -0
- package/esm/array/array_plus.is_readonly.d.ts.map +1 -0
- package/esm/array/array_plus.is_readonly.js +2 -0
- package/esm/array/array_plus.is_readonly.js.map +1 -0
- package/esm/array/array_plus.pad_start.d.ts +1 -1
- package/esm/array/array_plus.pad_start.d.ts.map +1 -1
- package/esm/array/array_plus.split_at.d.ts +5 -5
- package/esm/array/array_plus.split_at.d.ts.map +1 -1
- package/esm/array/array_type.d.ts +2 -2
- package/esm/array/array_type.d.ts.map +1 -1
- package/esm/array/filter.d.ts +2 -2
- package/esm/array/filter.d.ts.map +1 -1
- package/esm/array/find_first.d.ts +6 -6
- package/esm/array/find_first.d.ts.map +1 -1
- package/esm/array/head.d.ts +2 -2
- package/esm/array/head.d.ts.map +1 -1
- package/esm/array/intersect_of_props.d.ts +1 -1
- package/esm/array/intersect_of_props.d.ts.map +1 -1
- package/esm/array/last.d.ts +2 -2
- package/esm/array/last.d.ts.map +1 -1
- package/esm/array/loose_array_type.d.ts +62 -0
- package/esm/array/loose_array_type.d.ts.map +1 -0
- package/esm/array/loose_array_type.js +2 -0
- package/esm/array/loose_array_type.js.map +1 -0
- package/esm/array/pad_start.d.ts +1 -1
- package/esm/array/pad_start.d.ts.map +1 -1
- package/esm/array/strict_array_type.d.ts +66 -0
- package/esm/array/strict_array_type.d.ts.map +1 -0
- package/esm/array/strict_array_type.js +2 -0
- package/esm/array/strict_array_type.js.map +1 -0
- package/esm/array/union_of_props.d.ts +2 -2
- package/esm/array/union_of_props.d.ts.map +1 -1
- package/esm/array/union_of_values.d.ts +2 -2
- package/esm/array/union_of_values.d.ts.map +1 -1
- package/esm/equal/equal.d.ts +1 -1
- package/esm/equal/equal.d.ts.map +1 -1
- package/esm/equal/identity_equal.d.ts +6 -0
- package/esm/equal/identity_equal.d.ts.map +1 -0
- package/esm/equal/identity_equal.js +2 -0
- package/esm/equal/identity_equal.js.map +1 -0
- package/esm/index.d.ts +7 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -0
- package/esm/index.js.map +1 -1
- package/esm/math/numeric_struct.d.ts.map +1 -1
- package/esm/mix_types/box.d.ts +35 -0
- package/esm/mix_types/box.d.ts.map +1 -0
- package/esm/mix_types/box.js +2 -0
- package/esm/mix_types/box.js.map +1 -0
- package/esm/mix_types/merge.d.ts +38 -0
- package/esm/mix_types/merge.d.ts.map +1 -0
- package/esm/{merge.js → mix_types/merge.js} +1 -1
- package/esm/mix_types/merge.js.map +1 -0
- package/esm/never/never_type.d.ts +2 -2
- package/esm/never/never_type.d.ts.map +1 -1
- package/esm/object/ANotB.d.ts +1 -1
- package/esm/object/ANotB.d.ts.map +1 -1
- package/esm/object/IsDisjoint.d.ts +1 -1
- package/esm/object/IsDisjoint.d.ts.map +1 -1
- package/esm/object/KeysWithDiffType.d.ts +1 -1
- package/esm/object/KeysWithDiffType.d.ts.map +1 -1
- package/esm/object/KnownKeys.d.ts.map +1 -1
- package/esm/object/RecursiveIntersect.d.ts +2 -2
- package/esm/object/RecursiveIntersect.d.ts.map +1 -1
- package/esm/object/RecursiveRequired.d.ts +1 -1
- package/esm/object/RecursiveRequired.d.ts.map +1 -1
- package/{cjs/object/AnyRecord.d.ts → esm/object/any_record.d.ts} +1 -1
- package/esm/object/any_record.d.ts.map +1 -0
- package/esm/object/any_record.js +2 -0
- package/esm/object/any_record.js.map +1 -0
- package/esm/object/facade.d.ts +1 -1
- package/esm/object/facade.d.ts.map +1 -1
- package/esm/object/hasKey.d.ts +1 -1
- package/esm/object/hasKey.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/is_strict_object.d.ts +10 -0
- package/esm/object/is_strict_object.d.ts.map +1 -0
- package/esm/object/is_strict_object.js +2 -0
- package/esm/object/is_strict_object.js.map +1 -0
- package/esm/object/left_join.d.ts +1 -1
- package/esm/object/left_join.d.ts.map +1 -1
- package/esm/object/mapProperties.d.ts +1 -1
- package/esm/object/mapProperties.d.ts.map +1 -1
- package/esm/object/merge.d.ts +59 -0
- package/esm/object/merge.d.ts.map +1 -0
- package/esm/object/merge.js +2 -0
- package/esm/object/merge.js.map +1 -0
- package/esm/object/object_plus.d.ts +2 -0
- package/esm/object/object_plus.d.ts.map +1 -0
- package/esm/object/object_plus.js +2 -0
- package/esm/object/object_plus.js.map +1 -0
- package/esm/object/omit.d.ts +2 -2
- package/esm/object/omit.d.ts.map +1 -1
- package/esm/object/omit.js.map +1 -1
- package/esm/object/optional_key.d.ts +1 -1
- package/esm/object/optional_key.d.ts.map +1 -1
- package/esm/object/pick.d.ts +1 -1
- package/esm/object/pick.d.ts.map +1 -1
- package/esm/object/recursive_partial.d.ts +1 -1
- package/esm/object/recursive_partial.d.ts.map +1 -1
- package/esm/object/replaceProperty.d.ts +1 -1
- package/esm/object/replaceProperty.d.ts.map +1 -1
- package/esm/object/split.d.ts +1 -1
- package/esm/object/split.d.ts.map +1 -1
- package/esm/tuple/common_prop_keys.d.ts +1 -1
- package/esm/tuple/drop.d.ts +8 -8
- package/esm/tuple/drop.d.ts.map +1 -1
- package/esm/tuple/tail.d.ts +1 -1
- package/esm/tuple/tail.d.ts.map +1 -1
- package/esm/tuple/tuple_plus.common_prop_keys.d.ts +2 -2
- package/esm/tuple/tuple_plus.common_prop_keys.d.ts.map +1 -1
- package/esm/tuple/tuple_plus.filter.d.ts +1 -1
- package/esm/tuple/tuple_plus.filter.d.ts.map +1 -1
- package/esm/tuple/tuple_plus.find.d.ts +14 -14
- package/esm/tuple/tuple_plus.find.d.ts.map +1 -1
- package/esm/tuple/tuple_plus.pad_start.d.ts +3 -3
- package/esm/tuple/tuple_plus.pad_start.d.ts.map +1 -1
- package/esm/tuple/tuple_type.d.ts +4 -4
- package/esm/tuple/tuple_type.d.ts.map +1 -1
- package/esm/type_plus/cases.d.ts +13 -0
- package/esm/type_plus/cases.d.ts.map +1 -0
- package/esm/type_plus/cases.js +6 -0
- package/esm/type_plus/cases.js.map +1 -0
- package/esm/utils/options.d.ts +27 -9
- package/esm/utils/options.d.ts.map +1 -1
- package/package.json +5 -15
- package/{README.md → readme.md} +36 -17
- package/ts/array/array.at.ts +2 -2
- package/ts/array/array.entries.ts +6 -6
- package/ts/array/array.find_last.ts +7 -7
- package/ts/array/array.reverse.ts +12 -3
- package/ts/array/array.some.ts +13 -13
- package/ts/array/array_plus.common_prop_keys.ts +4 -4
- package/ts/array/array_plus.concat.ts +1 -1
- package/ts/array/array_plus.drop_match.ts +3 -0
- package/ts/array/array_plus.element_match.ts +16 -16
- package/ts/array/array_plus.filter.ts +49 -5
- package/ts/array/array_plus.find.ts +13 -13
- package/ts/array/{array_index.ts → array_plus.index_at.ts} +5 -19
- package/ts/array/array_plus.is_index_out_of_bound.ts +22 -0
- package/ts/array/array_plus.is_readonly.ts +46 -0
- package/ts/array/array_plus.pad_start.ts +1 -1
- package/ts/array/array_plus.split_at.ts +19 -19
- package/ts/array/array_plus.ts +3 -1
- package/ts/array/array_type.ts +5 -1
- package/ts/array/filter.ts +2 -2
- package/ts/array/find_first.ts +6 -6
- package/ts/array/head.ts +3 -3
- package/ts/array/intersect_of_props.ts +1 -1
- package/ts/array/last.ts +6 -4
- package/ts/array/loose_array_type.ts +69 -0
- package/ts/array/pad_start.ts +1 -1
- package/ts/array/readme.md +101 -31
- package/ts/array/strict_array_type.ts +75 -0
- package/ts/array/union_of_props.ts +2 -2
- package/ts/array/union_of_values.ts +2 -2
- package/ts/equal/equal.ts +23 -30
- package/ts/equal/identity_equal.ts +9 -0
- package/ts/index.ts +7 -1
- package/ts/math/numeric_struct.ts +109 -109
- package/ts/mix_types/box.ts +62 -0
- package/ts/mix_types/merge.ts +61 -0
- package/ts/mix_types/readme.md +34 -0
- package/ts/never/never_type.ts +2 -2
- package/ts/object/ANotB.ts +1 -1
- package/ts/object/IsDisjoint.ts +1 -1
- package/ts/object/KeysWithDiffType.ts +3 -3
- package/ts/object/KnownKeys.ts +5 -5
- package/ts/object/RecursiveIntersect.ts +7 -7
- package/ts/object/RecursiveRequired.ts +1 -1
- package/ts/object/facade.ts +1 -1
- package/ts/object/hasKey.ts +1 -1
- package/ts/object/index.ts +1 -1
- package/ts/object/is_strict_object.ts +14 -0
- package/ts/object/left_join.ts +1 -1
- package/ts/object/mapProperties.ts +1 -1
- package/ts/object/merge.ts +122 -0
- package/ts/object/object_plus.ts +1 -0
- package/ts/object/omit.ts +4 -5
- package/ts/object/optional_key.ts +1 -1
- package/ts/object/pick.ts +1 -1
- package/ts/object/readme.md +14 -0
- package/ts/object/record.ts +1 -1
- package/ts/object/recursive_partial.ts +1 -1
- package/ts/object/replaceProperty.ts +1 -1
- package/ts/object/split.ts +1 -1
- package/ts/tuple/common_prop_keys.ts +1 -1
- package/ts/tuple/drop.ts +8 -8
- package/ts/tuple/readme.md +17 -17
- package/ts/tuple/tail.ts +4 -6
- package/ts/tuple/tuple_plus.common_prop_keys.ts +2 -2
- package/ts/tuple/tuple_plus.filter.ts +2 -2
- package/ts/tuple/tuple_plus.find.ts +19 -19
- package/ts/tuple/tuple_plus.pad_start.ts +12 -9
- package/ts/tuple/tuple_type.ts +4 -4
- package/ts/type_plus/cases.ts +14 -0
- package/ts/utils/options.ts +27 -8
- package/cjs/any/any_type.d.ts +0 -63
- package/cjs/any/any_type.d.ts.map +0 -1
- package/cjs/any/any_type.js +0 -3
- package/cjs/any/any_type.js.map +0 -1
- package/cjs/array/array.at.d.ts +0 -20
- package/cjs/array/array.at.d.ts.map +0 -1
- package/cjs/array/array.at.js +0 -3
- package/cjs/array/array.at.js.map +0 -1
- package/cjs/array/array.entries.d.ts +0 -18
- package/cjs/array/array.entries.d.ts.map +0 -1
- package/cjs/array/array.entries.js +0 -3
- package/cjs/array/array.entries.js.map +0 -1
- package/cjs/array/array.find_last.d.ts +0 -19
- package/cjs/array/array.find_last.d.ts.map +0 -1
- package/cjs/array/array.find_last.js +0 -3
- package/cjs/array/array.find_last.js.map +0 -1
- package/cjs/array/array.reverse.d.ts +0 -2
- package/cjs/array/array.reverse.d.ts.map +0 -1
- package/cjs/array/array.reverse.js +0 -3
- package/cjs/array/array.reverse.js.map +0 -1
- package/cjs/array/array.some.d.ts +0 -33
- package/cjs/array/array.some.d.ts.map +0 -1
- package/cjs/array/array.some.js +0 -3
- package/cjs/array/array.some.js.map +0 -1
- package/cjs/array/array_index.d.ts +0 -37
- package/cjs/array/array_index.d.ts.map +0 -1
- package/cjs/array/array_index.js +0 -3
- package/cjs/array/array_index.js.map +0 -1
- package/cjs/array/array_plus.common_prop_keys.d.ts +0 -27
- package/cjs/array/array_plus.common_prop_keys.d.ts.map +0 -1
- package/cjs/array/array_plus.common_prop_keys.js +0 -3
- package/cjs/array/array_plus.common_prop_keys.js.map +0 -1
- package/cjs/array/array_plus.concat.d.ts +0 -16
- package/cjs/array/array_plus.concat.d.ts.map +0 -1
- package/cjs/array/array_plus.concat.js +0 -3
- package/cjs/array/array_plus.concat.js.map +0 -1
- package/cjs/array/array_plus.d.ts +0 -15
- package/cjs/array/array_plus.d.ts.map +0 -1
- package/cjs/array/array_plus.drop_match.d.ts +0 -4
- package/cjs/array/array_plus.drop_match.d.ts.map +0 -1
- package/cjs/array/array_plus.drop_match.js +0 -3
- package/cjs/array/array_plus.drop_match.js.map +0 -1
- package/cjs/array/array_plus.element_match.d.ts +0 -44
- package/cjs/array/array_plus.element_match.d.ts.map +0 -1
- package/cjs/array/array_plus.element_match.js +0 -3
- package/cjs/array/array_plus.element_match.js.map +0 -1
- package/cjs/array/array_plus.filter.d.ts +0 -2
- package/cjs/array/array_plus.filter.d.ts.map +0 -1
- package/cjs/array/array_plus.filter.js +0 -3
- package/cjs/array/array_plus.filter.js.map +0 -1
- package/cjs/array/array_plus.find.d.ts +0 -57
- package/cjs/array/array_plus.find.d.ts.map +0 -1
- package/cjs/array/array_plus.find.js +0 -3
- package/cjs/array/array_plus.find.js.map +0 -1
- package/cjs/array/array_plus.js +0 -3
- package/cjs/array/array_plus.js.map +0 -1
- package/cjs/array/array_plus.pad_start.d.ts +0 -5
- package/cjs/array/array_plus.pad_start.d.ts.map +0 -1
- package/cjs/array/array_plus.pad_start.js +0 -3
- package/cjs/array/array_plus.pad_start.js.map +0 -1
- package/cjs/array/array_plus.split_at.d.ts +0 -40
- package/cjs/array/array_plus.split_at.d.ts.map +0 -1
- package/cjs/array/array_plus.split_at.js +0 -3
- package/cjs/array/array_plus.split_at.js.map +0 -1
- package/cjs/array/array_type.d.ts +0 -66
- package/cjs/array/array_type.d.ts.map +0 -1
- package/cjs/array/array_type.js +0 -3
- package/cjs/array/array_type.js.map +0 -1
- package/cjs/array/filter.d.ts +0 -29
- package/cjs/array/filter.d.ts.map +0 -1
- package/cjs/array/filter.js +0 -3
- package/cjs/array/filter.js.map +0 -1
- package/cjs/array/find_first.d.ts +0 -62
- package/cjs/array/find_first.d.ts.map +0 -1
- package/cjs/array/find_first.js +0 -3
- package/cjs/array/find_first.js.map +0 -1
- package/cjs/array/head.d.ts +0 -31
- package/cjs/array/head.d.ts.map +0 -1
- package/cjs/array/head.js +0 -3
- package/cjs/array/head.js.map +0 -1
- package/cjs/array/intersect_of_props.d.ts +0 -14
- package/cjs/array/intersect_of_props.d.ts.map +0 -1
- package/cjs/array/intersect_of_props.js +0 -3
- package/cjs/array/intersect_of_props.js.map +0 -1
- package/cjs/array/last.d.ts +0 -30
- package/cjs/array/last.d.ts.map +0 -1
- package/cjs/array/last.js +0 -3
- package/cjs/array/last.js.map +0 -1
- package/cjs/array/literal_array.d.ts +0 -8
- package/cjs/array/literal_array.d.ts.map +0 -1
- package/cjs/array/literal_array.js +0 -13
- package/cjs/array/literal_array.js.map +0 -1
- package/cjs/array/pad_start.d.ts +0 -32
- package/cjs/array/pad_start.d.ts.map +0 -1
- package/cjs/array/pad_start.js +0 -3
- package/cjs/array/pad_start.js.map +0 -1
- package/cjs/array/reduce_while.d.ts +0 -8
- package/cjs/array/reduce_while.d.ts.map +0 -1
- package/cjs/array/reduce_while.js +0 -21
- package/cjs/array/reduce_while.js.map +0 -1
- package/cjs/array/reverse.d.ts +0 -7
- package/cjs/array/reverse.d.ts.map +0 -1
- package/cjs/array/reverse.js +0 -3
- package/cjs/array/reverse.js.map +0 -1
- package/cjs/array/union_of_props.d.ts +0 -12
- package/cjs/array/union_of_props.d.ts.map +0 -1
- package/cjs/array/union_of_props.js +0 -3
- package/cjs/array/union_of_props.js.map +0 -1
- package/cjs/array/union_of_values.d.ts +0 -10
- package/cjs/array/union_of_values.d.ts.map +0 -1
- package/cjs/array/union_of_values.js +0 -3
- package/cjs/array/union_of_values.js.map +0 -1
- package/cjs/assertion/assert_type.d.ts +0 -40
- package/cjs/assertion/assert_type.d.ts.map +0 -1
- package/cjs/assertion/assert_type.js +0 -113
- package/cjs/assertion/assert_type.js.map +0 -1
- package/cjs/bigint/bigint_type.d.ts +0 -54
- package/cjs/bigint/bigint_type.d.ts.map +0 -1
- package/cjs/bigint/bigint_type.js +0 -3
- package/cjs/bigint/bigint_type.js.map +0 -1
- package/cjs/bigint/cast.d.ts +0 -10
- package/cjs/bigint/cast.d.ts.map +0 -1
- package/cjs/bigint/cast.js +0 -3
- package/cjs/bigint/cast.js.map +0 -1
- package/cjs/bigint/strict_bigint_type.d.ts +0 -56
- package/cjs/bigint/strict_bigint_type.d.ts.map +0 -1
- package/cjs/bigint/strict_bigint_type.js +0 -3
- package/cjs/bigint/strict_bigint_type.js.map +0 -1
- package/cjs/binary/Bit.d.ts +0 -6
- package/cjs/binary/Bit.d.ts.map +0 -1
- package/cjs/binary/Bit.js +0 -3
- package/cjs/binary/Bit.js.map +0 -1
- package/cjs/binary/_binary.d.ts +0 -2
- package/cjs/binary/_binary.d.ts.map +0 -1
- package/cjs/binary/_binary.js +0 -3
- package/cjs/binary/_binary.js.map +0 -1
- package/cjs/binary/index.d.ts +0 -3
- package/cjs/binary/index.d.ts.map +0 -1
- package/cjs/binary/index.js +0 -6
- package/cjs/binary/index.js.map +0 -1
- package/cjs/boolean/boolean_type.d.ts +0 -56
- package/cjs/boolean/boolean_type.d.ts.map +0 -1
- package/cjs/boolean/boolean_type.js +0 -3
- package/cjs/boolean/boolean_type.js.map +0 -1
- package/cjs/boolean/false_type.d.ts +0 -49
- package/cjs/boolean/false_type.d.ts.map +0 -1
- package/cjs/boolean/false_type.js +0 -3
- package/cjs/boolean/false_type.js.map +0 -1
- package/cjs/boolean/strict_boolean_type.d.ts +0 -53
- package/cjs/boolean/strict_boolean_type.d.ts.map +0 -1
- package/cjs/boolean/strict_boolean_type.js +0 -3
- package/cjs/boolean/strict_boolean_type.js.map +0 -1
- package/cjs/boolean/true_type.d.ts +0 -49
- package/cjs/boolean/true_type.d.ts.map +0 -1
- package/cjs/boolean/true_type.js +0 -3
- package/cjs/boolean/true_type.js.map +0 -1
- package/cjs/class/AnyConstructor.d.ts +0 -2
- package/cjs/class/AnyConstructor.d.ts.map +0 -1
- package/cjs/class/AnyConstructor.js +0 -3
- package/cjs/class/AnyConstructor.js.map +0 -1
- package/cjs/class/index.d.ts +0 -3
- package/cjs/class/index.d.ts.map +0 -1
- package/cjs/class/index.js +0 -18
- package/cjs/class/index.js.map +0 -1
- package/cjs/class/isConstructor.d.ts +0 -18
- package/cjs/class/isConstructor.d.ts.map +0 -1
- package/cjs/class/isConstructor.js +0 -35
- package/cjs/class/isConstructor.js.map +0 -1
- package/cjs/composable_types.d.ts +0 -9
- package/cjs/composable_types.d.ts.map +0 -1
- package/cjs/composable_types.js +0 -3
- package/cjs/composable_types.js.map +0 -1
- package/cjs/equal/equal.d.ts +0 -99
- package/cjs/equal/equal.d.ts.map +0 -1
- package/cjs/equal/equal.js +0 -3
- package/cjs/equal/equal.js.map +0 -1
- package/cjs/function/any_function.d.ts +0 -2
- package/cjs/function/any_function.d.ts.map +0 -1
- package/cjs/function/any_function.js +0 -3
- package/cjs/function/any_function.js.map +0 -1
- package/cjs/function/extract_function.d.ts +0 -24
- package/cjs/function/extract_function.d.ts.map +0 -1
- package/cjs/function/extract_function.js +0 -13
- package/cjs/function/extract_function.js.map +0 -1
- package/cjs/function/function_type.d.ts +0 -59
- package/cjs/function/function_type.d.ts.map +0 -1
- package/cjs/function/function_type.js +0 -3
- package/cjs/function/function_type.js.map +0 -1
- package/cjs/function/strict_function_type.d.ts +0 -49
- package/cjs/function/strict_function_type.d.ts.map +0 -1
- package/cjs/function/strict_function_type.js +0 -3
- package/cjs/function/strict_function_type.js.map +0 -1
- package/cjs/functional/ChainFn.d.ts +0 -6
- package/cjs/functional/ChainFn.d.ts.map +0 -1
- package/cjs/functional/ChainFn.js +0 -3
- package/cjs/functional/ChainFn.js.map +0 -1
- package/cjs/functional/Maybe.d.ts +0 -13
- package/cjs/functional/Maybe.d.ts.map +0 -1
- package/cjs/functional/Maybe.js +0 -17
- package/cjs/functional/Maybe.js.map +0 -1
- package/cjs/functional/compose.d.ts +0 -12
- package/cjs/functional/compose.d.ts.map +0 -1
- package/cjs/functional/compose.js +0 -16
- package/cjs/functional/compose.js.map +0 -1
- package/cjs/functional/context.d.ts +0 -40
- package/cjs/functional/context.d.ts.map +0 -1
- package/cjs/functional/context.js +0 -32
- package/cjs/functional/context.js.map +0 -1
- package/cjs/functional/index.d.ts +0 -4
- package/cjs/functional/index.d.ts.map +0 -1
- package/cjs/functional/index.js +0 -19
- package/cjs/functional/index.js.map +0 -1
- package/cjs/index.d.ts +0 -84
- package/cjs/index.d.ts.map +0 -1
- package/cjs/index.js +0 -45
- package/cjs/index.js.map +0 -1
- package/cjs/json.d.ts +0 -12
- package/cjs/json.d.ts.map +0 -1
- package/cjs/json.js +0 -14
- package/cjs/json.js.map +0 -1
- package/cjs/math/abs.d.ts +0 -6
- package/cjs/math/abs.d.ts.map +0 -1
- package/cjs/math/abs.js +0 -3
- package/cjs/math/abs.js.map +0 -1
- package/cjs/math/add.d.ts +0 -7
- package/cjs/math/add.d.ts.map +0 -1
- package/cjs/math/add.js +0 -3
- package/cjs/math/add.js.map +0 -1
- package/cjs/math/greater_than.d.ts +0 -4
- package/cjs/math/greater_than.d.ts.map +0 -1
- package/cjs/math/greater_than.js +0 -3
- package/cjs/math/greater_than.js.map +0 -1
- package/cjs/math/index.d.ts +0 -7
- package/cjs/math/index.d.ts.map +0 -1
- package/cjs/math/index.js +0 -3
- package/cjs/math/index.js.map +0 -1
- package/cjs/math/math_plus.d.ts +0 -5
- package/cjs/math/math_plus.d.ts.map +0 -1
- package/cjs/math/math_plus.js +0 -3
- package/cjs/math/math_plus.js.map +0 -1
- package/cjs/math/math_plus.to_negative.d.ts +0 -13
- package/cjs/math/math_plus.to_negative.d.ts.map +0 -1
- package/cjs/math/math_plus.to_negative.js +0 -3
- package/cjs/math/math_plus.to_negative.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 +0 -3
- package/cjs/math/max.js.map +0 -1
- package/cjs/math/multiply.d.ts +0 -6
- package/cjs/math/multiply.d.ts.map +0 -1
- package/cjs/math/multiply.js +0 -3
- package/cjs/math/multiply.js.map +0 -1
- package/cjs/math/numeric_struct.d.ts +0 -1480
- package/cjs/math/numeric_struct.d.ts.map +0 -1
- package/cjs/math/numeric_struct.js +0 -3
- package/cjs/math/numeric_struct.js.map +0 -1
- package/cjs/math/subtract.d.ts +0 -7
- 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/merge.d.ts +0 -55
- package/cjs/merge.d.ts.map +0 -1
- package/cjs/merge.js +0 -18
- package/cjs/merge.js.map +0 -1
- package/cjs/mix_types/any_or_never_type.d.ts +0 -37
- package/cjs/mix_types/any_or_never_type.d.ts.map +0 -1
- package/cjs/mix_types/any_or_never_type.js +0 -3
- package/cjs/mix_types/any_or_never_type.js.map +0 -1
- package/cjs/never/never_type.d.ts +0 -62
- package/cjs/never/never_type.d.ts.map +0 -1
- package/cjs/never/never_type.js +0 -3
- package/cjs/never/never_type.js.map +0 -1
- package/cjs/nodejs/index.d.ts +0 -2
- package/cjs/nodejs/index.d.ts.map +0 -1
- package/cjs/nodejs/index.js +0 -18
- package/cjs/nodejs/index.js.map +0 -1
- package/cjs/nodejs/isNodeError.d.ts +0 -31
- package/cjs/nodejs/isNodeError.d.ts.map +0 -1
- package/cjs/nodejs/isNodeError.js +0 -13
- package/cjs/nodejs/isNodeError.js.map +0 -1
- package/cjs/nominal/brand.d.ts +0 -23
- package/cjs/nominal/brand.d.ts.map +0 -1
- package/cjs/nominal/brand.js +0 -20
- package/cjs/nominal/brand.js.map +0 -1
- package/cjs/nominal/constants.d.ts +0 -3
- package/cjs/nominal/constants.d.ts.map +0 -1
- package/cjs/nominal/constants.js +0 -6
- package/cjs/nominal/constants.js.map +0 -1
- package/cjs/nominal/flavor.d.ts +0 -31
- package/cjs/nominal/flavor.d.ts.map +0 -1
- package/cjs/nominal/flavor.js +0 -20
- package/cjs/nominal/flavor.js.map +0 -1
- package/cjs/nominal/index.d.ts +0 -4
- package/cjs/nominal/index.d.ts.map +0 -1
- package/cjs/nominal/index.js +0 -20
- package/cjs/nominal/index.js.map +0 -1
- package/cjs/nominal/nominal_match.d.ts +0 -5
- package/cjs/nominal/nominal_match.d.ts.map +0 -1
- package/cjs/nominal/nominal_match.js +0 -13
- package/cjs/nominal/nominal_match.js.map +0 -1
- package/cjs/null/null_type.d.ts +0 -50
- package/cjs/null/null_type.d.ts.map +0 -1
- package/cjs/null/null_type.js +0 -3
- package/cjs/null/null_type.js.map +0 -1
- package/cjs/number/cast.d.ts +0 -10
- package/cjs/number/cast.d.ts.map +0 -1
- package/cjs/number/cast.js +0 -3
- package/cjs/number/cast.js.map +0 -1
- package/cjs/number/number_array.d.ts +0 -1
- package/cjs/number/number_array.d.ts.map +0 -1
- package/cjs/number/number_array.js +0 -16
- package/cjs/number/number_array.js.map +0 -1
- package/cjs/number/number_plus.d.ts +0 -7
- package/cjs/number/number_plus.d.ts.map +0 -1
- package/cjs/number/number_plus.js +0 -3
- package/cjs/number/number_plus.js.map +0 -1
- package/cjs/number/number_type.d.ts +0 -50
- package/cjs/number/number_type.d.ts.map +0 -1
- package/cjs/number/number_type.js +0 -3
- package/cjs/number/number_type.js.map +0 -1
- package/cjs/number/strict_number_type.d.ts +0 -65
- package/cjs/number/strict_number_type.d.ts.map +0 -1
- package/cjs/number/strict_number_type.js +0 -3
- package/cjs/number/strict_number_type.js.map +0 -1
- package/cjs/numeric/cast.d.ts +0 -27
- package/cjs/numeric/cast.d.ts.map +0 -1
- package/cjs/numeric/cast.js +0 -3
- package/cjs/numeric/cast.js.map +0 -1
- package/cjs/numeric/integer.d.ts +0 -69
- package/cjs/numeric/integer.d.ts.map +0 -1
- package/cjs/numeric/integer.js +0 -3
- package/cjs/numeric/integer.js.map +0 -1
- package/cjs/numeric/negative.d.ts +0 -70
- package/cjs/numeric/negative.d.ts.map +0 -1
- package/cjs/numeric/negative.js +0 -3
- package/cjs/numeric/negative.js.map +0 -1
- package/cjs/numeric/numeric_plus.d.ts +0 -5
- package/cjs/numeric/numeric_plus.d.ts.map +0 -1
- package/cjs/numeric/numeric_plus.js +0 -3
- package/cjs/numeric/numeric_plus.js.map +0 -1
- package/cjs/numeric/numeric_type.d.ts +0 -59
- package/cjs/numeric/numeric_type.d.ts.map +0 -1
- package/cjs/numeric/numeric_type.js +0 -3
- package/cjs/numeric/numeric_type.js.map +0 -1
- package/cjs/numeric/positive.d.ts +0 -53
- package/cjs/numeric/positive.d.ts.map +0 -1
- package/cjs/numeric/positive.js +0 -3
- package/cjs/numeric/positive.js.map +0 -1
- package/cjs/object/ANotB.d.ts +0 -9
- package/cjs/object/ANotB.d.ts.map +0 -1
- package/cjs/object/ANotB.js +0 -3
- package/cjs/object/ANotB.js.map +0 -1
- package/cjs/object/AnyRecord.d.ts.map +0 -1
- package/cjs/object/AnyRecord.js +0 -3
- package/cjs/object/AnyRecord.js.map +0 -1
- package/cjs/object/ExcludePropType.d.ts +0 -7
- package/cjs/object/ExcludePropType.d.ts.map +0 -1
- package/cjs/object/ExcludePropType.js +0 -3
- package/cjs/object/ExcludePropType.js.map +0 -1
- package/cjs/object/IsDisjoint.d.ts +0 -9
- package/cjs/object/IsDisjoint.d.ts.map +0 -1
- package/cjs/object/IsDisjoint.js +0 -3
- package/cjs/object/IsDisjoint.js.map +0 -1
- package/cjs/object/IsRecord.d.ts +0 -2
- package/cjs/object/IsRecord.d.ts.map +0 -1
- package/cjs/object/IsRecord.js +0 -3
- package/cjs/object/IsRecord.js.map +0 -1
- package/cjs/object/KeyTypes.d.ts +0 -7
- package/cjs/object/KeyTypes.d.ts.map +0 -1
- package/cjs/object/KeyTypes.js +0 -3
- package/cjs/object/KeyTypes.js.map +0 -1
- package/cjs/object/KeyofOptional.d.ts +0 -6
- package/cjs/object/KeyofOptional.d.ts.map +0 -1
- package/cjs/object/KeyofOptional.js +0 -3
- package/cjs/object/KeyofOptional.js.map +0 -1
- package/cjs/object/KeysWithDiffType.d.ts +0 -7
- package/cjs/object/KeysWithDiffType.d.ts.map +0 -1
- package/cjs/object/KeysWithDiffType.js +0 -3
- package/cjs/object/KeysWithDiffType.js.map +0 -1
- package/cjs/object/KnownKeys.d.ts +0 -7
- package/cjs/object/KnownKeys.d.ts.map +0 -1
- package/cjs/object/KnownKeys.js +0 -6
- package/cjs/object/KnownKeys.js.map +0 -1
- package/cjs/object/OptionalKeys.d.ts +0 -8
- package/cjs/object/OptionalKeys.d.ts.map +0 -1
- package/cjs/object/OptionalKeys.js +0 -3
- package/cjs/object/OptionalKeys.js.map +0 -1
- package/cjs/object/Partial.d.ts +0 -22
- package/cjs/object/Partial.d.ts.map +0 -1
- package/cjs/object/Partial.js +0 -3
- package/cjs/object/Partial.js.map +0 -1
- package/cjs/object/RecursiveIntersect.d.ts +0 -16
- package/cjs/object/RecursiveIntersect.d.ts.map +0 -1
- package/cjs/object/RecursiveIntersect.js +0 -3
- package/cjs/object/RecursiveIntersect.js.map +0 -1
- package/cjs/object/RecursiveRequired.d.ts +0 -5
- package/cjs/object/RecursiveRequired.d.ts.map +0 -1
- package/cjs/object/RecursiveRequired.js +0 -3
- package/cjs/object/RecursiveRequired.js.map +0 -1
- package/cjs/object/Required.d.ts +0 -7
- package/cjs/object/Required.d.ts.map +0 -1
- package/cjs/object/Required.js +0 -4
- package/cjs/object/Required.js.map +0 -1
- package/cjs/object/RequiredKeys.d.ts +0 -7
- package/cjs/object/RequiredKeys.d.ts.map +0 -1
- package/cjs/object/RequiredKeys.js +0 -3
- package/cjs/object/RequiredKeys.js.map +0 -1
- package/cjs/object/SpreadRecord.d.ts +0 -3
- package/cjs/object/SpreadRecord.d.ts.map +0 -1
- package/cjs/object/SpreadRecord.js +0 -3
- package/cjs/object/SpreadRecord.js.map +0 -1
- package/cjs/object/ValueOf.d.ts +0 -2
- package/cjs/object/ValueOf.d.ts.map +0 -1
- package/cjs/object/ValueOf.js +0 -3
- package/cjs/object/ValueOf.js.map +0 -1
- package/cjs/object/everyKey.d.ts +0 -3
- package/cjs/object/everyKey.d.ts.map +0 -1
- package/cjs/object/everyKey.js +0 -8
- package/cjs/object/everyKey.js.map +0 -1
- package/cjs/object/facade.d.ts +0 -17
- package/cjs/object/facade.d.ts.map +0 -1
- package/cjs/object/facade.js +0 -27
- package/cjs/object/facade.js.map +0 -1
- package/cjs/object/filterKey.d.ts +0 -3
- package/cjs/object/filterKey.d.ts.map +0 -1
- package/cjs/object/filterKey.js +0 -10
- package/cjs/object/filterKey.js.map +0 -1
- package/cjs/object/findKey.d.ts +0 -3
- package/cjs/object/findKey.d.ts.map +0 -1
- package/cjs/object/findKey.js +0 -10
- package/cjs/object/findKey.js.map +0 -1
- package/cjs/object/forEachKey.d.ts +0 -3
- package/cjs/object/forEachKey.d.ts.map +0 -1
- package/cjs/object/forEachKey.js +0 -8
- package/cjs/object/forEachKey.js.map +0 -1
- package/cjs/object/getField.d.ts +0 -4
- package/cjs/object/getField.d.ts.map +0 -1
- package/cjs/object/getField.js +0 -8
- package/cjs/object/getField.js.map +0 -1
- package/cjs/object/hasKey.d.ts +0 -4
- package/cjs/object/hasKey.d.ts.map +0 -1
- package/cjs/object/hasKey.js +0 -8
- package/cjs/object/hasKey.js.map +0 -1
- package/cjs/object/hasProperty.d.ts +0 -3
- package/cjs/object/hasProperty.d.ts.map +0 -1
- package/cjs/object/hasProperty.js +0 -8
- package/cjs/object/hasProperty.js.map +0 -1
- package/cjs/object/index.d.ts +0 -39
- package/cjs/object/index.d.ts.map +0 -1
- package/cjs/object/index.js +0 -36
- package/cjs/object/index.js.map +0 -1
- package/cjs/object/left_join.d.ts +0 -15
- package/cjs/object/left_join.d.ts.map +0 -1
- package/cjs/object/left_join.js +0 -3
- package/cjs/object/left_join.js.map +0 -1
- package/cjs/object/mapKey.d.ts +0 -3
- package/cjs/object/mapKey.d.ts.map +0 -1
- package/cjs/object/mapKey.js +0 -10
- package/cjs/object/mapKey.js.map +0 -1
- package/cjs/object/mapProperties.d.ts +0 -14
- package/cjs/object/mapProperties.d.ts.map +0 -1
- package/cjs/object/mapProperties.js +0 -17
- package/cjs/object/mapProperties.js.map +0 -1
- package/cjs/object/object_type.d.ts +0 -54
- package/cjs/object/object_type.d.ts.map +0 -1
- package/cjs/object/object_type.js +0 -3
- package/cjs/object/object_type.js.map +0 -1
- package/cjs/object/omit.d.ts +0 -22
- package/cjs/object/omit.d.ts.map +0 -1
- package/cjs/object/omit.js +0 -14
- package/cjs/object/omit.js.map +0 -1
- package/cjs/object/optional_key.d.ts +0 -35
- package/cjs/object/optional_key.d.ts.map +0 -1
- package/cjs/object/optional_key.js +0 -3
- package/cjs/object/optional_key.js.map +0 -1
- package/cjs/object/pick.d.ts +0 -29
- package/cjs/object/pick.d.ts.map +0 -1
- package/cjs/object/pick.js +0 -14
- package/cjs/object/pick.js.map +0 -1
- package/cjs/object/properties.d.ts +0 -7
- package/cjs/object/properties.d.ts.map +0 -1
- package/cjs/object/properties.js +0 -3
- package/cjs/object/properties.js.map +0 -1
- package/cjs/object/record.d.ts +0 -17
- package/cjs/object/record.d.ts.map +0 -1
- package/cjs/object/record.js +0 -9
- package/cjs/object/record.js.map +0 -1
- package/cjs/object/recursive_partial.d.ts +0 -29
- package/cjs/object/recursive_partial.d.ts.map +0 -1
- package/cjs/object/recursive_partial.js +0 -4
- package/cjs/object/recursive_partial.js.map +0 -1
- package/cjs/object/reduceKey.d.ts +0 -7
- package/cjs/object/reduceKey.d.ts.map +0 -1
- package/cjs/object/reduceKey.js +0 -12
- package/cjs/object/reduceKey.js.map +0 -1
- package/cjs/object/replaceProperty.d.ts +0 -6
- package/cjs/object/replaceProperty.d.ts.map +0 -1
- package/cjs/object/replaceProperty.js +0 -8
- package/cjs/object/replaceProperty.js.map +0 -1
- package/cjs/object/someKey.d.ts +0 -3
- package/cjs/object/someKey.d.ts.map +0 -1
- package/cjs/object/someKey.js +0 -10
- package/cjs/object/someKey.js.map +0 -1
- package/cjs/object/split.d.ts +0 -76
- package/cjs/object/split.d.ts.map +0 -1
- package/cjs/object/split.js +0 -12
- package/cjs/object/split.js.map +0 -1
- package/cjs/object/typeOverrideIncompatible.d.ts +0 -3
- package/cjs/object/typeOverrideIncompatible.d.ts.map +0 -1
- package/cjs/object/typeOverrideIncompatible.js +0 -13
- package/cjs/object/typeOverrideIncompatible.js.map +0 -1
- package/cjs/package.json +0 -3
- package/cjs/predicates/CanAssign.d.ts +0 -45
- package/cjs/predicates/CanAssign.d.ts.map +0 -1
- package/cjs/predicates/CanAssign.js +0 -8
- package/cjs/predicates/CanAssign.js.map +0 -1
- package/cjs/predicates/Extends.d.ts +0 -5
- package/cjs/predicates/Extends.d.ts.map +0 -1
- package/cjs/predicates/Extends.js +0 -3
- package/cjs/predicates/Extends.js.map +0 -1
- package/cjs/predicates/If.d.ts +0 -2
- package/cjs/predicates/If.d.ts.map +0 -1
- package/cjs/predicates/If.js +0 -3
- package/cjs/predicates/If.js.map +0 -1
- package/cjs/predicates/IsEmptyObject.d.ts +0 -2
- package/cjs/predicates/IsEmptyObject.d.ts.map +0 -1
- package/cjs/predicates/IsEmptyObject.js +0 -3
- package/cjs/predicates/IsEmptyObject.js.map +0 -1
- package/cjs/predicates/index.d.ts +0 -7
- package/cjs/predicates/index.d.ts.map +0 -1
- package/cjs/predicates/index.js +0 -18
- package/cjs/predicates/index.js.map +0 -1
- package/cjs/predicates/literal.d.ts +0 -22
- package/cjs/predicates/literal.d.ts.map +0 -1
- package/cjs/predicates/literal.js +0 -3
- package/cjs/predicates/literal.js.map +0 -1
- package/cjs/predicates/logical.d.ts +0 -5
- package/cjs/predicates/logical.d.ts.map +0 -1
- package/cjs/predicates/logical.js +0 -3
- package/cjs/predicates/logical.js.map +0 -1
- package/cjs/primitive.d.ts +0 -5
- package/cjs/primitive.d.ts.map +0 -1
- package/cjs/primitive.js +0 -3
- package/cjs/primitive.js.map +0 -1
- package/cjs/promise/MaybePromise.d.ts +0 -22
- package/cjs/promise/MaybePromise.d.ts.map +0 -1
- package/cjs/promise/MaybePromise.js +0 -12
- package/cjs/promise/MaybePromise.js.map +0 -1
- package/cjs/promise/PromiseValue.d.ts +0 -13
- package/cjs/promise/PromiseValue.d.ts.map +0 -1
- package/cjs/promise/PromiseValue.js +0 -3
- package/cjs/promise/PromiseValue.js.map +0 -1
- package/cjs/promise/PromiseValueMerge.d.ts +0 -5
- package/cjs/promise/PromiseValueMerge.d.ts.map +0 -1
- package/cjs/promise/PromiseValueMerge.js +0 -3
- package/cjs/promise/PromiseValueMerge.js.map +0 -1
- package/cjs/promise/index.d.ts +0 -6
- package/cjs/promise/index.d.ts.map +0 -1
- package/cjs/promise/index.js +0 -20
- package/cjs/promise/index.js.map +0 -1
- package/cjs/promise/isPromise.d.ts +0 -2
- package/cjs/promise/isPromise.d.ts.map +0 -1
- package/cjs/promise/isPromise.js +0 -9
- package/cjs/promise/isPromise.js.map +0 -1
- package/cjs/promise/mapSeries.d.ts +0 -2
- package/cjs/promise/mapSeries.d.ts.map +0 -1
- package/cjs/promise/mapSeries.js +0 -8
- package/cjs/promise/mapSeries.js.map +0 -1
- package/cjs/string/strict_string_type.d.ts +0 -61
- package/cjs/string/strict_string_type.d.ts.map +0 -1
- package/cjs/string/strict_string_type.js +0 -3
- package/cjs/string/strict_string_type.js.map +0 -1
- package/cjs/string/string.d.ts +0 -24
- package/cjs/string/string.d.ts.map +0 -1
- package/cjs/string/string.js +0 -3
- package/cjs/string/string.js.map +0 -1
- package/cjs/string/string_plus.d.ts +0 -27
- package/cjs/string/string_plus.d.ts.map +0 -1
- package/cjs/string/string_plus.js +0 -3
- package/cjs/string/string_plus.js.map +0 -1
- package/cjs/string/string_type.d.ts +0 -58
- package/cjs/string/string_type.d.ts.map +0 -1
- package/cjs/string/string_type.js +0 -3
- package/cjs/string/string_type.js.map +0 -1
- package/cjs/symbol/symbol_type.d.ts +0 -50
- package/cjs/symbol/symbol_type.d.ts.map +0 -1
- package/cjs/symbol/symbol_type.js +0 -3
- package/cjs/symbol/symbol_type.js.map +0 -1
- package/cjs/testing/stub.d.ts +0 -31
- package/cjs/testing/stub.d.ts.map +0 -1
- package/cjs/testing/stub.js +0 -60
- package/cjs/testing/stub.js.map +0 -1
- package/cjs/testing/test_type.d.ts +0 -310
- package/cjs/testing/test_type.d.ts.map +0 -1
- package/cjs/testing/test_type.js +0 -16
- package/cjs/testing/test_type.js.map +0 -1
- package/cjs/tuple/common_prop_keys.d.ts +0 -34
- package/cjs/tuple/common_prop_keys.d.ts.map +0 -1
- package/cjs/tuple/common_prop_keys.js +0 -3
- package/cjs/tuple/common_prop_keys.js.map +0 -1
- package/cjs/tuple/create_tuple.d.ts +0 -28
- package/cjs/tuple/create_tuple.d.ts.map +0 -1
- package/cjs/tuple/create_tuple.js +0 -3
- package/cjs/tuple/create_tuple.js.map +0 -1
- package/cjs/tuple/drop.d.ts +0 -91
- package/cjs/tuple/drop.d.ts.map +0 -1
- package/cjs/tuple/drop.js +0 -13
- package/cjs/tuple/drop.js.map +0 -1
- package/cjs/tuple/tail.d.ts +0 -6
- package/cjs/tuple/tail.d.ts.map +0 -1
- package/cjs/tuple/tail.js +0 -3
- package/cjs/tuple/tail.js.map +0 -1
- package/cjs/tuple/tuple_plus.common_prop_keys.d.ts +0 -28
- package/cjs/tuple/tuple_plus.common_prop_keys.d.ts.map +0 -1
- package/cjs/tuple/tuple_plus.common_prop_keys.js +0 -3
- package/cjs/tuple/tuple_plus.common_prop_keys.js.map +0 -1
- package/cjs/tuple/tuple_plus.d.ts +0 -6
- package/cjs/tuple/tuple_plus.d.ts.map +0 -1
- package/cjs/tuple/tuple_plus.drop_match.d.ts +0 -6
- package/cjs/tuple/tuple_plus.drop_match.d.ts.map +0 -1
- package/cjs/tuple/tuple_plus.drop_match.js +0 -3
- package/cjs/tuple/tuple_plus.drop_match.js.map +0 -1
- package/cjs/tuple/tuple_plus.filter.d.ts +0 -13
- package/cjs/tuple/tuple_plus.filter.d.ts.map +0 -1
- package/cjs/tuple/tuple_plus.filter.js +0 -3
- package/cjs/tuple/tuple_plus.filter.js.map +0 -1
- package/cjs/tuple/tuple_plus.find.d.ts +0 -64
- package/cjs/tuple/tuple_plus.find.d.ts.map +0 -1
- package/cjs/tuple/tuple_plus.find.js +0 -3
- package/cjs/tuple/tuple_plus.find.js.map +0 -1
- package/cjs/tuple/tuple_plus.js +0 -3
- package/cjs/tuple/tuple_plus.js.map +0 -1
- package/cjs/tuple/tuple_plus.pad_start.d.ts +0 -28
- package/cjs/tuple/tuple_plus.pad_start.d.ts.map +0 -1
- package/cjs/tuple/tuple_plus.pad_start.js +0 -3
- package/cjs/tuple/tuple_plus.pad_start.js.map +0 -1
- package/cjs/tuple/tuple_type.d.ts +0 -77
- package/cjs/tuple/tuple_type.d.ts.map +0 -1
- package/cjs/tuple/tuple_type.js +0 -3
- package/cjs/tuple/tuple_type.js.map +0 -1
- package/cjs/type/failed.d.ts +0 -32
- package/cjs/type/failed.d.ts.map +0 -1
- package/cjs/type/failed.js +0 -3
- package/cjs/type/failed.js.map +0 -1
- package/cjs/type/no_infer.d.ts +0 -27
- package/cjs/type/no_infer.d.ts.map +0 -1
- package/cjs/type/no_infer.js +0 -3
- package/cjs/type/no_infer.js.map +0 -1
- package/cjs/type-guard/is_type.d.ts +0 -27
- package/cjs/type-guard/is_type.d.ts.map +0 -1
- package/cjs/type-guard/is_type.js +0 -32
- package/cjs/type-guard/is_type.js.map +0 -1
- package/cjs/undefined/undefined_type.d.ts +0 -53
- package/cjs/undefined/undefined_type.d.ts.map +0 -1
- package/cjs/undefined/undefined_type.js +0 -3
- package/cjs/undefined/undefined_type.js.map +0 -1
- package/cjs/union/union.d.ts +0 -33
- package/cjs/union/union.d.ts.map +0 -1
- package/cjs/union/union.js +0 -3
- package/cjs/union/union.js.map +0 -1
- package/cjs/union/union_to_intersection.d.ts +0 -3
- package/cjs/union/union_to_intersection.d.ts.map +0 -1
- package/cjs/union/union_to_intersection.js +0 -8
- package/cjs/union/union_to_intersection.js.map +0 -1
- package/cjs/union_keys.d.ts +0 -6
- package/cjs/union_keys.d.ts.map +0 -1
- package/cjs/union_keys.js +0 -3
- package/cjs/union_keys.js.map +0 -1
- package/cjs/unknown/unknown_type.d.ts +0 -63
- package/cjs/unknown/unknown_type.d.ts.map +0 -1
- package/cjs/unknown/unknown_type.js +0 -3
- package/cjs/unknown/unknown_type.js.map +0 -1
- package/cjs/unpartial.d.ts +0 -2
- package/cjs/unpartial.d.ts.map +0 -1
- package/cjs/unpartial.js +0 -8
- package/cjs/unpartial.js.map +0 -1
- package/cjs/utils/NonNull.d.ts +0 -2
- package/cjs/utils/NonNull.d.ts.map +0 -1
- package/cjs/utils/NonNull.js +0 -3
- package/cjs/utils/NonNull.js.map +0 -1
- package/cjs/utils/NonUndefined.d.ts +0 -2
- package/cjs/utils/NonUndefined.d.ts.map +0 -1
- package/cjs/utils/NonUndefined.js +0 -3
- package/cjs/utils/NonUndefined.js.map +0 -1
- package/cjs/utils/Widen.d.ts +0 -6
- package/cjs/utils/Widen.d.ts.map +0 -1
- package/cjs/utils/Widen.js +0 -3
- package/cjs/utils/Widen.js.map +0 -1
- package/cjs/utils/as.d.ts +0 -10
- package/cjs/utils/as.d.ts.map +0 -1
- package/cjs/utils/as.js +0 -26
- package/cjs/utils/as.js.map +0 -1
- package/cjs/utils/index.d.ts +0 -43
- package/cjs/utils/index.d.ts.map +0 -1
- package/cjs/utils/index.js +0 -19
- package/cjs/utils/index.js.map +0 -1
- package/cjs/utils/inspect.d.ts +0 -5
- package/cjs/utils/inspect.d.ts.map +0 -1
- package/cjs/utils/inspect.js +0 -13
- package/cjs/utils/inspect.js.map +0 -1
- package/cjs/utils/options.d.ts +0 -10
- package/cjs/utils/options.d.ts.map +0 -1
- package/cjs/utils/options.js +0 -3
- package/cjs/utils/options.js.map +0 -1
- package/cjs/void/void_type.d.ts +0 -43
- package/cjs/void/void_type.d.ts.map +0 -1
- package/cjs/void/void_type.js +0 -3
- package/cjs/void/void_type.js.map +0 -1
- package/esm/array/array_index.d.ts +0 -37
- package/esm/array/array_index.d.ts.map +0 -1
- package/esm/array/array_index.js +0 -2
- package/esm/array/array_index.js.map +0 -1
- package/esm/merge.d.ts +0 -55
- package/esm/merge.d.ts.map +0 -1
- package/esm/merge.js.map +0 -1
- package/esm/object/AnyRecord.d.ts +0 -3
- package/esm/object/AnyRecord.d.ts.map +0 -1
- package/esm/object/AnyRecord.js +0 -2
- package/esm/object/AnyRecord.js.map +0 -1
- package/ts/merge.ts +0 -72
- /package/ts/object/{AnyRecord.ts → any_record.ts} +0 -0
package/ts/array/array.some.ts
CHANGED
|
@@ -23,7 +23,7 @@ import type { UnionOfValues } from './union_of_values.js'
|
|
|
23
23
|
* ```
|
|
24
24
|
*/
|
|
25
25
|
export type Some<
|
|
26
|
-
A extends
|
|
26
|
+
A extends readonly unknown[],
|
|
27
27
|
Criteria,
|
|
28
28
|
Mode extends 'strict' | 'loose' = 'loose',
|
|
29
29
|
Then = true,
|
|
@@ -31,37 +31,37 @@ export type Some<
|
|
|
31
31
|
> = Mode extends 'strict' ? Some.Strict<A, Criteria, Then, Else> : Some.Loose<A, Criteria, Then, Else>
|
|
32
32
|
|
|
33
33
|
export namespace Some {
|
|
34
|
-
export type Strict<A extends unknown[], Criteria, Then, Else> = number extends A['length']
|
|
34
|
+
export type Strict<A extends readonly unknown[], Criteria, Then, Else> = number extends A['length']
|
|
35
35
|
? StrictArray<A, Criteria, Then, Else>
|
|
36
36
|
: StrictTuple<A, Criteria, Then, Else>
|
|
37
37
|
|
|
38
|
-
export type StrictArray<A extends unknown[], Criteria, Then, Else> = IsEqual<
|
|
38
|
+
export type StrictArray<A extends readonly unknown[], Criteria, Then, Else> = IsEqual<
|
|
39
39
|
UnionOfValues<A>,
|
|
40
40
|
Criteria,
|
|
41
41
|
Then,
|
|
42
42
|
Else
|
|
43
43
|
>
|
|
44
44
|
|
|
45
|
-
export type StrictTuple<A extends unknown[], Criteria, Then, Else> = A['length'] extends 0
|
|
45
|
+
export type StrictTuple<A extends readonly unknown[], Criteria, Then, Else> = A['length'] extends 0
|
|
46
46
|
? Else
|
|
47
|
-
: IsEqual<A[0], Criteria> extends true
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
: (IsEqual<A[0], Criteria> extends true
|
|
48
|
+
? Then
|
|
49
|
+
: StrictTuple<Tail<A>, Criteria, Then, Else>)
|
|
50
50
|
|
|
51
|
-
export type Loose<A extends unknown[], Criteria, Then, Else> = number extends A['length']
|
|
51
|
+
export type Loose<A extends readonly unknown[], Criteria, Then, Else> = number extends A['length']
|
|
52
52
|
? LooseArray<A, Criteria, Then, Else>
|
|
53
53
|
: LooseTuple<A, Criteria, Then, Else>
|
|
54
54
|
|
|
55
|
-
export type LooseArray<A extends unknown[], Criteria, Then, Else> = CanAssign<
|
|
55
|
+
export type LooseArray<A extends readonly unknown[], Criteria, Then, Else> = CanAssign<
|
|
56
56
|
UnionOfValues<A>,
|
|
57
57
|
Criteria,
|
|
58
58
|
Then,
|
|
59
59
|
Else
|
|
60
60
|
>
|
|
61
61
|
|
|
62
|
-
export type LooseTuple<A extends unknown[], Criteria, Then, Else> = A['length'] extends 0
|
|
62
|
+
export type LooseTuple<A extends readonly unknown[], Criteria, Then, Else> = A['length'] extends 0
|
|
63
63
|
? Else
|
|
64
|
-
: A[0] extends Criteria
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
: (A[0] extends Criteria
|
|
65
|
+
? Then
|
|
66
|
+
: LooseTuple<Tail<A>, Criteria, Then, Else>)
|
|
67
67
|
}
|
|
@@ -15,15 +15,15 @@ import type { KeyTypes } from '../object/KeyTypes.js'
|
|
|
15
15
|
* type R = ArrayPlus.CommonPropKeys<Array<{ a: 1, b: 1 } | { a: 1, c: 1 }>> // 'a'
|
|
16
16
|
* ```
|
|
17
17
|
*
|
|
18
|
-
* @typeParam Options['
|
|
18
|
+
* @typeParam Options['$never'] Return type when `T` is `never`.
|
|
19
19
|
* Default to `never`.
|
|
20
20
|
*/
|
|
21
21
|
export type CommonPropKeys<
|
|
22
|
-
A extends Record<KeyTypes, unknown>[],
|
|
22
|
+
A extends readonly Record<KeyTypes, unknown>[],
|
|
23
23
|
Options extends CommonPropKeys.Options = CommonPropKeys.DefaultOptions
|
|
24
24
|
> = NeverType<A,
|
|
25
|
-
Options['
|
|
26
|
-
A extends Array<infer R extends Record<KeyTypes, unknown
|
|
25
|
+
Options['$never'],
|
|
26
|
+
A extends Readonly<Array<infer R extends Record<KeyTypes, unknown>>> ? keyof R : never
|
|
27
27
|
>
|
|
28
28
|
|
|
29
29
|
export namespace CommonPropKeys {
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import type { NonNull } from '../utils/NonNull.js'
|
|
2
2
|
import type { NonUndefined } from '../utils/NonUndefined.js'
|
|
3
3
|
|
|
4
|
+
/**
|
|
5
|
+
* ⚗️ *transform*
|
|
6
|
+
*/
|
|
4
7
|
export type DropMatch<A extends Readonly<Array<unknown>>, Criteria> = A[0] extends Criteria
|
|
5
8
|
? never[]
|
|
6
9
|
: (undefined extends Criteria
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { IsNever } from '../never/never_type.js'
|
|
2
2
|
import type { IsUnion } from '../union/union.js'
|
|
3
|
-
import type {
|
|
3
|
+
import type { TypePlusOptions } from '../utils/options.js'
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* 🦴 *utilities*
|
|
@@ -12,13 +12,13 @@ import type { MergeOptions } from '../utils/options.js'
|
|
|
12
12
|
* e.g. `number, 1` -> `1 | undefined`.
|
|
13
13
|
* Default to `true`.
|
|
14
14
|
*
|
|
15
|
-
* @typeParam Options['
|
|
15
|
+
* @typeParam Options['$notMatch'] Return value when `T` does not match `Criteria`.
|
|
16
16
|
* Default to `never`.
|
|
17
17
|
*
|
|
18
|
-
* @typeParam Options['
|
|
18
|
+
* @typeParam Options['$widen'] Return value when `widen` is true.
|
|
19
19
|
* Default to `Criteria | undefined`.
|
|
20
20
|
*
|
|
21
|
-
* @typeParam Options['
|
|
21
|
+
* @typeParam Options['$unionNotMatch'] Return value when a branch of the union `T` does not match `Criteria`.
|
|
22
22
|
* Default to `never`.
|
|
23
23
|
*
|
|
24
24
|
* If you want the type to behave more like JavaScript,
|
|
@@ -33,29 +33,29 @@ export type ElementMatch<
|
|
|
33
33
|
Options extends ElementMatch.Options = ElementMatch.DefaultOptions<Criteria>
|
|
34
34
|
> = [T] extends [Criteria]
|
|
35
35
|
? T
|
|
36
|
-
: (
|
|
36
|
+
: (TypePlusOptions.Merge<Options, ElementMatch.DefaultOptions<Criteria>> extends infer C extends Record<keyof ElementMatch.Options, unknown>
|
|
37
37
|
? ((T extends Criteria
|
|
38
38
|
? T
|
|
39
39
|
: (C['widen'] extends true
|
|
40
40
|
? (Criteria extends T
|
|
41
|
-
? C['
|
|
42
|
-
: C['
|
|
43
|
-
: C['
|
|
44
|
-
? IsUnion<T, IsNever<R, R, R | C['
|
|
45
|
-
: C['
|
|
41
|
+
? C['$widen']
|
|
42
|
+
: C['$notMatch'])
|
|
43
|
+
: C['$notMatch'])) extends infer R
|
|
44
|
+
? IsUnion<T, IsNever<R, R, R | C['$unionNotMatch']>, R>
|
|
45
|
+
: C['$notMatch'])
|
|
46
46
|
: never)
|
|
47
47
|
|
|
48
48
|
export namespace ElementMatch {
|
|
49
49
|
export interface Options {
|
|
50
50
|
widen?: boolean | undefined,
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
$notMatch?: unknown,
|
|
52
|
+
$widen?: unknown,
|
|
53
|
+
$unionNotMatch?: unknown
|
|
54
54
|
}
|
|
55
55
|
export interface DefaultOptions<Criteria> {
|
|
56
56
|
widen: true,
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
57
|
+
$notMatch: never,
|
|
58
|
+
$widen: Criteria | undefined,
|
|
59
|
+
$unionNotMatch: never
|
|
60
60
|
}
|
|
61
61
|
}
|
|
@@ -1,5 +1,49 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
// import type { IsEqual } from '../equal/equal.js'
|
|
2
|
+
|
|
3
|
+
// /**
|
|
4
|
+
// * Filters an array or tuple based on criteria
|
|
5
|
+
// */
|
|
6
|
+
// export type Filter<A extends readonly unknown[], Criteria = true> = Filter._<A, Criteria, []>
|
|
7
|
+
|
|
8
|
+
import type { IsEqual } from '../equal/equal.js'
|
|
9
|
+
import type { NeverType } from '../never/never_type.js'
|
|
10
|
+
import type { TypePlusOptions } from '../utils/options.js'
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* ⚗️ *transform*
|
|
14
|
+
* 🔢 *customizable*
|
|
15
|
+
*
|
|
16
|
+
* Filter the array `A`, keeping entries satisfying `Criteria`.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```ts
|
|
20
|
+
* type R = Filter<Array<string | undefined>, string> // string[]
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export type Filter<
|
|
24
|
+
A extends readonly unknown[],
|
|
25
|
+
Criteria = true,
|
|
26
|
+
Options extends Filter.Options = Filter.DefaultOptions
|
|
27
|
+
> = TypePlusOptions.Merge<Options, Filter.DefaultOptions> extends infer O extends Filter.Options
|
|
28
|
+
? (NeverType<
|
|
29
|
+
A,
|
|
30
|
+
O['$never'],
|
|
31
|
+
(A[0] extends Criteria
|
|
32
|
+
? A
|
|
33
|
+
: Criteria extends A[0] ? Array<Criteria> : O['$notArray'])>)
|
|
34
|
+
: never
|
|
35
|
+
|
|
36
|
+
export namespace Filter {
|
|
37
|
+
export interface Options extends TypePlusOptions.NotArray, NeverType.Options { }
|
|
38
|
+
|
|
39
|
+
export interface DefaultOptions {
|
|
40
|
+
$never: never,
|
|
41
|
+
$notArray: never[]
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export type _<A extends readonly unknown[], Criteria, Result extends unknown[]> = A['length'] extends 0
|
|
45
|
+
? Result
|
|
46
|
+
: (A extends [infer H, ...infer Rest]
|
|
47
|
+
? IsEqual<H, Criteria, _<Rest, Criteria, [...Result, H]>, _<Rest, Criteria, Result>>
|
|
48
|
+
: never)
|
|
49
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NeverType } from '../never/never_type.js'
|
|
2
2
|
import type { TupleType } from '../tuple/tuple_type.js'
|
|
3
|
-
import type {
|
|
3
|
+
import type { TypePlusOptions } from '../utils/options.js'
|
|
4
4
|
import type { ElementMatch } from './array_plus.element_match.js'
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -25,20 +25,20 @@ import type { ElementMatch } from './array_plus.element_match.js'
|
|
|
25
25
|
* With widen match, a narrowed type will match its widen type.
|
|
26
26
|
* e.g. matching `1` against `number` yields `1 | undefined`
|
|
27
27
|
*
|
|
28
|
-
* The widen behavior can be customized by `Options['
|
|
28
|
+
* The widen behavior can be customized by `Options['$widen']`
|
|
29
29
|
*
|
|
30
|
-
* @typeParam Options['
|
|
30
|
+
* @typeParam Options['$never'] return type when `A` is `never`. Default to `never`.
|
|
31
31
|
*
|
|
32
|
-
* @typeParam Options['
|
|
32
|
+
* @typeParam Options['$notMatch'] Return value when `T` does not match `Criteria`.
|
|
33
33
|
* Default to `never`.
|
|
34
34
|
*
|
|
35
|
-
* @typeParam Options['
|
|
35
|
+
* @typeParam Options['$tuple'] return type when `A` is a tuple. Default to `not supported` message.
|
|
36
36
|
*
|
|
37
|
-
* @typeParam Options['
|
|
37
|
+
* @typeParam Options['$widen'] return type when `T` in `A` is a widen type of `Criteria`.
|
|
38
38
|
* Default to `Criteria | undefined`.
|
|
39
39
|
* Set it to `never` for a more type-centric behavior
|
|
40
40
|
*
|
|
41
|
-
* @typeParam Options['
|
|
41
|
+
* @typeParam Options['$unionNotMatch'] Return value when a branch of the union `T` does not match `Criteria`.
|
|
42
42
|
* Default to `never`.
|
|
43
43
|
*
|
|
44
44
|
* If you want the type to behave more like JavaScript,
|
|
@@ -47,25 +47,25 @@ import type { ElementMatch } from './array_plus.element_match.js'
|
|
|
47
47
|
* Since it is a union, the result will be joined to the matched branch as union.
|
|
48
48
|
*/
|
|
49
49
|
export type Find<
|
|
50
|
-
A extends unknown[],
|
|
50
|
+
A extends readonly unknown[],
|
|
51
51
|
Criteria,
|
|
52
52
|
Options extends Find.Options = Find.DefaultOptions<Criteria>
|
|
53
53
|
> =
|
|
54
|
-
|
|
54
|
+
TypePlusOptions.Merge<Options, Find.DefaultOptions<Criteria>> extends infer O extends Find.Options
|
|
55
55
|
? TupleType<
|
|
56
56
|
A,
|
|
57
|
-
O['
|
|
58
|
-
A extends Array<infer T
|
|
57
|
+
O['$tuple'],
|
|
58
|
+
A extends Readonly<Array<infer T>> ? ElementMatch<T, Criteria, O> : never,
|
|
59
59
|
O
|
|
60
60
|
>
|
|
61
61
|
: never
|
|
62
62
|
|
|
63
63
|
export namespace Find {
|
|
64
64
|
export interface Options extends ElementMatch.Options, NeverType.Options {
|
|
65
|
-
|
|
65
|
+
$tuple?: unknown,
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
export interface DefaultOptions<Criteria> extends ElementMatch.DefaultOptions<Criteria>, NeverType.DefaultOptions {
|
|
69
|
-
|
|
69
|
+
$tuple: 'does not support tuple. Please use `FindFirst` or `TuplePlus.Find` instead.',
|
|
70
70
|
}
|
|
71
71
|
}
|
|
@@ -9,8 +9,11 @@ import type { Integer } from '../numeric/integer.js'
|
|
|
9
9
|
import type { Negative } from '../numeric/negative.js'
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
+
* 🦴 *utilities*
|
|
13
|
+
*
|
|
12
14
|
* Gets the normalized index to access the element of an array or tuple.
|
|
13
15
|
*
|
|
16
|
+
* @example
|
|
14
17
|
* ```ts
|
|
15
18
|
* type R = IndexAt<['a', 'b', 'c'], 2> // 2
|
|
16
19
|
* type R = IndexAt<['a', 'b', 'c'], -2> // 1
|
|
@@ -20,7 +23,7 @@ import type { Negative } from '../numeric/negative.js'
|
|
|
20
23
|
* ```
|
|
21
24
|
*/
|
|
22
25
|
export type IndexAt<
|
|
23
|
-
A extends
|
|
26
|
+
A extends readonly unknown[],
|
|
24
27
|
N extends number,
|
|
25
28
|
Fail = never,
|
|
26
29
|
Upper = A['length'],
|
|
@@ -29,7 +32,7 @@ export type IndexAt<
|
|
|
29
32
|
|
|
30
33
|
export namespace IndexAt {
|
|
31
34
|
export type _<
|
|
32
|
-
A extends
|
|
35
|
+
A extends readonly unknown[],
|
|
33
36
|
N extends number,
|
|
34
37
|
Fail = never,
|
|
35
38
|
Upper = A['length'],
|
|
@@ -64,20 +67,3 @@ export namespace IndexAt {
|
|
|
64
67
|
>
|
|
65
68
|
>
|
|
66
69
|
}
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Is N an out of bound index of A.
|
|
70
|
-
*
|
|
71
|
-
* ```ts
|
|
72
|
-
* type R = IsIndexOutOfBound<[1], 0> // false
|
|
73
|
-
* type R = IsIndexOutOfBound<[1], -1> // false
|
|
74
|
-
|
|
75
|
-
* type R = IsIndexOutOfBound<[1], 1> // true
|
|
76
|
-
* type R = IsIndexOutOfBound<[1], -2> // true
|
|
77
|
-
* ```
|
|
78
|
-
*/
|
|
79
|
-
export type IsIndexOutOfBound<A extends unknown[], N extends number, Then = true, Else = false> = IsNever<
|
|
80
|
-
IndexAt<A, N, never, never, never>,
|
|
81
|
-
Then,
|
|
82
|
-
Else
|
|
83
|
-
>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { IsNever } from '../never/never_type.js'
|
|
2
|
+
import type { IndexAt } from './array_plus.index_at.js'
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* 🎭 *validate*
|
|
6
|
+
*
|
|
7
|
+
* Is `N` an out of bound index of `A`.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts
|
|
11
|
+
* type R = IsIndexOutOfBound<[1], 0> // false
|
|
12
|
+
* type R = IsIndexOutOfBound<[1], -1> // false
|
|
13
|
+
*
|
|
14
|
+
* type R = IsIndexOutOfBound<[1], 1> // true
|
|
15
|
+
* type R = IsIndexOutOfBound<[1], -2> // true
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export type IsIndexOutOfBound<A extends readonly unknown[], N extends number, Then = true, Else = false> = IsNever<
|
|
19
|
+
IndexAt<A, N, never, never, never>,
|
|
20
|
+
Then,
|
|
21
|
+
Else
|
|
22
|
+
>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { NeverType } from '../never/never_type.js'
|
|
2
|
+
import type { TypePlusOptions } from '../utils/options.js'
|
|
3
|
+
import type { LooseArrayType } from './loose_array_type.js'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* 🎭 *validate*
|
|
7
|
+
* 🔢 *customizable*
|
|
8
|
+
*
|
|
9
|
+
* Checks if `A` is a readonly array or tuple
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* type R = IsReadonly<readonly string[]> // true
|
|
14
|
+
* type R = IsReadonly<readonly [1, 2, 3, 4, 5]> // true
|
|
15
|
+
*
|
|
16
|
+
* type R = IsReadonly<[1, 2, 3, 4, 5]> // false
|
|
17
|
+
* type R = IsReadonly<readonly string[] | number> // boolean
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export type IsReadonly<
|
|
21
|
+
A,
|
|
22
|
+
Options extends IsReadonly.Options = IsReadonly.DefaultOptions
|
|
23
|
+
> =
|
|
24
|
+
TypePlusOptions.Merge<Options, IsReadonly.DefaultOptions> extends infer O extends IsReadonly.Options ?
|
|
25
|
+
NeverType<
|
|
26
|
+
A,
|
|
27
|
+
O['$never'],
|
|
28
|
+
A extends any ?
|
|
29
|
+
LooseArrayType<A,
|
|
30
|
+
Readonly<A> extends A ? O['$then'] : O['$else'],
|
|
31
|
+
O['$notArray']
|
|
32
|
+
> : never
|
|
33
|
+
>
|
|
34
|
+
: never
|
|
35
|
+
|
|
36
|
+
export namespace IsReadonly {
|
|
37
|
+
export interface Options
|
|
38
|
+
extends NeverType.Options, TypePlusOptions.Selection, TypePlusOptions.NotArray { }
|
|
39
|
+
|
|
40
|
+
export interface DefaultOptions {
|
|
41
|
+
$then: true,
|
|
42
|
+
$else: false,
|
|
43
|
+
$never: false,
|
|
44
|
+
$notArray: false
|
|
45
|
+
}
|
|
46
|
+
}
|
|
@@ -3,7 +3,7 @@ import type { CreateTuple } from '../tuple/create_tuple.js'
|
|
|
3
3
|
import type { UnionOfValues } from './union_of_values.js'
|
|
4
4
|
|
|
5
5
|
export type PadStart<
|
|
6
|
-
A extends unknown[],
|
|
6
|
+
A extends readonly unknown[],
|
|
7
7
|
MaxLength extends number,
|
|
8
8
|
PadWith = unknown
|
|
9
9
|
> = MaxLength extends 0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NeverType } from '../never/never_type.js'
|
|
2
2
|
import type { IsTuple } from '../tuple/tuple_type.js'
|
|
3
|
-
import type { IndexAt } from './
|
|
3
|
+
import type { IndexAt } from './array_plus.index_at.js'
|
|
4
4
|
import type { ArrayType } from './array_type.js'
|
|
5
5
|
|
|
6
6
|
/**
|
|
@@ -28,10 +28,10 @@ import type { ArrayType } from './array_type.js'
|
|
|
28
28
|
* ```
|
|
29
29
|
*/
|
|
30
30
|
export type SplitAt<
|
|
31
|
-
A extends unknown[],
|
|
31
|
+
A extends readonly unknown[],
|
|
32
32
|
Index extends number,
|
|
33
33
|
DeleteCount extends number | never = never,
|
|
34
|
-
Insert extends unknown[] | never = never
|
|
34
|
+
Insert extends readonly unknown[] | never = never
|
|
35
35
|
> = ArrayType<
|
|
36
36
|
A,
|
|
37
37
|
[A, A],
|
|
@@ -40,35 +40,35 @@ export type SplitAt<
|
|
|
40
40
|
|
|
41
41
|
export namespace SplitAt {
|
|
42
42
|
export type _<
|
|
43
|
-
A extends unknown[],
|
|
44
|
-
B extends unknown[],
|
|
45
|
-
C extends unknown[],
|
|
43
|
+
A extends readonly unknown[],
|
|
44
|
+
B extends readonly unknown[],
|
|
45
|
+
C extends readonly unknown[],
|
|
46
46
|
Index extends number,
|
|
47
47
|
DeleteCount,
|
|
48
|
-
Insert extends unknown[],
|
|
48
|
+
Insert extends readonly unknown[],
|
|
49
49
|
> = 0 extends A['length']
|
|
50
50
|
? IsTuple<Insert, [[...Insert, ...B], C], [B, C]>
|
|
51
51
|
: (Index extends B['length']
|
|
52
|
-
?
|
|
53
|
-
|
|
52
|
+
? NeverType<
|
|
53
|
+
DeleteCount,
|
|
54
|
+
[B, A],
|
|
55
|
+
_D<A, B, C, DeleteCount, Insert>>
|
|
56
|
+
: (A extends readonly [infer Head, ...infer Tail]
|
|
54
57
|
? _<Tail, [...B, Head], [], Index, DeleteCount, Insert>
|
|
55
58
|
: 'unexpected: A does not extends [Head, ...Tail]'))
|
|
56
59
|
|
|
57
60
|
export type _D<
|
|
58
|
-
A extends unknown[],
|
|
59
|
-
B extends unknown[],
|
|
60
|
-
C extends unknown[],
|
|
61
|
+
A extends readonly unknown[],
|
|
62
|
+
B extends readonly unknown[],
|
|
63
|
+
C extends readonly unknown[],
|
|
61
64
|
DeleteCount,
|
|
62
|
-
Insert extends unknown[],
|
|
63
|
-
> =
|
|
64
|
-
DeleteCount,
|
|
65
|
-
[B, A],
|
|
66
|
-
DeleteCount extends C['length']
|
|
65
|
+
Insert extends readonly unknown[],
|
|
66
|
+
> = DeleteCount extends C['length']
|
|
67
67
|
? IsTuple<Insert, [[...B, ...Insert, ...A], C], [[...B, ...A], C]>
|
|
68
|
-
: (A extends [infer Head, ...infer Tail]
|
|
68
|
+
: (A extends readonly [infer Head, ...infer Tail]
|
|
69
69
|
? _D<Tail, B, [...C, Head], DeleteCount, Insert>
|
|
70
70
|
: IsTuple<Insert, [[...Insert, ...B], C], [B, C]>
|
|
71
71
|
)
|
|
72
|
-
|
|
72
|
+
|
|
73
73
|
}
|
|
74
74
|
|
package/ts/array/array_plus.ts
CHANGED
|
@@ -3,12 +3,14 @@ export type { Entries } from './array.entries.js'
|
|
|
3
3
|
export type { FindLast } from './array.find_last.js'
|
|
4
4
|
export type { Reverse } from './array.reverse.js'
|
|
5
5
|
export type { Some } from './array.some.js'
|
|
6
|
-
export type { IndexAt, IsIndexOutOfBound } from './array_index.js'
|
|
7
6
|
export type { CommonPropKeys } from './array_plus.common_prop_keys.js'
|
|
8
7
|
export type { Concat } from './array_plus.concat.js'
|
|
9
8
|
export type { DropMatch } from './array_plus.drop_match.js'
|
|
10
9
|
export type { ElementMatch } from './array_plus.element_match.js'
|
|
11
10
|
export type { Filter } from './array_plus.filter.js'
|
|
12
11
|
export type { Find } from './array_plus.find.js'
|
|
12
|
+
export type { IndexAt } from './array_plus.index_at.js'
|
|
13
|
+
export type { IsIndexOutOfBound } from './array_plus.is_index_out_of_bound.js'
|
|
14
|
+
export type { IsReadonly } from './array_plus.is_readonly.js'
|
|
13
15
|
export type { PadStart } from './array_plus.pad_start.js'
|
|
14
16
|
export type { SplitAt } from './array_plus.split_at.js'
|
package/ts/array/array_type.ts
CHANGED
|
@@ -18,7 +18,11 @@ import type { StrictNumberType } from '../number/strict_number_type.js'
|
|
|
18
18
|
export type ArrayType<T, Then = T, Else = never> = IsNever<
|
|
19
19
|
T,
|
|
20
20
|
Else,
|
|
21
|
-
[
|
|
21
|
+
[never[]] extends [T]
|
|
22
|
+
? ([T] extends [readonly any[]]
|
|
23
|
+
? StrictNumberType<T['length'], Then, Else>
|
|
24
|
+
: Else)
|
|
25
|
+
: Else
|
|
22
26
|
>
|
|
23
27
|
|
|
24
28
|
/**
|
package/ts/array/filter.ts
CHANGED
|
@@ -12,7 +12,7 @@ import type { Filter as FilterArray } from './array_plus.filter.js'
|
|
|
12
12
|
* type R = Filter<Array<string | undefined>, string> // string[]
|
|
13
13
|
* ```
|
|
14
14
|
*/
|
|
15
|
-
export type Filter<A extends unknown[], Criteria> = number extends A['length']
|
|
15
|
+
export type Filter<A extends readonly unknown[], Criteria> = number extends A['length']
|
|
16
16
|
? FilterArray<A, Criteria>
|
|
17
17
|
: FilterTuple<A, Criteria>
|
|
18
18
|
|
|
@@ -29,4 +29,4 @@ export type Filter<A extends unknown[], Criteria> = number extends A['length']
|
|
|
29
29
|
* type R = KeepMatch<Array<string|undefined>, string> // string[]
|
|
30
30
|
* ```
|
|
31
31
|
*/
|
|
32
|
-
export type KeepMatch<A extends unknown[], Criteria> = Filter<A, Criteria>
|
|
32
|
+
export type KeepMatch<A extends readonly unknown[], Criteria> = Filter<A, Criteria>
|
package/ts/array/find_first.ts
CHANGED
|
@@ -31,26 +31,26 @@ import type { Find as ArrayFind } from './array_plus.find.js'
|
|
|
31
31
|
* With widen match, a narrowed type will match its widen type.
|
|
32
32
|
* e.g. matching `1` against `number` yields `1 | undefined`
|
|
33
33
|
*
|
|
34
|
-
* The widen behavior can be customized by `Options['
|
|
34
|
+
* The widen behavior can be customized by `Options['$widen']`
|
|
35
35
|
*
|
|
36
36
|
* @typeParam Options['caseEmptyTuple'] return type when `A` is an empty tuple.
|
|
37
37
|
* Default to `never`.
|
|
38
38
|
*
|
|
39
|
-
* @typeParam Options['
|
|
39
|
+
* @typeParam Options['$never'] return type when `A` is `never`. Default to `never`.
|
|
40
40
|
*
|
|
41
|
-
* @typeParam Options['
|
|
41
|
+
* @typeParam Options['$noMatch'] Return value when `T` does not match `Criteria`.
|
|
42
42
|
* Default to `never`.
|
|
43
43
|
*
|
|
44
|
-
* @typeParam Options['
|
|
44
|
+
* @typeParam Options['$widen'] return type when `T` in `A` is a widen type of `Criteria`.
|
|
45
45
|
* Default to `Criteria | undefined`.
|
|
46
46
|
* Set it to `never` for a more type-centric behavior
|
|
47
47
|
*
|
|
48
|
-
* @typeParam Options['
|
|
48
|
+
* @typeParam Options['$unionMiss'] Return value when a branch of the union `T` does not match `Criteria`.
|
|
49
49
|
* Default to `undefined`.
|
|
50
50
|
* Since it is a union, the result will be join to the matched branch as union.
|
|
51
51
|
*/
|
|
52
52
|
export type FindFirst<
|
|
53
|
-
A extends unknown[],
|
|
53
|
+
A extends readonly unknown[],
|
|
54
54
|
Criteria, Options extends FindFirst.Options = FindFirst.DefaultOptions<Criteria>
|
|
55
55
|
> = TupleType<
|
|
56
56
|
A,
|
package/ts/array/head.ts
CHANGED
|
@@ -14,18 +14,18 @@ import type { NeverType } from '../never/never_type.js'
|
|
|
14
14
|
* type R = Head<[]> // never
|
|
15
15
|
* ```
|
|
16
16
|
*
|
|
17
|
-
* @typeParam Options['
|
|
17
|
+
* @typeParam Options['$never'] Return type when `T` is `never`.
|
|
18
18
|
* Default to `never`.
|
|
19
19
|
*
|
|
20
20
|
* @typeParam Options['caseEmptyTuple'] Return type when `T` is `[]`.
|
|
21
21
|
* Default to `never`.
|
|
22
22
|
*/
|
|
23
23
|
export type Head<
|
|
24
|
-
T extends unknown[],
|
|
24
|
+
T extends readonly unknown[],
|
|
25
25
|
Options extends Head.Options = Head.DefaultOptions
|
|
26
26
|
> = NeverType<
|
|
27
27
|
T,
|
|
28
|
-
Options['
|
|
28
|
+
Options['$never'],
|
|
29
29
|
T['length'] extends 0 ? Options['caseEmptyTuple'] : T[0]
|
|
30
30
|
>
|
|
31
31
|
|
|
@@ -6,7 +6,7 @@ import type { Tail } from '../tuple/tail.js'
|
|
|
6
6
|
*
|
|
7
7
|
* Gets the intersect of properties of the elements in `A`.
|
|
8
8
|
*/
|
|
9
|
-
export type IntersectOfProps<A extends Record<any, unknown>[], P extends KeyTypes> = number extends A['length']
|
|
9
|
+
export type IntersectOfProps<A extends readonly Record<any, unknown>[], P extends KeyTypes> = number extends A['length']
|
|
10
10
|
? A[0][P]
|
|
11
11
|
: A['length'] extends 0
|
|
12
12
|
? never
|
package/ts/array/last.ts
CHANGED
|
@@ -13,18 +13,20 @@ import type { NeverType } from '../never/never_type.js'
|
|
|
13
13
|
* type R = Last<[]> // never
|
|
14
14
|
* ```
|
|
15
15
|
*
|
|
16
|
-
* @typeParam Options['
|
|
16
|
+
* @typeParam Options['$never'] Return type when `T` is `never`.
|
|
17
17
|
* Default to `never`.
|
|
18
18
|
*
|
|
19
19
|
* @typeParam Options['caseEmptyTuple'] Return type when `T` is `[]`.
|
|
20
20
|
* Default to `never`.
|
|
21
21
|
*/
|
|
22
22
|
export type Last<
|
|
23
|
-
T extends unknown[],
|
|
23
|
+
T extends readonly unknown[],
|
|
24
24
|
Options extends Last.Options = Last.DefaultOptions
|
|
25
25
|
> = NeverType<T,
|
|
26
|
-
Options['
|
|
27
|
-
T['length'] extends 0
|
|
26
|
+
Options['$never'],
|
|
27
|
+
T['length'] extends 0
|
|
28
|
+
? Options['caseEmptyTuple']
|
|
29
|
+
: T extends readonly [...unknown[], infer R] ? R : T[0]
|
|
28
30
|
>
|
|
29
31
|
|
|
30
32
|
export namespace Last {
|