@depup/typebox 1.1.6-depup.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -0
- package/build/compile/code.d.mts +12 -0
- package/build/compile/code.mjs +65 -0
- package/build/compile/compile.d.mts +6 -0
- package/build/compile/compile.mjs +11 -0
- package/build/compile/index.d.mts +8 -0
- package/build/compile/index.mjs +14 -0
- package/build/compile/validator.d.mts +42 -0
- package/build/compile/validator.mjs +116 -0
- package/build/error/errors.d.mts +214 -0
- package/build/error/errors.mjs +17 -0
- package/build/error/index.d.mts +1 -0
- package/build/error/index.mjs +1 -0
- package/build/format/_registry.d.mts +15 -0
- package/build/format/_registry.mjs +96 -0
- package/build/format/date-time.d.mts +6 -0
- package/build/format/date-time.mjs +11 -0
- package/build/format/date.d.mts +6 -0
- package/build/format/date.mjs +19 -0
- package/build/format/duration.d.mts +5 -0
- package/build/format/duration.mjs +8 -0
- package/build/format/email.d.mts +2 -0
- package/build/format/email.mjs +5 -0
- package/build/format/format.d.mts +22 -0
- package/build/format/format.mjs +22 -0
- package/build/format/hostname.d.mts +2 -0
- package/build/format/hostname.mjs +5 -0
- package/build/format/idn-email.d.mts +2 -0
- package/build/format/idn-email.mjs +5 -0
- package/build/format/idn-hostname.d.mts +5 -0
- package/build/format/idn-hostname.mjs +128 -0
- package/build/format/index.d.mts +4 -0
- package/build/format/index.mjs +4 -0
- package/build/format/ipv4.d.mts +6 -0
- package/build/format/ipv4.mjs +9 -0
- package/build/format/ipv6.d.mts +6 -0
- package/build/format/ipv6.mjs +9 -0
- package/build/format/iri-reference.d.mts +5 -0
- package/build/format/iri-reference.mjs +59 -0
- package/build/format/iri.d.mts +5 -0
- package/build/format/iri.mjs +13 -0
- package/build/format/json-pointer-uri-fragment.d.mts +6 -0
- package/build/format/json-pointer-uri-fragment.mjs +9 -0
- package/build/format/json-pointer.d.mts +6 -0
- package/build/format/json-pointer.mjs +9 -0
- package/build/format/regex.d.mts +6 -0
- package/build/format/regex.mjs +17 -0
- package/build/format/relative-json-pointer.d.mts +6 -0
- package/build/format/relative-json-pointer.mjs +9 -0
- package/build/format/time.d.mts +5 -0
- package/build/format/time.mjs +27 -0
- package/build/format/uri-reference.d.mts +6 -0
- package/build/format/uri-reference.mjs +9 -0
- package/build/format/uri-template.d.mts +6 -0
- package/build/format/uri-template.mjs +10 -0
- package/build/format/uri.d.mts +6 -0
- package/build/format/uri.mjs +9 -0
- package/build/format/url.d.mts +6 -0
- package/build/format/url.mjs +9 -0
- package/build/format/uuid.d.mts +6 -0
- package/build/format/uuid.mjs +9 -0
- package/build/guard/emit.d.mts +58 -0
- package/build/guard/emit.mjs +194 -0
- package/build/guard/globals.d.mts +35 -0
- package/build/guard/globals.mjs +90 -0
- package/build/guard/guard.d.mts +63 -0
- package/build/guard/guard.mjs +208 -0
- package/build/guard/index.d.mts +6 -0
- package/build/guard/index.mjs +6 -0
- package/build/guard/native.d.mts +20 -0
- package/build/guard/native.mjs +60 -0
- package/build/guard/string.d.mts +10 -0
- package/build/guard/string.mjs +158 -0
- package/build/index.d.mts +8 -0
- package/build/index.mjs +14 -0
- package/build/schema/build.d.mts +35 -0
- package/build/schema/build.mjs +99 -0
- package/build/schema/check.d.mts +6 -0
- package/build/schema/check.mjs +14 -0
- package/build/schema/compile.d.mts +22 -0
- package/build/schema/compile.mjs +46 -0
- package/build/schema/engine/_context.d.mts +32 -0
- package/build/schema/engine/_context.mjs +98 -0
- package/build/schema/engine/_exact_optional.d.mts +3 -0
- package/build/schema/engine/_exact_optional.mjs +20 -0
- package/build/schema/engine/_externals.d.mts +9 -0
- package/build/schema/engine/_externals.mjs +34 -0
- package/build/schema/engine/_functions.d.mts +6 -0
- package/build/schema/engine/_functions.mjs +47 -0
- package/build/schema/engine/_guard.d.mts +6 -0
- package/build/schema/engine/_guard.mjs +26 -0
- package/build/schema/engine/_reducer.d.mts +4 -0
- package/build/schema/engine/_reducer.mjs +45 -0
- package/build/schema/engine/_refine.d.mts +6 -0
- package/build/schema/engine/_refine.mjs +29 -0
- package/build/schema/engine/_stack.d.mts +18 -0
- package/build/schema/engine/_stack.mjs +73 -0
- package/build/schema/engine/_unique.d.mts +2 -0
- package/build/schema/engine/_unique.mjs +5 -0
- package/build/schema/engine/additionalItems.d.mts +6 -0
- package/build/schema/engine/additionalItems.mjs +50 -0
- package/build/schema/engine/additionalProperties.d.mts +9 -0
- package/build/schema/engine/additionalProperties.mjs +110 -0
- package/build/schema/engine/allOf.d.mts +6 -0
- package/build/schema/engine/allOf.mjs +47 -0
- package/build/schema/engine/anyOf.d.mts +6 -0
- package/build/schema/engine/anyOf.mjs +52 -0
- package/build/schema/engine/boolean.d.mts +5 -0
- package/build/schema/engine/boolean.mjs +25 -0
- package/build/schema/engine/const.d.mts +6 -0
- package/build/schema/engine/const.mjs +30 -0
- package/build/schema/engine/contains.d.mts +6 -0
- package/build/schema/engine/contains.mjs +42 -0
- package/build/schema/engine/dependencies.d.mts +6 -0
- package/build/schema/engine/dependencies.mjs +45 -0
- package/build/schema/engine/dependentRequired.d.mts +6 -0
- package/build/schema/engine/dependentRequired.mjs +40 -0
- package/build/schema/engine/dependentSchemas.d.mts +6 -0
- package/build/schema/engine/dependentSchemas.mjs +38 -0
- package/build/schema/engine/enum.d.mts +6 -0
- package/build/schema/engine/enum.mjs +33 -0
- package/build/schema/engine/exclusiveMaximum.d.mts +6 -0
- package/build/schema/engine/exclusiveMaximum.mjs +25 -0
- package/build/schema/engine/exclusiveMinimum.d.mts +6 -0
- package/build/schema/engine/exclusiveMinimum.mjs +25 -0
- package/build/schema/engine/format.d.mts +6 -0
- package/build/schema/engine/format.mjs +26 -0
- package/build/schema/engine/if.d.mts +6 -0
- package/build/schema/engine/if.mjs +47 -0
- package/build/schema/engine/index.d.mts +49 -0
- package/build/schema/engine/index.mjs +55 -0
- package/build/schema/engine/items.d.mts +6 -0
- package/build/schema/engine/items.mjs +68 -0
- package/build/schema/engine/maxContains.d.mts +6 -0
- package/build/schema/engine/maxContains.mjs +42 -0
- package/build/schema/engine/maxItems.d.mts +6 -0
- package/build/schema/engine/maxItems.mjs +25 -0
- package/build/schema/engine/maxLength.d.mts +6 -0
- package/build/schema/engine/maxLength.mjs +25 -0
- package/build/schema/engine/maxProperties.d.mts +6 -0
- package/build/schema/engine/maxProperties.mjs +25 -0
- package/build/schema/engine/maximum.d.mts +6 -0
- package/build/schema/engine/maximum.mjs +25 -0
- package/build/schema/engine/minContains.d.mts +6 -0
- package/build/schema/engine/minContains.mjs +41 -0
- package/build/schema/engine/minItems.d.mts +6 -0
- package/build/schema/engine/minItems.mjs +25 -0
- package/build/schema/engine/minLength.d.mts +6 -0
- package/build/schema/engine/minLength.mjs +25 -0
- package/build/schema/engine/minProperties.d.mts +6 -0
- package/build/schema/engine/minProperties.mjs +25 -0
- package/build/schema/engine/minimum.d.mts +6 -0
- package/build/schema/engine/minimum.mjs +25 -0
- package/build/schema/engine/multipleOf.d.mts +6 -0
- package/build/schema/engine/multipleOf.mjs +25 -0
- package/build/schema/engine/not.d.mts +6 -0
- package/build/schema/engine/not.mjs +37 -0
- package/build/schema/engine/oneOf.d.mts +6 -0
- package/build/schema/engine/oneOf.mjs +58 -0
- package/build/schema/engine/pattern.d.mts +6 -0
- package/build/schema/engine/pattern.mjs +28 -0
- package/build/schema/engine/patternProperties.d.mts +6 -0
- package/build/schema/engine/patternProperties.mjs +44 -0
- package/build/schema/engine/prefixItems.d.mts +6 -0
- package/build/schema/engine/prefixItems.mjs +35 -0
- package/build/schema/engine/properties.d.mts +6 -0
- package/build/schema/engine/properties.mjs +75 -0
- package/build/schema/engine/propertyNames.d.mts +6 -0
- package/build/schema/engine/propertyNames.mjs +39 -0
- package/build/schema/engine/recursiveRef.d.mts +6 -0
- package/build/schema/engine/recursiveRef.mjs +25 -0
- package/build/schema/engine/ref.d.mts +6 -0
- package/build/schema/engine/ref.mjs +58 -0
- package/build/schema/engine/required.d.mts +6 -0
- package/build/schema/engine/required.mjs +32 -0
- package/build/schema/engine/schema.d.mts +6 -0
- package/build/schema/engine/schema.mjs +336 -0
- package/build/schema/engine/type.d.mts +6 -0
- package/build/schema/engine/type.mjs +74 -0
- package/build/schema/engine/unevaluatedItems.d.mts +6 -0
- package/build/schema/engine/unevaluatedItems.mjs +51 -0
- package/build/schema/engine/unevaluatedProperties.d.mts +6 -0
- package/build/schema/engine/unevaluatedProperties.mjs +51 -0
- package/build/schema/engine/uniqueItems.d.mts +6 -0
- package/build/schema/engine/uniqueItems.mjs +51 -0
- package/build/schema/errors.d.mts +6 -0
- package/build/schema/errors.mjs +24 -0
- package/build/schema/index.d.mts +3 -0
- package/build/schema/index.mjs +9 -0
- package/build/schema/parse.d.mts +13 -0
- package/build/schema/parse.mjs +27 -0
- package/build/schema/pointer/index.d.mts +2 -0
- package/build/schema/pointer/index.mjs +2 -0
- package/build/schema/pointer/pointer-get.d.mts +9 -0
- package/build/schema/pointer/pointer-get.mjs +2 -0
- package/build/schema/pointer/pointer.d.mts +10 -0
- package/build/schema/pointer/pointer.mjs +96 -0
- package/build/schema/resolve/index.d.mts +1 -0
- package/build/schema/resolve/index.mjs +1 -0
- package/build/schema/resolve/ref.d.mts +2 -0
- package/build/schema/resolve/ref.mjs +96 -0
- package/build/schema/resolve/resolve.d.mts +1 -0
- package/build/schema/resolve/resolve.mjs +1 -0
- package/build/schema/schema.d.mts +10 -0
- package/build/schema/schema.mjs +10 -0
- package/build/schema/static/additionalProperties.d.mts +7 -0
- package/build/schema/static/additionalProperties.mjs +2 -0
- package/build/schema/static/allOf.d.mts +3 -0
- package/build/schema/static/allOf.mjs +2 -0
- package/build/schema/static/anyOf.d.mts +3 -0
- package/build/schema/static/anyOf.mjs +2 -0
- package/build/schema/static/const.d.mts +1 -0
- package/build/schema/static/const.mjs +2 -0
- package/build/schema/static/enum.d.mts +1 -0
- package/build/schema/static/enum.mjs +2 -0
- package/build/schema/static/if.d.mts +15 -0
- package/build/schema/static/if.mjs +2 -0
- package/build/schema/static/index.d.mts +1 -0
- package/build/schema/static/index.mjs +1 -0
- package/build/schema/static/items.d.mts +7 -0
- package/build/schema/static/items.mjs +2 -0
- package/build/schema/static/oneOf.d.mts +3 -0
- package/build/schema/static/oneOf.mjs +2 -0
- package/build/schema/static/patternProperties.d.mts +7 -0
- package/build/schema/static/patternProperties.mjs +2 -0
- package/build/schema/static/prefixItems.d.mts +3 -0
- package/build/schema/static/prefixItems.mjs +2 -0
- package/build/schema/static/properties.d.mts +11 -0
- package/build/schema/static/properties.mjs +2 -0
- package/build/schema/static/ref.d.mts +8 -0
- package/build/schema/static/ref.mjs +2 -0
- package/build/schema/static/required.d.mts +13 -0
- package/build/schema/static/required.mjs +2 -0
- package/build/schema/static/schema.d.mts +55 -0
- package/build/schema/static/schema.mjs +2 -0
- package/build/schema/static/static.d.mts +4 -0
- package/build/schema/static/static.mjs +2 -0
- package/build/schema/static/type.d.mts +4 -0
- package/build/schema/static/type.mjs +2 -0
- package/build/schema/static/unevaluatedProperties.d.mts +7 -0
- package/build/schema/static/unevaluatedProperties.mjs +2 -0
- package/build/schema/static/~comparer.d.mts +6 -0
- package/build/schema/static/~comparer.mjs +2 -0
- package/build/schema/static/~elements.d.mts +18 -0
- package/build/schema/static/~elements.mjs +2 -0
- package/build/schema/static/~non-readonly.d.mts +7 -0
- package/build/schema/static/~non-readonly.mjs +2 -0
- package/build/schema/static/~readonly.d.mts +6 -0
- package/build/schema/static/~readonly.mjs +2 -0
- package/build/schema/types/_guard.d.mts +10 -0
- package/build/schema/types/_guard.mjs +16 -0
- package/build/schema/types/_refine.d.mts +13 -0
- package/build/schema/types/_refine.mjs +18 -0
- package/build/schema/types/additionalItems.d.mts +9 -0
- package/build/schema/types/additionalItems.mjs +14 -0
- package/build/schema/types/additionalProperties.d.mts +9 -0
- package/build/schema/types/additionalProperties.mjs +14 -0
- package/build/schema/types/allOf.d.mts +9 -0
- package/build/schema/types/allOf.mjs +15 -0
- package/build/schema/types/anchor.d.mts +8 -0
- package/build/schema/types/anchor.mjs +12 -0
- package/build/schema/types/anyOf.d.mts +9 -0
- package/build/schema/types/anyOf.mjs +15 -0
- package/build/schema/types/const.d.mts +9 -0
- package/build/schema/types/const.mjs +12 -0
- package/build/schema/types/contains.d.mts +9 -0
- package/build/schema/types/contains.mjs +14 -0
- package/build/schema/types/contentEncoding.d.mts +9 -0
- package/build/schema/types/contentEncoding.mjs +13 -0
- package/build/schema/types/contentMediaType.d.mts +9 -0
- package/build/schema/types/contentMediaType.mjs +13 -0
- package/build/schema/types/default.d.mts +9 -0
- package/build/schema/types/default.mjs +12 -0
- package/build/schema/types/defs.d.mts +6 -0
- package/build/schema/types/defs.mjs +12 -0
- package/build/schema/types/dependencies.d.mts +11 -0
- package/build/schema/types/dependencies.mjs +16 -0
- package/build/schema/types/dependentRequired.d.mts +9 -0
- package/build/schema/types/dependentRequired.mjs +15 -0
- package/build/schema/types/dependentSchemas.d.mts +9 -0
- package/build/schema/types/dependentSchemas.mjs +15 -0
- package/build/schema/types/dynamicAnchor.d.mts +8 -0
- package/build/schema/types/dynamicAnchor.mjs +12 -0
- package/build/schema/types/dynamicRef.d.mts +8 -0
- package/build/schema/types/dynamicRef.mjs +12 -0
- package/build/schema/types/else.d.mts +9 -0
- package/build/schema/types/else.mjs +14 -0
- package/build/schema/types/enum.d.mts +9 -0
- package/build/schema/types/enum.mjs +13 -0
- package/build/schema/types/exclusiveMaximum.d.mts +9 -0
- package/build/schema/types/exclusiveMaximum.mjs +13 -0
- package/build/schema/types/exclusiveMinimum.d.mts +9 -0
- package/build/schema/types/exclusiveMinimum.mjs +13 -0
- package/build/schema/types/format.d.mts +9 -0
- package/build/schema/types/format.mjs +13 -0
- package/build/schema/types/id.d.mts +9 -0
- package/build/schema/types/id.mjs +13 -0
- package/build/schema/types/if.d.mts +9 -0
- package/build/schema/types/if.mjs +14 -0
- package/build/schema/types/index.d.mts +54 -0
- package/build/schema/types/index.mjs +60 -0
- package/build/schema/types/items.d.mts +19 -0
- package/build/schema/types/items.mjs +26 -0
- package/build/schema/types/maxContains.d.mts +9 -0
- package/build/schema/types/maxContains.mjs +13 -0
- package/build/schema/types/maxItems.d.mts +9 -0
- package/build/schema/types/maxItems.mjs +13 -0
- package/build/schema/types/maxLength.d.mts +9 -0
- package/build/schema/types/maxLength.mjs +13 -0
- package/build/schema/types/maxProperties.d.mts +9 -0
- package/build/schema/types/maxProperties.mjs +13 -0
- package/build/schema/types/maximum.d.mts +9 -0
- package/build/schema/types/maximum.mjs +13 -0
- package/build/schema/types/minContains.d.mts +9 -0
- package/build/schema/types/minContains.mjs +13 -0
- package/build/schema/types/minItems.d.mts +9 -0
- package/build/schema/types/minItems.mjs +13 -0
- package/build/schema/types/minLength.d.mts +9 -0
- package/build/schema/types/minLength.mjs +13 -0
- package/build/schema/types/minProperties.d.mts +9 -0
- package/build/schema/types/minProperties.mjs +13 -0
- package/build/schema/types/minimum.d.mts +9 -0
- package/build/schema/types/minimum.mjs +13 -0
- package/build/schema/types/multipleOf.d.mts +9 -0
- package/build/schema/types/multipleOf.mjs +13 -0
- package/build/schema/types/not.d.mts +9 -0
- package/build/schema/types/not.mjs +14 -0
- package/build/schema/types/oneOf.d.mts +9 -0
- package/build/schema/types/oneOf.mjs +15 -0
- package/build/schema/types/pattern.d.mts +9 -0
- package/build/schema/types/pattern.mjs +14 -0
- package/build/schema/types/patternProperties.d.mts +9 -0
- package/build/schema/types/patternProperties.mjs +15 -0
- package/build/schema/types/prefixItems.d.mts +8 -0
- package/build/schema/types/prefixItems.mjs +14 -0
- package/build/schema/types/properties.d.mts +9 -0
- package/build/schema/types/properties.mjs +15 -0
- package/build/schema/types/propertyNames.d.mts +9 -0
- package/build/schema/types/propertyNames.mjs +15 -0
- package/build/schema/types/recursiveAnchor.d.mts +12 -0
- package/build/schema/types/recursiveAnchor.mjs +19 -0
- package/build/schema/types/recursiveRef.d.mts +8 -0
- package/build/schema/types/recursiveRef.mjs +12 -0
- package/build/schema/types/ref.d.mts +9 -0
- package/build/schema/types/ref.mjs +13 -0
- package/build/schema/types/required.d.mts +9 -0
- package/build/schema/types/required.mjs +14 -0
- package/build/schema/types/schema.d.mts +9 -0
- package/build/schema/types/schema.mjs +14 -0
- package/build/schema/types/then.d.mts +9 -0
- package/build/schema/types/then.mjs +14 -0
- package/build/schema/types/type.d.mts +9 -0
- package/build/schema/types/type.mjs +15 -0
- package/build/schema/types/unevaluatedItems.d.mts +9 -0
- package/build/schema/types/unevaluatedItems.mjs +14 -0
- package/build/schema/types/unevaluatedProperties.d.mts +9 -0
- package/build/schema/types/unevaluatedProperties.mjs +14 -0
- package/build/schema/types/uniqueItems.d.mts +9 -0
- package/build/schema/types/uniqueItems.mjs +13 -0
- package/build/system/arguments/arguments.d.mts +5 -0
- package/build/system/arguments/arguments.mjs +9 -0
- package/build/system/arguments/index.d.mts +1 -0
- package/build/system/arguments/index.mjs +1 -0
- package/build/system/environment/can-evaluate.d.mts +2 -0
- package/build/system/environment/can-evaluate.mjs +26 -0
- package/build/system/environment/environment.d.mts +1 -0
- package/build/system/environment/environment.mjs +1 -0
- package/build/system/environment/index.d.mts +1 -0
- package/build/system/environment/index.mjs +1 -0
- package/build/system/hashing/hash.d.mts +4 -0
- package/build/system/hashing/hash.mjs +232 -0
- package/build/system/hashing/index.d.mts +1 -0
- package/build/system/hashing/index.mjs +1 -0
- package/build/system/index.d.mts +4 -0
- package/build/system/index.mjs +4 -0
- package/build/system/locale/_config.d.mts +7 -0
- package/build/system/locale/_config.mjs +15 -0
- package/build/system/locale/_locale.d.mts +40 -0
- package/build/system/locale/_locale.mjs +40 -0
- package/build/system/locale/ar_001.d.mts +3 -0
- package/build/system/locale/ar_001.mjs +41 -0
- package/build/system/locale/bn_BD.d.mts +3 -0
- package/build/system/locale/bn_BD.mjs +41 -0
- package/build/system/locale/cs_CZ.d.mts +3 -0
- package/build/system/locale/cs_CZ.mjs +41 -0
- package/build/system/locale/de_DE.d.mts +3 -0
- package/build/system/locale/de_DE.mjs +41 -0
- package/build/system/locale/el_GR.d.mts +3 -0
- package/build/system/locale/el_GR.mjs +41 -0
- package/build/system/locale/en_US.d.mts +3 -0
- package/build/system/locale/en_US.mjs +40 -0
- package/build/system/locale/es_419.d.mts +3 -0
- package/build/system/locale/es_419.mjs +41 -0
- package/build/system/locale/es_AR.d.mts +3 -0
- package/build/system/locale/es_AR.mjs +41 -0
- package/build/system/locale/es_ES.d.mts +3 -0
- package/build/system/locale/es_ES.mjs +41 -0
- package/build/system/locale/es_MX.d.mts +3 -0
- package/build/system/locale/es_MX.mjs +41 -0
- package/build/system/locale/fa_IR.d.mts +3 -0
- package/build/system/locale/fa_IR.mjs +41 -0
- package/build/system/locale/fil_PH.d.mts +3 -0
- package/build/system/locale/fil_PH.mjs +41 -0
- package/build/system/locale/fr_CA.d.mts +3 -0
- package/build/system/locale/fr_CA.mjs +41 -0
- package/build/system/locale/fr_FR.d.mts +3 -0
- package/build/system/locale/fr_FR.mjs +41 -0
- package/build/system/locale/ha_NG.d.mts +3 -0
- package/build/system/locale/ha_NG.mjs +41 -0
- package/build/system/locale/hi_IN.d.mts +3 -0
- package/build/system/locale/hi_IN.mjs +41 -0
- package/build/system/locale/hu_HU.d.mts +3 -0
- package/build/system/locale/hu_HU.mjs +41 -0
- package/build/system/locale/id_ID.d.mts +3 -0
- package/build/system/locale/id_ID.mjs +41 -0
- package/build/system/locale/index.d.mts +1 -0
- package/build/system/locale/index.mjs +1 -0
- package/build/system/locale/it_IT.d.mts +3 -0
- package/build/system/locale/it_IT.mjs +41 -0
- package/build/system/locale/ja_JP.d.mts +3 -0
- package/build/system/locale/ja_JP.mjs +41 -0
- package/build/system/locale/ko_KR.d.mts +3 -0
- package/build/system/locale/ko_KR.mjs +41 -0
- package/build/system/locale/ms_MY.d.mts +3 -0
- package/build/system/locale/ms_MY.mjs +41 -0
- package/build/system/locale/nl_NL.d.mts +3 -0
- package/build/system/locale/nl_NL.mjs +41 -0
- package/build/system/locale/pl_PL.d.mts +3 -0
- package/build/system/locale/pl_PL.mjs +41 -0
- package/build/system/locale/pt_BR.d.mts +3 -0
- package/build/system/locale/pt_BR.mjs +41 -0
- package/build/system/locale/pt_PT.d.mts +3 -0
- package/build/system/locale/pt_PT.mjs +41 -0
- package/build/system/locale/ro_RO.d.mts +3 -0
- package/build/system/locale/ro_RO.mjs +41 -0
- package/build/system/locale/ru_RU.d.mts +3 -0
- package/build/system/locale/ru_RU.mjs +41 -0
- package/build/system/locale/sv_SE.d.mts +3 -0
- package/build/system/locale/sv_SE.mjs +41 -0
- package/build/system/locale/sw_TZ.d.mts +3 -0
- package/build/system/locale/sw_TZ.mjs +41 -0
- package/build/system/locale/th_TH.d.mts +3 -0
- package/build/system/locale/th_TH.mjs +41 -0
- package/build/system/locale/tr_TR.d.mts +3 -0
- package/build/system/locale/tr_TR.mjs +41 -0
- package/build/system/locale/uk_UA.d.mts +3 -0
- package/build/system/locale/uk_UA.mjs +41 -0
- package/build/system/locale/ur_PK.d.mts +3 -0
- package/build/system/locale/ur_PK.mjs +41 -0
- package/build/system/locale/vi_VN.d.mts +3 -0
- package/build/system/locale/vi_VN.mjs +41 -0
- package/build/system/locale/yo_NG.d.mts +3 -0
- package/build/system/locale/yo_NG.mjs +41 -0
- package/build/system/locale/zh_Hans.d.mts +3 -0
- package/build/system/locale/zh_Hans.mjs +41 -0
- package/build/system/locale/zh_Hant.d.mts +3 -0
- package/build/system/locale/zh_Hant.mjs +41 -0
- package/build/system/memory/assign.d.mts +14 -0
- package/build/system/memory/assign.mjs +10 -0
- package/build/system/memory/clone.d.mts +6 -0
- package/build/system/memory/clone.mjs +63 -0
- package/build/system/memory/create.d.mts +8 -0
- package/build/system/memory/create.mjs +29 -0
- package/build/system/memory/discard.d.mts +4 -0
- package/build/system/memory/discard.mjs +16 -0
- package/build/system/memory/index.d.mts +1 -0
- package/build/system/memory/index.mjs +1 -0
- package/build/system/memory/memory.d.mts +6 -0
- package/build/system/memory/memory.mjs +7 -0
- package/build/system/memory/metrics.d.mts +14 -0
- package/build/system/memory/metrics.mjs +8 -0
- package/build/system/memory/update.d.mts +7 -0
- package/build/system/memory/update.mjs +32 -0
- package/build/system/settings/index.d.mts +1 -0
- package/build/system/settings/index.mjs +1 -0
- package/build/system/settings/settings.d.mts +56 -0
- package/build/system/settings/settings.mjs +32 -0
- package/build/system/system.d.mts +6 -0
- package/build/system/system.mjs +6 -0
- package/build/system/unreachable/index.d.mts +1 -0
- package/build/system/unreachable/index.mjs +1 -0
- package/build/system/unreachable/unreachable.d.mts +3 -0
- package/build/system/unreachable/unreachable.mjs +6 -0
- package/build/type/action/_optional.d.mts +19 -0
- package/build/type/action/_optional.mjs +40 -0
- package/build/type/action/_readonly.d.mts +19 -0
- package/build/type/action/_readonly.mjs +40 -0
- package/build/type/action/awaited.d.mts +11 -0
- package/build/type/action/awaited.mjs +11 -0
- package/build/type/action/capitalize.d.mts +11 -0
- package/build/type/action/capitalize.mjs +11 -0
- package/build/type/action/conditional.d.mts +11 -0
- package/build/type/action/conditional.mjs +11 -0
- package/build/type/action/constructor-parameters.d.mts +11 -0
- package/build/type/action/constructor-parameters.mjs +11 -0
- package/build/type/action/evaluate.d.mts +11 -0
- package/build/type/action/evaluate.mjs +11 -0
- package/build/type/action/exclude.d.mts +11 -0
- package/build/type/action/exclude.mjs +11 -0
- package/build/type/action/extract.d.mts +11 -0
- package/build/type/action/extract.mjs +11 -0
- package/build/type/action/index.d.mts +27 -0
- package/build/type/action/index.mjs +27 -0
- package/build/type/action/indexed.d.mts +14 -0
- package/build/type/action/indexed.mjs +14 -0
- package/build/type/action/instance-type.d.mts +11 -0
- package/build/type/action/instance-type.mjs +11 -0
- package/build/type/action/interface.d.mts +14 -0
- package/build/type/action/interface.mjs +19 -0
- package/build/type/action/keyof.d.mts +11 -0
- package/build/type/action/keyof.mjs +11 -0
- package/build/type/action/lowercase.d.mts +11 -0
- package/build/type/action/lowercase.mjs +11 -0
- package/build/type/action/mapped.d.mts +12 -0
- package/build/type/action/mapped.mjs +11 -0
- package/build/type/action/module.d.mts +12 -0
- package/build/type/action/module.mjs +11 -0
- package/build/type/action/non-nullable.d.mts +11 -0
- package/build/type/action/non-nullable.mjs +11 -0
- package/build/type/action/omit.d.mts +14 -0
- package/build/type/action/omit.mjs +14 -0
- package/build/type/action/options.d.mts +12 -0
- package/build/type/action/options.mjs +11 -0
- package/build/type/action/parameters.d.mts +11 -0
- package/build/type/action/parameters.mjs +11 -0
- package/build/type/action/partial.d.mts +11 -0
- package/build/type/action/partial.mjs +11 -0
- package/build/type/action/pick.d.mts +14 -0
- package/build/type/action/pick.mjs +14 -0
- package/build/type/action/readonly-type.d.mts +11 -0
- package/build/type/action/readonly-type.mjs +11 -0
- package/build/type/action/required.d.mts +11 -0
- package/build/type/action/required.mjs +11 -0
- package/build/type/action/return-type.d.mts +11 -0
- package/build/type/action/return-type.mjs +11 -0
- package/build/type/action/uncapitalize.d.mts +11 -0
- package/build/type/action/uncapitalize.mjs +11 -0
- package/build/type/action/uppercase.d.mts +11 -0
- package/build/type/action/uppercase.mjs +11 -0
- package/build/type/engine/awaited/index.d.mts +1 -0
- package/build/type/engine/awaited/index.mjs +1 -0
- package/build/type/engine/awaited/instantiate.d.mts +10 -0
- package/build/type/engine/awaited/instantiate.mjs +19 -0
- package/build/type/engine/call/instantiate.d.mts +20 -0
- package/build/type/engine/call/instantiate.mjs +38 -0
- package/build/type/engine/call/resolve-arguments.d.mts +13 -0
- package/build/type/engine/call/resolve-arguments.mjs +39 -0
- package/build/type/engine/call/resolve-target.d.mts +25 -0
- package/build/type/engine/call/resolve-target.mjs +27 -0
- package/build/type/engine/conditional/index.d.mts +1 -0
- package/build/type/engine/conditional/index.mjs +1 -0
- package/build/type/engine/conditional/instantiate.d.mts +10 -0
- package/build/type/engine/conditional/instantiate.mjs +19 -0
- package/build/type/engine/constructor-parameters/index.d.mts +1 -0
- package/build/type/engine/constructor-parameters/index.mjs +1 -0
- package/build/type/engine/constructor-parameters/instantiate.d.mts +14 -0
- package/build/type/engine/constructor-parameters/instantiate.mjs +21 -0
- package/build/type/engine/cyclic/candidates.d.mts +9 -0
- package/build/type/engine/cyclic/candidates.mjs +19 -0
- package/build/type/engine/cyclic/check.d.mts +24 -0
- package/build/type/engine/cyclic/check.mjs +54 -0
- package/build/type/engine/cyclic/dependencies.d.mts +25 -0
- package/build/type/engine/cyclic/dependencies.mjs +53 -0
- package/build/type/engine/cyclic/extends.d.mts +31 -0
- package/build/type/engine/cyclic/extends.mjs +53 -0
- package/build/type/engine/cyclic/index.d.mts +6 -0
- package/build/type/engine/cyclic/index.mjs +6 -0
- package/build/type/engine/cyclic/instantiate.d.mts +20 -0
- package/build/type/engine/cyclic/instantiate.mjs +29 -0
- package/build/type/engine/cyclic/target.d.mts +10 -0
- package/build/type/engine/cyclic/target.mjs +16 -0
- package/build/type/engine/enum/enum-to-union.d.mts +14 -0
- package/build/type/engine/enum/enum-to-union.mjs +24 -0
- package/build/type/engine/enum/index.d.mts +2 -0
- package/build/type/engine/enum/index.mjs +2 -0
- package/build/type/engine/enum/typescript-enum-to-enum-values.d.mts +8 -0
- package/build/type/engine/enum/typescript-enum-to-enum-values.mjs +9 -0
- package/build/type/engine/evaluate/broaden.d.mts +16 -0
- package/build/type/engine/evaluate/broaden.mjs +48 -0
- package/build/type/engine/evaluate/compare.d.mts +15 -0
- package/build/type/engine/evaluate/compare.mjs +21 -0
- package/build/type/engine/evaluate/composite.d.mts +30 -0
- package/build/type/engine/evaluate/composite.mjs +63 -0
- package/build/type/engine/evaluate/distribute.d.mts +27 -0
- package/build/type/engine/evaluate/distribute.mjs +55 -0
- package/build/type/engine/evaluate/evaluate.d.mts +14 -0
- package/build/type/engine/evaluate/evaluate.mjs +27 -0
- package/build/type/engine/evaluate/flatten.d.mts +6 -0
- package/build/type/engine/evaluate/flatten.mjs +11 -0
- package/build/type/engine/evaluate/index.d.mts +8 -0
- package/build/type/engine/evaluate/index.mjs +8 -0
- package/build/type/engine/evaluate/instantiate.d.mts +8 -0
- package/build/type/engine/evaluate/instantiate.mjs +17 -0
- package/build/type/engine/evaluate/narrow.d.mts +5 -0
- package/build/type/engine/evaluate/narrow.mjs +11 -0
- package/build/type/engine/exclude/index.d.mts +1 -0
- package/build/type/engine/exclude/index.mjs +1 -0
- package/build/type/engine/exclude/instantiate.d.mts +16 -0
- package/build/type/engine/exclude/instantiate.mjs +36 -0
- package/build/type/engine/extract/index.d.mts +1 -0
- package/build/type/engine/extract/index.mjs +1 -0
- package/build/type/engine/extract/instantiate.d.mts +16 -0
- package/build/type/engine/extract/instantiate.mjs +36 -0
- package/build/type/engine/helpers/index.d.mts +3 -0
- package/build/type/engine/helpers/index.mjs +3 -0
- package/build/type/engine/helpers/keys-to-indexer.d.mts +7 -0
- package/build/type/engine/helpers/keys-to-indexer.mjs +15 -0
- package/build/type/engine/helpers/keys.d.mts +3 -0
- package/build/type/engine/helpers/keys.mjs +8 -0
- package/build/type/engine/helpers/union.d.mts +7 -0
- package/build/type/engine/helpers/union.mjs +2 -0
- package/build/type/engine/index.d.mts +31 -0
- package/build/type/engine/index.mjs +37 -0
- package/build/type/engine/indexable/from-cyclic.d.mts +6 -0
- package/build/type/engine/indexable/from-cyclic.mjs +8 -0
- package/build/type/engine/indexable/from-enum.d.mts +6 -0
- package/build/type/engine/indexable/from-enum.mjs +8 -0
- package/build/type/engine/indexable/from-intersect.d.mts +5 -0
- package/build/type/engine/indexable/from-intersect.mjs +8 -0
- package/build/type/engine/indexable/from-literal.d.mts +3 -0
- package/build/type/engine/indexable/from-literal.mjs +5 -0
- package/build/type/engine/indexable/from-template-literal.d.mts +5 -0
- package/build/type/engine/indexable/from-template-literal.mjs +8 -0
- package/build/type/engine/indexable/from-type.d.mts +17 -0
- package/build/type/engine/indexable/from-type.mjs +22 -0
- package/build/type/engine/indexable/from-union.d.mts +4 -0
- package/build/type/engine/indexable/from-union.mjs +7 -0
- package/build/type/engine/indexable/to-indexable-keys.d.mts +10 -0
- package/build/type/engine/indexable/to-indexable-keys.mjs +12 -0
- package/build/type/engine/indexable/to-indexable.d.mts +9 -0
- package/build/type/engine/indexable/to-indexable.mjs +14 -0
- package/build/type/engine/indexed/array-indexer.d.mts +12 -0
- package/build/type/engine/indexed/array-indexer.mjs +18 -0
- package/build/type/engine/indexed/from-array.d.mts +15 -0
- package/build/type/engine/indexed/from-array.mjs +26 -0
- package/build/type/engine/indexed/from-object.d.mts +9 -0
- package/build/type/engine/indexed/from-object.mjs +18 -0
- package/build/type/engine/indexed/from-tuple.d.mts +13 -0
- package/build/type/engine/indexed/from-tuple.mjs +28 -0
- package/build/type/engine/indexed/index.d.mts +1 -0
- package/build/type/engine/indexed/index.mjs +1 -0
- package/build/type/engine/indexed/instantiate.d.mts +21 -0
- package/build/type/engine/indexed/instantiate.mjs +37 -0
- package/build/type/engine/instance-type/index.d.mts +1 -0
- package/build/type/engine/instance-type/index.mjs +1 -0
- package/build/type/engine/instance-type/instantiate.d.mts +12 -0
- package/build/type/engine/instance-type/instantiate.mjs +20 -0
- package/build/type/engine/instantiate.d.mts +167 -0
- package/build/type/engine/instantiate.mjs +172 -0
- package/build/type/engine/interface/index.d.mts +1 -0
- package/build/type/engine/interface/index.mjs +1 -0
- package/build/type/engine/interface/instantiate.d.mts +16 -0
- package/build/type/engine/interface/instantiate.mjs +19 -0
- package/build/type/engine/intrinsics/from-literal.d.mts +5 -0
- package/build/type/engine/intrinsics/from-literal.mjs +9 -0
- package/build/type/engine/intrinsics/from-template-literal.d.mts +6 -0
- package/build/type/engine/intrinsics/from-template-literal.mjs +8 -0
- package/build/type/engine/intrinsics/from-type.d.mts +10 -0
- package/build/type/engine/intrinsics/from-type.mjs +13 -0
- package/build/type/engine/intrinsics/from-union.d.mts +6 -0
- package/build/type/engine/intrinsics/from-union.mjs +7 -0
- package/build/type/engine/intrinsics/index.d.mts +1 -0
- package/build/type/engine/intrinsics/index.mjs +1 -0
- package/build/type/engine/intrinsics/instantiate.d.mts +34 -0
- package/build/type/engine/intrinsics/instantiate.mjs +48 -0
- package/build/type/engine/intrinsics/mapping.d.mts +9 -0
- package/build/type/engine/intrinsics/mapping.mjs +4 -0
- package/build/type/engine/keyof/from-any.d.mts +6 -0
- package/build/type/engine/keyof/from-any.mjs +8 -0
- package/build/type/engine/keyof/from-array.d.mts +4 -0
- package/build/type/engine/keyof/from-array.mjs +5 -0
- package/build/type/engine/keyof/from-object.d.mts +10 -0
- package/build/type/engine/keyof/from-object.mjs +20 -0
- package/build/type/engine/keyof/from-record.d.mts +4 -0
- package/build/type/engine/keyof/from-record.mjs +5 -0
- package/build/type/engine/keyof/from-tuple.d.mts +5 -0
- package/build/type/engine/keyof/from-tuple.mjs +7 -0
- package/build/type/engine/keyof/index.d.mts +1 -0
- package/build/type/engine/keyof/index.mjs +1 -0
- package/build/type/engine/keyof/instantiate.d.mts +27 -0
- package/build/type/engine/keyof/instantiate.mjs +45 -0
- package/build/type/engine/mapped/index.d.mts +1 -0
- package/build/type/engine/mapped/index.mjs +1 -0
- package/build/type/engine/mapped/instantiate.d.mts +28 -0
- package/build/type/engine/mapped/instantiate.mjs +47 -0
- package/build/type/engine/mapped/mapped-keys.d.mts +14 -0
- package/build/type/engine/mapped/mapped-keys.mjs +29 -0
- package/build/type/engine/module/index.d.mts +1 -0
- package/build/type/engine/module/index.mjs +1 -0
- package/build/type/engine/module/instantiate.d.mts +21 -0
- package/build/type/engine/module/instantiate.mjs +33 -0
- package/build/type/engine/non-nullable/index.d.mts +1 -0
- package/build/type/engine/non-nullable/index.mjs +1 -0
- package/build/type/engine/non-nullable/instantiate.d.mts +15 -0
- package/build/type/engine/non-nullable/instantiate.mjs +21 -0
- package/build/type/engine/object/collapse.d.mts +12 -0
- package/build/type/engine/object/collapse.mjs +14 -0
- package/build/type/engine/object/from-cyclic.d.mts +6 -0
- package/build/type/engine/object/from-cyclic.mjs +8 -0
- package/build/type/engine/object/from-intersect.d.mts +17 -0
- package/build/type/engine/object/from-intersect.mjs +21 -0
- package/build/type/engine/object/from-object.d.mts +3 -0
- package/build/type/engine/object/from-object.mjs +4 -0
- package/build/type/engine/object/from-tuple.d.mts +6 -0
- package/build/type/engine/object/from-tuple.mjs +9 -0
- package/build/type/engine/object/from-type.d.mts +14 -0
- package/build/type/engine/object/from-type.mjs +19 -0
- package/build/type/engine/object/from-union.d.mts +12 -0
- package/build/type/engine/object/from-union.mjs +26 -0
- package/build/type/engine/object/index.d.mts +1 -0
- package/build/type/engine/object/index.mjs +1 -0
- package/build/type/engine/omit/index.d.mts +1 -0
- package/build/type/engine/omit/index.mjs +1 -0
- package/build/type/engine/omit/instantiate.d.mts +16 -0
- package/build/type/engine/omit/instantiate.mjs +31 -0
- package/build/type/engine/options/index.d.mts +1 -0
- package/build/type/engine/options/index.mjs +1 -0
- package/build/type/engine/options/instantiate.d.mts +8 -0
- package/build/type/engine/options/instantiate.mjs +13 -0
- package/build/type/engine/parameters/index.d.mts +1 -0
- package/build/type/engine/parameters/index.mjs +1 -0
- package/build/type/engine/parameters/instantiate.d.mts +14 -0
- package/build/type/engine/parameters/instantiate.mjs +21 -0
- package/build/type/engine/partial/from-cyclic.d.mts +10 -0
- package/build/type/engine/partial/from-cyclic.mjs +11 -0
- package/build/type/engine/partial/from-intersect.d.mts +5 -0
- package/build/type/engine/partial/from-intersect.mjs +7 -0
- package/build/type/engine/partial/from-object.d.mts +8 -0
- package/build/type/engine/partial/from-object.mjs +11 -0
- package/build/type/engine/partial/from-type.d.mts +12 -0
- package/build/type/engine/partial/from-type.mjs +16 -0
- package/build/type/engine/partial/from-union.d.mts +5 -0
- package/build/type/engine/partial/from-union.mjs +7 -0
- package/build/type/engine/partial/index.d.mts +1 -0
- package/build/type/engine/partial/index.mjs +1 -0
- package/build/type/engine/partial/instantiate.d.mts +9 -0
- package/build/type/engine/partial/instantiate.mjs +14 -0
- package/build/type/engine/patterns/index.d.mts +2 -0
- package/build/type/engine/patterns/index.mjs +2 -0
- package/build/type/engine/patterns/pattern.d.mts +6 -0
- package/build/type/engine/patterns/pattern.mjs +11 -0
- package/build/type/engine/patterns/template.d.mts +7 -0
- package/build/type/engine/patterns/template.mjs +20 -0
- package/build/type/engine/pick/index.d.mts +1 -0
- package/build/type/engine/pick/index.mjs +1 -0
- package/build/type/engine/pick/instantiate.d.mts +17 -0
- package/build/type/engine/pick/instantiate.mjs +31 -0
- package/build/type/engine/readonly-type/from-array.d.mts +5 -0
- package/build/type/engine/readonly-type/from-array.mjs +7 -0
- package/build/type/engine/readonly-type/from-cyclic.d.mts +10 -0
- package/build/type/engine/readonly-type/from-cyclic.mjs +11 -0
- package/build/type/engine/readonly-type/from-intersect.d.mts +5 -0
- package/build/type/engine/readonly-type/from-intersect.mjs +7 -0
- package/build/type/engine/readonly-type/from-object.d.mts +8 -0
- package/build/type/engine/readonly-type/from-object.mjs +11 -0
- package/build/type/engine/readonly-type/from-tuple.d.mts +5 -0
- package/build/type/engine/readonly-type/from-tuple.mjs +7 -0
- package/build/type/engine/readonly-type/from-type.d.mts +16 -0
- package/build/type/engine/readonly-type/from-type.mjs +22 -0
- package/build/type/engine/readonly-type/from-union.d.mts +5 -0
- package/build/type/engine/readonly-type/from-union.mjs +7 -0
- package/build/type/engine/readonly-type/index.d.mts +1 -0
- package/build/type/engine/readonly-type/index.mjs +1 -0
- package/build/type/engine/readonly-type/instantiate.d.mts +9 -0
- package/build/type/engine/readonly-type/instantiate.mjs +14 -0
- package/build/type/engine/record/from-key-any.d.mts +4 -0
- package/build/type/engine/record/from-key-any.mjs +6 -0
- package/build/type/engine/record/from-key-boolean.d.mts +7 -0
- package/build/type/engine/record/from-key-boolean.mjs +5 -0
- package/build/type/engine/record/from-key-enum.d.mts +6 -0
- package/build/type/engine/record/from-key-enum.mjs +8 -0
- package/build/type/engine/record/from-key-integer.d.mts +5 -0
- package/build/type/engine/record/from-key-integer.mjs +7 -0
- package/build/type/engine/record/from-key-intersect.d.mts +5 -0
- package/build/type/engine/record/from-key-intersect.mjs +8 -0
- package/build/type/engine/record/from-key-literal.d.mts +11 -0
- package/build/type/engine/record/from-key-literal.mjs +10 -0
- package/build/type/engine/record/from-key-number.d.mts +5 -0
- package/build/type/engine/record/from-key-number.mjs +7 -0
- package/build/type/engine/record/from-key-string.d.mts +5 -0
- package/build/type/engine/record/from-key-string.mjs +12 -0
- package/build/type/engine/record/from-key-template-literal.d.mts +8 -0
- package/build/type/engine/record/from-key-template-literal.mjs +12 -0
- package/build/type/engine/record/from-key-union.d.mts +20 -0
- package/build/type/engine/record/from-key-union.mjs +39 -0
- package/build/type/engine/record/from-key.d.mts +24 -0
- package/build/type/engine/record/from-key.mjs +40 -0
- package/build/type/engine/record/index.d.mts +1 -0
- package/build/type/engine/record/index.mjs +1 -0
- package/build/type/engine/record/instantiate.d.mts +9 -0
- package/build/type/engine/record/instantiate.mjs +16 -0
- package/build/type/engine/record/record-create.d.mts +3 -0
- package/build/type/engine/record/record-create.mjs +7 -0
- package/build/type/engine/ref/index.d.mts +1 -0
- package/build/type/engine/ref/index.mjs +1 -0
- package/build/type/engine/ref/instantiate.d.mts +6 -0
- package/build/type/engine/ref/instantiate.mjs +10 -0
- package/build/type/engine/required/from-cyclic.d.mts +10 -0
- package/build/type/engine/required/from-cyclic.mjs +11 -0
- package/build/type/engine/required/from-intersect.d.mts +5 -0
- package/build/type/engine/required/from-intersect.mjs +7 -0
- package/build/type/engine/required/from-object.d.mts +8 -0
- package/build/type/engine/required/from-object.mjs +11 -0
- package/build/type/engine/required/from-type.d.mts +12 -0
- package/build/type/engine/required/from-type.mjs +16 -0
- package/build/type/engine/required/from-union.d.mts +5 -0
- package/build/type/engine/required/from-union.mjs +7 -0
- package/build/type/engine/required/index.d.mts +1 -0
- package/build/type/engine/required/index.mjs +1 -0
- package/build/type/engine/required/instantiate.d.mts +9 -0
- package/build/type/engine/required/instantiate.mjs +14 -0
- package/build/type/engine/rest/index.d.mts +1 -0
- package/build/type/engine/rest/index.mjs +1 -0
- package/build/type/engine/rest/spread.d.mts +12 -0
- package/build/type/engine/rest/spread.mjs +19 -0
- package/build/type/engine/return-type/index.d.mts +1 -0
- package/build/type/engine/return-type/index.mjs +1 -0
- package/build/type/engine/return-type/instantiate.d.mts +11 -0
- package/build/type/engine/return-type/instantiate.mjs +18 -0
- package/build/type/engine/template-literal/create.d.mts +1 -0
- package/build/type/engine/template-literal/create.mjs +5 -0
- package/build/type/engine/template-literal/decode.d.mts +30 -0
- package/build/type/engine/template-literal/decode.mjs +87 -0
- package/build/type/engine/template-literal/encode.d.mts +31 -0
- package/build/type/engine/template-literal/encode.mjs +80 -0
- package/build/type/engine/template-literal/index.d.mts +6 -0
- package/build/type/engine/template-literal/index.mjs +6 -0
- package/build/type/engine/template-literal/instantiate.d.mts +9 -0
- package/build/type/engine/template-literal/instantiate.mjs +14 -0
- package/build/type/engine/template-literal/is-finite.d.mts +12 -0
- package/build/type/engine/template-literal/is-finite.mjs +30 -0
- package/build/type/engine/template-literal/is-pattern.d.mts +6 -0
- package/build/type/engine/template-literal/is-pattern.mjs +9 -0
- package/build/type/engine/template-literal/static.d.mts +18 -0
- package/build/type/engine/template-literal/static.mjs +2 -0
- package/build/type/engine/tuple/to-object.d.mts +12 -0
- package/build/type/engine/tuple/to-object.mjs +13 -0
- package/build/type/extends/any.d.mts +9 -0
- package/build/type/extends/any.mjs +12 -0
- package/build/type/extends/array.d.mts +20 -0
- package/build/type/extends/array.mjs +21 -0
- package/build/type/extends/async-iterator.d.mts +7 -0
- package/build/type/extends/async-iterator.mjs +9 -0
- package/build/type/extends/bigint.d.mts +7 -0
- package/build/type/extends/bigint.mjs +9 -0
- package/build/type/extends/boolean.d.mts +7 -0
- package/build/type/extends/boolean.mjs +9 -0
- package/build/type/extends/constructor.d.mts +8 -0
- package/build/type/extends/constructor.mjs +16 -0
- package/build/type/extends/enum.d.mts +7 -0
- package/build/type/extends/enum.mjs +6 -0
- package/build/type/extends/extends-left.d.mts +55 -0
- package/build/type/extends/extends-left.mjs +83 -0
- package/build/type/extends/extends-right.d.mts +25 -0
- package/build/type/extends/extends-right.mjs +59 -0
- package/build/type/extends/extends.d.mts +11 -0
- package/build/type/extends/extends.mjs +15 -0
- package/build/type/extends/function.d.mts +8 -0
- package/build/type/extends/function.mjs +16 -0
- package/build/type/extends/index.d.mts +2 -0
- package/build/type/extends/index.mjs +2 -0
- package/build/type/extends/inference.d.mts +34 -0
- package/build/type/extends/inference.mjs +72 -0
- package/build/type/extends/integer.d.mts +8 -0
- package/build/type/extends/integer.mjs +10 -0
- package/build/type/extends/intersect.d.mts +6 -0
- package/build/type/extends/intersect.mjs +15 -0
- package/build/type/extends/iterator.d.mts +7 -0
- package/build/type/extends/iterator.mjs +9 -0
- package/build/type/extends/literal.d.mts +18 -0
- package/build/type/extends/literal.mjs +44 -0
- package/build/type/extends/never.d.mts +8 -0
- package/build/type/extends/never.mjs +9 -0
- package/build/type/extends/null.d.mts +7 -0
- package/build/type/extends/null.mjs +9 -0
- package/build/type/extends/number.d.mts +7 -0
- package/build/type/extends/number.mjs +9 -0
- package/build/type/extends/object.d.mts +25 -0
- package/build/type/extends/object.mjs +89 -0
- package/build/type/extends/parameters.d.mts +15 -0
- package/build/type/extends/parameters.mjs +37 -0
- package/build/type/extends/promise.d.mts +7 -0
- package/build/type/extends/promise.mjs +9 -0
- package/build/type/extends/result.d.mts +21 -0
- package/build/type/extends/result.mjs +33 -0
- package/build/type/extends/return-type.d.mts +7 -0
- package/build/type/extends/return-type.mjs +9 -0
- package/build/type/extends/string.d.mts +7 -0
- package/build/type/extends/string.mjs +9 -0
- package/build/type/extends/symbol.d.mts +7 -0
- package/build/type/extends/symbol.mjs +9 -0
- package/build/type/extends/template-literal.d.mts +6 -0
- package/build/type/extends/template-literal.mjs +7 -0
- package/build/type/extends/tuple.d.mts +25 -0
- package/build/type/extends/tuple.mjs +82 -0
- package/build/type/extends/undefined.d.mts +8 -0
- package/build/type/extends/undefined.mjs +10 -0
- package/build/type/extends/union.d.mts +11 -0
- package/build/type/extends/union.mjs +36 -0
- package/build/type/extends/unknown.d.mts +9 -0
- package/build/type/extends/unknown.mjs +12 -0
- package/build/type/extends/void.d.mts +7 -0
- package/build/type/extends/void.mjs +9 -0
- package/build/type/index.d.mts +5 -0
- package/build/type/index.mjs +5 -0
- package/build/type/script/index.d.mts +1 -0
- package/build/type/script/index.mjs +1 -0
- package/build/type/script/mapping.d.mts +365 -0
- package/build/type/script/mapping.mjs +532 -0
- package/build/type/script/parser.d.mts +260 -0
- package/build/type/script/parser.mjs +135 -0
- package/build/type/script/script.d.mts +17 -0
- package/build/type/script/script.mjs +21 -0
- package/build/type/script/token/bigint.d.mts +8 -0
- package/build/type/script/token/bigint.mjs +20 -0
- package/build/type/script/token/const.d.mts +11 -0
- package/build/type/script/token/const.mjs +18 -0
- package/build/type/script/token/ident.d.mts +16 -0
- package/build/type/script/token/ident.mjs +35 -0
- package/build/type/script/token/index.d.mts +9 -0
- package/build/type/script/token/index.mjs +9 -0
- package/build/type/script/token/integer.d.mts +19 -0
- package/build/type/script/token/integer.mjs +45 -0
- package/build/type/script/token/internal/char.d.mts +75 -0
- package/build/type/script/token/internal/char.mjs +26 -0
- package/build/type/script/token/internal/guard.d.mts +1 -0
- package/build/type/script/token/internal/guard.mjs +15 -0
- package/build/type/script/token/internal/many.d.mts +7 -0
- package/build/type/script/token/internal/many.mjs +17 -0
- package/build/type/script/token/internal/optional.d.mts +5 -0
- package/build/type/script/token/internal/optional.mjs +12 -0
- package/build/type/script/token/internal/result.d.mts +2 -0
- package/build/type/script/token/internal/result.mjs +7 -0
- package/build/type/script/token/internal/take.d.mts +6 -0
- package/build/type/script/token/internal/take.mjs +19 -0
- package/build/type/script/token/internal/trim.d.mts +19 -0
- package/build/type/script/token/internal/trim.mjs +34 -0
- package/build/type/script/token/number.d.mts +20 -0
- package/build/type/script/token/number.mjs +65 -0
- package/build/type/script/token/span.d.mts +10 -0
- package/build/type/script/token/span.mjs +35 -0
- package/build/type/script/token/string.d.mts +11 -0
- package/build/type/script/token/string.mjs +24 -0
- package/build/type/script/token/until.d.mts +6 -0
- package/build/type/script/token/until.mjs +21 -0
- package/build/type/script/token/until_1.d.mts +5 -0
- package/build/type/script/token/until_1.mjs +16 -0
- package/build/type/types/_codec.d.mts +30 -0
- package/build/type/types/_codec.mjs +60 -0
- package/build/type/types/_immutable.d.mts +16 -0
- package/build/type/types/_immutable.mjs +26 -0
- package/build/type/types/_optional.d.mts +16 -0
- package/build/type/types/_optional.mjs +27 -0
- package/build/type/types/_readonly.d.mts +16 -0
- package/build/type/types/_readonly.mjs +26 -0
- package/build/type/types/_refine.d.mts +19 -0
- package/build/type/types/_refine.mjs +20 -0
- package/build/type/types/any.d.mts +10 -0
- package/build/type/types/any.mjs +18 -0
- package/build/type/types/array.d.mts +17 -0
- package/build/type/types/array.mjs +24 -0
- package/build/type/types/async-iterator.d.mts +16 -0
- package/build/type/types/async-iterator.mjs +24 -0
- package/build/type/types/base.d.mts +50 -0
- package/build/type/types/base.mjs +84 -0
- package/build/type/types/bigint.d.mts +12 -0
- package/build/type/types/bigint.mjs +21 -0
- package/build/type/types/boolean.d.mts +11 -0
- package/build/type/types/boolean.mjs +17 -0
- package/build/type/types/call.d.mts +16 -0
- package/build/type/types/call.mjs +21 -0
- package/build/type/types/constructor.d.mts +18 -0
- package/build/type/types/constructor.mjs +24 -0
- package/build/type/types/cyclic.d.mts +16 -0
- package/build/type/types/cyclic.mjs +29 -0
- package/build/type/types/deferred.d.mts +12 -0
- package/build/type/types/deferred.mjs +16 -0
- package/build/type/types/enum.d.mts +16 -0
- package/build/type/types/enum.mjs +17 -0
- package/build/type/types/function.d.mts +21 -0
- package/build/type/types/function.mjs +25 -0
- package/build/type/types/generic.d.mts +13 -0
- package/build/type/types/generic.mjs +17 -0
- package/build/type/types/identifier.d.mts +11 -0
- package/build/type/types/identifier.mjs +17 -0
- package/build/type/types/index.d.mts +48 -0
- package/build/type/types/index.mjs +54 -0
- package/build/type/types/infer.d.mts +15 -0
- package/build/type/types/infer.mjs +20 -0
- package/build/type/types/integer.d.mts +12 -0
- package/build/type/types/integer.mjs +21 -0
- package/build/type/types/intersect.d.mts +15 -0
- package/build/type/types/intersect.mjs +24 -0
- package/build/type/types/iterator.d.mts +16 -0
- package/build/type/types/iterator.mjs +24 -0
- package/build/type/types/literal.d.mts +31 -0
- package/build/type/types/literal.mjs +62 -0
- package/build/type/types/never.d.mts +12 -0
- package/build/type/types/never.mjs +21 -0
- package/build/type/types/null.d.mts +11 -0
- package/build/type/types/null.mjs +17 -0
- package/build/type/types/number.d.mts +12 -0
- package/build/type/types/number.mjs +21 -0
- package/build/type/types/object.d.mts +18 -0
- package/build/type/types/object.mjs +28 -0
- package/build/type/types/parameter.d.mts +17 -0
- package/build/type/types/parameter.mjs +21 -0
- package/build/type/types/promise.d.mts +16 -0
- package/build/type/types/promise.mjs +24 -0
- package/build/type/types/properties.d.mts +42 -0
- package/build/type/types/properties.mjs +16 -0
- package/build/type/types/record.d.mts +48 -0
- package/build/type/types/record.mjs +63 -0
- package/build/type/types/ref.d.mts +19 -0
- package/build/type/types/ref.mjs +17 -0
- package/build/type/types/rest.d.mts +11 -0
- package/build/type/types/rest.mjs +17 -0
- package/build/type/types/schema.d.mts +199 -0
- package/build/type/types/schema.mjs +15 -0
- package/build/type/types/static.d.mts +48 -0
- package/build/type/types/static.mjs +3 -0
- package/build/type/types/string.d.mts +12 -0
- package/build/type/types/string.mjs +22 -0
- package/build/type/types/symbol.d.mts +11 -0
- package/build/type/types/symbol.mjs +17 -0
- package/build/type/types/template-literal.d.mts +26 -0
- package/build/type/types/template-literal.mjs +31 -0
- package/build/type/types/this.d.mts +14 -0
- package/build/type/types/this.mjs +17 -0
- package/build/type/types/tuple.d.mts +38 -0
- package/build/type/types/tuple.mjs +25 -0
- package/build/type/types/undefined.d.mts +11 -0
- package/build/type/types/undefined.mjs +17 -0
- package/build/type/types/union.d.mts +15 -0
- package/build/type/types/union.mjs +24 -0
- package/build/type/types/unknown.d.mts +10 -0
- package/build/type/types/unknown.mjs +17 -0
- package/build/type/types/unsafe.d.mts +11 -0
- package/build/type/types/unsafe.mjs +18 -0
- package/build/type/types/void.d.mts +11 -0
- package/build/type/types/void.mjs +17 -0
- package/build/typebox.d.mts +73 -0
- package/build/typebox.mjs +89 -0
- package/build/value/assert/assert.d.mts +14 -0
- package/build/value/assert/assert.mjs +27 -0
- package/build/value/assert/index.d.mts +1 -0
- package/build/value/assert/index.mjs +1 -0
- package/build/value/check/check.d.mts +5 -0
- package/build/value/check/check.mjs +11 -0
- package/build/value/check/index.d.mts +1 -0
- package/build/value/check/index.mjs +1 -0
- package/build/value/clean/additional.d.mts +2 -0
- package/build/value/clean/additional.mjs +6 -0
- package/build/value/clean/clean.d.mts +15 -0
- package/build/value/clean/clean.mjs +15 -0
- package/build/value/clean/from-array.d.mts +2 -0
- package/build/value/clean/from-array.mjs +8 -0
- package/build/value/clean/from-base.d.mts +2 -0
- package/build/value/clean/from-base.mjs +4 -0
- package/build/value/clean/from-cyclic.d.mts +2 -0
- package/build/value/clean/from-cyclic.mjs +6 -0
- package/build/value/clean/from-intersect.d.mts +2 -0
- package/build/value/clean/from-intersect.mjs +26 -0
- package/build/value/clean/from-object.d.mts +2 -0
- package/build/value/clean/from-object.mjs +31 -0
- package/build/value/clean/from-record.d.mts +2 -0
- package/build/value/clean/from-record.mjs +32 -0
- package/build/value/clean/from-ref.d.mts +2 -0
- package/build/value/clean/from-ref.mjs +8 -0
- package/build/value/clean/from-tuple.d.mts +2 -0
- package/build/value/clean/from-tuple.mjs +14 -0
- package/build/value/clean/from-type.d.mts +2 -0
- package/build/value/clean/from-type.mjs +23 -0
- package/build/value/clean/from-union.d.mts +2 -0
- package/build/value/clean/from-union.mjs +12 -0
- package/build/value/clean/index.d.mts +1 -0
- package/build/value/clean/index.mjs +1 -0
- package/build/value/clone/clone.d.mts +5 -0
- package/build/value/clone/clone.mjs +82 -0
- package/build/value/clone/index.d.mts +1 -0
- package/build/value/clone/index.mjs +1 -0
- package/build/value/codec/callback.d.mts +2 -0
- package/build/value/codec/callback.mjs +25 -0
- package/build/value/codec/decode.d.mts +22 -0
- package/build/value/codec/decode.mjs +55 -0
- package/build/value/codec/encode.d.mts +12 -0
- package/build/value/codec/encode.mjs +50 -0
- package/build/value/codec/from-array.d.mts +2 -0
- package/build/value/codec/from-array.mjs +38 -0
- package/build/value/codec/from-cyclic.d.mts +2 -0
- package/build/value/codec/from-cyclic.mjs +8 -0
- package/build/value/codec/from-intersect.d.mts +2 -0
- package/build/value/codec/from-intersect.mjs +28 -0
- package/build/value/codec/from-object.d.mts +2 -0
- package/build/value/codec/from-object.mjs +45 -0
- package/build/value/codec/from-record.d.mts +2 -0
- package/build/value/codec/from-record.mjs +44 -0
- package/build/value/codec/from-ref.d.mts +2 -0
- package/build/value/codec/from-ref.mjs +10 -0
- package/build/value/codec/from-tuple.d.mts +2 -0
- package/build/value/codec/from-tuple.mjs +35 -0
- package/build/value/codec/from-type.d.mts +2 -0
- package/build/value/codec/from-type.mjs +22 -0
- package/build/value/codec/from-union.d.mts +2 -0
- package/build/value/codec/from-union.mjs +42 -0
- package/build/value/codec/has.d.mts +5 -0
- package/build/value/codec/has.mjs +93 -0
- package/build/value/codec/index.d.mts +3 -0
- package/build/value/codec/index.mjs +3 -0
- package/build/value/convert/convert.d.mts +13 -0
- package/build/value/convert/convert.mjs +15 -0
- package/build/value/convert/from-additional.d.mts +6 -0
- package/build/value/convert/from-additional.mjs +18 -0
- package/build/value/convert/from-array.d.mts +2 -0
- package/build/value/convert/from-array.mjs +8 -0
- package/build/value/convert/from-base.d.mts +2 -0
- package/build/value/convert/from-base.mjs +4 -0
- package/build/value/convert/from-bigint.d.mts +2 -0
- package/build/value/convert/from-bigint.mjs +9 -0
- package/build/value/convert/from-boolean.d.mts +2 -0
- package/build/value/convert/from-boolean.mjs +9 -0
- package/build/value/convert/from-cyclic.d.mts +2 -0
- package/build/value/convert/from-cyclic.mjs +6 -0
- package/build/value/convert/from-enum.d.mts +2 -0
- package/build/value/convert/from-enum.mjs +7 -0
- package/build/value/convert/from-integer.d.mts +2 -0
- package/build/value/convert/from-integer.mjs +9 -0
- package/build/value/convert/from-intersect.d.mts +2 -0
- package/build/value/convert/from-intersect.mjs +8 -0
- package/build/value/convert/from-literal.d.mts +2 -0
- package/build/value/convert/from-literal.mjs +44 -0
- package/build/value/convert/from-null.d.mts +2 -0
- package/build/value/convert/from-null.mjs +9 -0
- package/build/value/convert/from-number.d.mts +2 -0
- package/build/value/convert/from-number.mjs +9 -0
- package/build/value/convert/from-object.d.mts +2 -0
- package/build/value/convert/from-object.mjs +28 -0
- package/build/value/convert/from-record.d.mts +2 -0
- package/build/value/convert/from-record.mjs +23 -0
- package/build/value/convert/from-ref.d.mts +2 -0
- package/build/value/convert/from-ref.mjs +8 -0
- package/build/value/convert/from-string.d.mts +2 -0
- package/build/value/convert/from-string.mjs +9 -0
- package/build/value/convert/from-template-literal.d.mts +2 -0
- package/build/value/convert/from-template-literal.mjs +7 -0
- package/build/value/convert/from-tuple.d.mts +2 -0
- package/build/value/convert/from-tuple.mjs +11 -0
- package/build/value/convert/from-type.d.mts +2 -0
- package/build/value/convert/from-type.mjs +45 -0
- package/build/value/convert/from-undefined.d.mts +2 -0
- package/build/value/convert/from-undefined.mjs +9 -0
- package/build/value/convert/from-union.d.mts +2 -0
- package/build/value/convert/from-union.mjs +13 -0
- package/build/value/convert/from-void.d.mts +2 -0
- package/build/value/convert/from-void.mjs +9 -0
- package/build/value/convert/index.d.mts +1 -0
- package/build/value/convert/index.mjs +1 -0
- package/build/value/convert/try/index.d.mts +1 -0
- package/build/value/convert/try/index.mjs +1 -0
- package/build/value/convert/try/try-bigint.d.mts +2 -0
- package/build/value/convert/try/try-bigint.mjs +74 -0
- package/build/value/convert/try/try-boolean.d.mts +2 -0
- package/build/value/convert/try/try-boolean.mjs +64 -0
- package/build/value/convert/try/try-null.d.mts +2 -0
- package/build/value/convert/try/try-null.mjs +61 -0
- package/build/value/convert/try/try-number.d.mts +2 -0
- package/build/value/convert/try/try-number.mjs +76 -0
- package/build/value/convert/try/try-result.d.mts +8 -0
- package/build/value/convert/try/try-result.mjs +18 -0
- package/build/value/convert/try/try-string.d.mts +2 -0
- package/build/value/convert/try/try-string.mjs +56 -0
- package/build/value/convert/try/try-undefined.d.mts +2 -0
- package/build/value/convert/try/try-undefined.mjs +61 -0
- package/build/value/convert/try/try.d.mts +7 -0
- package/build/value/convert/try/try.mjs +7 -0
- package/build/value/create/create.d.mts +5 -0
- package/build/value/create/create.mjs +11 -0
- package/build/value/create/error.d.mts +5 -0
- package/build/value/create/error.mjs +7 -0
- package/build/value/create/from-array.d.mts +2 -0
- package/build/value/create/from-array.mjs +10 -0
- package/build/value/create/from-async-iterator.d.mts +2 -0
- package/build/value/create/from-async-iterator.mjs +5 -0
- package/build/value/create/from-base.d.mts +2 -0
- package/build/value/create/from-base.mjs +4 -0
- package/build/value/create/from-bigint.d.mts +2 -0
- package/build/value/create/from-bigint.mjs +7 -0
- package/build/value/create/from-boolean.d.mts +2 -0
- package/build/value/create/from-boolean.mjs +4 -0
- package/build/value/create/from-constructor.d.mts +2 -0
- package/build/value/create/from-constructor.mjs +10 -0
- package/build/value/create/from-cyclic.d.mts +2 -0
- package/build/value/create/from-cyclic.mjs +6 -0
- package/build/value/create/from-default.d.mts +3 -0
- package/build/value/create/from-default.mjs +10 -0
- package/build/value/create/from-enum.d.mts +2 -0
- package/build/value/create/from-enum.mjs +6 -0
- package/build/value/create/from-function.d.mts +2 -0
- package/build/value/create/from-function.mjs +6 -0
- package/build/value/create/from-integer.d.mts +2 -0
- package/build/value/create/from-integer.mjs +8 -0
- package/build/value/create/from-intersect.d.mts +2 -0
- package/build/value/create/from-intersect.mjs +8 -0
- package/build/value/create/from-iterator.d.mts +2 -0
- package/build/value/create/from-iterator.mjs +5 -0
- package/build/value/create/from-literal.d.mts +2 -0
- package/build/value/create/from-literal.mjs +4 -0
- package/build/value/create/from-never.d.mts +2 -0
- package/build/value/create/from-never.mjs +5 -0
- package/build/value/create/from-null.d.mts +2 -0
- package/build/value/create/from-null.mjs +4 -0
- package/build/value/create/from-number.d.mts +2 -0
- package/build/value/create/from-number.mjs +8 -0
- package/build/value/create/from-object.d.mts +2 -0
- package/build/value/create/from-object.mjs +9 -0
- package/build/value/create/from-promise.d.mts +2 -0
- package/build/value/create/from-promise.mjs +5 -0
- package/build/value/create/from-record.d.mts +2 -0
- package/build/value/create/from-record.mjs +8 -0
- package/build/value/create/from-ref.d.mts +2 -0
- package/build/value/create/from-ref.mjs +9 -0
- package/build/value/create/from-string.d.mts +2 -0
- package/build/value/create/from-string.mjs +9 -0
- package/build/value/create/from-symbol.d.mts +2 -0
- package/build/value/create/from-symbol.mjs +4 -0
- package/build/value/create/from-template-literal.d.mts +2 -0
- package/build/value/create/from-template-literal.mjs +11 -0
- package/build/value/create/from-tuple.d.mts +2 -0
- package/build/value/create/from-tuple.mjs +5 -0
- package/build/value/create/from-type.d.mts +2 -0
- package/build/value/create/from-type.mjs +69 -0
- package/build/value/create/from-undefined.d.mts +2 -0
- package/build/value/create/from-undefined.mjs +4 -0
- package/build/value/create/from-union.d.mts +2 -0
- package/build/value/create/from-union.mjs +9 -0
- package/build/value/create/from-void.d.mts +2 -0
- package/build/value/create/from-void.mjs +4 -0
- package/build/value/create/index.d.mts +2 -0
- package/build/value/create/index.mjs +2 -0
- package/build/value/default/default.d.mts +13 -0
- package/build/value/default/default.mjs +15 -0
- package/build/value/default/from-array.d.mts +2 -0
- package/build/value/default/from-array.mjs +12 -0
- package/build/value/default/from-base.d.mts +2 -0
- package/build/value/default/from-base.mjs +5 -0
- package/build/value/default/from-cyclic.d.mts +2 -0
- package/build/value/default/from-cyclic.mjs +7 -0
- package/build/value/default/from-default.d.mts +3 -0
- package/build/value/default/from-default.mjs +13 -0
- package/build/value/default/from-intersect.d.mts +2 -0
- package/build/value/default/from-intersect.mjs +9 -0
- package/build/value/default/from-object.d.mts +2 -0
- package/build/value/default/from-object.mjs +32 -0
- package/build/value/default/from-record.d.mts +2 -0
- package/build/value/default/from-record.mjs +26 -0
- package/build/value/default/from-ref.d.mts +2 -0
- package/build/value/default/from-ref.mjs +9 -0
- package/build/value/default/from-tuple.d.mts +2 -0
- package/build/value/default/from-tuple.mjs +14 -0
- package/build/value/default/from-type.d.mts +2 -0
- package/build/value/default/from-type.mjs +27 -0
- package/build/value/default/from-union.d.mts +2 -0
- package/build/value/default/from-union.mjs +14 -0
- package/build/value/default/index.d.mts +1 -0
- package/build/value/default/index.mjs +1 -0
- package/build/value/delta/diff.d.mts +10 -0
- package/build/value/delta/diff.mjs +129 -0
- package/build/value/delta/edit.d.mts +24 -0
- package/build/value/delta/edit.mjs +17 -0
- package/build/value/delta/index.d.mts +3 -0
- package/build/value/delta/index.mjs +3 -0
- package/build/value/delta/patch.d.mts +8 -0
- package/build/value/delta/patch.mjs +42 -0
- package/build/value/equal/equal.d.mts +2 -0
- package/build/value/equal/equal.mjs +6 -0
- package/build/value/equal/index.d.mts +1 -0
- package/build/value/equal/index.mjs +1 -0
- package/build/value/errors/errors.d.mts +16 -0
- package/build/value/errors/errors.mjs +17 -0
- package/build/value/errors/index.d.mts +1 -0
- package/build/value/errors/index.mjs +1 -0
- package/build/value/hash/hash.d.mts +6 -0
- package/build/value/hash/hash.mjs +10 -0
- package/build/value/hash/index.d.mts +1 -0
- package/build/value/hash/index.mjs +1 -0
- package/build/value/index.d.mts +20 -0
- package/build/value/index.mjs +26 -0
- package/build/value/mutate/error.d.mts +3 -0
- package/build/value/mutate/error.mjs +6 -0
- package/build/value/mutate/from-array.d.mts +2 -0
- package/build/value/mutate/from-array.mjs +16 -0
- package/build/value/mutate/from-object.d.mts +2 -0
- package/build/value/mutate/from-object.mjs +27 -0
- package/build/value/mutate/from-unknown.d.mts +2 -0
- package/build/value/mutate/from-unknown.mjs +7 -0
- package/build/value/mutate/from-value.d.mts +2 -0
- package/build/value/mutate/from-value.mjs +12 -0
- package/build/value/mutate/index.d.mts +1 -0
- package/build/value/mutate/index.mjs +1 -0
- package/build/value/mutate/mutate.d.mts +9 -0
- package/build/value/mutate/mutate.mjs +39 -0
- package/build/value/parse/index.d.mts +1 -0
- package/build/value/parse/index.mjs +1 -0
- package/build/value/parse/parse.d.mts +11 -0
- package/build/value/parse/parse.mjs +47 -0
- package/build/value/pipeline/index.d.mts +1 -0
- package/build/value/pipeline/index.mjs +1 -0
- package/build/value/pipeline/pipeline.d.mts +10 -0
- package/build/value/pipeline/pipeline.mjs +15 -0
- package/build/value/pointer/index.d.mts +1 -0
- package/build/value/pointer/index.mjs +1 -0
- package/build/value/repair/error.d.mts +7 -0
- package/build/value/repair/error.mjs +8 -0
- package/build/value/repair/from-array.d.mts +2 -0
- package/build/value/repair/from-array.mjs +39 -0
- package/build/value/repair/from-base.d.mts +2 -0
- package/build/value/repair/from-base.mjs +8 -0
- package/build/value/repair/from-enum.d.mts +2 -0
- package/build/value/repair/from-enum.mjs +7 -0
- package/build/value/repair/from-intersect.d.mts +2 -0
- package/build/value/repair/from-intersect.mjs +8 -0
- package/build/value/repair/from-object.d.mts +2 -0
- package/build/value/repair/from-object.mjs +33 -0
- package/build/value/repair/from-record.d.mts +2 -0
- package/build/value/repair/from-record.mjs +33 -0
- package/build/value/repair/from-ref.d.mts +2 -0
- package/build/value/repair/from-ref.mjs +9 -0
- package/build/value/repair/from-template-literal.d.mts +2 -0
- package/build/value/repair/from-template-literal.mjs +7 -0
- package/build/value/repair/from-tuple.d.mts +2 -0
- package/build/value/repair/from-tuple.mjs +12 -0
- package/build/value/repair/from-type.d.mts +2 -0
- package/build/value/repair/from-type.mjs +86 -0
- package/build/value/repair/from-union.d.mts +2 -0
- package/build/value/repair/from-union.mjs +71 -0
- package/build/value/repair/from-unknown.d.mts +2 -0
- package/build/value/repair/from-unknown.mjs +12 -0
- package/build/value/repair/index.d.mts +1 -0
- package/build/value/repair/index.mjs +1 -0
- package/build/value/repair/repair.d.mts +17 -0
- package/build/value/repair/repair.mjs +20 -0
- package/build/value/shared/index.d.mts +1 -0
- package/build/value/shared/index.mjs +2 -0
- package/build/value/shared/optional-undefined.d.mts +2 -0
- package/build/value/shared/optional-undefined.mjs +15 -0
- package/build/value/value.d.mts +16 -0
- package/build/value/value.mjs +16 -0
- package/changes.json +5 -0
- package/license +23 -0
- package/package.json +99 -0
- package/readme.md +285 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsSchema } from '../../types/schema.mjs';
|
|
3
|
+
import { IsEnum } from '../../types/enum.mjs';
|
|
4
|
+
import { Literal, IsLiteral } from '../../types/literal.mjs';
|
|
5
|
+
import { Union, IsUnion } from '../../types/union.mjs';
|
|
6
|
+
import { IsTemplateLiteral } from '../../types/template-literal.mjs';
|
|
7
|
+
import { IsBigInt, BigIntPattern } from '../../types/bigint.mjs';
|
|
8
|
+
import { IsString, StringPattern } from '../../types/string.mjs';
|
|
9
|
+
import { IsNumber, NumberPattern } from '../../types/number.mjs';
|
|
10
|
+
import { IsInteger, IntegerPattern } from '../../types/integer.mjs';
|
|
11
|
+
import { IsBoolean } from '../../types/boolean.mjs';
|
|
12
|
+
import { NeverPattern } from '../../types/never.mjs';
|
|
13
|
+
import { TemplateLiteralCreate } from './create.mjs';
|
|
14
|
+
import { EnumValuesToVariants } from '../enum/enum-to-union.mjs';
|
|
15
|
+
function JoinString(input) {
|
|
16
|
+
return input.join('|');
|
|
17
|
+
}
|
|
18
|
+
function UnwrapTemplateLiteralPattern(pattern) {
|
|
19
|
+
return pattern.slice(1, pattern.length - 1);
|
|
20
|
+
}
|
|
21
|
+
function EncodeLiteral(value, right, pattern) {
|
|
22
|
+
return EncodeTypes(right, `${pattern}${value}`);
|
|
23
|
+
}
|
|
24
|
+
function EncodeBigInt(right, pattern) {
|
|
25
|
+
return EncodeTypes(right, `${pattern}${BigIntPattern}`);
|
|
26
|
+
}
|
|
27
|
+
function EncodeInteger(right, pattern) {
|
|
28
|
+
return EncodeTypes(right, `${pattern}${IntegerPattern}`);
|
|
29
|
+
}
|
|
30
|
+
function EncodeNumber(right, pattern) {
|
|
31
|
+
return EncodeTypes(right, `${pattern}${NumberPattern}`);
|
|
32
|
+
}
|
|
33
|
+
function EncodeBoolean(right, pattern) {
|
|
34
|
+
return EncodeType(Union([Literal('false'), Literal('true')]), right, pattern);
|
|
35
|
+
}
|
|
36
|
+
function EncodeString(right, pattern) {
|
|
37
|
+
return EncodeTypes(right, `${pattern}${StringPattern}`);
|
|
38
|
+
}
|
|
39
|
+
function EncodeTemplateLiteral(templatePattern, right, pattern) {
|
|
40
|
+
return EncodeTypes(right, `${pattern}${UnwrapTemplateLiteralPattern(templatePattern)}`);
|
|
41
|
+
}
|
|
42
|
+
function EncodeEnum(types, right, pattern, result = []) {
|
|
43
|
+
const variants = EnumValuesToVariants(types);
|
|
44
|
+
return EncodeUnion(variants, right, pattern);
|
|
45
|
+
}
|
|
46
|
+
function EncodeUnion(types, right, pattern, result = []) {
|
|
47
|
+
const [head, ...tail] = types;
|
|
48
|
+
return (IsSchema(head)
|
|
49
|
+
? EncodeUnion(tail, right, pattern, [...result, EncodeType(head, [], '')])
|
|
50
|
+
: EncodeTypes(right, `${pattern}(${JoinString(result)})`));
|
|
51
|
+
}
|
|
52
|
+
function EncodeType(type, right, pattern) {
|
|
53
|
+
return (IsEnum(type) ? EncodeEnum(type.enum, right, pattern) :
|
|
54
|
+
IsInteger(type) ? EncodeInteger(right, pattern) :
|
|
55
|
+
IsLiteral(type) ? EncodeLiteral(type.const, right, pattern) :
|
|
56
|
+
IsBigInt(type) ? EncodeBigInt(right, pattern) :
|
|
57
|
+
IsBoolean(type) ? EncodeBoolean(right, pattern) :
|
|
58
|
+
IsNumber(type) ? EncodeNumber(right, pattern) :
|
|
59
|
+
IsString(type) ? EncodeString(right, pattern) :
|
|
60
|
+
IsTemplateLiteral(type) ? EncodeTemplateLiteral(type.pattern, right, pattern) :
|
|
61
|
+
IsUnion(type) ? EncodeUnion(type.anyOf, right, pattern) :
|
|
62
|
+
NeverPattern);
|
|
63
|
+
}
|
|
64
|
+
function EncodeTypes(types, pattern) {
|
|
65
|
+
const [left, ...right] = types;
|
|
66
|
+
return (IsSchema(left)
|
|
67
|
+
? EncodeType(left, right, pattern)
|
|
68
|
+
: pattern);
|
|
69
|
+
}
|
|
70
|
+
function EncodePattern(types) {
|
|
71
|
+
const encoded = EncodeTypes(types, '');
|
|
72
|
+
const result = `^${encoded}$`;
|
|
73
|
+
return result;
|
|
74
|
+
}
|
|
75
|
+
/** Encodes a TemplateLiteral type sequence into a TemplateLiteral */
|
|
76
|
+
export function TemplateLiteralEncode(types) {
|
|
77
|
+
const pattern = EncodePattern(types);
|
|
78
|
+
const result = TemplateLiteralCreate(pattern);
|
|
79
|
+
return result;
|
|
80
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type TSchema, type TSchemaOptions } from '../../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
3
|
+
import { type TTemplateLiteralDeferred } from '../../types/template-literal.mjs';
|
|
4
|
+
import { type TTemplateLiteralEncode } from './encode.mjs';
|
|
5
|
+
import { type TState, type TInstantiateTypes, type TCanInstantiate } from '../instantiate.mjs';
|
|
6
|
+
type TTemplateLiteralImmediate<Context extends TProperties, State extends TState, Types extends TSchema[], InstantiatedTypes extends TSchema[] = TInstantiateTypes<Context, State, Types>, Result extends TSchema = TTemplateLiteralEncode<InstantiatedTypes>> = Result;
|
|
7
|
+
export type TTemplateLiteralInstantiate<Context extends TProperties, State extends TState, Types extends TSchema[]> = TCanInstantiate<Context, Types> extends true ? TTemplateLiteralImmediate<Context, State, Types> : TTemplateLiteralDeferred<Types>;
|
|
8
|
+
export declare function TemplateLiteralInstantiate<Context extends TProperties, State extends TState, Types extends TSchema[]>(context: Context, state: State, types: [...Types], options: TSchemaOptions): TTemplateLiteralInstantiate<Context, State, Types>;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
3
|
+
import { TemplateLiteralDeferred } from '../../types/template-literal.mjs';
|
|
4
|
+
import { TemplateLiteralEncode } from './encode.mjs';
|
|
5
|
+
import { InstantiateTypes, CanInstantiate } from '../instantiate.mjs';
|
|
6
|
+
function TemplateLiteralImmediate(context, state, types, options) {
|
|
7
|
+
const instaniatedTypes = InstantiateTypes(context, state, types);
|
|
8
|
+
return Memory.Update(TemplateLiteralEncode(instaniatedTypes), {}, options);
|
|
9
|
+
}
|
|
10
|
+
export function TemplateLiteralInstantiate(context, state, types, options) {
|
|
11
|
+
return (CanInstantiate(context, types)
|
|
12
|
+
? TemplateLiteralImmediate(context, state, types, options)
|
|
13
|
+
: TemplateLiteralDeferred(types, options));
|
|
14
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TLiteral, type TLiteralValue } from '../../types/literal.mjs';
|
|
3
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
4
|
+
type TFromLiteral<_Value extends TLiteralValue> = true;
|
|
5
|
+
type TFromTypesReduce<Types extends TSchema[]> = (Types extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TFromType<Left> extends true ? TFromTypesReduce<Right> : false : true);
|
|
6
|
+
type TFromTypes<Types extends TSchema[], Result extends boolean = Types extends [] ? false : TFromTypesReduce<Types>> = Result;
|
|
7
|
+
type TFromType<Type extends TSchema> = Type extends TUnion<infer Types extends TSchema[]> ? TFromTypes<Types> : Type extends TLiteral<infer Value extends TLiteralValue> ? TFromLiteral<Value> : false;
|
|
8
|
+
/** Returns true if the given TemplateLiteral types yields a finite variant set */
|
|
9
|
+
export type TIsTemplateLiteralFinite<Types extends TSchema[], Result extends boolean = TFromTypes<Types>> = Result;
|
|
10
|
+
/** Returns true if the given TemplateLiteral types yields a finite variant set */
|
|
11
|
+
export declare function IsTemplateLiteralFinite<Types extends TSchema[]>(types: [...Types]): TIsTemplateLiteralFinite<Types>;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Guard } from '../../../guard/index.mjs';
|
|
3
|
+
import { IsSchema } from '../../types/schema.mjs';
|
|
4
|
+
import { IsLiteral } from '../../types/literal.mjs';
|
|
5
|
+
import { IsUnion } from '../../types/union.mjs';
|
|
6
|
+
function FromLiteral(value) {
|
|
7
|
+
return true;
|
|
8
|
+
}
|
|
9
|
+
function FromTypesReduce(types) {
|
|
10
|
+
const [left, ...right] = types;
|
|
11
|
+
return (IsSchema(left)
|
|
12
|
+
? FromType(left)
|
|
13
|
+
? FromTypesReduce(right)
|
|
14
|
+
: false
|
|
15
|
+
: true);
|
|
16
|
+
}
|
|
17
|
+
function FromTypes(types) {
|
|
18
|
+
const result = Guard.IsEqual(types.length, 0) ? false : FromTypesReduce(types);
|
|
19
|
+
return result;
|
|
20
|
+
}
|
|
21
|
+
function FromType(type) {
|
|
22
|
+
return (IsUnion(type) ? FromTypes(type.anyOf) :
|
|
23
|
+
IsLiteral(type) ? FromLiteral(type.const) :
|
|
24
|
+
false);
|
|
25
|
+
}
|
|
26
|
+
/** Returns true if the given TemplateLiteral types yields a finite variant set */
|
|
27
|
+
export function IsTemplateLiteralFinite(types) {
|
|
28
|
+
const result = FromTypes(types);
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TParsePatternIntoTypes } from '../patterns/pattern.mjs';
|
|
3
|
+
/** Returns true if this pattern is a valid Template Literal regular expression */
|
|
4
|
+
export type TIsTemplateLiteralPattern<Pattern extends string, Types extends TSchema[] = TParsePatternIntoTypes<Pattern>, Result extends boolean = Types extends [] ? false : true> = Result;
|
|
5
|
+
/** Returns true if this pattern is a valid Template Literal regular expression */
|
|
6
|
+
export declare function IsTemplateLiteralPattern<Pattern extends string>(pattern: Pattern): TIsTemplateLiteralPattern<Pattern>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Guard } from '../../../guard/index.mjs';
|
|
3
|
+
import { ParsePatternIntoTypes } from '../patterns/pattern.mjs';
|
|
4
|
+
/** Returns true if this pattern is a valid Template Literal regular expression */
|
|
5
|
+
export function IsTemplateLiteralPattern(pattern) {
|
|
6
|
+
const types = ParsePatternIntoTypes(pattern);
|
|
7
|
+
const result = Guard.IsEqual(types.length, 0) ? false : true;
|
|
8
|
+
return result;
|
|
9
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
3
|
+
import { type TBigInt } from '../../types/bigint.mjs';
|
|
4
|
+
import { type TString } from '../../types/string.mjs';
|
|
5
|
+
import { type TNumber } from '../../types/number.mjs';
|
|
6
|
+
import { type TInteger } from '../../types/integer.mjs';
|
|
7
|
+
import { type TLiteral, type TLiteralValue } from '../../types/literal.mjs';
|
|
8
|
+
import { type TParsePatternIntoTypes } from '../patterns/pattern.mjs';
|
|
9
|
+
type TFromLiteral<Template extends string, Value extends TLiteralValue> = `${Template}${Value}`;
|
|
10
|
+
type TFromBigInt<Template extends string> = `${Template}${bigint}`;
|
|
11
|
+
type TFromString<Template extends string> = `${Template}${string}`;
|
|
12
|
+
type TFromNumber<Template extends string> = `${Template}${number}`;
|
|
13
|
+
type TFromInteger<Template extends string> = `${Template}${number}`;
|
|
14
|
+
type TFromUnion<Template extends string, Types extends TSchema[], Result extends string = never> = (Types extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TFromUnion<Template, Right, Result | TFromType<'', Left>> : `${Template}${Result}`);
|
|
15
|
+
type TFromType<Template extends string, Type extends TSchema, Result extends string = (Type extends TUnion<infer Types extends TSchema[]> ? TFromUnion<Template, Types> : Type extends TLiteral<infer Value extends TLiteralValue> ? TFromLiteral<Template, Value> : Type extends TBigInt ? TFromBigInt<Template> : Type extends TString ? TFromString<Template> : Type extends TNumber ? TFromNumber<Template> : Type extends TInteger ? TFromInteger<Template> : never)> = Result;
|
|
16
|
+
type TFromSpan<Template extends string, Types extends TSchema[]> = (Types extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TFromSpan<TFromType<Template, Left>, Right> : Template);
|
|
17
|
+
export type TTemplateLiteralStatic<Pattern extends string, Types extends TSchema[] = TParsePatternIntoTypes<Pattern>> = TFromSpan<'', Types>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TObject } from '../../types/object.mjs';
|
|
3
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
4
|
+
import { type TTuple } from '../../types/tuple.mjs';
|
|
5
|
+
export type TTupleElementsToProperties<Types extends TSchema[], Result extends TProperties = {}> = (Types extends [...infer Left extends TSchema[], infer Right extends TSchema] ? TTupleElementsToProperties<Left, {
|
|
6
|
+
[_ in Left['length']]: Right;
|
|
7
|
+
} & Result> : {
|
|
8
|
+
[Key in keyof Result]: Result[Key];
|
|
9
|
+
});
|
|
10
|
+
export declare function TupleElementsToProperties<Types extends TSchema[]>(types: [...Types]): TTupleElementsToProperties<Types>;
|
|
11
|
+
export type TTupleToObject<Type extends TTuple, Properties extends TProperties = TTupleElementsToProperties<Type['items']>, Result extends TSchema = TObject<Properties>> = Result;
|
|
12
|
+
export declare function TupleToObject<Type extends TTuple>(type: Type): TTupleToObject<Type>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Object } from '../../types/object.mjs';
|
|
3
|
+
export function TupleElementsToProperties(types) {
|
|
4
|
+
const result = types.reduceRight((result, right, index) => {
|
|
5
|
+
return { [index]: right, ...result };
|
|
6
|
+
}, {});
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
9
|
+
export function TupleToObject(type) {
|
|
10
|
+
const properties = TupleElementsToProperties(type.items);
|
|
11
|
+
const result = Object(properties);
|
|
12
|
+
return result;
|
|
13
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
3
|
+
import { type TInfer } from '../types/infer.mjs';
|
|
4
|
+
import { type TAny } from '../types/any.mjs';
|
|
5
|
+
import { type TUnknown } from '../types/unknown.mjs';
|
|
6
|
+
import { type TExtendsRight } from './extends-right.mjs';
|
|
7
|
+
import * as Result from './result.mjs';
|
|
8
|
+
export type TExtendsAny<Inferred extends TProperties, Left extends TAny, Right extends TSchema> = (Right extends TInfer ? TExtendsRight<Inferred, Left, Right> : Right extends TAny ? Result.TExtendsTrue<Inferred> : Right extends TUnknown ? Result.TExtendsTrue<Inferred> : Result.TExtendsUnion<Inferred>);
|
|
9
|
+
export declare function ExtendsAny<Inferred extends TProperties, Left extends TAny, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsAny<Inferred, Left, Right>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsInfer } from '../types/infer.mjs';
|
|
3
|
+
import { IsAny } from '../types/any.mjs';
|
|
4
|
+
import { IsUnknown } from '../types/unknown.mjs';
|
|
5
|
+
import { ExtendsRight } from './extends-right.mjs';
|
|
6
|
+
import * as Result from './result.mjs';
|
|
7
|
+
export function ExtendsAny(inferred, left, right) {
|
|
8
|
+
return (IsInfer(right) ? ExtendsRight(inferred, left, right) :
|
|
9
|
+
IsAny(right) ? Result.ExtendsTrue(inferred) :
|
|
10
|
+
IsUnknown(right) ? Result.ExtendsTrue(inferred) :
|
|
11
|
+
Result.ExtendsUnion(inferred));
|
|
12
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
3
|
+
import { type TArray } from '../types/array.mjs';
|
|
4
|
+
import { type TImmutable } from '../types/_immutable.mjs';
|
|
5
|
+
import { type TExtendsRight } from './extends-right.mjs';
|
|
6
|
+
import { type TExtendsLeft } from './extends-left.mjs';
|
|
7
|
+
import * as Result from './result.mjs';
|
|
8
|
+
type TExtendsImmutable<Left extends TSchema, Right extends TSchema, IsImmutableLeft extends boolean = Left extends TImmutable ? true : false, IsImmutableRight extends boolean = Right extends TImmutable ? true : false, Result extends boolean = [
|
|
9
|
+
IsImmutableLeft,
|
|
10
|
+
IsImmutableRight
|
|
11
|
+
] extends [true, true] ? true : [
|
|
12
|
+
IsImmutableLeft,
|
|
13
|
+
IsImmutableRight
|
|
14
|
+
] extends [false, true] ? true : [
|
|
15
|
+
IsImmutableLeft,
|
|
16
|
+
IsImmutableRight
|
|
17
|
+
] extends [true, false] ? false : true> = Result;
|
|
18
|
+
export type TExtendsArray<Inferred extends TProperties, ArrayLeft extends TSchema, Left extends TSchema, Right extends TSchema> = (Right extends TArray<infer Type extends TSchema> ? TExtendsImmutable<ArrayLeft, Right> extends true ? TExtendsLeft<Inferred, Left, Type> : Result.TExtendsFalse : TExtendsRight<Inferred, ArrayLeft, Right>);
|
|
19
|
+
export declare function ExtendsArray<Inferred extends TProperties, ArrayLeft extends TSchema, Left extends TSchema, Right extends TSchema>(inferred: Inferred, arrayLeft: ArrayLeft, left: Left, right: Right): TExtendsArray<Inferred, ArrayLeft, Left, Right>;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsArray } from '../types/array.mjs';
|
|
3
|
+
import { IsImmutable } from '../types/_immutable.mjs';
|
|
4
|
+
import { ExtendsRight } from './extends-right.mjs';
|
|
5
|
+
import { ExtendsLeft } from './extends-left.mjs';
|
|
6
|
+
import * as Result from './result.mjs';
|
|
7
|
+
function ExtendsImmutable(left, right) {
|
|
8
|
+
const isImmutableLeft = IsImmutable(left);
|
|
9
|
+
const isImmutableRight = IsImmutable(right);
|
|
10
|
+
return (isImmutableLeft && isImmutableRight ? true :
|
|
11
|
+
!isImmutableLeft && isImmutableRight ? true :
|
|
12
|
+
isImmutableLeft && !isImmutableRight ? false :
|
|
13
|
+
true);
|
|
14
|
+
}
|
|
15
|
+
export function ExtendsArray(inferred, arrayLeft, left, right) {
|
|
16
|
+
return (IsArray(right)
|
|
17
|
+
? ExtendsImmutable(arrayLeft, right)
|
|
18
|
+
? ExtendsLeft(inferred, left, right.items)
|
|
19
|
+
: Result.ExtendsFalse()
|
|
20
|
+
: ExtendsRight(inferred, arrayLeft, right));
|
|
21
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
3
|
+
import { type TAsyncIterator } from '../types/async-iterator.mjs';
|
|
4
|
+
import { type TExtendsRight } from './extends-right.mjs';
|
|
5
|
+
import { type TExtendsLeft } from './extends-left.mjs';
|
|
6
|
+
export type TExtendsAsyncIterator<Inferred extends TProperties, Left extends TSchema, Right extends TSchema> = (Right extends TAsyncIterator<infer Type extends TSchema> ? TExtendsLeft<Inferred, Left, Type> : TExtendsRight<Inferred, TAsyncIterator<Left>, Right>);
|
|
7
|
+
export declare function ExtendsAsyncIterator<Inferred extends TProperties, Left extends TSchema, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsAsyncIterator<Inferred, Left, Right>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { AsyncIterator, IsAsyncIterator } from '../types/async-iterator.mjs';
|
|
3
|
+
import { ExtendsRight } from './extends-right.mjs';
|
|
4
|
+
import { ExtendsLeft } from './extends-left.mjs';
|
|
5
|
+
export function ExtendsAsyncIterator(inferred, left, right) {
|
|
6
|
+
return (IsAsyncIterator(right)
|
|
7
|
+
? ExtendsLeft(inferred, left, right.iteratorItems)
|
|
8
|
+
: ExtendsRight(inferred, AsyncIterator(left), right));
|
|
9
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
3
|
+
import { type TBigInt } from '../types/bigint.mjs';
|
|
4
|
+
import { type TExtendsRight } from './extends-right.mjs';
|
|
5
|
+
import * as Result from './result.mjs';
|
|
6
|
+
export type TExtendsBigInt<Inferred extends TProperties, Left extends TBigInt, Right extends TSchema> = (Right extends TBigInt ? Result.TExtendsTrue<Inferred> : TExtendsRight<Inferred, Left, Right>);
|
|
7
|
+
export declare function ExtendsBigInt<Inferred extends TProperties, Left extends TBigInt, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsBigInt<Inferred, Left, Right>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsBigInt } from '../types/bigint.mjs';
|
|
3
|
+
import { ExtendsRight } from './extends-right.mjs';
|
|
4
|
+
import * as Result from './result.mjs';
|
|
5
|
+
export function ExtendsBigInt(inferred, left, right) {
|
|
6
|
+
return (IsBigInt(right)
|
|
7
|
+
? Result.ExtendsTrue(inferred)
|
|
8
|
+
: ExtendsRight(inferred, left, right));
|
|
9
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
3
|
+
import { type TBoolean } from '../types/boolean.mjs';
|
|
4
|
+
import { type TExtendsRight } from './extends-right.mjs';
|
|
5
|
+
import * as Result from './result.mjs';
|
|
6
|
+
export type TExtendsBoolean<Inferred extends TProperties, Left extends TBoolean, Right extends TSchema> = (Right extends TBoolean ? Result.TExtendsTrue<Inferred> : TExtendsRight<Inferred, Left, Right>);
|
|
7
|
+
export declare function ExtendsBoolean<Inferred extends TProperties, Left extends TBoolean, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsBoolean<Inferred, Left, Right>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsBoolean } from '../types/boolean.mjs';
|
|
3
|
+
import { ExtendsRight } from './extends-right.mjs';
|
|
4
|
+
import * as Result from './result.mjs';
|
|
5
|
+
export function ExtendsBoolean(inferred, left, right) {
|
|
6
|
+
return (IsBoolean(right)
|
|
7
|
+
? Result.ExtendsTrue(inferred)
|
|
8
|
+
: ExtendsRight(inferred, left, right));
|
|
9
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
3
|
+
import { type TConstructor } from '../types/constructor.mjs';
|
|
4
|
+
import * as Result from './result.mjs';
|
|
5
|
+
import { type TExtendsParameters } from './parameters.mjs';
|
|
6
|
+
import { type TExtendsReturnType } from './return-type.mjs';
|
|
7
|
+
export type TExtendsConstructor<Inferred extends TProperties, Parameters extends TSchema[], InstanceType extends TSchema, Right extends TSchema> = (Right extends TConstructor<infer RightParamters extends TSchema[], infer RightInstanceType extends TSchema> ? TExtendsParameters<Inferred, Parameters, RightParamters> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? TExtendsReturnType<Inferred, InstanceType, RightInstanceType> : Result.TExtendsFalse : Result.TExtendsFalse);
|
|
8
|
+
export declare function ExtendsConstructor<Inferred extends TProperties, Parameters extends TSchema[], InstanceType extends TSchema, Right extends TSchema>(inferred: Inferred, parameters: [...Parameters], returnType: InstanceType, right: Right): TExtendsConstructor<Inferred, Parameters, InstanceType, Right>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsConstructor } from '../types/constructor.mjs';
|
|
3
|
+
import * as Result from './result.mjs';
|
|
4
|
+
// ------------------------------------------------------------------
|
|
5
|
+
// Parameters | ReturnType
|
|
6
|
+
// ------------------------------------------------------------------
|
|
7
|
+
import { ExtendsParameters } from './parameters.mjs';
|
|
8
|
+
import { ExtendsReturnType } from './return-type.mjs';
|
|
9
|
+
export function ExtendsConstructor(inferred, parameters, returnType, right) {
|
|
10
|
+
return (IsConstructor(right) ? (() => {
|
|
11
|
+
const check = ExtendsParameters(inferred, parameters, right.parameters);
|
|
12
|
+
return Result.IsExtendsTrueLike(check)
|
|
13
|
+
? ExtendsReturnType(check.inferred, returnType, right.instanceType)
|
|
14
|
+
: Result.ExtendsFalse();
|
|
15
|
+
})() : Result.ExtendsFalse());
|
|
16
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
3
|
+
import { type TEnum } from '../types/enum.mjs';
|
|
4
|
+
import { type TExtendsLeft } from './extends-left.mjs';
|
|
5
|
+
import { type TEnumToUnion } from '../engine/enum/index.mjs';
|
|
6
|
+
export type TExtendsEnum<Inferred extends TProperties, Left extends TEnum, Right extends TSchema> = (TExtendsLeft<Inferred, TEnumToUnion<Left>, Right>);
|
|
7
|
+
export declare function ExtendsEnum<Inferred extends TProperties, Left extends TEnum, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsEnum<Inferred, Left, Right>;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { type TExtendsAny } from './any.mjs';
|
|
2
|
+
import { type TExtendsArray } from './array.mjs';
|
|
3
|
+
import { type TExtendsAsyncIterator } from './async-iterator.mjs';
|
|
4
|
+
import { type TExtendsBigInt } from './bigint.mjs';
|
|
5
|
+
import { type TExtendsBoolean } from './boolean.mjs';
|
|
6
|
+
import { type TExtendsConstructor } from './constructor.mjs';
|
|
7
|
+
import { type TExtendsEnum } from './enum.mjs';
|
|
8
|
+
import { type TExtendsFunction } from './function.mjs';
|
|
9
|
+
import { type TExtendsInteger } from './integer.mjs';
|
|
10
|
+
import { type TExtendsIntersect } from './intersect.mjs';
|
|
11
|
+
import { type TExtendsIterator } from './iterator.mjs';
|
|
12
|
+
import { type TExtendsLiteral } from './literal.mjs';
|
|
13
|
+
import { type TExtendsNever } from './never.mjs';
|
|
14
|
+
import { type TExtendsNull } from './null.mjs';
|
|
15
|
+
import { type TExtendsNumber } from './number.mjs';
|
|
16
|
+
import { type TExtendsObject } from './object.mjs';
|
|
17
|
+
import { type TExtendsPromise } from './promise.mjs';
|
|
18
|
+
import { type TExtendsString } from './string.mjs';
|
|
19
|
+
import { type TExtendsSymbol } from './symbol.mjs';
|
|
20
|
+
import { type TExtendsTemplateLiteral } from './template-literal.mjs';
|
|
21
|
+
import { type TExtendsTuple } from './tuple.mjs';
|
|
22
|
+
import { type TExtendsUndefined } from './undefined.mjs';
|
|
23
|
+
import { type TExtendsUnion } from './union.mjs';
|
|
24
|
+
import { type TExtendsUnknown } from './unknown.mjs';
|
|
25
|
+
import { type TExtendsVoid } from './void.mjs';
|
|
26
|
+
import { type TAny } from '../types/any.mjs';
|
|
27
|
+
import { type TArray } from '../types/array.mjs';
|
|
28
|
+
import { type TAsyncIterator } from '../types/async-iterator.mjs';
|
|
29
|
+
import { type TBigInt } from '../types/bigint.mjs';
|
|
30
|
+
import { type TBoolean } from '../types/boolean.mjs';
|
|
31
|
+
import { type TConstructor } from '../types/constructor.mjs';
|
|
32
|
+
import { type TEnum, type TEnumValue } from '../types/enum.mjs';
|
|
33
|
+
import { type TFunction } from '../types/function.mjs';
|
|
34
|
+
import { type TInteger } from '../types/integer.mjs';
|
|
35
|
+
import { type TIntersect } from '../types/intersect.mjs';
|
|
36
|
+
import { type TIterator } from '../types/iterator.mjs';
|
|
37
|
+
import { type TLiteral } from '../types/literal.mjs';
|
|
38
|
+
import { type TNever } from '../types/never.mjs';
|
|
39
|
+
import { type TNull } from '../types/null.mjs';
|
|
40
|
+
import { type TNumber } from '../types/number.mjs';
|
|
41
|
+
import { type TObject } from '../types/object.mjs';
|
|
42
|
+
import { type TPromise } from '../types/promise.mjs';
|
|
43
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
44
|
+
import { type TString } from '../types/string.mjs';
|
|
45
|
+
import { type TSymbol } from '../types/symbol.mjs';
|
|
46
|
+
import { type TTemplateLiteral } from '../types/template-literal.mjs';
|
|
47
|
+
import { type TTuple } from '../types/tuple.mjs';
|
|
48
|
+
import { type TUndefined } from '../types/undefined.mjs';
|
|
49
|
+
import { type TUnknown } from '../types/unknown.mjs';
|
|
50
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
51
|
+
import { type TUnion } from '../types/union.mjs';
|
|
52
|
+
import { type TVoid } from '../types/void.mjs';
|
|
53
|
+
import * as Result from './result.mjs';
|
|
54
|
+
export type TExtendsLeft<Inferred extends TProperties, Left extends TSchema, Right extends TSchema> = (Left extends TAny ? TExtendsAny<Inferred, Left, Right> : Left extends TArray<infer Items extends TSchema> ? TExtendsArray<Inferred, Left, Items, Right> : Left extends TAsyncIterator<infer Type extends TSchema> ? TExtendsAsyncIterator<Inferred, Type, Right> : Left extends TBigInt ? TExtendsBigInt<Inferred, Left, Right> : Left extends TBoolean ? TExtendsBoolean<Inferred, Left, Right> : Left extends TConstructor<infer Parameters extends TSchema[], infer InstanceType extends TSchema> ? TExtendsConstructor<Inferred, Parameters, InstanceType, Right> : Left extends TEnum<infer Values extends TEnumValue[]> ? TExtendsEnum<Inferred, TEnum<Values>, Right> : Left extends TFunction<infer Parameters extends TSchema[], infer ReturnType extends TSchema> ? TExtendsFunction<Inferred, Parameters, ReturnType, Right> : Left extends TInteger ? TExtendsInteger<Inferred, Left, Right> : Left extends TIntersect<infer Types extends TSchema[]> ? TExtendsIntersect<Inferred, Types, Right> : Left extends TIterator<infer Type extends TSchema> ? TExtendsIterator<Inferred, Type, Right> : Left extends TLiteral ? TExtendsLiteral<Inferred, Left, Right> : Left extends TNever ? TExtendsNever<Inferred, Left, Right> : Left extends TNull ? TExtendsNull<Inferred, Left, Right> : Left extends TNumber ? TExtendsNumber<Inferred, Left, Right> : Left extends TObject<infer Properties extends TProperties> ? TExtendsObject<Inferred, Properties, Right> : Left extends TPromise<infer Type extends TSchema> ? TExtendsPromise<Inferred, Type, Right> : Left extends TString ? TExtendsString<Inferred, Left, Right> : Left extends TSymbol ? TExtendsSymbol<Inferred, Left, Right> : Left extends TTemplateLiteral<infer Pattern extends string> ? TExtendsTemplateLiteral<Inferred, Pattern, Right> : Left extends TTuple<infer Types extends TSchema[]> ? TExtendsTuple<Inferred, Types, Right> : Left extends TUndefined ? TExtendsUndefined<Inferred, Left, Right> : Left extends TUnion<infer Types extends TSchema[]> ? TExtendsUnion<Inferred, Types, Right> : Left extends TUnknown ? TExtendsUnknown<Inferred, Left, Right> : Left extends TVoid ? TExtendsVoid<Inferred, Left, Right> : Result.TExtendsFalse);
|
|
55
|
+
export declare function ExtendsLeft<Inferred extends TProperties, Left extends TSchema, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsLeft<Inferred, Left, Right>;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { ExtendsAny } from './any.mjs';
|
|
3
|
+
import { ExtendsArray } from './array.mjs';
|
|
4
|
+
import { ExtendsAsyncIterator } from './async-iterator.mjs';
|
|
5
|
+
import { ExtendsBigInt } from './bigint.mjs';
|
|
6
|
+
import { ExtendsBoolean } from './boolean.mjs';
|
|
7
|
+
import { ExtendsConstructor } from './constructor.mjs';
|
|
8
|
+
import { ExtendsEnum } from './enum.mjs';
|
|
9
|
+
import { ExtendsFunction } from './function.mjs';
|
|
10
|
+
import { ExtendsInteger } from './integer.mjs';
|
|
11
|
+
import { ExtendsIntersect } from './intersect.mjs';
|
|
12
|
+
import { ExtendsIterator } from './iterator.mjs';
|
|
13
|
+
import { ExtendsLiteral } from './literal.mjs';
|
|
14
|
+
import { ExtendsNever } from './never.mjs';
|
|
15
|
+
import { ExtendsNull } from './null.mjs';
|
|
16
|
+
import { ExtendsNumber } from './number.mjs';
|
|
17
|
+
import { ExtendsObject } from './object.mjs';
|
|
18
|
+
import { ExtendsPromise } from './promise.mjs';
|
|
19
|
+
import { ExtendsString } from './string.mjs';
|
|
20
|
+
import { ExtendsSymbol } from './symbol.mjs';
|
|
21
|
+
import { ExtendsTemplateLiteral } from './template-literal.mjs';
|
|
22
|
+
import { ExtendsTuple } from './tuple.mjs';
|
|
23
|
+
import { ExtendsUndefined } from './undefined.mjs';
|
|
24
|
+
import { ExtendsUnion } from './union.mjs';
|
|
25
|
+
import { ExtendsUnknown } from './unknown.mjs';
|
|
26
|
+
import { ExtendsVoid } from './void.mjs';
|
|
27
|
+
// ----------------------------------------------------------------------------
|
|
28
|
+
// Types
|
|
29
|
+
// ----------------------------------------------------------------------------
|
|
30
|
+
import { IsAny } from '../types/any.mjs';
|
|
31
|
+
import { IsArray } from '../types/array.mjs';
|
|
32
|
+
import { IsAsyncIterator } from '../types/async-iterator.mjs';
|
|
33
|
+
import { IsBigInt } from '../types/bigint.mjs';
|
|
34
|
+
import { IsBoolean } from '../types/boolean.mjs';
|
|
35
|
+
import { IsConstructor } from '../types/constructor.mjs';
|
|
36
|
+
import { IsEnum } from '../types/enum.mjs';
|
|
37
|
+
import { IsFunction } from '../types/function.mjs';
|
|
38
|
+
import { IsInteger } from '../types/integer.mjs';
|
|
39
|
+
import { IsIntersect } from '../types/intersect.mjs';
|
|
40
|
+
import { IsIterator } from '../types/iterator.mjs';
|
|
41
|
+
import { IsLiteral } from '../types/literal.mjs';
|
|
42
|
+
import { IsNever } from '../types/never.mjs';
|
|
43
|
+
import { IsNull } from '../types/null.mjs';
|
|
44
|
+
import { IsNumber } from '../types/number.mjs';
|
|
45
|
+
import { IsObject } from '../types/object.mjs';
|
|
46
|
+
import { IsPromise } from '../types/promise.mjs';
|
|
47
|
+
import { IsString } from '../types/string.mjs';
|
|
48
|
+
import { IsSymbol } from '../types/symbol.mjs';
|
|
49
|
+
import { IsTemplateLiteral } from '../types/template-literal.mjs';
|
|
50
|
+
import { IsTuple } from '../types/tuple.mjs';
|
|
51
|
+
import { IsUndefined } from '../types/undefined.mjs';
|
|
52
|
+
import { IsUnknown } from '../types/unknown.mjs';
|
|
53
|
+
import { IsUnion } from '../types/union.mjs';
|
|
54
|
+
import { IsVoid } from '../types/void.mjs';
|
|
55
|
+
import * as Result from './result.mjs';
|
|
56
|
+
export function ExtendsLeft(inferred, left, right) {
|
|
57
|
+
return (IsAny(left) ? ExtendsAny(inferred, left, right) :
|
|
58
|
+
IsArray(left) ? ExtendsArray(inferred, left, left.items, right) :
|
|
59
|
+
IsAsyncIterator(left) ? ExtendsAsyncIterator(inferred, left.iteratorItems, right) :
|
|
60
|
+
IsBigInt(left) ? ExtendsBigInt(inferred, left, right) :
|
|
61
|
+
IsBoolean(left) ? ExtendsBoolean(inferred, left, right) :
|
|
62
|
+
IsConstructor(left) ? ExtendsConstructor(inferred, left.parameters, left.instanceType, right) :
|
|
63
|
+
IsEnum(left) ? ExtendsEnum(inferred, left, right) :
|
|
64
|
+
IsFunction(left) ? ExtendsFunction(inferred, left.parameters, left.returnType, right) :
|
|
65
|
+
IsInteger(left) ? ExtendsInteger(inferred, left, right) :
|
|
66
|
+
IsIntersect(left) ? ExtendsIntersect(inferred, left.allOf, right) :
|
|
67
|
+
IsIterator(left) ? ExtendsIterator(inferred, left.iteratorItems, right) :
|
|
68
|
+
IsLiteral(left) ? ExtendsLiteral(inferred, left, right) :
|
|
69
|
+
IsNever(left) ? ExtendsNever(inferred, left, right) :
|
|
70
|
+
IsNull(left) ? ExtendsNull(inferred, left, right) :
|
|
71
|
+
IsNumber(left) ? ExtendsNumber(inferred, left, right) :
|
|
72
|
+
IsObject(left) ? ExtendsObject(inferred, left.properties, right) :
|
|
73
|
+
IsPromise(left) ? ExtendsPromise(inferred, left.item, right) :
|
|
74
|
+
IsString(left) ? ExtendsString(inferred, left, right) :
|
|
75
|
+
IsSymbol(left) ? ExtendsSymbol(inferred, left, right) :
|
|
76
|
+
IsTemplateLiteral(left) ? ExtendsTemplateLiteral(inferred, left.pattern, right) :
|
|
77
|
+
IsTuple(left) ? ExtendsTuple(inferred, left.items, right) :
|
|
78
|
+
IsUndefined(left) ? ExtendsUndefined(inferred, left, right) :
|
|
79
|
+
IsUnion(left) ? ExtendsUnion(inferred, left.anyOf, right) :
|
|
80
|
+
IsUnknown(left) ? ExtendsUnknown(inferred, left, right) :
|
|
81
|
+
IsVoid(left) ? ExtendsVoid(inferred, left, right) :
|
|
82
|
+
Result.ExtendsFalse());
|
|
83
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Memory } from '../../system/memory/index.mjs';
|
|
2
|
+
import { type TSchema } from '../types/schema.mjs';
|
|
3
|
+
import { type TProperties } from '../types/properties.mjs';
|
|
4
|
+
import { type TAny } from '../types/any.mjs';
|
|
5
|
+
import { type TEnum, type TEnumValue } from '../types/enum.mjs';
|
|
6
|
+
import { type TInfer } from '../types/infer.mjs';
|
|
7
|
+
import { type TIntersect } from '../types/intersect.mjs';
|
|
8
|
+
import { type TTemplateLiteral } from '../types/template-literal.mjs';
|
|
9
|
+
import { type TUnion } from '../types/union.mjs';
|
|
10
|
+
import { type TUnknown } from '../types/unknown.mjs';
|
|
11
|
+
import { type TExtendsLeft } from './extends-left.mjs';
|
|
12
|
+
import * as Result from './result.mjs';
|
|
13
|
+
import { type TTemplateLiteralDecode } from '../engine/template-literal/decode.mjs';
|
|
14
|
+
import { type TEnumValuesToUnion } from '../engine/enum/index.mjs';
|
|
15
|
+
type TExtendsRightInfer<Inferred extends TProperties, Name extends string, Left extends TSchema, Right extends TSchema, Result extends Result.TResult = (TExtendsLeft<Inferred, Left, Right> extends Result.TExtendsTrueLike<infer CheckInferred extends TProperties> ? Result.TExtendsTrue<Memory.TAssign<Memory.TAssign<Inferred, CheckInferred>, {
|
|
16
|
+
[_ in Name]: Left;
|
|
17
|
+
}>> : Result.TExtendsFalse)> = Result;
|
|
18
|
+
type TExtendsRightAny<Inferred extends TProperties, Left extends TSchema, Result extends Result.TResult = Result.TExtendsTrue<Inferred>> = Result;
|
|
19
|
+
type TExtendsRightEnum<Inferred extends TProperties, Left extends TSchema, Right extends TEnumValue[], Union extends TSchema = TEnumValuesToUnion<Right>> = TExtendsLeft<Inferred, Left, Union>;
|
|
20
|
+
type TExtendsRightIntersect<Inferred extends TProperties, Left extends TSchema, Right extends TSchema[]> = (Right extends [infer Head extends TSchema, ...infer Tail extends TSchema[]] ? TExtendsLeft<Inferred, Left, Head> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? TExtendsRightIntersect<Inferred, Left, Tail> : Result.TExtendsFalse : Result.TExtendsTrue<Inferred>);
|
|
21
|
+
type TExtendsRightTemplateLiteral<Inferred extends TProperties, Left extends TSchema, Right extends string, Decoded extends TSchema = TTemplateLiteralDecode<Right>> = TExtendsLeft<Inferred, Left, Decoded>;
|
|
22
|
+
type TExtendsRightUnion<Inferred extends TProperties, Left extends TSchema, Right extends TSchema[]> = (Right extends [infer Head extends TSchema, ...infer Tail extends TSchema[]] ? TExtendsLeft<Inferred, Left, Head> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? Result.TExtendsTrue<Inferred> : TExtendsRightUnion<Inferred, Left, Tail> : Result.TExtendsFalse);
|
|
23
|
+
export type TExtendsRight<Inferred extends TProperties, Left extends TSchema, Right extends TSchema> = (Right extends TAny ? TExtendsRightAny<Inferred, Left> : Right extends TEnum<infer Values extends TEnumValue[]> ? TExtendsRightEnum<Inferred, Left, Values> : Right extends TInfer<infer Name extends string, infer Type extends TSchema> ? TExtendsRightInfer<Inferred, Name, Left, Type> : Right extends TTemplateLiteral<infer Pattern extends string> ? TExtendsRightTemplateLiteral<Inferred, Left, Pattern> : Right extends TIntersect<infer Types extends TSchema[]> ? TExtendsRightIntersect<Inferred, Left, Types> : Right extends TUnion<infer Types extends TSchema[]> ? TExtendsRightUnion<Inferred, Left, Types> : Right extends TUnknown ? Result.TExtendsTrue<Inferred> : Result.TExtendsFalse);
|
|
24
|
+
export declare function ExtendsRight<Inferred extends TProperties, Left extends TSchema, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsRight<Inferred, Left, Right>;
|
|
25
|
+
export {};
|