type-plus 7.6.2 → 8.0.0-beta.2
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/any/any.d.ts +49 -0
- package/esm/any/any.d.ts.map +1 -0
- package/esm/any/any.js +2 -0
- package/esm/any/any.js.map +1 -0
- package/esm/any/is_any.d.ts +55 -0
- package/esm/any/is_any.d.ts.map +1 -0
- package/esm/any/is_any.js +2 -0
- package/esm/any/is_any.js.map +1 -0
- package/esm/any/is_not_any.d.ts +55 -0
- package/esm/any/is_not_any.d.ts.map +1 -0
- package/esm/any/is_not_any.js +2 -0
- package/esm/any/is_not_any.js.map +1 -0
- package/esm/array/array.at.d.ts +11 -4
- package/esm/array/array.at.d.ts.map +1 -1
- package/esm/array/array.at.js.map +1 -1
- package/esm/array/array.entries.d.ts +6 -3
- package/esm/array/array.entries.d.ts.map +1 -1
- package/esm/array/array.entries.js.map +1 -1
- package/esm/array/array.find_last.d.ts +5 -2
- package/esm/array/array.find_last.d.ts.map +1 -1
- package/esm/array/array.find_last.js.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.reverse.js.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.some.js.map +1 -1
- package/esm/array/array_plus.common_prop_keys.d.ts +9 -5
- package/esm/array/array_plus.common_prop_keys.d.ts.map +1 -1
- package/esm/array/array_plus.common_prop_keys.js.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.concat.js.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 +4 -3
- package/esm/array/array_plus.drop_match.d.ts.map +1 -1
- package/esm/array/array_plus.drop_match.js.map +1 -1
- package/esm/array/array_plus.element_match.d.ts +15 -12
- package/esm/array/array_plus.element_match.d.ts.map +1 -1
- package/esm/array/array_plus.element_match.js.map +1 -1
- package/esm/array/array_plus.filter.d.ts +28 -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 +17 -14
- package/esm/array/array_plus.find.d.ts.map +1 -1
- package/esm/array/array_plus.find.js.map +1 -1
- package/esm/array/array_plus.index_at.d.ts +42 -0
- package/esm/array/array_plus.index_at.d.ts.map +1 -0
- package/esm/array/array_plus.index_at.js +84 -0
- package/esm/array/array_plus.index_at.js.map +1 -0
- package/esm/array/array_plus.is_index_out_of_bound.d.ts +21 -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 +35 -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.js.map +1 -1
- 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.pad_start.js.map +1 -1
- package/esm/array/array_plus.split_at.d.ts +23 -13
- package/esm/array/array_plus.split_at.d.ts.map +1 -1
- package/esm/array/array_plus.split_at.js.map +1 -1
- package/esm/array/filter.d.ts +2 -2
- package/esm/array/filter.d.ts.map +1 -1
- package/esm/array/filter.js.map +1 -1
- package/esm/array/find_first.d.ts +10 -7
- package/esm/array/find_first.d.ts.map +1 -1
- package/esm/array/find_first.js.map +1 -1
- package/esm/array/head.d.ts +7 -5
- package/esm/array/head.d.ts.map +1 -1
- package/esm/array/head.js.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/intersect_of_props.js.map +1 -1
- package/esm/array/is_array.d.ts +89 -0
- package/esm/array/is_array.d.ts.map +1 -0
- package/esm/array/is_array.js +2 -0
- package/esm/array/is_array.js.map +1 -0
- package/esm/array/is_not_array.d.ts +89 -0
- package/esm/array/is_not_array.d.ts.map +1 -0
- package/esm/array/is_not_array.js +2 -0
- package/esm/array/is_not_array.js.map +1 -0
- package/esm/array/last.d.ts +7 -5
- package/esm/array/last.d.ts.map +1 -1
- package/esm/array/last.js.map +1 -1
- package/esm/array/literal_array.d.ts.map +1 -1
- package/esm/array/literal_array.js.map +1 -1
- package/esm/array/loose_array_type.d.ts +65 -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/pad_start.js.map +1 -1
- package/esm/array/reduce_while.d.ts.map +1 -1
- package/esm/array/reduce_while.js.map +1 -1
- package/esm/array/reverse.d.ts.map +1 -1
- package/esm/array/reverse.js.map +1 -1
- 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_props.js.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/array/union_of_values.js.map +1 -1
- package/esm/assertion/assert_type.d.ts +2 -2
- package/esm/assertion/assert_type.d.ts.map +1 -1
- package/esm/assertion/assert_type.js +44 -47
- package/esm/assertion/assert_type.js.map +1 -1
- package/esm/bigint/cast.d.ts.map +1 -1
- package/esm/bigint/cast.js.map +1 -1
- package/esm/bigint/is_bigint.d.ts +97 -0
- package/esm/bigint/is_bigint.d.ts.map +1 -0
- package/esm/bigint/is_bigint.js +2 -0
- package/esm/bigint/is_bigint.js.map +1 -0
- package/esm/bigint/is_bigint_literal.d.ts +85 -0
- package/esm/bigint/is_bigint_literal.d.ts.map +1 -0
- package/esm/bigint/is_bigint_literal.js +2 -0
- package/esm/bigint/is_bigint_literal.js.map +1 -0
- package/esm/bigint/is_not_bigint.d.ts +94 -0
- package/esm/bigint/is_not_bigint.d.ts.map +1 -0
- package/esm/bigint/is_not_bigint.js +2 -0
- package/esm/bigint/is_not_bigint.js.map +1 -0
- package/esm/bigint/is_not_bigint_literal.d.ts +83 -0
- package/esm/bigint/is_not_bigint_literal.d.ts.map +1 -0
- package/esm/bigint/is_not_bigint_literal.js +2 -0
- package/esm/bigint/is_not_bigint_literal.js.map +1 -0
- package/esm/binary/Bit.d.ts.map +1 -1
- package/esm/binary/Bit.js.map +1 -1
- package/esm/binary/_binary.d.ts.map +1 -1
- package/esm/binary/_binary.js.map +1 -1
- package/esm/binary/index.d.ts.map +1 -1
- package/esm/binary/index.js.map +1 -1
- package/esm/boolean/is_boolean.d.ts +91 -0
- package/esm/boolean/is_boolean.d.ts.map +1 -0
- package/esm/boolean/is_boolean.js +2 -0
- package/esm/boolean/is_boolean.js.map +1 -0
- package/esm/boolean/is_false.d.ts +78 -0
- package/esm/boolean/is_false.d.ts.map +1 -0
- package/esm/boolean/is_false.js +2 -0
- package/esm/boolean/is_false.js.map +1 -0
- package/esm/boolean/is_not_boolean.d.ts +91 -0
- package/esm/boolean/is_not_boolean.d.ts.map +1 -0
- package/esm/boolean/is_not_boolean.js +2 -0
- package/esm/boolean/is_not_boolean.js.map +1 -0
- package/esm/boolean/is_not_false.d.ts +79 -0
- package/esm/boolean/is_not_false.d.ts.map +1 -0
- package/esm/boolean/is_not_false.js +2 -0
- package/esm/boolean/is_not_false.js.map +1 -0
- package/esm/boolean/is_not_true.d.ts +80 -0
- package/esm/boolean/is_not_true.d.ts.map +1 -0
- package/esm/boolean/is_not_true.js +2 -0
- package/esm/boolean/is_not_true.js.map +1 -0
- package/esm/boolean/is_true.d.ts +78 -0
- package/esm/boolean/is_true.d.ts.map +1 -0
- package/esm/boolean/is_true.js +2 -0
- package/esm/boolean/is_true.js.map +1 -0
- package/esm/class/AnyConstructor.d.ts +1 -1
- package/esm/class/AnyConstructor.d.ts.map +1 -1
- package/esm/class/AnyConstructor.js.map +1 -1
- package/esm/class/index.d.ts.map +1 -1
- package/esm/class/index.js.map +1 -1
- package/esm/class/isConstructor.d.ts +1 -1
- package/esm/class/isConstructor.d.ts.map +1 -1
- package/esm/class/isConstructor.js +2 -2
- package/esm/class/isConstructor.js.map +1 -1
- package/esm/composable_types.d.ts.map +1 -1
- package/esm/composable_types.js.map +1 -1
- package/esm/equal/equal.d.ts +10 -6
- package/esm/equal/equal.d.ts.map +1 -1
- package/esm/equal/equal.js.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/function/any_function.d.ts.map +1 -1
- package/esm/function/any_function.js.map +1 -1
- package/esm/function/extract_function.d.ts.map +1 -1
- package/esm/function/extract_function.js.map +1 -1
- package/esm/function/is_function.d.ts +61 -0
- package/esm/function/is_function.d.ts.map +1 -0
- package/esm/function/is_function.js +2 -0
- package/esm/function/is_function.js.map +1 -0
- package/esm/function/is_not_function.d.ts +73 -0
- package/esm/function/is_not_function.d.ts.map +1 -0
- package/esm/function/is_not_function.js +2 -0
- package/esm/function/is_not_function.js.map +1 -0
- package/esm/function/is_not_strict_function.d.ts +31 -0
- package/esm/function/is_not_strict_function.d.ts.map +1 -0
- package/esm/function/is_not_strict_function.js +2 -0
- package/esm/function/is_not_strict_function.js.map +1 -0
- package/esm/function/is_strict_function.d.ts +31 -0
- package/esm/function/is_strict_function.d.ts.map +1 -0
- package/esm/function/is_strict_function.js +2 -0
- package/esm/function/is_strict_function.js.map +1 -0
- package/esm/functional/ChainFn.d.ts.map +1 -1
- package/esm/functional/ChainFn.js.map +1 -1
- package/esm/functional/Maybe.d.ts +1 -1
- package/esm/functional/Maybe.d.ts.map +1 -1
- package/esm/functional/Maybe.js.map +1 -1
- package/esm/functional/compose.d.ts.map +1 -1
- package/esm/functional/compose.js +1 -0
- package/esm/functional/compose.js.map +1 -1
- package/esm/functional/context.d.ts.map +1 -1
- package/esm/functional/context.js +1 -1
- package/esm/functional/context.js.map +1 -1
- package/esm/functional/index.d.ts.map +1 -1
- package/esm/functional/index.js.map +1 -1
- package/esm/index.d.ts +83 -28
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -0
- package/esm/index.js.map +1 -1
- package/esm/json.d.ts.map +1 -1
- package/esm/json.js.map +1 -1
- package/esm/math/abs.d.ts +4 -5
- package/esm/math/abs.d.ts.map +1 -1
- package/esm/math/abs.js.map +1 -1
- package/esm/math/add.d.ts.map +1 -1
- package/esm/math/add.js.map +1 -1
- package/esm/math/greater_than.d.ts +1 -1
- package/esm/math/greater_than.d.ts.map +1 -1
- package/esm/math/greater_than.js.map +1 -1
- package/esm/math/index.d.ts +1 -1
- package/esm/math/index.d.ts.map +1 -1
- package/esm/math/index.js.map +1 -1
- package/esm/math/math_plus.d.ts.map +1 -1
- package/esm/math/math_plus.js.map +1 -1
- package/esm/math/math_plus.to_negative.d.ts.map +1 -1
- package/esm/math/math_plus.to_negative.js.map +1 -1
- package/esm/math/max.d.ts +1 -1
- package/esm/math/max.d.ts.map +1 -1
- package/esm/math/max.js.map +1 -1
- package/esm/math/multiply.d.ts.map +1 -1
- package/esm/math/multiply.js.map +1 -1
- package/esm/math/numeric_struct.d.ts.map +1 -1
- package/esm/math/numeric_struct.js.map +1 -1
- package/esm/math/subtract.d.ts.map +1 -1
- package/esm/math/subtract.js.map +1 -1
- package/esm/mix_types/box.d.ts +47 -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/exclude.d.ts +19 -0
- package/esm/mix_types/exclude.d.ts.map +1 -0
- package/esm/mix_types/exclude.js +2 -0
- package/esm/mix_types/exclude.js.map +1 -0
- package/esm/mix_types/is_any_or_never.d.ts +28 -0
- package/esm/mix_types/is_any_or_never.d.ts.map +1 -0
- package/esm/mix_types/is_any_or_never.js +2 -0
- package/esm/mix_types/is_any_or_never.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/mix_types/merge.js +14 -0
- package/esm/mix_types/merge.js.map +1 -0
- package/esm/never/is_never.d.ts +59 -0
- package/esm/never/is_never.d.ts.map +1 -0
- package/esm/never/is_never.js +2 -0
- package/esm/never/is_never.js.map +1 -0
- package/esm/never/is_not_never.d.ts +59 -0
- package/esm/never/is_not_never.d.ts.map +1 -0
- package/esm/never/is_not_never.js +2 -0
- package/esm/never/is_not_never.js.map +1 -0
- package/esm/never/never.d.ts +75 -0
- package/esm/never/never.d.ts.map +1 -0
- package/esm/never/never.js +2 -0
- package/esm/never/never.js.map +1 -0
- package/esm/nodejs/index.d.ts.map +1 -1
- package/esm/nodejs/index.js.map +1 -1
- package/esm/nodejs/isNodeError.d.ts.map +1 -1
- package/esm/nodejs/isNodeError.js.map +1 -1
- package/esm/nominal/brand.d.ts.map +1 -1
- package/esm/nominal/brand.js +1 -3
- package/esm/nominal/brand.js.map +1 -1
- package/esm/nominal/constants.d.ts.map +1 -1
- package/esm/nominal/constants.js.map +1 -1
- package/esm/nominal/flavor.d.ts.map +1 -1
- package/esm/nominal/flavor.js +1 -3
- package/esm/nominal/flavor.js.map +1 -1
- package/esm/nominal/index.d.ts.map +1 -1
- package/esm/nominal/index.js.map +1 -1
- package/esm/nominal/nominal_match.d.ts.map +1 -1
- package/esm/nominal/nominal_match.js +1 -3
- package/esm/nominal/nominal_match.js.map +1 -1
- package/esm/null/is_not_null.d.ts +71 -0
- package/esm/null/is_not_null.d.ts.map +1 -0
- package/esm/null/is_not_null.js +2 -0
- package/esm/null/is_not_null.js.map +1 -0
- package/esm/null/is_null.d.ts +75 -0
- package/esm/null/is_null.d.ts.map +1 -0
- package/esm/null/is_null.js +2 -0
- package/esm/null/is_null.js.map +1 -0
- package/esm/number/cast.d.ts.map +1 -1
- package/esm/number/cast.js.map +1 -1
- package/esm/number/is_not_number.d.ts +84 -0
- package/esm/number/is_not_number.d.ts.map +1 -0
- package/esm/number/is_not_number.js +2 -0
- package/esm/number/is_not_number.js.map +1 -0
- package/esm/number/is_not_number_literal.d.ts +83 -0
- package/esm/number/is_not_number_literal.d.ts.map +1 -0
- package/esm/number/is_not_number_literal.js +2 -0
- package/esm/number/is_not_number_literal.js.map +1 -0
- package/esm/number/is_number.d.ts +87 -0
- package/esm/number/is_number.d.ts.map +1 -0
- package/esm/number/is_number.js +2 -0
- package/esm/number/is_number.js.map +1 -0
- package/esm/number/is_number_literal.d.ts +85 -0
- package/esm/number/is_number_literal.d.ts.map +1 -0
- package/esm/number/is_number_literal.js +2 -0
- package/esm/number/is_number_literal.js.map +1 -0
- package/esm/number/number_array.d.ts.map +1 -1
- package/esm/number/number_array.js.map +1 -1
- package/esm/number/number_plus.d.ts +11 -6
- package/esm/number/number_plus.d.ts.map +1 -1
- package/esm/number/number_plus.js +1 -0
- package/esm/number/number_plus.js.map +1 -1
- package/esm/numeric/cast.d.ts.map +1 -1
- package/esm/numeric/cast.js.map +1 -1
- package/esm/numeric/is_integer.d.ts +30 -0
- package/esm/numeric/is_integer.d.ts.map +1 -0
- package/esm/numeric/is_integer.js +2 -0
- package/esm/numeric/is_integer.js.map +1 -0
- package/esm/numeric/is_negative.d.ts +35 -0
- package/esm/numeric/is_negative.d.ts.map +1 -0
- package/esm/numeric/is_negative.js +2 -0
- package/esm/numeric/is_negative.js.map +1 -0
- package/esm/numeric/is_not_integer.d.ts +32 -0
- package/esm/numeric/is_not_integer.d.ts.map +1 -0
- package/esm/numeric/is_not_integer.js +2 -0
- package/esm/numeric/is_not_integer.js.map +1 -0
- package/esm/numeric/is_not_negative.d.ts +35 -0
- package/esm/numeric/is_not_negative.d.ts.map +1 -0
- package/esm/numeric/is_not_negative.js +2 -0
- package/esm/numeric/is_not_negative.js.map +1 -0
- package/esm/numeric/is_not_numeric.d.ts +19 -0
- package/esm/numeric/is_not_numeric.d.ts.map +1 -0
- package/esm/numeric/is_not_numeric.js +2 -0
- package/esm/numeric/is_not_numeric.js.map +1 -0
- package/esm/numeric/is_not_positive.d.ts +36 -0
- package/esm/numeric/is_not_positive.d.ts.map +1 -0
- package/esm/numeric/is_not_positive.js +2 -0
- package/esm/numeric/is_not_positive.js.map +1 -0
- package/esm/numeric/is_numeric.d.ts +19 -0
- package/esm/numeric/is_numeric.d.ts.map +1 -0
- package/esm/numeric/is_numeric.js +2 -0
- package/esm/numeric/is_numeric.js.map +1 -0
- package/esm/numeric/is_positive.d.ts +35 -0
- package/esm/numeric/is_positive.d.ts.map +1 -0
- package/esm/numeric/is_positive.js +2 -0
- package/esm/numeric/is_positive.js.map +1 -0
- package/esm/numeric/numeric_plus.d.ts +9 -4
- package/esm/numeric/numeric_plus.d.ts.map +1 -1
- package/esm/numeric/numeric_plus.js.map +1 -1
- package/esm/numeric/numeric_type.d.ts +0 -50
- package/esm/numeric/numeric_type.d.ts.map +1 -1
- package/esm/numeric/numeric_type.js.map +1 -1
- package/esm/object/ANotB.d.ts +1 -1
- package/esm/object/ANotB.d.ts.map +1 -1
- package/esm/object/ANotB.js.map +1 -1
- package/esm/object/ExcludePropType.d.ts.map +1 -1
- package/esm/object/ExcludePropType.js.map +1 -1
- package/esm/object/IsDisjoint.d.ts +1 -1
- package/esm/object/IsDisjoint.d.ts.map +1 -1
- package/esm/object/IsDisjoint.js.map +1 -1
- package/esm/object/IsRecord.d.ts.map +1 -1
- package/esm/object/IsRecord.js.map +1 -1
- package/esm/object/KeyTypes.d.ts.map +1 -1
- package/esm/object/KeyTypes.js.map +1 -1
- package/esm/object/KeyofOptional.d.ts.map +1 -1
- package/esm/object/KeyofOptional.js.map +1 -1
- package/esm/object/KeysWithDiffType.d.ts +2 -2
- package/esm/object/KeysWithDiffType.d.ts.map +1 -1
- package/esm/object/KeysWithDiffType.js.map +1 -1
- package/esm/object/KnownKeys.d.ts.map +1 -1
- package/esm/object/KnownKeys.js.map +1 -1
- package/esm/object/Partial.d.ts.map +1 -1
- package/esm/object/Partial.js.map +1 -1
- package/esm/object/RecursiveIntersect.d.ts +2 -2
- package/esm/object/RecursiveIntersect.d.ts.map +1 -1
- package/esm/object/RecursiveIntersect.js.map +1 -1
- package/esm/object/RecursiveRequired.d.ts +1 -1
- package/esm/object/RecursiveRequired.d.ts.map +1 -1
- package/esm/object/RecursiveRequired.js.map +1 -1
- package/esm/object/Required.d.ts +1 -2
- package/esm/object/Required.d.ts.map +1 -1
- package/esm/object/Required.js.map +1 -1
- package/esm/object/RequiredKeys.d.ts +2 -2
- package/esm/object/RequiredKeys.d.ts.map +1 -1
- package/esm/object/RequiredKeys.js.map +1 -1
- package/esm/object/SpreadRecord.d.ts.map +1 -1
- package/esm/object/SpreadRecord.js.map +1 -1
- package/esm/object/ValueOf.d.ts.map +1 -1
- package/esm/object/ValueOf.js.map +1 -1
- package/esm/object/any_record.d.ts +3 -0
- 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/everyKey.d.ts.map +1 -1
- package/esm/object/everyKey.js.map +1 -1
- package/esm/object/facade.d.ts +1 -1
- package/esm/object/facade.d.ts.map +1 -1
- package/esm/object/facade.js.map +1 -1
- package/esm/object/filterKey.d.ts.map +1 -1
- package/esm/object/filterKey.js.map +1 -1
- package/esm/object/findKey.d.ts.map +1 -1
- package/esm/object/findKey.js.map +1 -1
- package/esm/object/forEachKey.d.ts.map +1 -1
- package/esm/object/forEachKey.js +1 -1
- package/esm/object/forEachKey.js.map +1 -1
- package/esm/object/getField.d.ts.map +1 -1
- package/esm/object/getField.js.map +1 -1
- package/esm/object/hasKey.d.ts +1 -1
- package/esm/object/hasKey.d.ts.map +1 -1
- package/esm/object/hasKey.js.map +1 -1
- package/esm/object/hasProperty.d.ts.map +1 -1
- package/esm/object/hasProperty.js.map +1 -1
- package/esm/object/index.d.ts +15 -16
- package/esm/object/index.d.ts.map +1 -1
- package/esm/object/index.js.map +1 -1
- package/esm/object/is_not_object.d.ts +119 -0
- package/esm/object/is_not_object.d.ts.map +1 -0
- package/esm/object/is_not_object.js +2 -0
- package/esm/object/is_not_object.js.map +1 -0
- package/esm/object/is_object.d.ts +104 -0
- package/esm/object/is_object.d.ts.map +1 -0
- package/esm/object/is_object.js +2 -0
- package/esm/object/is_object.js.map +1 -0
- package/esm/object/left_join.d.ts +1 -6
- package/esm/object/left_join.d.ts.map +1 -1
- package/esm/object/left_join.js.map +1 -1
- package/esm/object/mapKey.d.ts.map +1 -1
- package/esm/object/mapKey.js.map +1 -1
- package/esm/object/mapProperties.d.ts +1 -1
- package/esm/object/mapProperties.d.ts.map +1 -1
- package/esm/object/mapProperties.js.map +1 -1
- package/esm/object/merge.d.ts +80 -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 +1 -8
- package/esm/object/omit.d.ts.map +1 -1
- package/esm/object/omit.js.map +1 -1
- package/esm/object/optional_key.d.ts +2 -2
- package/esm/object/optional_key.d.ts.map +1 -1
- package/esm/object/optional_key.js.map +1 -1
- package/esm/object/pick.d.ts +1 -1
- package/esm/object/pick.d.ts.map +1 -1
- package/esm/object/pick.js.map +1 -1
- package/esm/object/properties.d.ts.map +1 -1
- package/esm/object/properties.js.map +1 -1
- package/esm/object/record.d.ts.map +1 -1
- package/esm/object/record.js.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/recursive_partial.js.map +1 -1
- package/esm/object/reduceKey.d.ts.map +1 -1
- package/esm/object/reduceKey.js.map +1 -1
- package/esm/object/replaceProperty.d.ts +1 -1
- package/esm/object/replaceProperty.d.ts.map +1 -1
- package/esm/object/replaceProperty.js.map +1 -1
- package/esm/object/someKey.d.ts.map +1 -1
- package/esm/object/someKey.js.map +1 -1
- package/esm/object/split.d.ts +2 -3
- package/esm/object/split.d.ts.map +1 -1
- package/esm/object/split.js.map +1 -1
- package/esm/object/typeOverrideIncompatible.d.ts.map +1 -1
- package/esm/object/typeOverrideIncompatible.js +4 -6
- package/esm/object/typeOverrideIncompatible.js.map +1 -1
- package/esm/predicates/CanAssign.d.ts +12 -4
- package/esm/predicates/CanAssign.d.ts.map +1 -1
- package/esm/predicates/CanAssign.js.map +1 -1
- package/esm/predicates/Extends.d.ts +3 -0
- package/esm/predicates/Extends.d.ts.map +1 -1
- package/esm/predicates/Extends.js.map +1 -1
- package/esm/predicates/If.d.ts.map +1 -1
- package/esm/predicates/If.js.map +1 -1
- package/esm/predicates/IsEmptyObject.d.ts.map +1 -1
- package/esm/predicates/IsEmptyObject.js.map +1 -1
- package/esm/predicates/assignable.d.ts +89 -0
- package/esm/predicates/assignable.d.ts.map +1 -0
- package/esm/predicates/assignable.js +2 -0
- package/esm/predicates/assignable.js.map +1 -0
- package/esm/predicates/index.d.ts.map +1 -1
- package/esm/predicates/index.js.map +1 -1
- package/esm/predicates/literal.d.ts +1 -1
- package/esm/predicates/literal.d.ts.map +1 -1
- package/esm/predicates/literal.js.map +1 -1
- package/esm/predicates/logical.d.ts.map +1 -1
- package/esm/predicates/logical.js.map +1 -1
- package/esm/predicates/not_assignable.d.ts +89 -0
- package/esm/predicates/not_assignable.d.ts.map +1 -0
- package/esm/predicates/not_assignable.js +2 -0
- package/esm/predicates/not_assignable.js.map +1 -0
- package/esm/primitive.d.ts.map +1 -1
- package/esm/primitive.js.map +1 -1
- package/esm/promise/MaybePromise.d.ts.map +1 -1
- package/esm/promise/MaybePromise.js.map +1 -1
- package/esm/promise/PromiseValue.d.ts.map +1 -1
- package/esm/promise/PromiseValue.js.map +1 -1
- package/esm/promise/PromiseValueMerge.d.ts.map +1 -1
- package/esm/promise/PromiseValueMerge.js.map +1 -1
- package/esm/promise/index.d.ts +1 -1
- package/esm/promise/index.d.ts.map +1 -1
- package/esm/promise/index.js.map +1 -1
- package/esm/promise/isPromise.d.ts.map +1 -1
- package/esm/promise/isPromise.js.map +1 -1
- package/esm/promise/mapSeries.d.ts.map +1 -1
- package/esm/promise/mapSeries.js.map +1 -1
- package/esm/string/$extract_manipulated_string.d.ts +18 -0
- package/esm/string/$extract_manipulated_string.d.ts.map +1 -0
- package/esm/string/$extract_manipulated_string.js +2 -0
- package/esm/string/$extract_manipulated_string.js.map +1 -0
- package/esm/string/_string_type.d.ts +5 -0
- package/esm/string/_string_type.d.ts.map +1 -0
- package/esm/string/_string_type.js +2 -0
- package/esm/string/_string_type.js.map +1 -0
- package/esm/string/is_not_string.d.ts +84 -0
- package/esm/string/is_not_string.d.ts.map +1 -0
- package/esm/string/is_not_string.js +2 -0
- package/esm/string/is_not_string.js.map +1 -0
- package/esm/string/is_not_string_literal.d.ts +104 -0
- package/esm/string/is_not_string_literal.d.ts.map +1 -0
- package/esm/string/is_not_string_literal.js +2 -0
- package/esm/string/is_not_string_literal.js.map +1 -0
- package/esm/string/is_not_template_literal.d.ts +73 -0
- package/esm/string/is_not_template_literal.d.ts.map +1 -0
- package/esm/string/is_not_template_literal.js +2 -0
- package/esm/string/is_not_template_literal.js.map +1 -0
- package/esm/string/is_string.d.ts +83 -0
- package/esm/string/is_string.d.ts.map +1 -0
- package/esm/string/is_string.js +2 -0
- package/esm/string/is_string.js.map +1 -0
- package/esm/string/is_string_literal.d.ts +104 -0
- package/esm/string/is_string_literal.d.ts.map +1 -0
- package/esm/string/is_string_literal.js +2 -0
- package/esm/string/is_string_literal.js.map +1 -0
- package/esm/string/is_template_literal.d.ts +75 -0
- package/esm/string/is_template_literal.d.ts.map +1 -0
- package/esm/string/is_template_literal.js +2 -0
- package/esm/string/is_template_literal.js.map +1 -0
- package/esm/string/string.d.ts +1 -1
- package/esm/string/string.d.ts.map +1 -1
- package/esm/string/string.js.map +1 -1
- package/esm/string/string_plus.d.ts.map +1 -1
- package/esm/string/string_plus.js.map +1 -1
- package/esm/symbol/is_not_symbol.d.ts +71 -0
- package/esm/symbol/is_not_symbol.d.ts.map +1 -0
- package/esm/symbol/is_not_symbol.js +2 -0
- package/esm/symbol/is_not_symbol.js.map +1 -0
- package/esm/symbol/is_symbol.d.ts +73 -0
- package/esm/symbol/is_symbol.d.ts.map +1 -0
- package/esm/symbol/is_symbol.js +2 -0
- package/esm/symbol/is_symbol.js.map +1 -0
- package/esm/testing/stub.d.ts.map +1 -1
- package/esm/testing/stub.js.map +1 -1
- package/esm/testing/test_type.d.ts +84 -44
- package/esm/testing/test_type.d.ts.map +1 -1
- package/esm/testing/test_type.js.map +1 -1
- package/esm/tuple/common_prop_keys.d.ts +1 -1
- package/esm/tuple/common_prop_keys.d.ts.map +1 -1
- package/esm/tuple/common_prop_keys.js.map +1 -1
- package/esm/tuple/create_tuple.d.ts +2 -2
- package/esm/tuple/create_tuple.d.ts.map +1 -1
- package/esm/tuple/create_tuple.js.map +1 -1
- package/esm/tuple/drop.d.ts +8 -8
- package/esm/tuple/drop.d.ts.map +1 -1
- package/esm/tuple/drop.js.map +1 -1
- package/esm/tuple/is_not_tuple.d.ts +78 -0
- package/esm/tuple/is_not_tuple.d.ts.map +1 -0
- package/esm/tuple/is_not_tuple.js +2 -0
- package/esm/tuple/is_not_tuple.js.map +1 -0
- package/esm/tuple/is_tuple.d.ts +76 -0
- package/esm/tuple/is_tuple.d.ts.map +1 -0
- package/esm/tuple/is_tuple.js +2 -0
- package/esm/tuple/is_tuple.js.map +1 -0
- package/esm/tuple/tail.d.ts +1 -1
- package/esm/tuple/tail.d.ts.map +1 -1
- package/esm/tuple/tail.js.map +1 -1
- package/esm/tuple/tuple_plus.common_prop_keys.d.ts +9 -5
- package/esm/tuple/tuple_plus.common_prop_keys.d.ts.map +1 -1
- package/esm/tuple/tuple_plus.common_prop_keys.js.map +1 -1
- package/esm/tuple/tuple_plus.d.ts.map +1 -1
- package/esm/tuple/tuple_plus.drop_match.d.ts.map +1 -1
- package/esm/tuple/tuple_plus.drop_match.js.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.filter.js.map +1 -1
- package/esm/tuple/tuple_plus.find.d.ts +21 -18
- package/esm/tuple/tuple_plus.find.d.ts.map +1 -1
- package/esm/tuple/tuple_plus.find.js.map +1 -1
- package/esm/tuple/tuple_plus.js.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_plus.pad_start.js.map +1 -1
- package/esm/type/failed.d.ts.map +1 -1
- package/esm/type/failed.js.map +1 -1
- package/esm/type/no_infer.d.ts +4 -3
- package/esm/type/no_infer.d.ts.map +1 -1
- package/esm/type/no_infer.js.map +1 -1
- package/esm/type-guard/is_type.d.ts +1 -1
- package/esm/type-guard/is_type.d.ts.map +1 -1
- package/esm/type-guard/is_type.js +3 -7
- package/esm/type-guard/is_type.js.map +1 -1
- package/esm/type_plus/$equality.d.ts +12 -0
- package/esm/type_plus/$equality.d.ts.map +1 -0
- package/esm/type_plus/$equality.js +2 -0
- package/esm/type_plus/$equality.js.map +1 -0
- package/esm/type_plus/$error.d.ts +8 -0
- package/esm/type_plus/$error.d.ts.map +1 -0
- package/esm/type_plus/$error.js +2 -0
- package/esm/type_plus/$error.js.map +1 -0
- package/esm/type_plus/$infer_error.d.ts +21 -0
- package/esm/type_plus/$infer_error.d.ts.map +1 -0
- package/esm/type_plus/$infer_error.js +2 -0
- package/esm/type_plus/$infer_error.js.map +1 -0
- package/esm/type_plus/$merge_options.d.ts +11 -0
- package/esm/type_plus/$merge_options.d.ts.map +1 -0
- package/esm/type_plus/$merge_options.js +2 -0
- package/esm/type_plus/$merge_options.js.map +1 -0
- package/esm/type_plus/$resolve_options.d.ts +11 -0
- package/esm/type_plus/$resolve_options.d.ts.map +1 -0
- package/esm/type_plus/$resolve_options.js +2 -0
- package/esm/type_plus/$resolve_options.js.map +1 -0
- package/esm/type_plus/$special_type.d.ts +25 -0
- package/esm/type_plus/$special_type.d.ts.map +1 -0
- package/esm/type_plus/$special_type.js +2 -0
- package/esm/type_plus/$special_type.js.map +1 -0
- package/esm/type_plus/$type.d.ts +11 -0
- package/esm/type_plus/$type.d.ts.map +1 -0
- package/esm/type_plus/$type.js +2 -0
- package/esm/type_plus/$type.js.map +1 -0
- package/esm/type_plus/branch/$branch.d.ts +29 -0
- package/esm/type_plus/branch/$branch.d.ts.map +1 -0
- package/esm/type_plus/branch/$branch.js +2 -0
- package/esm/type_plus/branch/$branch.js.map +1 -0
- package/esm/type_plus/branch/$distributive.d.ts +19 -0
- package/esm/type_plus/branch/$distributive.d.ts.map +1 -0
- package/esm/type_plus/branch/$distributive.js +2 -0
- package/esm/type_plus/branch/$distributive.js.map +1 -0
- package/esm/type_plus/branch/$exact.d.ts +27 -0
- package/esm/type_plus/branch/$exact.d.ts.map +1 -0
- package/esm/type_plus/branch/$exact.js +2 -0
- package/esm/type_plus/branch/$exact.js.map +1 -0
- package/esm/type_plus/branch/$input_options.d.ts +10 -0
- package/esm/type_plus/branch/$input_options.d.ts.map +1 -0
- package/esm/type_plus/branch/$input_options.js +2 -0
- package/esm/type_plus/branch/$input_options.js.map +1 -0
- package/esm/type_plus/branch/$is_distributive.d.ts +6 -0
- package/esm/type_plus/branch/$is_distributive.d.ts.map +1 -0
- package/esm/type_plus/branch/$is_distributive.js +2 -0
- package/esm/type_plus/branch/$is_distributive.js.map +1 -0
- package/esm/type_plus/branch/$override.d.ts +21 -0
- package/esm/type_plus/branch/$override.d.ts.map +1 -0
- package/esm/type_plus/branch/$override.js +2 -0
- package/esm/type_plus/branch/$override.js.map +1 -0
- package/esm/type_plus/branch/$resolve_branch.d.ts +30 -0
- package/esm/type_plus/branch/$resolve_branch.d.ts.map +1 -0
- package/esm/type_plus/branch/$resolve_branch.js +2 -0
- package/esm/type_plus/branch/$resolve_branch.js.map +1 -0
- package/esm/type_plus/branch/$select.d.ts +79 -0
- package/esm/type_plus/branch/$select.d.ts.map +1 -0
- package/esm/type_plus/branch/$select.js +2 -0
- package/esm/type_plus/branch/$select.js.map +1 -0
- package/esm/type_plus/branch/$select_invert.d.ts +77 -0
- package/esm/type_plus/branch/$select_invert.d.ts.map +1 -0
- package/esm/type_plus/branch/$select_invert.js +2 -0
- package/esm/type_plus/branch/$select_invert.js.map +1 -0
- package/esm/type_plus/branch/$select_invert_strict.d.ts +78 -0
- package/esm/type_plus/branch/$select_invert_strict.d.ts.map +1 -0
- package/esm/type_plus/branch/$select_invert_strict.js +2 -0
- package/esm/type_plus/branch/$select_invert_strict.js.map +1 -0
- package/esm/type_plus/branch/$select_strict.d.ts +79 -0
- package/esm/type_plus/branch/$select_strict.d.ts.map +1 -0
- package/esm/type_plus/branch/$select_strict.js +2 -0
- package/esm/type_plus/branch/$select_strict.js.map +1 -0
- package/esm/type_plus/branch/$selection.d.ts +127 -0
- package/esm/type_plus/branch/$selection.d.ts.map +1 -0
- package/esm/type_plus/branch/$selection.js +2 -0
- package/esm/type_plus/branch/$selection.js.map +1 -0
- package/esm/type_plus/branch/$selection_options.d.ts +37 -0
- package/esm/type_plus/branch/$selection_options.d.ts.map +1 -0
- package/esm/type_plus/branch/$selection_options.js +2 -0
- package/esm/type_plus/branch/$selection_options.js.map +1 -0
- package/esm/undefined/has_undefined.d.ts +41 -0
- package/esm/undefined/has_undefined.d.ts.map +1 -0
- package/esm/undefined/has_undefined.js +2 -0
- package/esm/undefined/has_undefined.js.map +1 -0
- package/esm/undefined/is_not_undefined.d.ts +72 -0
- package/esm/undefined/is_not_undefined.d.ts.map +1 -0
- package/esm/undefined/is_not_undefined.js +2 -0
- package/esm/undefined/is_not_undefined.js.map +1 -0
- package/esm/undefined/is_undefined.d.ts +75 -0
- package/esm/undefined/is_undefined.d.ts.map +1 -0
- package/esm/undefined/is_undefined.js +2 -0
- package/esm/undefined/is_undefined.js.map +1 -0
- package/esm/union/union.d.ts +1 -1
- package/esm/union/union.d.ts.map +1 -1
- package/esm/union/union.js.map +1 -1
- package/esm/union/union_to_intersection.d.ts.map +1 -1
- package/esm/union/union_to_intersection.js.map +1 -1
- package/esm/union_keys.d.ts.map +1 -1
- package/esm/union_keys.js.map +1 -1
- package/esm/unknown/is_not_unknown.d.ts +53 -0
- package/esm/unknown/is_not_unknown.d.ts.map +1 -0
- package/esm/unknown/is_not_unknown.js +2 -0
- package/esm/unknown/is_not_unknown.js.map +1 -0
- package/esm/unknown/is_unknown.d.ts +53 -0
- package/esm/unknown/is_unknown.d.ts.map +1 -0
- package/esm/unknown/is_unknown.js +2 -0
- package/esm/unknown/is_unknown.js.map +1 -0
- package/esm/unknown/not_unknown_or.d.ts +30 -0
- package/esm/unknown/not_unknown_or.d.ts.map +1 -0
- package/esm/unknown/not_unknown_or.js +2 -0
- package/esm/unknown/not_unknown_or.js.map +1 -0
- package/esm/unknown/unknown.d.ts +55 -0
- package/esm/unknown/unknown.d.ts.map +1 -0
- package/esm/unknown/unknown.js +2 -0
- package/esm/unknown/unknown.js.map +1 -0
- package/esm/unpartial.d.ts.map +1 -1
- package/esm/unpartial.js.map +1 -1
- package/esm/utils/Widen.d.ts.map +1 -1
- package/esm/utils/Widen.js.map +1 -1
- package/esm/utils/as.d.ts.map +1 -1
- package/esm/utils/as.js.map +1 -1
- package/esm/utils/index.d.ts +0 -2
- package/esm/utils/index.d.ts.map +1 -1
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/inspect.d.ts.map +1 -1
- package/esm/utils/inspect.js.map +1 -1
- package/esm/utils/options.d.ts +14 -9
- package/esm/utils/options.d.ts.map +1 -1
- package/esm/utils/options.js.map +1 -1
- package/esm/void/is_not_void.d.ts +78 -0
- package/esm/void/is_not_void.d.ts.map +1 -0
- package/esm/void/is_not_void.js +2 -0
- package/esm/void/is_not_void.js.map +1 -0
- package/esm/void/is_void.d.ts +79 -0
- package/esm/void/is_void.d.ts.map +1 -0
- package/esm/void/is_void.js +2 -0
- package/esm/void/is_void.js.map +1 -0
- package/package.json +31 -33
- package/readme.md +1376 -0
- package/src/any/any.ts +46 -0
- package/src/any/is_any.ts +59 -0
- package/src/any/is_not_any.ts +59 -0
- package/src/any/readme.md +104 -0
- package/src/array/array.at.ts +40 -0
- package/src/array/array.entries.ts +28 -0
- package/src/array/array.find_last.ts +31 -0
- package/src/array/array.reverse.ts +25 -0
- package/src/array/array.some.ts +67 -0
- package/src/array/array_plus.common_prop_keys.ts +38 -0
- package/src/array/array_plus.concat.ts +15 -0
- package/src/array/array_plus.drop_match.ts +16 -0
- package/src/array/array_plus.element_match.ts +61 -0
- package/src/array/array_plus.filter.ts +52 -0
- package/src/array/array_plus.find.ts +71 -0
- package/src/array/array_plus.index_at.ts +169 -0
- package/src/array/array_plus.is_index_out_of_bound.ts +24 -0
- package/src/array/array_plus.is_readonly.ts +50 -0
- package/src/array/array_plus.pad_start.ts +13 -0
- package/src/array/array_plus.split_at.ts +79 -0
- package/src/array/array_plus.ts +16 -0
- package/src/array/filter.ts +32 -0
- package/src/array/find_first.ts +73 -0
- package/src/array/head.ts +45 -0
- package/src/array/intersect_of_props.ts +21 -0
- package/src/array/is_array.ts +116 -0
- package/src/array/is_not_array.ts +114 -0
- package/src/array/last.ts +42 -0
- package/src/array/loose_array_type.ts +71 -0
- package/src/array/pad_start.ts +39 -0
- package/src/array/readme.md +567 -0
- package/src/array/union_of_props.ts +17 -0
- package/src/array/union_of_values.ts +14 -0
- package/src/assertion/assert_type.ts +117 -0
- package/src/bigint/is_bigint.ts +114 -0
- package/src/bigint/is_bigint_literal.ts +100 -0
- package/src/bigint/is_not_bigint.ts +110 -0
- package/src/bigint/is_not_bigint_literal.ts +101 -0
- package/src/bigint/readme.md +109 -0
- package/src/boolean/is_boolean.ts +126 -0
- package/src/boolean/is_false.ts +85 -0
- package/src/boolean/is_not_boolean.ts +109 -0
- package/src/boolean/is_not_false.ts +86 -0
- package/src/boolean/is_not_true.ts +86 -0
- package/src/boolean/is_true.ts +85 -0
- package/src/boolean/readme.md +430 -0
- package/src/class/AnyConstructor.ts +1 -0
- package/src/class/isConstructor.ts +34 -0
- package/src/equal/equal.ts +135 -0
- package/src/equal/identity_equal.ts +9 -0
- package/src/function/is_function.ts +62 -0
- package/src/function/is_not_function.ts +75 -0
- package/src/function/is_not_strict_function.ts +40 -0
- package/src/function/is_strict_function.ts +43 -0
- package/src/functional/Maybe.ts +22 -0
- package/src/functional/compose.ts +18 -0
- package/src/functional/context.ts +66 -0
- package/src/index.ts +139 -0
- package/src/math/abs.ts +23 -0
- package/src/math/greater_than.ts +12 -0
- package/src/math/index.ts +7 -0
- package/src/math/max.ts +13 -0
- package/src/math/numeric_struct.ts +656 -0
- package/src/mix_types/box.ts +74 -0
- package/src/mix_types/exclude.ts +18 -0
- package/src/mix_types/is_any_or_never.ts +31 -0
- package/src/mix_types/merge.ts +61 -0
- package/src/mix_types/readme.md +87 -0
- package/src/never/is_never.ts +62 -0
- package/src/never/is_not_never.ts +62 -0
- package/src/never/never.ts +78 -0
- package/src/never/readme.md +148 -0
- package/src/nominal/brand.ts +41 -0
- package/src/nominal/flavor.ts +51 -0
- package/src/nominal/nominal_match.ts +21 -0
- package/src/null/is_not_null.ts +79 -0
- package/src/null/is_null.ts +83 -0
- package/src/null/readme.md +107 -0
- package/src/number/is_not_number.ts +99 -0
- package/src/number/is_not_number_literal.ts +101 -0
- package/src/number/is_number.ts +103 -0
- package/src/number/is_number_literal.ts +100 -0
- package/src/number/number_plus.ts +13 -0
- package/src/number/readme.md +225 -0
- package/src/numeric/is_integer.ts +48 -0
- package/src/numeric/is_negative.ts +51 -0
- package/src/numeric/is_not_integer.ts +49 -0
- package/src/numeric/is_not_negative.ts +49 -0
- package/src/numeric/is_not_numeric.ts +21 -0
- package/src/numeric/is_not_positive.ts +50 -0
- package/src/numeric/is_numeric.ts +20 -0
- package/src/numeric/is_positive.ts +51 -0
- package/src/numeric/numeric_plus.ts +10 -0
- package/src/numeric/numeric_type.ts +10 -0
- package/src/object/ANotB.ts +12 -0
- package/src/object/IsDisjoint.ts +12 -0
- package/src/object/KeysWithDiffType.ts +9 -0
- package/src/object/KnownKeys.ts +17 -0
- package/src/object/RecursiveIntersect.ts +25 -0
- package/src/object/RecursiveRequired.ts +9 -0
- package/src/object/Required.ts +7 -0
- package/src/object/RequiredKeys.ts +8 -0
- package/src/object/facade.ts +214 -0
- package/src/object/forEachKey.ts +9 -0
- package/src/object/hasKey.ts +7 -0
- package/src/object/index.ts +38 -0
- package/src/object/is_not_object.ts +132 -0
- package/src/object/is_object.ts +119 -0
- package/src/object/left_join.ts +10 -0
- package/src/object/mapProperties.ts +22 -0
- package/src/object/merge.ts +117 -0
- package/src/object/object_plus.ts +1 -0
- package/src/object/omit.ts +220 -0
- package/src/object/optional_key.ts +38 -0
- package/src/object/pick.ts +220 -0
- package/src/object/readme.md +79 -0
- package/src/object/record.ts +23 -0
- package/src/object/recursive_partial.ts +39 -0
- package/src/object/replaceProperty.ts +11 -0
- package/src/object/split.ts +202 -0
- package/src/object/typeOverrideIncompatible.ts +8 -0
- package/src/predicates/CanAssign.ts +61 -0
- package/src/predicates/Extends.ts +7 -0
- package/src/predicates/assignable.ts +102 -0
- package/src/predicates/index.ts +6 -0
- package/src/predicates/literal.ts +35 -0
- package/src/predicates/not_assignable.ts +100 -0
- package/src/promise/index.ts +5 -0
- package/src/string/$extract_manipulated_string.ts +45 -0
- package/src/string/_string_type.ts +11 -0
- package/src/string/is_not_string.ts +100 -0
- package/src/string/is_not_string_literal.ts +132 -0
- package/src/string/is_not_template_literal.ts +90 -0
- package/src/string/is_string.ts +101 -0
- package/src/string/is_string_literal.ts +132 -0
- package/src/string/is_template_literal.ts +91 -0
- package/src/string/string.ts +36 -0
- package/src/string/string_plus.ts +34 -0
- package/src/symbol/is_not_symbol.ts +78 -0
- package/src/symbol/is_symbol.ts +80 -0
- package/src/testing/stub.ts +81 -0
- package/src/testing/test_type.ts +313 -0
- package/src/tuple/common_prop_keys.ts +41 -0
- package/src/tuple/create_tuple.ts +42 -0
- package/src/tuple/drop.ts +125 -0
- package/src/tuple/is_not_tuple.ts +101 -0
- package/src/tuple/is_tuple.ts +99 -0
- package/src/tuple/readme.md +282 -0
- package/src/tuple/tail.ts +10 -0
- package/src/tuple/tuple_plus.common_prop_keys.ts +50 -0
- package/src/tuple/tuple_plus.filter.ts +29 -0
- package/src/tuple/tuple_plus.find.ts +89 -0
- package/src/tuple/tuple_plus.pad_start.ts +61 -0
- package/src/type/no_infer.ts +28 -0
- package/src/type-guard/is_type.ts +48 -0
- package/src/type_plus/$equality.ts +14 -0
- package/src/type_plus/$error.ts +8 -0
- package/src/type_plus/$infer_error.ts +21 -0
- package/src/type_plus/$merge_options.ts +9 -0
- package/src/type_plus/$resolve_options.ts +16 -0
- package/src/type_plus/$special_type.ts +24 -0
- package/src/type_plus/$type.ts +10 -0
- package/src/type_plus/branch/$branch.ts +27 -0
- package/src/type_plus/branch/$distributive.ts +19 -0
- package/src/type_plus/branch/$exact.ts +34 -0
- package/src/type_plus/branch/$input_options.ts +9 -0
- package/src/type_plus/branch/$is_distributive.ts +12 -0
- package/src/type_plus/branch/$override.ts +22 -0
- package/src/type_plus/branch/$resolve_branch.ts +81 -0
- package/src/type_plus/branch/$select.ts +90 -0
- package/src/type_plus/branch/$select_invert.ts +88 -0
- package/src/type_plus/branch/$select_invert_strict.ts +88 -0
- package/src/type_plus/branch/$select_strict.ts +90 -0
- package/src/type_plus/branch/$selection.ts +135 -0
- package/src/type_plus/branch/$selection_options.ts +36 -0
- package/src/type_plus/readme.md +25 -0
- package/src/undefined/has_undefined.ts +44 -0
- package/src/undefined/is_not_undefined.ts +80 -0
- package/src/undefined/is_undefined.ts +82 -0
- package/src/undefined/readme.md +140 -0
- package/src/union/readme.md +81 -0
- package/src/union/union.ts +37 -0
- package/src/unknown/is_not_unknown.ts +57 -0
- package/src/unknown/is_unknown.ts +57 -0
- package/src/unknown/not_unknown_or.ts +29 -0
- package/src/unknown/readme.md +108 -0
- package/src/unknown/unknown.ts +58 -0
- package/src/utils/index.ts +61 -0
- package/src/utils/options.ts +15 -0
- package/src/void/is_not_void.ts +90 -0
- package/src/void/is_void.ts +91 -0
- package/src/void/readme.md +108 -0
- package/README.md +0 -1356
- 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 +0 -3
- 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 -29
- 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/any/any_type.d.ts +0 -63
- package/esm/any/any_type.d.ts.map +0 -1
- package/esm/any/any_type.js +0 -2
- package/esm/any/any_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/array/array_type.d.ts +0 -66
- package/esm/array/array_type.d.ts.map +0 -1
- package/esm/array/array_type.js +0 -2
- package/esm/array/array_type.js.map +0 -1
- package/esm/bigint/bigint_type.d.ts +0 -54
- package/esm/bigint/bigint_type.d.ts.map +0 -1
- package/esm/bigint/bigint_type.js +0 -2
- package/esm/bigint/bigint_type.js.map +0 -1
- package/esm/bigint/strict_bigint_type.d.ts +0 -56
- package/esm/bigint/strict_bigint_type.d.ts.map +0 -1
- package/esm/bigint/strict_bigint_type.js +0 -2
- package/esm/bigint/strict_bigint_type.js.map +0 -1
- package/esm/boolean/boolean_type.d.ts +0 -56
- package/esm/boolean/boolean_type.d.ts.map +0 -1
- package/esm/boolean/boolean_type.js +0 -2
- package/esm/boolean/boolean_type.js.map +0 -1
- package/esm/boolean/false_type.d.ts +0 -49
- package/esm/boolean/false_type.d.ts.map +0 -1
- package/esm/boolean/false_type.js +0 -2
- package/esm/boolean/false_type.js.map +0 -1
- package/esm/boolean/strict_boolean_type.d.ts +0 -53
- package/esm/boolean/strict_boolean_type.d.ts.map +0 -1
- package/esm/boolean/strict_boolean_type.js +0 -2
- package/esm/boolean/strict_boolean_type.js.map +0 -1
- package/esm/boolean/true_type.d.ts +0 -49
- package/esm/boolean/true_type.d.ts.map +0 -1
- package/esm/boolean/true_type.js +0 -2
- package/esm/boolean/true_type.js.map +0 -1
- package/esm/function/function_type.d.ts +0 -59
- package/esm/function/function_type.d.ts.map +0 -1
- package/esm/function/function_type.js +0 -2
- package/esm/function/function_type.js.map +0 -1
- package/esm/function/strict_function_type.d.ts +0 -49
- package/esm/function/strict_function_type.d.ts.map +0 -1
- package/esm/function/strict_function_type.js +0 -2
- package/esm/function/strict_function_type.js.map +0 -1
- package/esm/merge.d.ts +0 -55
- package/esm/merge.d.ts.map +0 -1
- package/esm/merge.js +0 -14
- package/esm/merge.js.map +0 -1
- package/esm/mix_types/any_or_never_type.d.ts +0 -37
- package/esm/mix_types/any_or_never_type.d.ts.map +0 -1
- package/esm/mix_types/any_or_never_type.js +0 -2
- package/esm/mix_types/any_or_never_type.js.map +0 -1
- package/esm/never/never_type.d.ts +0 -62
- package/esm/never/never_type.d.ts.map +0 -1
- package/esm/never/never_type.js +0 -2
- package/esm/never/never_type.js.map +0 -1
- package/esm/null/null_type.d.ts +0 -50
- package/esm/null/null_type.d.ts.map +0 -1
- package/esm/null/null_type.js +0 -2
- package/esm/null/null_type.js.map +0 -1
- package/esm/number/number_type.d.ts +0 -50
- package/esm/number/number_type.d.ts.map +0 -1
- package/esm/number/number_type.js +0 -2
- package/esm/number/number_type.js.map +0 -1
- package/esm/number/strict_number_type.d.ts +0 -65
- package/esm/number/strict_number_type.d.ts.map +0 -1
- package/esm/number/strict_number_type.js +0 -2
- package/esm/number/strict_number_type.js.map +0 -1
- package/esm/numeric/integer.d.ts +0 -69
- package/esm/numeric/integer.d.ts.map +0 -1
- package/esm/numeric/integer.js +0 -2
- package/esm/numeric/integer.js.map +0 -1
- package/esm/numeric/negative.d.ts +0 -70
- package/esm/numeric/negative.d.ts.map +0 -1
- package/esm/numeric/negative.js +0 -2
- package/esm/numeric/negative.js.map +0 -1
- package/esm/numeric/positive.d.ts +0 -53
- package/esm/numeric/positive.d.ts.map +0 -1
- package/esm/numeric/positive.js +0 -2
- package/esm/numeric/positive.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/esm/object/OptionalKeys.d.ts +0 -8
- package/esm/object/OptionalKeys.d.ts.map +0 -1
- package/esm/object/OptionalKeys.js +0 -2
- package/esm/object/OptionalKeys.js.map +0 -1
- package/esm/object/object_type.d.ts +0 -54
- package/esm/object/object_type.d.ts.map +0 -1
- package/esm/object/object_type.js +0 -2
- package/esm/object/object_type.js.map +0 -1
- package/esm/string/strict_string_type.d.ts +0 -61
- package/esm/string/strict_string_type.d.ts.map +0 -1
- package/esm/string/strict_string_type.js +0 -2
- package/esm/string/strict_string_type.js.map +0 -1
- package/esm/string/string_type.d.ts +0 -58
- package/esm/string/string_type.d.ts.map +0 -1
- package/esm/string/string_type.js +0 -2
- package/esm/string/string_type.js.map +0 -1
- package/esm/symbol/symbol_type.d.ts +0 -50
- package/esm/symbol/symbol_type.d.ts.map +0 -1
- package/esm/symbol/symbol_type.js +0 -2
- package/esm/symbol/symbol_type.js.map +0 -1
- package/esm/tuple/tuple_type.d.ts +0 -77
- package/esm/tuple/tuple_type.d.ts.map +0 -1
- package/esm/tuple/tuple_type.js +0 -2
- package/esm/tuple/tuple_type.js.map +0 -1
- package/esm/undefined/undefined_type.d.ts +0 -53
- package/esm/undefined/undefined_type.d.ts.map +0 -1
- package/esm/undefined/undefined_type.js +0 -2
- package/esm/undefined/undefined_type.js.map +0 -1
- package/esm/unknown/unknown_type.d.ts +0 -63
- package/esm/unknown/unknown_type.d.ts.map +0 -1
- package/esm/unknown/unknown_type.js +0 -2
- package/esm/unknown/unknown_type.js.map +0 -1
- package/esm/utils/NonNull.d.ts +0 -2
- package/esm/utils/NonNull.d.ts.map +0 -1
- package/esm/utils/NonNull.js +0 -2
- package/esm/utils/NonNull.js.map +0 -1
- package/esm/utils/NonUndefined.d.ts +0 -2
- package/esm/utils/NonUndefined.d.ts.map +0 -1
- package/esm/utils/NonUndefined.js +0 -2
- package/esm/utils/NonUndefined.js.map +0 -1
- package/esm/void/void_type.d.ts +0 -43
- package/esm/void/void_type.d.ts.map +0 -1
- package/esm/void/void_type.js +0 -2
- package/esm/void/void_type.js.map +0 -1
- package/ts/any/any_type.ts +0 -65
- package/ts/any/readme.md +0 -110
- package/ts/array/array.at.ts +0 -30
- package/ts/array/array.entries.ts +0 -26
- package/ts/array/array.find_last.ts +0 -29
- package/ts/array/array.reverse.ts +0 -16
- package/ts/array/array.some.ts +0 -67
- package/ts/array/array_index.ts +0 -83
- package/ts/array/array_plus.common_prop_keys.ts +0 -35
- package/ts/array/array_plus.concat.ts +0 -15
- package/ts/array/array_plus.drop_match.ts +0 -16
- package/ts/array/array_plus.element_match.ts +0 -61
- package/ts/array/array_plus.filter.ts +0 -5
- package/ts/array/array_plus.find.ts +0 -71
- package/ts/array/array_plus.pad_start.ts +0 -13
- package/ts/array/array_plus.split_at.ts +0 -74
- package/ts/array/array_plus.ts +0 -14
- package/ts/array/array_type.ts +0 -71
- package/ts/array/filter.ts +0 -32
- package/ts/array/find_first.ts +0 -71
- package/ts/array/head.ts +0 -40
- package/ts/array/intersect_of_props.ts +0 -21
- package/ts/array/last.ts +0 -38
- package/ts/array/pad_start.ts +0 -39
- package/ts/array/readme.md +0 -497
- package/ts/array/union_of_props.ts +0 -17
- package/ts/array/union_of_values.ts +0 -14
- package/ts/assertion/assert_type.ts +0 -119
- package/ts/bigint/bigint_type.ts +0 -57
- package/ts/bigint/readme.md +0 -51
- package/ts/bigint/strict_bigint_type.ts +0 -61
- package/ts/boolean/boolean_type.ts +0 -61
- package/ts/boolean/false_type.ts +0 -53
- package/ts/boolean/readme.md +0 -85
- package/ts/boolean/strict_boolean_type.ts +0 -57
- package/ts/boolean/true_type.ts +0 -53
- package/ts/class/AnyConstructor.ts +0 -1
- package/ts/class/isConstructor.ts +0 -34
- package/ts/equal/equal.ts +0 -142
- package/ts/function/function_type.ts +0 -64
- package/ts/function/strict_function_type.ts +0 -53
- package/ts/functional/Maybe.ts +0 -22
- package/ts/functional/compose.ts +0 -17
- package/ts/functional/context.ts +0 -66
- package/ts/index.ts +0 -121
- package/ts/math/abs.ts +0 -18
- package/ts/math/greater_than.ts +0 -12
- package/ts/math/index.ts +0 -7
- package/ts/math/max.ts +0 -13
- package/ts/math/numeric_struct.ts +0 -656
- package/ts/merge.ts +0 -72
- package/ts/mix_types/any_or_never_type.ts +0 -38
- package/ts/mix_types/readme.md +0 -40
- package/ts/never/never_type.ts +0 -70
- package/ts/never/readme.md +0 -37
- package/ts/nominal/brand.ts +0 -43
- package/ts/nominal/flavor.ts +0 -53
- package/ts/nominal/nominal_match.ts +0 -22
- package/ts/null/null_type.ts +0 -53
- package/ts/null/readme.md +0 -24
- package/ts/number/number_plus.ts +0 -20
- package/ts/number/number_type.ts +0 -53
- package/ts/number/readme.md +0 -47
- package/ts/number/strict_number_type.ts +0 -69
- package/ts/numeric/integer.ts +0 -75
- package/ts/numeric/negative.ts +0 -101
- package/ts/numeric/numeric_plus.ts +0 -12
- package/ts/numeric/numeric_type.ts +0 -64
- package/ts/numeric/positive.ts +0 -60
- package/ts/object/ANotB.ts +0 -12
- package/ts/object/IsDisjoint.ts +0 -12
- package/ts/object/KeysWithDiffType.ts +0 -9
- package/ts/object/KnownKeys.ts +0 -17
- package/ts/object/OptionalKeys.ts +0 -9
- package/ts/object/RecursiveIntersect.ts +0 -25
- package/ts/object/RecursiveRequired.ts +0 -9
- package/ts/object/Required.ts +0 -9
- package/ts/object/RequiredKeys.ts +0 -8
- package/ts/object/facade.ts +0 -214
- package/ts/object/forEachKey.ts +0 -9
- package/ts/object/hasKey.ts +0 -7
- package/ts/object/index.ts +0 -38
- package/ts/object/left_join.ts +0 -19
- package/ts/object/mapProperties.ts +0 -22
- package/ts/object/object_type.ts +0 -57
- package/ts/object/omit.ts +0 -224
- package/ts/object/optional_key.ts +0 -38
- package/ts/object/pick.ts +0 -220
- package/ts/object/readme.md +0 -65
- package/ts/object/record.ts +0 -23
- package/ts/object/recursive_partial.ts +0 -39
- package/ts/object/replaceProperty.ts +0 -11
- package/ts/object/split.ts +0 -203
- package/ts/object/typeOverrideIncompatible.ts +0 -10
- package/ts/predicates/CanAssign.ts +0 -71
- package/ts/predicates/Extends.ts +0 -4
- package/ts/predicates/index.ts +0 -7
- package/ts/predicates/literal.ts +0 -35
- package/ts/promise/index.ts +0 -5
- package/ts/string/strict_string_type.ts +0 -65
- package/ts/string/string.ts +0 -36
- package/ts/string/string_plus.ts +0 -33
- package/ts/string/string_type.ts +0 -61
- package/ts/symbol/symbol_type.ts +0 -53
- package/ts/testing/stub.ts +0 -80
- package/ts/testing/test_type.ts +0 -317
- package/ts/tuple/common_prop_keys.ts +0 -41
- package/ts/tuple/create_tuple.ts +0 -42
- package/ts/tuple/drop.ts +0 -125
- package/ts/tuple/readme.md +0 -282
- package/ts/tuple/tail.ts +0 -12
- package/ts/tuple/tuple_plus.common_prop_keys.ts +0 -47
- package/ts/tuple/tuple_plus.filter.ts +0 -29
- package/ts/tuple/tuple_plus.find.ts +0 -88
- package/ts/tuple/tuple_plus.pad_start.ts +0 -58
- package/ts/tuple/tuple_type.ts +0 -106
- package/ts/type/no_infer.ts +0 -27
- package/ts/type-guard/is_type.ts +0 -52
- package/ts/undefined/readme.md +0 -18
- package/ts/undefined/undefined_type.ts +0 -57
- package/ts/union/readme.md +0 -81
- package/ts/union/union.ts +0 -37
- package/ts/unknown/readme.md +0 -27
- package/ts/unknown/unknown_type.ts +0 -68
- package/ts/utils/NonNull.ts +0 -1
- package/ts/utils/NonUndefined.ts +0 -1
- package/ts/utils/index.ts +0 -63
- package/ts/utils/options.ts +0 -10
- package/ts/void/readme.md +0 -26
- package/ts/void/void_type.ts +0 -50
- /package/{ts → src}/array/literal_array.ts +0 -0
- /package/{ts → src}/array/reduce_while.ts +0 -0
- /package/{ts → src}/array/reverse.ts +0 -0
- /package/{ts → src}/assertion/readme.md +0 -0
- /package/{ts → src}/bigint/cast.ts +0 -0
- /package/{ts → src}/binary/Bit.ts +0 -0
- /package/{ts → src}/binary/_binary.ts +0 -0
- /package/{ts → src}/binary/index.ts +0 -0
- /package/{ts → src}/class/index.ts +0 -0
- /package/{ts → src}/composable_types.ts +0 -0
- /package/{ts → src}/equal/readme.md +0 -0
- /package/{ts → src}/function/any_function.ts +0 -0
- /package/{ts → src}/function/extract_function.ts +0 -0
- /package/{ts → src}/function/readme.md +0 -0
- /package/{ts → src}/functional/ChainFn.ts +0 -0
- /package/{ts → src}/functional/index.ts +0 -0
- /package/{ts → src}/json.ts +0 -0
- /package/{ts → src}/math/README.md +0 -0
- /package/{ts → src}/math/add.ts +0 -0
- /package/{ts → src}/math/math_plus.to_negative.ts +0 -0
- /package/{ts → src}/math/math_plus.ts +0 -0
- /package/{ts → src}/math/multiply.ts +0 -0
- /package/{ts → src}/math/subtract.ts +0 -0
- /package/{ts → src}/nodejs/index.ts +0 -0
- /package/{ts → src}/nodejs/isNodeError.ts +0 -0
- /package/{ts → src}/nominal/constants.ts +0 -0
- /package/{ts → src}/nominal/index.ts +0 -0
- /package/{ts → src}/number/cast.ts +0 -0
- /package/{ts → src}/number/number_array.ts +0 -0
- /package/{ts → src}/numeric/cast.ts +0 -0
- /package/{ts → src}/numeric/readme.md +0 -0
- /package/{ts → src}/object/ExcludePropType.ts +0 -0
- /package/{ts → src}/object/IsRecord.ts +0 -0
- /package/{ts → src}/object/KeyTypes.ts +0 -0
- /package/{ts → src}/object/KeyofOptional.ts +0 -0
- /package/{ts → src}/object/Partial.ts +0 -0
- /package/{ts → src}/object/SpreadRecord.ts +0 -0
- /package/{ts → src}/object/ValueOf.ts +0 -0
- /package/{ts/object/AnyRecord.ts → src/object/any_record.ts} +0 -0
- /package/{ts → src}/object/everyKey.ts +0 -0
- /package/{ts → src}/object/filterKey.ts +0 -0
- /package/{ts → src}/object/findKey.ts +0 -0
- /package/{ts → src}/object/getField.ts +0 -0
- /package/{ts → src}/object/hasProperty.ts +0 -0
- /package/{ts → src}/object/mapKey.ts +0 -0
- /package/{ts → src}/object/properties.ts +0 -0
- /package/{ts → src}/object/reduceKey.ts +0 -0
- /package/{ts → src}/object/someKey.ts +0 -0
- /package/{ts → src}/predicates/If.ts +0 -0
- /package/{ts → src}/predicates/IsEmptyObject.ts +0 -0
- /package/{ts → src}/predicates/logical.ts +0 -0
- /package/{ts → src}/primitive.ts +0 -0
- /package/{ts → src}/promise/MaybePromise.ts +0 -0
- /package/{ts → src}/promise/PromiseValue.ts +0 -0
- /package/{ts → src}/promise/PromiseValueMerge.ts +0 -0
- /package/{ts → src}/promise/isPromise.ts +0 -0
- /package/{ts → src}/promise/mapSeries.ts +0 -0
- /package/{ts → src}/string/readme.md +0 -0
- /package/{ts → src}/symbol/readme.md +0 -0
- /package/{ts → src}/testing/readme.md +0 -0
- /package/{ts → src}/tuple/tuple_plus.drop_match.ts +0 -0
- /package/{ts → src}/tuple/tuple_plus.ts +0 -0
- /package/{ts → src}/type/failed.ts +0 -0
- /package/{ts → src}/type/readme.md +0 -0
- /package/{ts → src}/type-guard/readme.md +0 -0
- /package/{ts → src}/union/union_to_intersection.ts +0 -0
- /package/{ts → src}/union_keys.ts +0 -0
- /package/{ts → src}/unpartial.ts +0 -0
- /package/{ts → src}/utils/Widen.ts +0 -0
- /package/{ts → src}/utils/as.ts +0 -0
- /package/{ts → src}/utils/inspect.ts +0 -0
package/src/any/any.ts
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { $Branch } from '../type_plus/branch/$branch.js'
|
|
2
|
+
|
|
3
|
+
export type $Any = $Branch<'$any'>
|
|
4
|
+
|
|
5
|
+
export namespace $Any {
|
|
6
|
+
/**
|
|
7
|
+
* 🧰 *type util*
|
|
8
|
+
*
|
|
9
|
+
* Options for specifically handling the type `any`.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* type YourType<
|
|
14
|
+
* T,
|
|
15
|
+
* $Options extends YourType.$Options = YourType.$Default
|
|
16
|
+
* > = ...
|
|
17
|
+
*
|
|
18
|
+
* namespace YourType {
|
|
19
|
+
* export type $Options = $AnyOptions
|
|
20
|
+
* }
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export type $Options = { $any?: unknown }
|
|
24
|
+
/**
|
|
25
|
+
* 🧰 *type util*
|
|
26
|
+
*
|
|
27
|
+
* Branch option for specifically handling the type `any`.
|
|
28
|
+
*
|
|
29
|
+
* Use this to finely customize the behavior of your type.
|
|
30
|
+
*
|
|
31
|
+
* ```ts
|
|
32
|
+
* type YourType<
|
|
33
|
+
* T,
|
|
34
|
+
* $Options extends YourType.$Options = YourType.$Default
|
|
35
|
+
* > = ...
|
|
36
|
+
*
|
|
37
|
+
* namespace YourType {
|
|
38
|
+
* export type $Options = $Any.$Options
|
|
39
|
+
* export type $Branch = $Any.$Branch
|
|
40
|
+
* }
|
|
41
|
+
*
|
|
42
|
+
* type R = YourType<T, YourType.$Branch> extends $Any ? HandleAny : HandleOthers
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export type $Branch = { $any: $Any }
|
|
46
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { $Never } from '../never/never.js'
|
|
2
|
+
import type { $SpecialType } from '../type_plus/$special_type.js'
|
|
3
|
+
import type { $InputOptions } from '../type_plus/branch/$input_options.js'
|
|
4
|
+
import type { $ResolveBranch } from '../type_plus/branch/$resolve_branch.js'
|
|
5
|
+
import type { $Else, $SelectionBranch, $Then } from '../type_plus/branch/$selection.js'
|
|
6
|
+
import type { $SelectionOptions } from '../type_plus/branch/$selection_options.js'
|
|
7
|
+
import type { $Unknown } from '../unknown/unknown.js'
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* 🎭 *predicate*
|
|
11
|
+
*
|
|
12
|
+
* Validate if `T` is `any`.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* type R = IsAny<any> // true
|
|
17
|
+
*
|
|
18
|
+
* type R = IsAny<never> // false
|
|
19
|
+
* type R = IsAny<unknown> // false
|
|
20
|
+
* type R = IsAny<string | boolean> // false
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* 🔢 *customize*
|
|
24
|
+
*
|
|
25
|
+
* Filter to ensure `T` is `any`.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```ts
|
|
29
|
+
* type R = IsAny<any, { selection: 'filter' }> // any
|
|
30
|
+
*
|
|
31
|
+
* type R = IsAny<never, { selection: 'filter' }> // never
|
|
32
|
+
* type R = IsAny<unknown, { selection: 'filter' }> // never
|
|
33
|
+
* type R = IsAny<string | boolean, { selection: 'filter' }> // never
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* 🔢 *customize*
|
|
37
|
+
*
|
|
38
|
+
* Use unique branch identifiers to allow precise processing of the result.
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```ts
|
|
42
|
+
* type R = IsAny<any, $SelectionBranch> // $Then
|
|
43
|
+
* type R = IsAny<string, $SelectionBranch> // $Else
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export type IsAny<
|
|
47
|
+
T,
|
|
48
|
+
$O extends IsAny.$Options = {}
|
|
49
|
+
> = $SpecialType<T, {
|
|
50
|
+
$any: $ResolveBranch<T, $O, [$Then]>,
|
|
51
|
+
$unknown: $ResolveBranch<T, $O, [$Unknown, $Else]>,
|
|
52
|
+
$never: $ResolveBranch<T, $O, [$Never, $Else]>,
|
|
53
|
+
$else: $ResolveBranch<T, $O, [$Else]>
|
|
54
|
+
}>
|
|
55
|
+
|
|
56
|
+
export namespace IsAny {
|
|
57
|
+
export type $Options = $SelectionOptions & $InputOptions<$Unknown | $Never>
|
|
58
|
+
export type $Branch = $SelectionBranch
|
|
59
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { $Never } from '../never/never.js'
|
|
2
|
+
import type { $SpecialType } from '../type_plus/$special_type.js'
|
|
3
|
+
import type { $InputOptions } from '../type_plus/branch/$input_options.js'
|
|
4
|
+
import type { $ResolveBranch } from '../type_plus/branch/$resolve_branch.js'
|
|
5
|
+
import type { $Else, $SelectionBranch, $Then } from '../type_plus/branch/$selection.js'
|
|
6
|
+
import type { $SelectionOptions } from '../type_plus/branch/$selection_options.js'
|
|
7
|
+
import type { $Unknown } from '../unknown/unknown.js'
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* 🎭 *predicate*
|
|
11
|
+
*
|
|
12
|
+
* Validate if `T` is not `any`.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* type R = IsNotAny<any> // false
|
|
17
|
+
*
|
|
18
|
+
* type R = IsNotAny<never> // true
|
|
19
|
+
* type R = IsNotAny<unknown> // true
|
|
20
|
+
* type R = IsNotAny<string | boolean> // true
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* 🔢 *customize*
|
|
24
|
+
*
|
|
25
|
+
* Filter to ensure `T` is not `any`.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```ts
|
|
29
|
+
* type R = IsNotAny<any, { selection: 'filter' }> // never
|
|
30
|
+
*
|
|
31
|
+
* type R = IsNotAny<never, { selection: 'filter' }> // never
|
|
32
|
+
* type R = IsNotAny<unknown, { selection: 'filter' }> // unknown
|
|
33
|
+
* type R = IsNotAny<string | boolean, { selection: 'filter' }> // string | boolean
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* 🔢 *customize*
|
|
37
|
+
*
|
|
38
|
+
* Use unique branch identifiers to allow precise processing of the result.
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```ts
|
|
42
|
+
* type R = IsNotAny<any, $SelectionBranch> // $Else
|
|
43
|
+
* type R = IsNotAny<string, $SelectionBranch> // $Then
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export type IsNotAny<
|
|
47
|
+
T,
|
|
48
|
+
$O extends IsNotAny.$Options = {}
|
|
49
|
+
> = $SpecialType<T, {
|
|
50
|
+
$any: $ResolveBranch<T, $O, [$Else]>,
|
|
51
|
+
$unknown: $ResolveBranch<T, $O, [$Unknown, $Then]>,
|
|
52
|
+
$never: $ResolveBranch<T, $O, [$Never, $Then]>,
|
|
53
|
+
$else: $ResolveBranch<T, $O, [$Then]>
|
|
54
|
+
}>
|
|
55
|
+
|
|
56
|
+
export namespace IsNotAny {
|
|
57
|
+
export type $Options = $SelectionOptions & $InputOptions<$Unknown | $Never>
|
|
58
|
+
export type $Branch = $SelectionBranch
|
|
59
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Any
|
|
2
|
+
|
|
3
|
+
`any` is one of the two top types in TypeScript.
|
|
4
|
+
It is a supertype of all types.
|
|
5
|
+
It is a way to opt-out of type checking and let the values pass through compile-time checks.
|
|
6
|
+
|
|
7
|
+
## [IsAny](./is_any.ts)
|
|
8
|
+
|
|
9
|
+
`IsAny<T, $O = { selection: 'predicate' | 'filter', $then: true, $else: false }>`
|
|
10
|
+
|
|
11
|
+
🎭 *predicate*
|
|
12
|
+
|
|
13
|
+
Validate if `T` is exactly `any`.
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
type R = IsAny<any> // true
|
|
17
|
+
|
|
18
|
+
type R = IsAny<never> // false
|
|
19
|
+
type R = IsAny<unknown> // false
|
|
20
|
+
type R = IsAny<string | boolean> // false
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
🔢 *customize*
|
|
24
|
+
|
|
25
|
+
Filter to ensure `T` is exactly `any`.
|
|
26
|
+
|
|
27
|
+
```ts
|
|
28
|
+
type R = IsAny<any, { selection: 'filter' }> // any
|
|
29
|
+
|
|
30
|
+
type R = IsAny<never, { selection: 'filter' }> // never
|
|
31
|
+
type R = IsAny<unknown, { selection: 'filter' }> // never
|
|
32
|
+
type R = IsAny<string | boolean, { selection: 'filter' }> // never
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
🔢 *customize*
|
|
36
|
+
|
|
37
|
+
Use unique branch identifiers to allow precise processing of the result.
|
|
38
|
+
|
|
39
|
+
```ts
|
|
40
|
+
type R = IsAny<any, $SelectionBranch> // $Then
|
|
41
|
+
type R = IsAny<string, $SelectionBranch> // $Else
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### [IsNotAny](./is_not_any.ts)
|
|
45
|
+
|
|
46
|
+
`IsNotAny<T, $O = { selection: 'predicate' | 'filter', $then: true, $else: false }>`
|
|
47
|
+
|
|
48
|
+
🎭 *predicate*
|
|
49
|
+
|
|
50
|
+
Validate if `T` is not exactly `any`.
|
|
51
|
+
|
|
52
|
+
```ts
|
|
53
|
+
type R = IsNotAny<any> // false
|
|
54
|
+
|
|
55
|
+
type R = IsNotAny<never> // true
|
|
56
|
+
type R = IsNotAny<unknown> // true
|
|
57
|
+
type R = IsNotAny<string | boolean> // true
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
🔢 *customize*
|
|
61
|
+
|
|
62
|
+
Filter to ensure `T` is not exactly `any`.
|
|
63
|
+
|
|
64
|
+
```ts
|
|
65
|
+
type R = IsNotAny<any, { selection: 'filter' }> // never
|
|
66
|
+
|
|
67
|
+
type R = IsNotAny<never, { selection: 'filter' }> // never
|
|
68
|
+
type R = IsNotAny<unknown, { selection: 'filter' }> // unknown
|
|
69
|
+
type R = IsNotAny<string | boolean, { selection: 'filter' }> // string | boolean
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
🔢 *customize*
|
|
73
|
+
|
|
74
|
+
Use unique branch identifiers to allow precise processing of the result.
|
|
75
|
+
|
|
76
|
+
```ts
|
|
77
|
+
type R = IsNotAny<any, $SelectionBranch> // $Else
|
|
78
|
+
type R = IsNotAny<string, $SelectionBranch> // $Then
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Trivia
|
|
82
|
+
|
|
83
|
+
> Both `any` and `unknown` are top types?
|
|
84
|
+
|
|
85
|
+
Well, yeah:
|
|
86
|
+
|
|
87
|
+
```ts
|
|
88
|
+
type A = any extends unknown ? 1 : 2 // 1
|
|
89
|
+
type B = unknown extends any ? 1 : 2 // 1
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
> Aren't using `any` is bad?
|
|
93
|
+
|
|
94
|
+
If you use it to simply tell TypeScript to shut up because you are lazy, then yes.
|
|
95
|
+
|
|
96
|
+
But it is ok to use `any` in many cases, as the type system of TypeScript is not sounded.
|
|
97
|
+
|
|
98
|
+
There are many cases it is not possible to induce the type correctly.
|
|
99
|
+
|
|
100
|
+
## References
|
|
101
|
+
|
|
102
|
+
- [handbook]
|
|
103
|
+
|
|
104
|
+
[handbook]: https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#any
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { IsNumber } from '../number/is_number.js'
|
|
2
|
+
import type { IsTuple } from '../tuple/is_tuple.js'
|
|
3
|
+
import type { IndexAt } from './array_plus.index_at.js'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* 🦴 *utilities*
|
|
7
|
+
*
|
|
8
|
+
* Gets the type of the array or tuple at positive or negative index `N`.
|
|
9
|
+
*
|
|
10
|
+
* Like `Array.at()`, this type supports negative numbers.
|
|
11
|
+
*
|
|
12
|
+
* @alias ArrayPlus.At
|
|
13
|
+
* @see https://github.com/microsoft/TypeScript/issues/53345#issuecomment-1477138167
|
|
14
|
+
*
|
|
15
|
+
* ```ts
|
|
16
|
+
* type R = At<[1, 2, 3], 2> // 3
|
|
17
|
+
* type R = At<[1, 2, 3], -1> // 3
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export type At<A extends readonly unknown[], N extends number, Fail = never> =
|
|
21
|
+
IndexAt<
|
|
22
|
+
A,
|
|
23
|
+
N,
|
|
24
|
+
Fail,
|
|
25
|
+
Fail,
|
|
26
|
+
Fail
|
|
27
|
+
> extends infer I
|
|
28
|
+
? I extends number
|
|
29
|
+
? IsTuple.$<
|
|
30
|
+
A,
|
|
31
|
+
{
|
|
32
|
+
$then: IsNumber.$<I, {
|
|
33
|
+
exact: true,
|
|
34
|
+
$then: A[I] | undefined,
|
|
35
|
+
$else: A[I]
|
|
36
|
+
}>,
|
|
37
|
+
$else: A[I] | undefined
|
|
38
|
+
}>
|
|
39
|
+
: Fail
|
|
40
|
+
: never
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { IsTuple } from '../tuple/is_tuple.js'
|
|
2
|
+
/**
|
|
3
|
+
* Returns an array of key-value pairs for every entry in the array or tuple.
|
|
4
|
+
*
|
|
5
|
+
* Note that this is not the same as `Array.entries(A)`,
|
|
6
|
+
* which returns an iterable interator.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```ts
|
|
10
|
+
* ArrayPlus.Entries<Array<string | number>> // Array<[number, string | number]>
|
|
11
|
+
* ArrayPlus.Entries<[1, 2, 3]> // [[0, 1], [1, 2], [2, 3]]
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export type Entries<A extends readonly unknown[]> = IsTuple<
|
|
15
|
+
A,
|
|
16
|
+
{
|
|
17
|
+
$then: Entries.Device<A, []>,
|
|
18
|
+
$else: A extends Array<infer T> ? Array<[number, T]> : never
|
|
19
|
+
}
|
|
20
|
+
>
|
|
21
|
+
|
|
22
|
+
export namespace Entries {
|
|
23
|
+
export type Device<A extends readonly unknown[], R extends unknown[]> = A['length'] extends 0
|
|
24
|
+
? R
|
|
25
|
+
: (A extends readonly [...infer F, infer N]
|
|
26
|
+
? Device<F, [[F['length'], N], ...R]>
|
|
27
|
+
: never)
|
|
28
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { IsTuple } from '../tuple/is_tuple.js'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* 🦴 *utilities*
|
|
5
|
+
*
|
|
6
|
+
* Gets the last type in the array or tuple that matches the `Criteria`.
|
|
7
|
+
*
|
|
8
|
+
* If the `Criteria` is not met, it will return `never'.
|
|
9
|
+
*
|
|
10
|
+
* For `Array<T>`, it will return `T | undefined` if `T` satisfies `Criteria`.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* ArrayPlus.Find<Array<1 | 2 | 'x'>, number> // 1 | 2 | undefined
|
|
15
|
+
*
|
|
16
|
+
* ArrayPlus.Find<[true, 123, 'x', 321], number> // 321
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export type FindLast<A extends readonly unknown[], Criteria> = IsTuple<
|
|
20
|
+
A,
|
|
21
|
+
{
|
|
22
|
+
$then: A['length'] extends 0
|
|
23
|
+
? never
|
|
24
|
+
: (A extends readonly [...infer Heads, infer Last]
|
|
25
|
+
? (Last extends Criteria
|
|
26
|
+
? Last
|
|
27
|
+
: FindLast<Heads, Criteria>)
|
|
28
|
+
: never),
|
|
29
|
+
$else: A extends Readonly<Array<infer T>> ? (T extends Criteria ? T | undefined : never) : never
|
|
30
|
+
}
|
|
31
|
+
>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { IsReadonly } from './array_plus.is_readonly.js'
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* Reverses the order of elements in the array or tuple.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```ts
|
|
8
|
+
* Reverse<Array<string | number>> // Array<string | number>
|
|
9
|
+
*
|
|
10
|
+
* Reverse<[1, 2, 3]> // [3, 2, 1]
|
|
11
|
+
* ```
|
|
12
|
+
*
|
|
13
|
+
* @param T The array type to reverse.
|
|
14
|
+
* @returns The reversed array type.
|
|
15
|
+
*/
|
|
16
|
+
export type Reverse<A extends readonly unknown[]> = Reverse._<A> extends infer R
|
|
17
|
+
? IsReadonly<A> extends true ? Readonly<R> : R
|
|
18
|
+
: never
|
|
19
|
+
|
|
20
|
+
export namespace Reverse {
|
|
21
|
+
export type _<A extends readonly unknown[]> = A extends readonly [infer First, ...infer Rest]
|
|
22
|
+
? [..._<Rest>, First]
|
|
23
|
+
: A
|
|
24
|
+
|
|
25
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { IsEqual } from '../equal/equal.js'
|
|
2
|
+
import type { CanAssign } from '../index.js'
|
|
3
|
+
import type { Tail } from '../tuple/tail.js'
|
|
4
|
+
import type { UnionOfValues } from './union_of_values.js'
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Determines whether the array type `A` contains any elements that satisfies the specified `Criteria` type.
|
|
8
|
+
*
|
|
9
|
+
* It operates in `loose` mode by default,
|
|
10
|
+
* which means literal types satisfies their widened counterparts.
|
|
11
|
+
*
|
|
12
|
+
* You can also change it to `strict` mode.
|
|
13
|
+
*
|
|
14
|
+
* 🦴 *utilities*
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* Some<string[], string> // true
|
|
19
|
+
* Some<['a', boolean], boolean> // true
|
|
20
|
+
* Some<['a', true], boolean> //true
|
|
21
|
+
*
|
|
22
|
+
* Some<['a', true], boolean, 'strict'> // false
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export type Some<
|
|
26
|
+
A extends readonly unknown[],
|
|
27
|
+
Criteria,
|
|
28
|
+
Mode extends 'strict' | 'loose' = 'loose',
|
|
29
|
+
Then = true,
|
|
30
|
+
Else = false
|
|
31
|
+
> = Mode extends 'strict' ? Some.Strict<A, Criteria, Then, Else> : Some.Loose<A, Criteria, Then, Else>
|
|
32
|
+
|
|
33
|
+
export namespace Some {
|
|
34
|
+
export type Strict<A extends readonly unknown[], Criteria, Then, Else> = number extends A['length']
|
|
35
|
+
? StrictArray<A, Criteria, Then, Else>
|
|
36
|
+
: StrictTuple<A, Criteria, Then, Else>
|
|
37
|
+
|
|
38
|
+
export type StrictArray<A extends readonly unknown[], Criteria, Then, Else> = IsEqual<
|
|
39
|
+
UnionOfValues<A>,
|
|
40
|
+
Criteria,
|
|
41
|
+
Then,
|
|
42
|
+
Else
|
|
43
|
+
>
|
|
44
|
+
|
|
45
|
+
export type StrictTuple<A extends readonly unknown[], Criteria, Then, Else> = A['length'] extends 0
|
|
46
|
+
? Else
|
|
47
|
+
: (IsEqual<A[0], Criteria> extends true
|
|
48
|
+
? Then
|
|
49
|
+
: StrictTuple<Tail<A>, Criteria, Then, Else>)
|
|
50
|
+
|
|
51
|
+
export type Loose<A extends readonly unknown[], Criteria, Then, Else> = number extends A['length']
|
|
52
|
+
? LooseArray<A, Criteria, Then, Else>
|
|
53
|
+
: LooseTuple<A, Criteria, Then, Else>
|
|
54
|
+
|
|
55
|
+
export type LooseArray<A extends readonly unknown[], Criteria, Then, Else> = CanAssign<
|
|
56
|
+
UnionOfValues<A>,
|
|
57
|
+
Criteria,
|
|
58
|
+
Then,
|
|
59
|
+
Else
|
|
60
|
+
>
|
|
61
|
+
|
|
62
|
+
export type LooseTuple<A extends readonly unknown[], Criteria, Then, Else> = A['length'] extends 0
|
|
63
|
+
? Else
|
|
64
|
+
: (A[0] extends Criteria
|
|
65
|
+
? Then
|
|
66
|
+
: LooseTuple<Tail<A>, Criteria, Then, Else>)
|
|
67
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { IsNever } from '../never/is_never.js'
|
|
2
|
+
import type { $Never } from '../never/never.js'
|
|
3
|
+
import type { KeyTypes } from '../object/KeyTypes.js'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* ⚗️ *transform*
|
|
7
|
+
* 🔢 *customization*
|
|
8
|
+
*
|
|
9
|
+
* Gets the common keys of the record types in the array `A`.
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { type ArrayPlus } from 'type-plus'
|
|
14
|
+
*
|
|
15
|
+
* type R = ArrayPlus.CommonPropKeys<Array<{ a: 1 }>> // 'a'
|
|
16
|
+
* type R = ArrayPlus.CommonPropKeys<Array<{ a: 1, b: 1 } | { a: 1, c: 1 }>> // 'a'
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* @typeParam Options['$never'] Return type when `T` is `never`.
|
|
20
|
+
* Default to `never`.
|
|
21
|
+
*/
|
|
22
|
+
export type CommonPropKeys<
|
|
23
|
+
A extends readonly Record<KeyTypes, unknown>[],
|
|
24
|
+
Options extends CommonPropKeys.Options = CommonPropKeys.DefaultOptions
|
|
25
|
+
> = IsNever<A,
|
|
26
|
+
{
|
|
27
|
+
$then: Options['$never'],
|
|
28
|
+
$else: A extends Readonly<Array<infer R extends Record<KeyTypes, unknown>>> ? keyof R : never
|
|
29
|
+
}
|
|
30
|
+
>
|
|
31
|
+
|
|
32
|
+
export namespace CommonPropKeys {
|
|
33
|
+
export interface Options extends $Never.$Options {
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface DefaultOptions extends $Never.$Default {
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🦴 *utilities
|
|
3
|
+
* 💀 *deprecated* Will be available only as `ArrayPlus.Concat` in the next version
|
|
4
|
+
*
|
|
5
|
+
* Concats two arrays or tuples.
|
|
6
|
+
*
|
|
7
|
+
* alias of: `[...A, ...B]`
|
|
8
|
+
*
|
|
9
|
+
* @alias ArrayPlus.Concat
|
|
10
|
+
*
|
|
11
|
+
* ```ts
|
|
12
|
+
* type R = Concat<[1], [2, 3]> // [1, 2, 3]
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export type Concat<A extends Readonly<unknown[]>, B extends Readonly<unknown[]>> = [...A, ...B]
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ⚗️ *transform*
|
|
3
|
+
*/
|
|
4
|
+
export type DropMatch<A extends Readonly<Array<unknown>>, Criteria> = A[0] extends Criteria
|
|
5
|
+
? never[]
|
|
6
|
+
: (undefined extends Criteria
|
|
7
|
+
? (null extends Criteria
|
|
8
|
+
? Array<NonNullable<A[0]>>
|
|
9
|
+
: Array<Exclude<A[0], undefined>>)
|
|
10
|
+
: (null extends Criteria
|
|
11
|
+
? Array<Exclude<A[0], null>>
|
|
12
|
+
: (Criteria extends A[0]
|
|
13
|
+
? Array<Exclude<A[0], Criteria>>
|
|
14
|
+
: (A[0] extends Criteria
|
|
15
|
+
? A
|
|
16
|
+
: Array<Exclude<A[0], Criteria>>))))
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { IsNever } from '../never/is_never.js'
|
|
2
|
+
import type { IsUnion } from '../union/union.js'
|
|
3
|
+
import type { TypePlusOptions } from '../utils/options.js'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* 🦴 *utilities*
|
|
7
|
+
* 🔢 *customizable*
|
|
8
|
+
*
|
|
9
|
+
* Filter the element `T` in an array or tuple to match `Criteria`.
|
|
10
|
+
*
|
|
11
|
+
* @typeParam Options['widen'] Allow using narrow type to match widen type.
|
|
12
|
+
* e.g. `number, 1` -> `1 | undefined`.
|
|
13
|
+
* Default to `true`.
|
|
14
|
+
*
|
|
15
|
+
* @typeParam Options['$notMatch'] Return value when `T` does not match `Criteria`.
|
|
16
|
+
* Default to `never`.
|
|
17
|
+
*
|
|
18
|
+
* @typeParam Options['$widen'] Return value when `widen` is true.
|
|
19
|
+
* Default to `Criteria | undefined`.
|
|
20
|
+
*
|
|
21
|
+
* @typeParam Options['$unionNotMatch'] Return value when a branch of the union `T` does not match `Criteria`.
|
|
22
|
+
* Default to `never`.
|
|
23
|
+
*
|
|
24
|
+
* If you want the type to behave more like JavaScript,
|
|
25
|
+
* you can override it to return `undefined`.
|
|
26
|
+
*
|
|
27
|
+
* Since it is a union, the result will be joined to the matched branch as union.
|
|
28
|
+
* e.g. `ElementMatch<1 | 2, 1>` -> `1 | undefined`
|
|
29
|
+
*/
|
|
30
|
+
export type ElementMatch<
|
|
31
|
+
T,
|
|
32
|
+
Criteria,
|
|
33
|
+
Options extends ElementMatch.Options = ElementMatch.DefaultOptions<Criteria>
|
|
34
|
+
> = [T] extends [Criteria]
|
|
35
|
+
? T
|
|
36
|
+
: (TypePlusOptions.Merge<Options, ElementMatch.DefaultOptions<Criteria>> extends infer C extends Record<keyof ElementMatch.Options, unknown>
|
|
37
|
+
? ((T extends Criteria
|
|
38
|
+
? T
|
|
39
|
+
: (C['widen'] extends true
|
|
40
|
+
? (Criteria extends T
|
|
41
|
+
? C['$widen']
|
|
42
|
+
: C['$notMatch'])
|
|
43
|
+
: C['$notMatch'])) extends infer R
|
|
44
|
+
? IsUnion<T, IsNever<R, { $then: R, $else: R | C['$unionNotMatch'] }>, R>
|
|
45
|
+
: C['$notMatch'])
|
|
46
|
+
: never)
|
|
47
|
+
|
|
48
|
+
export namespace ElementMatch {
|
|
49
|
+
export interface Options {
|
|
50
|
+
widen?: boolean | undefined,
|
|
51
|
+
$notMatch?: unknown,
|
|
52
|
+
$widen?: unknown,
|
|
53
|
+
$unionNotMatch?: unknown
|
|
54
|
+
}
|
|
55
|
+
export interface DefaultOptions<Criteria> {
|
|
56
|
+
widen: true,
|
|
57
|
+
$notMatch: never,
|
|
58
|
+
$widen: Criteria | undefined,
|
|
59
|
+
$unionNotMatch: never
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
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 { IsNever } from '../never/is_never.js'
|
|
10
|
+
import type { $Never } from '../never/never.js'
|
|
11
|
+
import type { TypePlusOptions } from '../utils/options.js'
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* ⚗️ *transform*
|
|
15
|
+
* 🔢 *customizable*
|
|
16
|
+
*
|
|
17
|
+
* Filter the array `A`, keeping entries satisfying `Criteria`.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```ts
|
|
21
|
+
* type R = Filter<Array<string | undefined>, string> // string[]
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
export type Filter<
|
|
25
|
+
A extends readonly unknown[],
|
|
26
|
+
Criteria = true,
|
|
27
|
+
Options extends Filter.Options = Filter.DefaultOptions
|
|
28
|
+
> = TypePlusOptions.Merge<Options, Filter.DefaultOptions> extends infer O extends Filter.Options
|
|
29
|
+
? (IsNever<
|
|
30
|
+
A,
|
|
31
|
+
{
|
|
32
|
+
$then: O['$never'],
|
|
33
|
+
$else: (A[0] extends Criteria
|
|
34
|
+
? A
|
|
35
|
+
: Criteria extends A[0] ? Array<Criteria> : O['$notArray'])
|
|
36
|
+
}>)
|
|
37
|
+
: never
|
|
38
|
+
|
|
39
|
+
export namespace Filter {
|
|
40
|
+
export interface Options extends TypePlusOptions.NotArray, $Never.$Options { }
|
|
41
|
+
|
|
42
|
+
export interface DefaultOptions {
|
|
43
|
+
$never: never,
|
|
44
|
+
$notArray: never[]
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export type _<A extends readonly unknown[], Criteria, Result extends unknown[]> = A['length'] extends 0
|
|
48
|
+
? Result
|
|
49
|
+
: (A extends [infer H, ...infer Rest]
|
|
50
|
+
? IsEqual<H, Criteria, _<Rest, Criteria, [...Result, H]>, _<Rest, Criteria, Result>>
|
|
51
|
+
: never)
|
|
52
|
+
}
|