typebox 0.0.1 → 1.0.0-rc
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/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 +12 -0
- package/build/compile/index.mjs +13 -0
- package/build/compile/validator.d.mts +30 -0
- package/build/compile/validator.mjs +83 -0
- package/build/error/errors.d.mts +213 -0
- package/build/error/errors.mjs +1 -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 +56 -0
- package/build/guard/emit.mjs +183 -0
- package/build/guard/globals.d.mts +35 -0
- package/build/guard/globals.mjs +90 -0
- package/build/guard/guard.d.mts +57 -0
- package/build/guard/guard.mjs +180 -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/index.d.mts +8 -0
- package/build/index.mjs +14 -0
- package/build/schema/build.d.mts +35 -0
- package/build/schema/build.mjs +97 -0
- package/build/schema/check.d.mts +5 -0
- package/build/schema/check.mjs +12 -0
- package/build/schema/deref/deref.d.mts +4 -0
- package/build/schema/deref/deref.mjs +77 -0
- package/build/schema/deref/index.d.mts +1 -0
- package/build/schema/deref/index.mjs +1 -0
- package/build/schema/engine/_context.d.mts +42 -0
- package/build/schema/engine/_context.mjs +121 -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 +5 -0
- package/build/schema/engine/_functions.mjs +46 -0
- package/build/schema/engine/_reducer.d.mts +3 -0
- package/build/schema/engine/_reducer.mjs +45 -0
- package/build/schema/engine/_refine.d.mts +5 -0
- package/build/schema/engine/_refine.mjs +29 -0
- package/build/schema/engine/_standard.d.mts +5 -0
- package/build/schema/engine/_standard.mjs +27 -0
- package/build/schema/engine/additionalItems.d.mts +5 -0
- package/build/schema/engine/additionalItems.mjs +48 -0
- package/build/schema/engine/additionalProperties.d.mts +8 -0
- package/build/schema/engine/additionalProperties.mjs +103 -0
- package/build/schema/engine/allOf.d.mts +5 -0
- package/build/schema/engine/allOf.mjs +47 -0
- package/build/schema/engine/anyOf.d.mts +5 -0
- package/build/schema/engine/anyOf.mjs +52 -0
- package/build/schema/engine/boolean.d.mts +4 -0
- package/build/schema/engine/boolean.mjs +25 -0
- package/build/schema/engine/const.d.mts +5 -0
- package/build/schema/engine/const.mjs +30 -0
- package/build/schema/engine/contains.d.mts +5 -0
- package/build/schema/engine/contains.mjs +40 -0
- package/build/schema/engine/dependencies.d.mts +5 -0
- package/build/schema/engine/dependencies.mjs +45 -0
- package/build/schema/engine/dependentRequired.d.mts +5 -0
- package/build/schema/engine/dependentRequired.mjs +40 -0
- package/build/schema/engine/dependentSchemas.d.mts +5 -0
- package/build/schema/engine/dependentSchemas.mjs +38 -0
- package/build/schema/engine/enum.d.mts +5 -0
- package/build/schema/engine/enum.mjs +33 -0
- package/build/schema/engine/exclusiveMaximum.d.mts +5 -0
- package/build/schema/engine/exclusiveMaximum.mjs +25 -0
- package/build/schema/engine/exclusiveMinimum.d.mts +5 -0
- package/build/schema/engine/exclusiveMinimum.mjs +25 -0
- package/build/schema/engine/format.d.mts +5 -0
- package/build/schema/engine/format.mjs +26 -0
- package/build/schema/engine/if.d.mts +5 -0
- package/build/schema/engine/if.mjs +47 -0
- package/build/schema/engine/index.d.mts +47 -0
- package/build/schema/engine/index.mjs +53 -0
- package/build/schema/engine/items.d.mts +5 -0
- package/build/schema/engine/items.mjs +65 -0
- package/build/schema/engine/maxContains.d.mts +5 -0
- package/build/schema/engine/maxContains.mjs +40 -0
- package/build/schema/engine/maxItems.d.mts +5 -0
- package/build/schema/engine/maxItems.mjs +25 -0
- package/build/schema/engine/maxLength.d.mts +5 -0
- package/build/schema/engine/maxLength.mjs +25 -0
- package/build/schema/engine/maxProperties.d.mts +5 -0
- package/build/schema/engine/maxProperties.mjs +25 -0
- package/build/schema/engine/maximum.d.mts +5 -0
- package/build/schema/engine/maximum.mjs +25 -0
- package/build/schema/engine/minContains.d.mts +5 -0
- package/build/schema/engine/minContains.mjs +39 -0
- package/build/schema/engine/minItems.d.mts +5 -0
- package/build/schema/engine/minItems.mjs +25 -0
- package/build/schema/engine/minLength.d.mts +5 -0
- package/build/schema/engine/minLength.mjs +25 -0
- package/build/schema/engine/minProperties.d.mts +5 -0
- package/build/schema/engine/minProperties.mjs +25 -0
- package/build/schema/engine/minimum.d.mts +5 -0
- package/build/schema/engine/minimum.mjs +25 -0
- package/build/schema/engine/multipleOf.d.mts +5 -0
- package/build/schema/engine/multipleOf.mjs +25 -0
- package/build/schema/engine/not.d.mts +5 -0
- package/build/schema/engine/not.mjs +36 -0
- package/build/schema/engine/oneOf.d.mts +5 -0
- package/build/schema/engine/oneOf.mjs +58 -0
- package/build/schema/engine/pattern.d.mts +5 -0
- package/build/schema/engine/pattern.mjs +28 -0
- package/build/schema/engine/patternProperties.d.mts +5 -0
- package/build/schema/engine/patternProperties.mjs +42 -0
- package/build/schema/engine/prefixItems.d.mts +5 -0
- package/build/schema/engine/prefixItems.mjs +35 -0
- package/build/schema/engine/properties.d.mts +5 -0
- package/build/schema/engine/properties.mjs +41 -0
- package/build/schema/engine/propertyNames.d.mts +5 -0
- package/build/schema/engine/propertyNames.mjs +37 -0
- package/build/schema/engine/ref.d.mts +5 -0
- package/build/schema/engine/ref.mjs +43 -0
- package/build/schema/engine/required.d.mts +5 -0
- package/build/schema/engine/required.mjs +32 -0
- package/build/schema/engine/schema.d.mts +5 -0
- package/build/schema/engine/schema.mjs +322 -0
- package/build/schema/engine/type.d.mts +5 -0
- package/build/schema/engine/type.mjs +74 -0
- package/build/schema/engine/unevaluatedItems.d.mts +5 -0
- package/build/schema/engine/unevaluatedItems.mjs +49 -0
- package/build/schema/engine/unevaluatedProperties.d.mts +5 -0
- package/build/schema/engine/unevaluatedProperties.mjs +49 -0
- package/build/schema/engine/uniqueItems.d.mts +5 -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 +16 -0
- package/build/schema/index.mjs +19 -0
- package/build/schema/schema.d.mts +5 -0
- package/build/schema/schema.mjs +5 -0
- package/build/schema/types/_refine.d.mts +13 -0
- package/build/schema/types/_refine.mjs +18 -0
- package/build/schema/types/_standard.d.mts +14 -0
- package/build/schema/types/_standard.mjs +19 -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/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/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 +51 -0
- package/build/schema/types/index.mjs +57 -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/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/static.d.mts +115 -0
- package/build/schema/types/static.mjs +2 -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 +23 -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 +37 -0
- package/build/system/settings/settings.mjs +28 -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 +26 -0
- package/build/type/action/index.mjs +26 -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/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 +7 -0
- package/build/type/engine/enum/typescript-enum-to-enum-values.mjs +6 -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 +26 -0
- package/build/type/engine/evaluate/distribute.mjs +53 -0
- package/build/type/engine/evaluate/evaluate.d.mts +11 -0
- package/build/type/engine/evaluate/evaluate.mjs +19 -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 +30 -0
- package/build/type/engine/index.mjs +36 -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 +162 -0
- package/build/type/engine/instantiate.mjs +165 -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-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 +25 -0
- package/build/type/engine/keyof/instantiate.mjs +42 -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 +14 -0
- package/build/type/engine/object/from-intersect.mjs +17 -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 +7 -0
- package/build/type/engine/patterns/pattern.mjs +13 -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/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 +11 -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 +20 -0
- package/build/type/engine/template-literal/decode.mjs +73 -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/finite.d.mts +12 -0
- package/build/type/engine/template-literal/finite.mjs +30 -0
- package/build/type/engine/template-literal/index.d.mts +5 -0
- package/build/type/engine/template-literal/index.mjs +5 -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/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 +7 -0
- package/build/type/extends/array.mjs +9 -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 +17 -0
- package/build/type/extends/literal.mjs +41 -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 +358 -0
- package/build/type/script/mapping.mjs +525 -0
- package/build/type/script/parser.d.mts +256 -0
- package/build/type/script/parser.mjs +132 -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 +73 -0
- package/build/type/script/token/internal/char.mjs +25 -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 +59 -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 +16 -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 +40 -0
- package/build/type/types/base.mjs +78 -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 +15 -0
- package/build/type/types/enum.mjs +17 -0
- package/build/type/types/function.d.mts +18 -0
- package/build/type/types/function.mjs +24 -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 +47 -0
- package/build/type/types/index.mjs +53 -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 +22 -0
- package/build/type/types/literal.mjs +41 -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 +17 -0
- package/build/type/types/object.mjs +27 -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 +44 -0
- package/build/type/types/record.mjs +61 -0
- package/build/type/types/ref.d.mts +13 -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 +47 -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 +24 -0
- package/build/type/types/template-literal.mjs +26 -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 +37 -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 +10 -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 +71 -0
- package/build/typebox.mjs +87 -0
- package/build/value/assert/assert.d.mts +8 -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 +25 -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 +60 -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 +19 -0
- package/build/value/codec/decode.mjs +48 -0
- package/build/value/codec/encode.d.mts +9 -0
- package/build/value/codec/encode.mjs +43 -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 +44 -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 +85 -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 +7 -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 +23 -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 +6 -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 +8 -0
- package/build/value/default/from-object.d.mts +2 -0
- package/build/value/default/from-object.mjs +30 -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 +20 -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/pointer/pointer.d.mts +17 -0
- package/build/value/pointer/pointer.mjs +137 -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-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 +7 -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 +59 -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/value.d.mts +16 -0
- package/build/value/value.mjs +16 -0
- package/license +23 -0
- package/package.json +75 -7
- package/readme.md +235 -0
- package/index.ts +0 -1
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TMappingType, type TMappingFunc } from './mapping.mjs';
|
|
3
|
+
import { type TTemplateLiteralDecode } from '../template-literal/decode.mjs';
|
|
4
|
+
import { type TFromType } from './from-type.mjs';
|
|
5
|
+
export type TFromTemplateLiteral<Mapping extends TMappingType, Pattern extends string, Decoded extends TSchema = TTemplateLiteralDecode<Pattern>, Result extends TSchema = TFromType<Mapping, Decoded>> = Result;
|
|
6
|
+
export declare function FromTemplateLiteral(mapping: TMappingFunc, pattern: string): TSchema;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { TemplateLiteralDecode } from '../template-literal/decode.mjs';
|
|
3
|
+
import { FromType } from './from-type.mjs';
|
|
4
|
+
export function FromTemplateLiteral(mapping, pattern) {
|
|
5
|
+
const decoded = TemplateLiteralDecode(pattern);
|
|
6
|
+
const result = FromType(mapping, decoded);
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TLiteral, type TLiteralValue } from '../../types/literal.mjs';
|
|
3
|
+
import { type TTemplateLiteral } from '../../types/template-literal.mjs';
|
|
4
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
5
|
+
import { type TMappingType, type TMappingFunc } from './mapping.mjs';
|
|
6
|
+
import { type TFromLiteral } from './from-literal.mjs';
|
|
7
|
+
import { type TFromTemplateLiteral } from './from-template-literal.mjs';
|
|
8
|
+
import { type TFromUnion } from './from-union.mjs';
|
|
9
|
+
export type TFromType<Mapping extends TMappingType, Type extends TSchema> = (Type extends TLiteral<infer Value extends TLiteralValue> ? TFromLiteral<Mapping, Value> : Type extends TTemplateLiteral<infer Pattern extends string> ? TFromTemplateLiteral<Mapping, Pattern> : Type extends TUnion<infer Types extends TSchema[]> ? TFromUnion<Mapping, Types> : Type);
|
|
10
|
+
export declare function FromType(mapping: TMappingFunc, type: TSchema): TSchema;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsLiteral } from '../../types/literal.mjs';
|
|
3
|
+
import { IsTemplateLiteral } from '../../types/template-literal.mjs';
|
|
4
|
+
import { IsUnion } from '../../types/union.mjs';
|
|
5
|
+
import { FromLiteral } from './from-literal.mjs';
|
|
6
|
+
import { FromTemplateLiteral } from './from-template-literal.mjs';
|
|
7
|
+
import { FromUnion } from './from-union.mjs';
|
|
8
|
+
export function FromType(mapping, type) {
|
|
9
|
+
return (IsLiteral(type) ? FromLiteral(mapping, type.const) :
|
|
10
|
+
IsTemplateLiteral(type) ? FromTemplateLiteral(mapping, type.pattern) :
|
|
11
|
+
IsUnion(type) ? FromUnion(mapping, type.anyOf) :
|
|
12
|
+
type);
|
|
13
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
3
|
+
import { type TMappingType, type TMappingFunc } from './mapping.mjs';
|
|
4
|
+
import { type TFromType } from './from-type.mjs';
|
|
5
|
+
export type TFromUnion<Mapping extends TMappingType, Types extends TSchema[], Result extends TSchema[] = []> = (Types extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TFromUnion<Mapping, Right, [...Result, TFromType<Mapping, Left>]> : TUnion<Result>);
|
|
6
|
+
export declare function FromUnion(mapping: TMappingFunc, types: TSchema[]): TSchema;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type TSchema, type TSchemaOptions } from '../../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
3
|
+
import { type TMappingType } from './mapping.mjs';
|
|
4
|
+
import { type TFromType } from './from-type.mjs';
|
|
5
|
+
import { type TState, type TInstantiateType, type TCanInstantiate } from '../instantiate.mjs';
|
|
6
|
+
import { type TCapitalizeDeferred } from '../../action/capitalize.mjs';
|
|
7
|
+
import { type TLowercaseDeferred } from '../../action/lowercase.mjs';
|
|
8
|
+
import { type TUncapitalizeDeferred } from '../../action/uncapitalize.mjs';
|
|
9
|
+
import { type TUppercaseDeferred } from '../../action/uppercase.mjs';
|
|
10
|
+
interface TCapitalizeMapping extends TMappingType {
|
|
11
|
+
output: Capitalize<this['input']>;
|
|
12
|
+
}
|
|
13
|
+
interface TLowercaseMapping extends TMappingType {
|
|
14
|
+
output: Lowercase<this['input']>;
|
|
15
|
+
}
|
|
16
|
+
interface TUncapitalizeMapping extends TMappingType {
|
|
17
|
+
output: Uncapitalize<this['input']>;
|
|
18
|
+
}
|
|
19
|
+
interface TUppercaseMapping extends TMappingType {
|
|
20
|
+
output: Uppercase<this['input']>;
|
|
21
|
+
}
|
|
22
|
+
type TCapitalizeImmediate<Context extends TProperties, State extends TState, Type extends TSchema, InstantiatedType extends TSchema = TInstantiateType<Context, State, Type>> = TFromType<TCapitalizeMapping, InstantiatedType>;
|
|
23
|
+
export type TCapitalizeInstantiate<Context extends TProperties, State extends TState, Type extends TSchema> = TCanInstantiate<Context, [Type]> extends true ? TCapitalizeImmediate<Context, State, Type> : TCapitalizeDeferred<Type>;
|
|
24
|
+
export declare function CapitalizeInstantiate<Context extends TProperties, State extends TState, Type extends TSchema>(context: Context, state: State, type: Type, options: TSchemaOptions): TCapitalizeInstantiate<Context, State, Type>;
|
|
25
|
+
type TLowercaseImmediate<Context extends TProperties, State extends TState, Type extends TSchema, InstantiatedType extends TSchema = TInstantiateType<Context, State, Type>> = TFromType<TLowercaseMapping, InstantiatedType>;
|
|
26
|
+
export type TLowercaseInstantiate<Context extends TProperties, State extends TState, Type extends TSchema> = TCanInstantiate<Context, [Type]> extends true ? TLowercaseImmediate<Context, State, Type> : TLowercaseDeferred<Type>;
|
|
27
|
+
export declare function LowercaseInstantiate<Context extends TProperties, State extends TState, Type extends TSchema>(context: Context, state: State, type: Type, options: TSchemaOptions): TLowercaseInstantiate<Context, State, Type>;
|
|
28
|
+
type TUncapitalizeImmediate<Context extends TProperties, State extends TState, Type extends TSchema, InstantiatedType extends TSchema = TInstantiateType<Context, State, Type>> = TFromType<TUncapitalizeMapping, InstantiatedType>;
|
|
29
|
+
export type TUncapitalizeInstantiate<Context extends TProperties, State extends TState, Type extends TSchema> = TCanInstantiate<Context, [Type]> extends true ? TUncapitalizeImmediate<Context, State, Type> : TUncapitalizeDeferred<Type>;
|
|
30
|
+
export declare function UncapitalizeInstantiate<Context extends TProperties, State extends TState, Type extends TSchema>(context: Context, state: State, type: Type, options: TSchemaOptions): TUncapitalizeInstantiate<Context, State, Type>;
|
|
31
|
+
type TUppercaseImmediate<Context extends TProperties, State extends TState, Type extends TSchema, InstantiatedType extends TSchema = TInstantiateType<Context, State, Type>> = TFromType<TUppercaseMapping, InstantiatedType>;
|
|
32
|
+
export type TUppercaseInstantiate<Context extends TProperties, State extends TState, Type extends TSchema> = TCanInstantiate<Context, [Type]> extends true ? TUppercaseImmediate<Context, State, Type> : TUppercaseDeferred<Type>;
|
|
33
|
+
export declare function UppercaseInstantiate<Context extends TProperties, State extends TState, Type extends TSchema>(context: Context, state: State, type: Type, options: TSchemaOptions): TUppercaseInstantiate<Context, State, Type>;
|
|
34
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
3
|
+
import { FromType } from './from-type.mjs';
|
|
4
|
+
import { InstantiateType, CanInstantiate } from '../instantiate.mjs';
|
|
5
|
+
import { CapitalizeDeferred } from '../../action/capitalize.mjs';
|
|
6
|
+
import { LowercaseDeferred } from '../../action/lowercase.mjs';
|
|
7
|
+
import { UncapitalizeDeferred } from '../../action/uncapitalize.mjs';
|
|
8
|
+
import { UppercaseDeferred } from '../../action/uppercase.mjs';
|
|
9
|
+
const CapitalizeMapping = (input) => input[0].toUpperCase() + input.slice(1);
|
|
10
|
+
const LowercaseMapping = (input) => input.toLowerCase();
|
|
11
|
+
const UncapitalizeMapping = (input) => input[0].toLowerCase() + input.slice(1);
|
|
12
|
+
const UppercaseMapping = (input) => input.toUpperCase();
|
|
13
|
+
function CapitalizeImmediate(context, state, type, options) {
|
|
14
|
+
const instantiatedType = InstantiateType(context, state, type);
|
|
15
|
+
return Memory.Update(FromType(CapitalizeMapping, instantiatedType), {}, options);
|
|
16
|
+
}
|
|
17
|
+
export function CapitalizeInstantiate(context, state, type, options) {
|
|
18
|
+
return (CanInstantiate(context, [type])
|
|
19
|
+
? CapitalizeImmediate(context, state, type, options)
|
|
20
|
+
: CapitalizeDeferred(type, options));
|
|
21
|
+
}
|
|
22
|
+
function LowercaseImmediate(context, state, type, options) {
|
|
23
|
+
const instantiatedType = InstantiateType(context, state, type);
|
|
24
|
+
return Memory.Update(FromType(LowercaseMapping, instantiatedType), {}, options);
|
|
25
|
+
}
|
|
26
|
+
export function LowercaseInstantiate(context, state, type, options) {
|
|
27
|
+
return (CanInstantiate(context, [type])
|
|
28
|
+
? LowercaseImmediate(context, state, type, options)
|
|
29
|
+
: LowercaseDeferred(type, options));
|
|
30
|
+
}
|
|
31
|
+
function UncapitalizeImmediate(context, state, type, options) {
|
|
32
|
+
const instantiatedType = InstantiateType(context, state, type);
|
|
33
|
+
return Memory.Update(FromType(UncapitalizeMapping, instantiatedType), {}, options);
|
|
34
|
+
}
|
|
35
|
+
export function UncapitalizeInstantiate(context, state, type, options) {
|
|
36
|
+
return (CanInstantiate(context, [type])
|
|
37
|
+
? UncapitalizeImmediate(context, state, type, options)
|
|
38
|
+
: UncapitalizeDeferred(type, options));
|
|
39
|
+
}
|
|
40
|
+
function UppercaseImmediate(context, state, type, options) {
|
|
41
|
+
const instantiatedType = InstantiateType(context, state, type);
|
|
42
|
+
return Memory.Update(FromType(UppercaseMapping, instantiatedType), {}, options);
|
|
43
|
+
}
|
|
44
|
+
export function UppercaseInstantiate(context, state, type, options) {
|
|
45
|
+
return (CanInstantiate(context, [type])
|
|
46
|
+
? UppercaseImmediate(context, state, type, options)
|
|
47
|
+
: UppercaseDeferred(type, options));
|
|
48
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface TMappingType {
|
|
2
|
+
input: string;
|
|
3
|
+
output: string;
|
|
4
|
+
}
|
|
5
|
+
export type TApplyMapping<Mapping extends TMappingType, Value extends string> = ((Mapping & {
|
|
6
|
+
input: Value;
|
|
7
|
+
})['output']);
|
|
8
|
+
export type TMappingFunc = (input: string) => string;
|
|
9
|
+
export declare function ApplyMapping(mapping: TMappingFunc, value: string): string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type TUnreachable } from '../../../system/unreachable/index.mjs';
|
|
2
|
+
import { type TSchema } from '../../types/index.mjs';
|
|
3
|
+
import { type TUnionToTuple } from '../helpers/index.mjs';
|
|
4
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
5
|
+
import { type TLiteral, type TLiteralValue } from '../../types/literal.mjs';
|
|
6
|
+
import { type TEvaluateUnion } from '../evaluate/evaluate.mjs';
|
|
7
|
+
type TFromPropertyKeys<Keys extends PropertyKey[], Result extends TSchema[] = []> = (Keys extends [infer Left extends PropertyKey, ...infer Right extends PropertyKey[]] ? Left extends TLiteralValue ? TFromPropertyKeys<Right, [...Result, TLiteral<Left>]> : TUnreachable : Result);
|
|
8
|
+
export type TFromObject<Properties extends TProperties, PropertyKeys extends PropertyKey[] = TUnionToTuple<keyof Properties>, Variants extends TSchema[] = TFromPropertyKeys<PropertyKeys>, Result extends TSchema = TEvaluateUnion<Variants>> = Result;
|
|
9
|
+
export declare function FromObject<Properties extends TProperties>(properties: Properties): TFromObject<Properties>;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Unreachable } from '../../../system/unreachable/index.mjs';
|
|
3
|
+
import { Guard } from '../../../guard/index.mjs';
|
|
4
|
+
import { Literal, IsLiteralValue } from '../../types/literal.mjs';
|
|
5
|
+
import { ConvertToIntegerKey } from '../helpers/keys.mjs';
|
|
6
|
+
import { EvaluateUnion } from '../evaluate/evaluate.mjs';
|
|
7
|
+
function FromPropertyKeys(keys) {
|
|
8
|
+
const result = keys.reduce((result, left) => {
|
|
9
|
+
return IsLiteralValue(left)
|
|
10
|
+
? [...result, Literal(ConvertToIntegerKey(left))]
|
|
11
|
+
: Unreachable();
|
|
12
|
+
}, []);
|
|
13
|
+
return result;
|
|
14
|
+
}
|
|
15
|
+
export function FromObject(properties) {
|
|
16
|
+
const propertyKeys = Guard.Keys(properties);
|
|
17
|
+
const variants = FromPropertyKeys(propertyKeys);
|
|
18
|
+
const result = EvaluateUnion(variants);
|
|
19
|
+
return result;
|
|
20
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/index.mjs';
|
|
2
|
+
import { type TRecord, type TRecordKey } from '../../types/record.mjs';
|
|
3
|
+
export type TFromRecord<Type extends TRecord, Result extends TSchema = TRecordKey<Type>> = Result;
|
|
4
|
+
export declare function FromRecord<Type extends TRecord>(type: Type): TFromRecord<Type>;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/index.mjs';
|
|
2
|
+
import { type TLiteral } from '../../types/literal.mjs';
|
|
3
|
+
import { type TEvaluateUnion } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export type TFromTuple<Types extends TSchema[], Result extends TSchema[] = []> = (Types extends [...infer Left extends TSchema[], infer _ extends TSchema] ? TFromTuple<Left, [TLiteral<Left['length']>, ...Result]> : TEvaluateUnion<Result>);
|
|
5
|
+
export declare function FromTuple<Types extends TSchema[]>(types: [...Types]): TFromTuple<Types>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type TSchema, type TSchemaOptions } from '../../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
3
|
+
import { type TArray } from '../../types/array.mjs';
|
|
4
|
+
import { type TCyclic } from '../../types/cyclic.mjs';
|
|
5
|
+
import { type TIntersect } from '../../types/intersect.mjs';
|
|
6
|
+
import { type TNever } from '../../types/never.mjs';
|
|
7
|
+
import { type TObject } from '../../types/object.mjs';
|
|
8
|
+
import { type TRecord } from '../../types/record.mjs';
|
|
9
|
+
import { type TTuple } from '../../types/tuple.mjs';
|
|
10
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
11
|
+
import { type TKeyOfDeferred } from '../../action/keyof.mjs';
|
|
12
|
+
import { type TState, type TInstantiateType, type TCanInstantiate } from '../instantiate.mjs';
|
|
13
|
+
import { type TCollapseToObject } from '../object/index.mjs';
|
|
14
|
+
import { type TFromArray } from "./from-array.mjs";
|
|
15
|
+
import { type TFromObject } from './from-object.mjs';
|
|
16
|
+
import { type TFromRecord } from './from-record.mjs';
|
|
17
|
+
import { type TFromTuple } from './from-tuple.mjs';
|
|
18
|
+
type TNormalizeType<Type extends TSchema, Result extends TSchema = (Type extends TCyclic | TIntersect | TUnion ? TCollapseToObject<Type> : Type)> = Result;
|
|
19
|
+
export type TKeyOfAction<Type extends TSchema, Normalized extends TSchema = TNormalizeType<Type>> = (Normalized extends TArray<infer Type extends TSchema> ? TFromArray<Type> : Normalized extends TObject<infer Properties extends TProperties> ? TFromObject<Properties> : Normalized extends TRecord ? TFromRecord<Normalized> : Normalized extends TTuple<infer Types extends TSchema[]> ? TFromTuple<Types> : TNever);
|
|
20
|
+
export declare function KeyOfAction<Type extends TSchema>(type: Type): TKeyOfAction<Type>;
|
|
21
|
+
export type TKeyOfImmediate<Context extends TProperties, State extends TState, Type extends TSchema, InstantiatedType extends TSchema = TInstantiateType<Context, State, Type>> = TKeyOfAction<InstantiatedType>;
|
|
22
|
+
export declare function KeyOfImmediate<Context extends TProperties, State extends TState, Type extends TSchema>(context: Context, state: State, type: Type, options: TSchemaOptions): TKeyOfImmediate<Context, State, Type>;
|
|
23
|
+
export type TKeyOfInstantiate<Context extends TProperties, State extends TState, Type extends TSchema> = TCanInstantiate<Context, [Type]> extends true ? TKeyOfImmediate<Context, State, Type> : TKeyOfDeferred<Type>;
|
|
24
|
+
export declare function KeyOfInstantiate<Context extends TProperties, State extends TState, Type extends TSchema>(context: Context, state: State, type: Type, options: TSchemaOptions): TKeyOfInstantiate<Context, State, Type>;
|
|
25
|
+
export {};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
3
|
+
import { IsArray } from '../../types/array.mjs';
|
|
4
|
+
import { IsCyclic } from '../../types/cyclic.mjs';
|
|
5
|
+
import { IsIntersect } from '../../types/intersect.mjs';
|
|
6
|
+
import { Never } from '../../types/never.mjs';
|
|
7
|
+
import { IsObject } from '../../types/object.mjs';
|
|
8
|
+
import { IsRecord } from '../../types/record.mjs';
|
|
9
|
+
import { IsTuple } from '../../types/tuple.mjs';
|
|
10
|
+
import { IsUnion } from '../../types/union.mjs';
|
|
11
|
+
import { KeyOfDeferred } from '../../action/keyof.mjs';
|
|
12
|
+
import { InstantiateType, CanInstantiate } from '../instantiate.mjs';
|
|
13
|
+
import { CollapseToObject } from '../object/index.mjs';
|
|
14
|
+
// ------------------------------------------------------------------
|
|
15
|
+
// Computed
|
|
16
|
+
// ------------------------------------------------------------------
|
|
17
|
+
import { FromArray } from "./from-array.mjs";
|
|
18
|
+
import { FromObject } from './from-object.mjs';
|
|
19
|
+
import { FromRecord } from './from-record.mjs';
|
|
20
|
+
import { FromTuple } from './from-tuple.mjs';
|
|
21
|
+
function NormalizeType(type) {
|
|
22
|
+
const result = (IsCyclic(type) || IsIntersect(type) || IsUnion(type) ? CollapseToObject(type) :
|
|
23
|
+
type);
|
|
24
|
+
return result;
|
|
25
|
+
}
|
|
26
|
+
export function KeyOfAction(type) {
|
|
27
|
+
const normal = NormalizeType(type);
|
|
28
|
+
return (IsArray(normal) ? FromArray(normal.items) :
|
|
29
|
+
IsObject(normal) ? FromObject(normal.properties) :
|
|
30
|
+
IsRecord(normal) ? FromRecord(normal) :
|
|
31
|
+
IsTuple(normal) ? FromTuple(normal.items) :
|
|
32
|
+
Never());
|
|
33
|
+
}
|
|
34
|
+
export function KeyOfImmediate(context, state, type, options) {
|
|
35
|
+
const instantiatedType = InstantiateType(context, state, type);
|
|
36
|
+
return Memory.Update(KeyOfAction(instantiatedType), {}, options);
|
|
37
|
+
}
|
|
38
|
+
export function KeyOfInstantiate(context, state, type, options) {
|
|
39
|
+
return (CanInstantiate(context, [type])
|
|
40
|
+
? KeyOfImmediate(context, state, type, options)
|
|
41
|
+
: KeyOfDeferred(type, options));
|
|
42
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
2
|
+
import { type TSchema, type TSchemaOptions } from '../../types/schema.mjs';
|
|
3
|
+
import { type TLiteral } from '../../types/literal.mjs';
|
|
4
|
+
import { type TObject } from '../../types/object.mjs';
|
|
5
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
6
|
+
import { type TIdentifier } from '../../types/identifier.mjs';
|
|
7
|
+
import { type TMappedKeys } from './mapped-keys.mjs';
|
|
8
|
+
import { type TTemplateLiteral } from '../../types/template-literal.mjs';
|
|
9
|
+
import { type TMappedDeferred } from '../../action/mapped.mjs';
|
|
10
|
+
import { type TTemplateLiteralDecode } from '../template-literal/decode.mjs';
|
|
11
|
+
import { type TState, type TInstantiateType, type TCanInstantiate } from '../instantiate.mjs';
|
|
12
|
+
type TInstantiateKeyAs<Context extends TProperties, State extends TState, Identifier extends TIdentifier, Key extends TSchema, As extends TSchema, ContextWithKey extends TProperties = Memory.TAssign<Context, {
|
|
13
|
+
[_ in Identifier['name']]: Key;
|
|
14
|
+
}>, InstantiatedKeyAs extends TSchema = TInstantiateType<ContextWithKey, State, As>, Result extends TSchema = InstantiatedKeyAs extends TTemplateLiteral<infer Pattern extends string> ? TTemplateLiteralDecode<Pattern> : InstantiatedKeyAs> = Result;
|
|
15
|
+
type TInstantiateProperty<Context extends TProperties, State extends TState, Identifier extends TIdentifier, Key extends TSchema, Property extends TSchema, ContextWithKey extends TProperties = Memory.TAssign<Context, {
|
|
16
|
+
[_ in Identifier['name']]: Key;
|
|
17
|
+
}>, InstantiatedProperty extends TSchema = TInstantiateType<ContextWithKey, State, Property>> = InstantiatedProperty;
|
|
18
|
+
type TMappedProperty<Context extends TProperties, State extends TState, Identifier extends TIdentifier, Key extends TSchema, As extends TSchema, Property extends TSchema, InstantiatedProperty extends TSchema = TInstantiateProperty<Context, State, Identifier, Key, Property>, InstantiatedKeyAs extends TSchema = TInstantiateKeyAs<Context, State, Identifier, Key, As>, Result extends TProperties = (InstantiatedKeyAs extends TLiteral<string | number> ? {
|
|
19
|
+
[_ in InstantiatedKeyAs['const']]: InstantiatedProperty;
|
|
20
|
+
} : {})> = Result;
|
|
21
|
+
type TMappedProperties<Context extends TProperties, State extends TState, Identifier extends TIdentifier, Keys extends TSchema[], As extends TSchema, Type extends TSchema, Result extends TProperties = {}> = (Keys extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TMappedProperties<Context, State, Identifier, Right, As, Type, Result & TMappedProperty<Context, State, Identifier, Left, As, Type>> : Result);
|
|
22
|
+
type TMappedAction<Context extends TProperties, State extends TState, Identifier extends TIdentifier, Key extends TSchema, As extends TSchema, Property extends TSchema, Keys extends TSchema[] = TMappedKeys<Key>, Mapped extends TProperties = TMappedProperties<Context, State, Identifier, Keys, As, Property>, Result extends TSchema = TObject<{
|
|
23
|
+
[Key in keyof Mapped]: Mapped[Key];
|
|
24
|
+
}>> = Result;
|
|
25
|
+
type TMappedImmediate<Context extends TProperties, State extends TState, Identifier extends TIdentifier, Key extends TSchema, As extends TSchema, Property extends TSchema, InstantiatedKey extends TSchema = TInstantiateType<Context, State, Key>> = TMappedAction<Context, State, Identifier, InstantiatedKey, As, Property>;
|
|
26
|
+
export type TMappedInstantiate<Context extends TProperties, State extends TState, Identifier extends TIdentifier, Key extends TSchema, As extends TSchema, Property extends TSchema> = TCanInstantiate<Context, [Key]> extends true ? TMappedImmediate<Context, State, Identifier, Key, As, Property> : TMappedDeferred<Identifier, Key, As, Property>;
|
|
27
|
+
export declare function MappedInstantiate<Context extends TProperties, State extends TState, Identifier extends TIdentifier, Key extends TSchema, As extends TSchema, Property extends TSchema>(context: Context, state: State, identifier: Identifier, key: Key, as: As, property: Property, options: TSchemaOptions): TMappedInstantiate<Context, State, Identifier, Key, As, Property>;
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
3
|
+
import { IsLiteralNumber, IsLiteralString } from '../../types/literal.mjs';
|
|
4
|
+
import { Object } from '../../types/object.mjs';
|
|
5
|
+
import { MappedKeys } from './mapped-keys.mjs';
|
|
6
|
+
import { IsTemplateLiteral } from '../../types/template-literal.mjs';
|
|
7
|
+
import { MappedDeferred } from '../../action/mapped.mjs';
|
|
8
|
+
import { TemplateLiteralDecode } from '../template-literal/decode.mjs';
|
|
9
|
+
import { InstantiateType, CanInstantiate } from '../instantiate.mjs';
|
|
10
|
+
function InstantiateKeyAs(context, state, identifier, key, as) {
|
|
11
|
+
const contextWithKey = Memory.Assign(context, { [identifier['name']]: key });
|
|
12
|
+
const instantiatedKeyAs = InstantiateType(contextWithKey, state, as);
|
|
13
|
+
const result = IsTemplateLiteral(instantiatedKeyAs) ? TemplateLiteralDecode(instantiatedKeyAs.pattern) : instantiatedKeyAs;
|
|
14
|
+
return result;
|
|
15
|
+
}
|
|
16
|
+
function InstantiateProperty(context, state, identifier, key, property) {
|
|
17
|
+
const contextWithKey = Memory.Assign(context, { [identifier['name']]: key });
|
|
18
|
+
const instantiatedProperty = InstantiateType(contextWithKey, state, property);
|
|
19
|
+
return instantiatedProperty;
|
|
20
|
+
}
|
|
21
|
+
function MappedProperty(context, state, identifier, key, as, property) {
|
|
22
|
+
const instantiatedProperty = InstantiateProperty(context, state, identifier, key, property);
|
|
23
|
+
const instantiatedKeyAs = InstantiateKeyAs(context, state, identifier, key, as);
|
|
24
|
+
return (IsLiteralString(instantiatedKeyAs) || IsLiteralNumber(instantiatedKeyAs)
|
|
25
|
+
? { [instantiatedKeyAs.const]: instantiatedProperty }
|
|
26
|
+
: {});
|
|
27
|
+
}
|
|
28
|
+
function MappedProperties(context, state, identifier, keys, as, type) {
|
|
29
|
+
return keys.reduce((result, left) => {
|
|
30
|
+
return { ...result, ...MappedProperty(context, state, identifier, left, as, type) };
|
|
31
|
+
}, {});
|
|
32
|
+
}
|
|
33
|
+
function MappedAction(context, state, identifier, key, as, type) {
|
|
34
|
+
const keys = MappedKeys(key);
|
|
35
|
+
const mapped = MappedProperties(context, state, identifier, keys, as, type);
|
|
36
|
+
const result = Object(mapped);
|
|
37
|
+
return result;
|
|
38
|
+
}
|
|
39
|
+
function MappedImmediate(context, state, identifier, key, as, property, options) {
|
|
40
|
+
const instantiatedKey = InstantiateType(context, state, key);
|
|
41
|
+
return Memory.Update(MappedAction(context, state, identifier, instantiatedKey, as, property), {}, options);
|
|
42
|
+
}
|
|
43
|
+
export function MappedInstantiate(context, state, identifier, key, as, property, options) {
|
|
44
|
+
return (CanInstantiate(context, [key])
|
|
45
|
+
? MappedImmediate(context, state, identifier, key, as, property, options)
|
|
46
|
+
: MappedDeferred(identifier, key, as, property, options));
|
|
47
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/index.mjs';
|
|
2
|
+
import { type TLiteral } from '../../types/literal.mjs';
|
|
3
|
+
import { type TEnum, type TEnumValue } from '../../types/enum.mjs';
|
|
4
|
+
import { type TTemplateLiteral } from '../../types/template-literal.mjs';
|
|
5
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
6
|
+
import { type TEnumValuesToVariants } from '../enum/index.mjs';
|
|
7
|
+
import { type TTemplateLiteralDecode } from '../template-literal/decode.mjs';
|
|
8
|
+
type TFromTemplateLiteral<Pattern extends string, Decoded extends TSchema = TTemplateLiteralDecode<Pattern>, Result extends TSchema = TFromType<Decoded>> = Result;
|
|
9
|
+
type TFromUnion<Types extends TSchema[], Result extends TSchema[] = []> = (Types extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TFromUnion<Right, [...Result, ...TFromType<Left>]> : Result);
|
|
10
|
+
type TFromType<Type extends TSchema, Result extends TSchema[] = (Type extends TEnum<infer Values extends TEnumValue[]> ? TFromUnion<TEnumValuesToVariants<Values>> : Type extends TLiteral<string | number> ? [Type] : Type extends TTemplateLiteral<infer Pattern extends string> ? TFromTemplateLiteral<Pattern> : Type extends TUnion<infer Types extends TSchema[]> ? TFromUnion<Types> : [
|
|
11
|
+
])> = Result;
|
|
12
|
+
export type TMappedKeys<Type extends TSchema, Result extends TSchema[] = TFromType<Type>> = Result;
|
|
13
|
+
export declare function MappedKeys<Type extends TSchema>(type: Type): TMappedKeys<Type>;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsLiteralNumber, IsLiteralString } from '../../types/literal.mjs';
|
|
3
|
+
import { IsEnum } from '../../types/enum.mjs';
|
|
4
|
+
import { IsTemplateLiteral } from '../../types/template-literal.mjs';
|
|
5
|
+
import { IsUnion } from '../../types/union.mjs';
|
|
6
|
+
import { EnumValuesToVariants } from '../enum/index.mjs';
|
|
7
|
+
import { TemplateLiteralDecode } from '../template-literal/decode.mjs';
|
|
8
|
+
function FromTemplateLiteral(pattern) {
|
|
9
|
+
const decoded = TemplateLiteralDecode(pattern);
|
|
10
|
+
const result = FromType(decoded);
|
|
11
|
+
return result;
|
|
12
|
+
}
|
|
13
|
+
function FromUnion(types) {
|
|
14
|
+
return types.reduce((result, left) => {
|
|
15
|
+
return [...result, ...FromType(left)];
|
|
16
|
+
}, []);
|
|
17
|
+
}
|
|
18
|
+
function FromType(type) {
|
|
19
|
+
const result = (IsEnum(type) ? FromUnion(EnumValuesToVariants(type.enum)) :
|
|
20
|
+
IsLiteralString(type) || IsLiteralNumber(type) ? [type] :
|
|
21
|
+
IsTemplateLiteral(type) ? FromTemplateLiteral(type.pattern) :
|
|
22
|
+
IsUnion(type) ? FromUnion(type.anyOf) :
|
|
23
|
+
[]);
|
|
24
|
+
return result;
|
|
25
|
+
}
|
|
26
|
+
export function MappedKeys(type) {
|
|
27
|
+
const result = FromType(type);
|
|
28
|
+
return result;
|
|
29
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
2
|
+
import { type TSchemaOptions } from '../../types/schema.mjs';
|
|
3
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
4
|
+
import { type TState } from '../instantiate.mjs';
|
|
5
|
+
import { type TCyclicCandidates } from '../cyclic/candidates.mjs';
|
|
6
|
+
import { type TInstantiateCyclic } from '../cyclic/instantiate.mjs';
|
|
7
|
+
import { type TInstantiateType } from '../instantiate.mjs';
|
|
8
|
+
type TInstantiateCyclics<Context extends TProperties, CyclicKeys extends string[], Result extends TProperties = {
|
|
9
|
+
[Key in Extract<keyof Context, CyclicKeys[number]>]: TInstantiateCyclic<Context, Key, Context[Key]>;
|
|
10
|
+
}> = Result;
|
|
11
|
+
type TInstantiateNonCyclics<Context extends TProperties, CyclicKeys extends string[], Result extends TProperties = {
|
|
12
|
+
[Key in Exclude<keyof Context, CyclicKeys[number]>]: TInstantiateType<Context, {
|
|
13
|
+
callstack: [];
|
|
14
|
+
}, Context[Key]>;
|
|
15
|
+
}> = Result;
|
|
16
|
+
type TInstantiateModule<Context extends TProperties, CyclicCandidates extends string[] = TCyclicCandidates<Context>, InstantiatedCyclics extends TProperties = TInstantiateCyclics<Context, CyclicCandidates>, InstantiatedNonCyclics extends TProperties = TInstantiateNonCyclics<Context, CyclicCandidates>, InstantiatedModule extends TProperties = InstantiatedCyclics & InstantiatedNonCyclics> = {
|
|
17
|
+
[Key in keyof InstantiatedModule]: InstantiatedModule[Key];
|
|
18
|
+
} & {};
|
|
19
|
+
export type TModuleInstantiate<Context extends TProperties, _State extends TState, Properties extends TProperties, ModuleContext extends TProperties = Memory.TAssign<Context, Properties>, InstantiatedModule extends TProperties = TInstantiateModule<ModuleContext>> = InstantiatedModule;
|
|
20
|
+
export declare function ModuleInstantiate<Context extends TProperties, State extends TState, Properties extends TProperties>(context: Context, _state: State, properties: Properties, options: TSchemaOptions): TModuleInstantiate<Context, State, Properties>;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Guard } from '../../../guard/index.mjs';
|
|
3
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
4
|
+
// ------------------------------------------------------------------
|
|
5
|
+
// Module: Instantiation Infrastructure
|
|
6
|
+
// ------------------------------------------------------------------
|
|
7
|
+
import { CyclicCandidates } from '../cyclic/candidates.mjs';
|
|
8
|
+
import { InstantiateCyclic } from '../cyclic/instantiate.mjs';
|
|
9
|
+
import { InstantiateType } from '../instantiate.mjs';
|
|
10
|
+
function InstantiateCyclics(context, cyclicKeys) {
|
|
11
|
+
const keys = Guard.Keys(context).filter(key => cyclicKeys.includes(key));
|
|
12
|
+
return keys.reduce((result, key) => {
|
|
13
|
+
return { ...result, [key]: InstantiateCyclic(context, key, context[key]) };
|
|
14
|
+
}, {});
|
|
15
|
+
}
|
|
16
|
+
function InstantiateNonCyclics(context, cyclicKeys) {
|
|
17
|
+
const keys = Guard.Keys(context).filter(key => !cyclicKeys.includes(key));
|
|
18
|
+
return keys.reduce((result, key) => {
|
|
19
|
+
return { ...result, [key]: InstantiateType(context, { callstack: [] }, context[key]) };
|
|
20
|
+
}, {});
|
|
21
|
+
}
|
|
22
|
+
function InstantiateModule(context, options) {
|
|
23
|
+
const cyclicCandidates = CyclicCandidates(context);
|
|
24
|
+
const instantiatedCyclics = InstantiateCyclics(context, cyclicCandidates);
|
|
25
|
+
const instantiatedNonCyclics = InstantiateNonCyclics(context, cyclicCandidates);
|
|
26
|
+
const instantiatedModule = { ...instantiatedCyclics, ...instantiatedNonCyclics };
|
|
27
|
+
return Memory.Update(instantiatedModule, {}, options);
|
|
28
|
+
}
|
|
29
|
+
export function ModuleInstantiate(context, _state, properties, options) {
|
|
30
|
+
const moduleContext = Memory.Assign(context, properties);
|
|
31
|
+
const instantiatedModule = InstantiateModule(moduleContext, options);
|
|
32
|
+
return instantiatedModule;
|
|
33
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './instantiate.mjs';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type TSchema, type TSchemaOptions } from '../../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
3
|
+
import { type TNull } from '../../types/null.mjs';
|
|
4
|
+
import { type TUndefined } from '../../types/undefined.mjs';
|
|
5
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
6
|
+
import { type TExcludeInstantiate } from '../exclude/instantiate.mjs';
|
|
7
|
+
import { type TNonNullableDeferred } from '../../action/non-nullable.mjs';
|
|
8
|
+
import { type TState, type TInstantiateType, type TCanInstantiate } from '../instantiate.mjs';
|
|
9
|
+
type TNonNullableAction<Type extends TSchema, Excluded extends TSchema = TUnion<[TNull, TUndefined]>> = TExcludeInstantiate<{}, {
|
|
10
|
+
callstack: [];
|
|
11
|
+
}, Type, Excluded>;
|
|
12
|
+
type TNonNullableImmediate<Context extends TProperties, State extends TState, Type extends TSchema, InstantiatedType extends TSchema = TInstantiateType<Context, State, Type>, Result extends TSchema = TNonNullableAction<InstantiatedType>> = Result;
|
|
13
|
+
export type TNonNullableInstantiate<Context extends TProperties, State extends TState, Type extends TSchema> = TCanInstantiate<Context, [Type]> extends true ? TNonNullableImmediate<Context, State, Type> : TNonNullableDeferred<Type>;
|
|
14
|
+
export declare function NonNullableInstantiate<Context extends TProperties, State extends TState, Type extends TSchema>(context: Context, state: State, type: Type, options: TSchemaOptions): TNonNullableInstantiate<Context, State, Type>;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
3
|
+
import { Null } from '../../types/null.mjs';
|
|
4
|
+
import { Undefined } from '../../types/undefined.mjs';
|
|
5
|
+
import { Union } from '../../types/union.mjs';
|
|
6
|
+
import { ExcludeInstantiate } from '../exclude/instantiate.mjs';
|
|
7
|
+
import { NonNullableDeferred } from '../../action/non-nullable.mjs';
|
|
8
|
+
import { InstantiateType, CanInstantiate } from '../instantiate.mjs';
|
|
9
|
+
function NonNullableAction(type) {
|
|
10
|
+
const excluded = Union([Null(), Undefined()]);
|
|
11
|
+
return ExcludeInstantiate({}, { callstack: [] }, type, excluded, {});
|
|
12
|
+
}
|
|
13
|
+
function NonNullableImmediate(context, state, type, options) {
|
|
14
|
+
const instantiatedType = InstantiateType(context, state, type);
|
|
15
|
+
return Memory.Update(NonNullableAction(instantiatedType), {}, options);
|
|
16
|
+
}
|
|
17
|
+
export function NonNullableInstantiate(context, state, type, options) {
|
|
18
|
+
return (CanInstantiate(context, [type])
|
|
19
|
+
? NonNullableImmediate(context, state, type, options)
|
|
20
|
+
: NonNullableDeferred(type, options));
|
|
21
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
3
|
+
import { type TObject } from '../../types/object.mjs';
|
|
4
|
+
import { type TFromType } from './from-type.mjs';
|
|
5
|
+
export type TCollapseToObject<Type extends TSchema, Properties extends TProperties = TFromType<Type>, Result extends TSchema = TObject<Properties>> = Result;
|
|
6
|
+
/**
|
|
7
|
+
* Collapses a type into a TObject schema. This is a lossy fast path used to
|
|
8
|
+
* normalize arbitrary TSchema types into a TObject structure. This function is
|
|
9
|
+
* primarily used in indexing operations where a normalized object structure
|
|
10
|
+
* is required. If the type cannot be collapsed, an empty object schema is returned.
|
|
11
|
+
*/
|
|
12
|
+
export declare function CollapseToObject<Type extends TSchema>(type: Type): TCollapseToObject<Type>;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Object } from '../../types/object.mjs';
|
|
3
|
+
import { FromType } from './from-type.mjs';
|
|
4
|
+
/**
|
|
5
|
+
* Collapses a type into a TObject schema. This is a lossy fast path used to
|
|
6
|
+
* normalize arbitrary TSchema types into a TObject structure. This function is
|
|
7
|
+
* primarily used in indexing operations where a normalized object structure
|
|
8
|
+
* is required. If the type cannot be collapsed, an empty object schema is returned.
|
|
9
|
+
*/
|
|
10
|
+
export function CollapseToObject(type) {
|
|
11
|
+
const properties = FromType(type);
|
|
12
|
+
const result = Object(properties);
|
|
13
|
+
return result;
|
|
14
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
3
|
+
import { type TFromType } from './from-type.mjs';
|
|
4
|
+
import { type TCyclicTarget } from '../cyclic/target.mjs';
|
|
5
|
+
export type TFromCyclic<Defs extends TProperties, Ref extends string, Target extends TSchema = TCyclicTarget<Defs, Ref>, Result extends TProperties = TFromType<Target>> = Result;
|
|
6
|
+
export declare function FromCyclic<Defs extends TProperties, Ref extends string>(defs: Defs, ref: Ref): TFromCyclic<Defs, Ref>;
|