typia 15.0.0 → 15.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/TypeGuardError.d.ts +20 -4
- package/lib/TypeGuardError.mjs.map +1 -1
- package/lib/basic.d.ts +787 -0
- package/lib/basic.js +104 -0
- package/lib/basic.js.map +1 -0
- package/lib/basic.mjs +86 -0
- package/lib/basic.mjs.map +1 -0
- package/lib/compare.d.ts +21 -0
- package/lib/compare.js.map +1 -1
- package/lib/compare.mjs.map +1 -1
- package/lib/functional.d.ts +42 -0
- package/lib/functional.js.map +1 -1
- package/lib/functional.mjs.map +1 -1
- package/lib/http.d.ts +124 -24
- package/lib/http.js.map +1 -1
- package/lib/http.mjs.map +1 -1
- package/lib/index.mjs +2 -1
- package/lib/index.mjs.map +1 -1
- package/lib/internal/_IProtobufWriter.d.ts +115 -0
- package/lib/internal/_ProtobufReader.d.ts +159 -1
- package/lib/internal/_ProtobufReader.js +159 -1
- package/lib/internal/_ProtobufReader.js.map +1 -1
- package/lib/internal/_ProtobufReader.mjs +159 -1
- package/lib/internal/_ProtobufReader.mjs.map +1 -1
- package/lib/internal/_ProtobufSizer.d.ts +135 -4
- package/lib/internal/_ProtobufSizer.js +134 -2
- package/lib/internal/_ProtobufSizer.js.map +1 -1
- package/lib/internal/_ProtobufSizer.mjs +133 -2
- package/lib/internal/_ProtobufSizer.mjs.map +1 -1
- package/lib/internal/_ProtobufWriter.d.ts +151 -0
- package/lib/internal/_ProtobufWriter.js +154 -1
- package/lib/internal/_ProtobufWriter.js.map +1 -1
- package/lib/internal/_ProtobufWriter.mjs +153 -2
- package/lib/internal/_ProtobufWriter.mjs.map +1 -1
- package/lib/internal/_accessExpressionAsString.d.ts +11 -0
- package/lib/internal/_accessExpressionAsString.js +11 -0
- package/lib/internal/_accessExpressionAsString.js.map +1 -1
- package/lib/internal/_accessExpressionAsString.mjs +11 -0
- package/lib/internal/_accessExpressionAsString.mjs.map +1 -1
- package/lib/internal/_assertGuard.d.ts +12 -0
- package/lib/internal/_assertGuard.js +12 -0
- package/lib/internal/_assertGuard.js.map +1 -1
- package/lib/internal/_assertGuard.mjs +12 -0
- package/lib/internal/_assertGuard.mjs.map +1 -1
- package/lib/internal/_coerceLlmArguments.d.ts +10 -0
- package/lib/internal/_coerceLlmArguments.js +10 -0
- package/lib/internal/_coerceLlmArguments.js.map +1 -1
- package/lib/internal/_coerceLlmArguments.mjs +10 -0
- package/lib/internal/_coerceLlmArguments.mjs.map +1 -1
- package/lib/internal/_createLlmEvaluation.js +9 -46
- package/lib/internal/_createLlmEvaluation.js.map +1 -1
- package/lib/internal/_createLlmEvaluation.mjs +7 -35
- package/lib/internal/_createLlmEvaluation.mjs.map +1 -1
- package/lib/internal/_createStandardSchema.d.ts +13 -0
- package/lib/internal/_createStandardSchema.js +13 -0
- package/lib/internal/_createStandardSchema.js.map +1 -1
- package/lib/internal/_createStandardSchema.mjs +13 -0
- package/lib/internal/_createStandardSchema.mjs.map +1 -1
- package/lib/internal/_decimal.d.ts +75 -0
- package/lib/internal/_decimal.js +55 -0
- package/lib/internal/_decimal.js.map +1 -1
- package/lib/internal/_decimal.mjs +55 -0
- package/lib/internal/_decimal.mjs.map +1 -1
- package/lib/internal/_functionalTypeGuardErrorFactory.d.ts +8 -0
- package/lib/internal/_functionalTypeGuardErrorFactory.js +8 -0
- package/lib/internal/_functionalTypeGuardErrorFactory.js.map +1 -1
- package/lib/internal/_functionalTypeGuardErrorFactory.mjs +8 -0
- package/lib/internal/_functionalTypeGuardErrorFactory.mjs.map +1 -1
- package/lib/internal/_httpFormDataReadArray.d.ts +9 -0
- package/lib/internal/_httpFormDataReadArray.js +9 -0
- package/lib/internal/_httpFormDataReadArray.js.map +1 -1
- package/lib/internal/_httpFormDataReadArray.mjs +9 -0
- package/lib/internal/_httpFormDataReadArray.mjs.map +1 -1
- package/lib/internal/_httpFormDataReadBigint.d.ts +12 -0
- package/lib/internal/_httpFormDataReadBigint.js +19 -5
- package/lib/internal/_httpFormDataReadBigint.js.map +1 -1
- package/lib/internal/_httpFormDataReadBigint.mjs +13 -1
- package/lib/internal/_httpFormDataReadBigint.mjs.map +1 -1
- package/lib/internal/_httpFormDataReadBlob.d.ts +11 -0
- package/lib/internal/_httpFormDataReadBlob.js +11 -0
- package/lib/internal/_httpFormDataReadBlob.js.map +1 -1
- package/lib/internal/_httpFormDataReadBlob.mjs +11 -0
- package/lib/internal/_httpFormDataReadBlob.mjs.map +1 -1
- package/lib/internal/_httpFormDataReadBoolean.d.ts +11 -0
- package/lib/internal/_httpFormDataReadBoolean.js +23 -10
- package/lib/internal/_httpFormDataReadBoolean.js.map +1 -1
- package/lib/internal/_httpFormDataReadBoolean.mjs +12 -1
- package/lib/internal/_httpFormDataReadBoolean.mjs.map +1 -1
- package/lib/internal/_httpFormDataReadFile.d.ts +11 -0
- package/lib/internal/_httpFormDataReadFile.js +11 -0
- package/lib/internal/_httpFormDataReadFile.js.map +1 -1
- package/lib/internal/_httpFormDataReadFile.mjs +11 -0
- package/lib/internal/_httpFormDataReadFile.mjs.map +1 -1
- package/lib/internal/_httpFormDataReadNumber.d.ts +11 -0
- package/lib/internal/_httpFormDataReadNumber.js +18 -5
- package/lib/internal/_httpFormDataReadNumber.js.map +1 -1
- package/lib/internal/_httpFormDataReadNumber.mjs +12 -1
- package/lib/internal/_httpFormDataReadNumber.mjs.map +1 -1
- package/lib/internal/_httpFormDataReadString.d.ts +14 -1
- package/lib/internal/_httpFormDataReadString.js +15 -2
- package/lib/internal/_httpFormDataReadString.js.map +1 -1
- package/lib/internal/_httpFormDataReadString.mjs +14 -1
- package/lib/internal/_httpFormDataReadString.mjs.map +1 -1
- package/lib/internal/_httpHeaderReadBigint.d.ts +11 -0
- package/lib/internal/_httpHeaderReadBigint.js +16 -1
- package/lib/internal/_httpHeaderReadBigint.js.map +1 -1
- package/lib/internal/_httpHeaderReadBigint.mjs +13 -1
- package/lib/internal/_httpHeaderReadBigint.mjs.map +1 -1
- package/lib/internal/_httpHeaderReadBoolean.d.ts +12 -0
- package/lib/internal/_httpHeaderReadBoolean.js +12 -0
- package/lib/internal/_httpHeaderReadBoolean.js.map +1 -1
- package/lib/internal/_httpHeaderReadBoolean.mjs +12 -0
- package/lib/internal/_httpHeaderReadBoolean.mjs.map +1 -1
- package/lib/internal/_httpHeaderReadNumber.d.ts +11 -0
- package/lib/internal/_httpHeaderReadNumber.js +16 -1
- package/lib/internal/_httpHeaderReadNumber.js.map +1 -1
- package/lib/internal/_httpHeaderReadNumber.mjs +13 -1
- package/lib/internal/_httpHeaderReadNumber.mjs.map +1 -1
- package/lib/internal/_httpParameterReadBigint.d.ts +11 -0
- package/lib/internal/_httpParameterReadBigint.js +15 -0
- package/lib/internal/_httpParameterReadBigint.js.map +1 -1
- package/lib/internal/_httpParameterReadBigint.mjs +12 -0
- package/lib/internal/_httpParameterReadBigint.mjs.map +1 -1
- package/lib/internal/_httpParameterReadBoolean.d.ts +11 -0
- package/lib/internal/_httpParameterReadBoolean.js +11 -0
- package/lib/internal/_httpParameterReadBoolean.js.map +1 -1
- package/lib/internal/_httpParameterReadBoolean.mjs +11 -0
- package/lib/internal/_httpParameterReadBoolean.mjs.map +1 -1
- package/lib/internal/_httpParameterReadNumber.d.ts +11 -0
- package/lib/internal/_httpParameterReadNumber.js +15 -0
- package/lib/internal/_httpParameterReadNumber.js.map +1 -1
- package/lib/internal/_httpParameterReadNumber.mjs +12 -0
- package/lib/internal/_httpParameterReadNumber.mjs.map +1 -1
- package/lib/internal/_httpParameterReadString.d.ts +14 -1
- package/lib/internal/_httpParameterReadString.js +14 -1
- package/lib/internal/_httpParameterReadString.js.map +1 -1
- package/lib/internal/_httpParameterReadString.mjs +14 -1
- package/lib/internal/_httpParameterReadString.mjs.map +1 -1
- package/lib/internal/_httpQueryParseURLSearchParams.d.ts +14 -0
- package/lib/internal/_httpQueryParseURLSearchParams.js +14 -0
- package/lib/internal/_httpQueryParseURLSearchParams.js.map +1 -1
- package/lib/internal/_httpQueryParseURLSearchParams.mjs +14 -0
- package/lib/internal/_httpQueryParseURLSearchParams.mjs.map +1 -1
- package/lib/internal/_httpQueryReadArray.d.ts +9 -0
- package/lib/internal/_httpQueryReadArray.js +9 -0
- package/lib/internal/_httpQueryReadArray.js.map +1 -1
- package/lib/internal/_httpQueryReadArray.mjs +9 -0
- package/lib/internal/_httpQueryReadArray.mjs.map +1 -1
- package/lib/internal/_httpQueryReadBigint.d.ts +11 -0
- package/lib/internal/_httpQueryReadBigint.js +19 -1
- package/lib/internal/_httpQueryReadBigint.js.map +1 -1
- package/lib/internal/_httpQueryReadBigint.mjs +12 -1
- package/lib/internal/_httpQueryReadBigint.mjs.map +1 -1
- package/lib/internal/_httpQueryReadBoolean.d.ts +12 -0
- package/lib/internal/_httpQueryReadBoolean.js +16 -1
- package/lib/internal/_httpQueryReadBoolean.js.map +1 -1
- package/lib/internal/_httpQueryReadBoolean.mjs +13 -1
- package/lib/internal/_httpQueryReadBoolean.mjs.map +1 -1
- package/lib/internal/_httpQueryReadNumber.d.ts +11 -0
- package/lib/internal/_httpQueryReadNumber.js +19 -1
- package/lib/internal/_httpQueryReadNumber.js.map +1 -1
- package/lib/internal/_httpQueryReadNumber.mjs +12 -1
- package/lib/internal/_httpQueryReadNumber.mjs.map +1 -1
- package/lib/internal/_httpQueryReadString.d.ts +14 -1
- package/lib/internal/_httpQueryReadString.js +14 -1
- package/lib/internal/_httpQueryReadString.js.map +1 -1
- package/lib/internal/_httpQueryReadString.mjs +14 -1
- package/lib/internal/_httpQueryReadString.mjs.map +1 -1
- package/lib/internal/_isBetween.d.ts +8 -0
- package/lib/internal/_isBetween.js +8 -0
- package/lib/internal/_isBetween.js.map +1 -1
- package/lib/internal/_isBetween.mjs +8 -0
- package/lib/internal/_isBetween.mjs.map +1 -1
- package/lib/internal/_isBigintString.d.ts +11 -0
- package/lib/internal/_isBigintString.js +11 -0
- package/lib/internal/_isBigintString.js.map +1 -1
- package/lib/internal/_isBigintString.mjs +11 -0
- package/lib/internal/_isBigintString.mjs.map +1 -1
- package/lib/internal/_isFormatByte.d.ts +12 -0
- package/lib/internal/_isFormatByte.js +12 -0
- package/lib/internal/_isFormatByte.js.map +1 -1
- package/lib/internal/_isFormatByte.mjs +12 -0
- package/lib/internal/_isFormatByte.mjs.map +1 -1
- package/lib/internal/_isFormatDate.d.ts +11 -0
- package/lib/internal/_isFormatDate.js +11 -0
- package/lib/internal/_isFormatDate.js.map +1 -1
- package/lib/internal/_isFormatDate.mjs +11 -0
- package/lib/internal/_isFormatDate.mjs.map +1 -1
- package/lib/internal/_isFormatDateTime.d.ts +13 -0
- package/lib/internal/_isFormatDateTime.js +13 -0
- package/lib/internal/_isFormatDateTime.js.map +1 -1
- package/lib/internal/_isFormatDateTime.mjs +13 -0
- package/lib/internal/_isFormatDateTime.mjs.map +1 -1
- package/lib/internal/_isFormatDuration.d.ts +13 -0
- package/lib/internal/_isFormatDuration.js +13 -0
- package/lib/internal/_isFormatDuration.js.map +1 -1
- package/lib/internal/_isFormatDuration.mjs +13 -0
- package/lib/internal/_isFormatDuration.mjs.map +1 -1
- package/lib/internal/_isFormatEmail.d.ts +13 -0
- package/lib/internal/_isFormatEmail.js +13 -0
- package/lib/internal/_isFormatEmail.js.map +1 -1
- package/lib/internal/_isFormatEmail.mjs +13 -0
- package/lib/internal/_isFormatEmail.mjs.map +1 -1
- package/lib/internal/_isFormatHostname.d.ts +12 -0
- package/lib/internal/_isFormatHostname.js +12 -0
- package/lib/internal/_isFormatHostname.js.map +1 -1
- package/lib/internal/_isFormatHostname.mjs +12 -0
- package/lib/internal/_isFormatHostname.mjs.map +1 -1
- package/lib/internal/_isFormatIdnEmail.d.ts +14 -0
- package/lib/internal/_isFormatIdnEmail.js +14 -0
- package/lib/internal/_isFormatIdnEmail.js.map +1 -1
- package/lib/internal/_isFormatIdnEmail.mjs +14 -0
- package/lib/internal/_isFormatIdnEmail.mjs.map +1 -1
- package/lib/internal/_isFormatIdnHostname.d.ts +14 -0
- package/lib/internal/_isFormatIdnHostname.js +14 -0
- package/lib/internal/_isFormatIdnHostname.js.map +1 -1
- package/lib/internal/_isFormatIdnHostname.mjs +14 -0
- package/lib/internal/_isFormatIdnHostname.mjs.map +1 -1
- package/lib/internal/_isFormatIpv4.d.ts +11 -0
- package/lib/internal/_isFormatIpv4.js +11 -0
- package/lib/internal/_isFormatIpv4.js.map +1 -1
- package/lib/internal/_isFormatIpv4.mjs +11 -0
- package/lib/internal/_isFormatIpv4.mjs.map +1 -1
- package/lib/internal/_isFormatIpv6.d.ts +12 -0
- package/lib/internal/_isFormatIpv6.js +12 -0
- package/lib/internal/_isFormatIpv6.js.map +1 -1
- package/lib/internal/_isFormatIpv6.mjs +12 -0
- package/lib/internal/_isFormatIpv6.mjs.map +1 -1
- package/lib/internal/_isFormatIri.d.ts +11 -0
- package/lib/internal/_isFormatIri.js +11 -0
- package/lib/internal/_isFormatIri.js.map +1 -1
- package/lib/internal/_isFormatIri.mjs +11 -0
- package/lib/internal/_isFormatIri.mjs.map +1 -1
- package/lib/internal/_isFormatIriReference.d.ts +13 -0
- package/lib/internal/_isFormatIriReference.js +13 -0
- package/lib/internal/_isFormatIriReference.js.map +1 -1
- package/lib/internal/_isFormatIriReference.mjs +13 -0
- package/lib/internal/_isFormatIriReference.mjs.map +1 -1
- package/lib/internal/_isFormatJsonPointer.d.ts +11 -0
- package/lib/internal/_isFormatJsonPointer.js +11 -0
- package/lib/internal/_isFormatJsonPointer.js.map +1 -1
- package/lib/internal/_isFormatJsonPointer.mjs +11 -0
- package/lib/internal/_isFormatJsonPointer.mjs.map +1 -1
- package/lib/internal/_isFormatPassword.d.ts +11 -0
- package/lib/internal/_isFormatPassword.js +11 -0
- package/lib/internal/_isFormatPassword.js.map +1 -1
- package/lib/internal/_isFormatPassword.mjs +11 -0
- package/lib/internal/_isFormatPassword.mjs.map +1 -1
- package/lib/internal/_isFormatRegex.d.ts +11 -0
- package/lib/internal/_isFormatRegex.js +11 -0
- package/lib/internal/_isFormatRegex.js.map +1 -1
- package/lib/internal/_isFormatRegex.mjs +11 -0
- package/lib/internal/_isFormatRegex.mjs.map +1 -1
- package/lib/internal/_isFormatRelativeJsonPointer.d.ts +11 -0
- package/lib/internal/_isFormatRelativeJsonPointer.js +11 -0
- package/lib/internal/_isFormatRelativeJsonPointer.js.map +1 -1
- package/lib/internal/_isFormatRelativeJsonPointer.mjs +11 -0
- package/lib/internal/_isFormatRelativeJsonPointer.mjs.map +1 -1
- package/lib/internal/_isFormatTime.d.ts +12 -0
- package/lib/internal/_isFormatTime.js +12 -0
- package/lib/internal/_isFormatTime.js.map +1 -1
- package/lib/internal/_isFormatTime.mjs +12 -0
- package/lib/internal/_isFormatTime.mjs.map +1 -1
- package/lib/internal/_isFormatUri.d.ts +15 -0
- package/lib/internal/_isFormatUri.js +15 -0
- package/lib/internal/_isFormatUri.js.map +1 -1
- package/lib/internal/_isFormatUri.mjs +15 -0
- package/lib/internal/_isFormatUri.mjs.map +1 -1
- package/lib/internal/_isFormatUriReference.d.ts +11 -0
- package/lib/internal/_isFormatUriReference.js +11 -0
- package/lib/internal/_isFormatUriReference.js.map +1 -1
- package/lib/internal/_isFormatUriReference.mjs +11 -0
- package/lib/internal/_isFormatUriReference.mjs.map +1 -1
- package/lib/internal/_isFormatUriTemplate.d.ts +13 -0
- package/lib/internal/_isFormatUriTemplate.js +14 -1
- package/lib/internal/_isFormatUriTemplate.js.map +1 -1
- package/lib/internal/_isFormatUriTemplate.mjs +14 -1
- package/lib/internal/_isFormatUriTemplate.mjs.map +1 -1
- package/lib/internal/_isFormatUrl.d.ts +15 -0
- package/lib/internal/_isFormatUrl.js +15 -0
- package/lib/internal/_isFormatUrl.js.map +1 -1
- package/lib/internal/_isFormatUrl.mjs +15 -0
- package/lib/internal/_isFormatUrl.mjs.map +1 -1
- package/lib/internal/_isFormatUuid.d.ts +11 -0
- package/lib/internal/_isFormatUuid.js +11 -0
- package/lib/internal/_isFormatUuid.js.map +1 -1
- package/lib/internal/_isFormatUuid.mjs +11 -0
- package/lib/internal/_isFormatUuid.mjs.map +1 -1
- package/lib/internal/_isMultipleOf.d.ts +11 -0
- package/lib/internal/_isMultipleOf.js +11 -0
- package/lib/internal/_isMultipleOf.js.map +1 -1
- package/lib/internal/_isMultipleOf.mjs +11 -0
- package/lib/internal/_isMultipleOf.mjs.map +1 -1
- package/lib/internal/_isTypeFloat.d.ts +9 -0
- package/lib/internal/_isTypeFloat.js +9 -0
- package/lib/internal/_isTypeFloat.js.map +1 -1
- package/lib/internal/_isTypeFloat.mjs +9 -0
- package/lib/internal/_isTypeFloat.mjs.map +1 -1
- package/lib/internal/_isTypeInt16.d.ts +8 -0
- package/lib/internal/_isTypeInt16.js +8 -0
- package/lib/internal/_isTypeInt16.js.map +1 -1
- package/lib/internal/_isTypeInt16.mjs +8 -0
- package/lib/internal/_isTypeInt16.mjs.map +1 -1
- package/lib/internal/_isTypeInt32.d.ts +8 -0
- package/lib/internal/_isTypeInt32.js +8 -0
- package/lib/internal/_isTypeInt32.js.map +1 -1
- package/lib/internal/_isTypeInt32.mjs +8 -0
- package/lib/internal/_isTypeInt32.mjs.map +1 -1
- package/lib/internal/_isTypeInt64.d.ts +11 -0
- package/lib/internal/_isTypeInt64.js +11 -0
- package/lib/internal/_isTypeInt64.js.map +1 -1
- package/lib/internal/_isTypeInt64.mjs +11 -0
- package/lib/internal/_isTypeInt64.mjs.map +1 -1
- package/lib/internal/_isTypeInt64Bigint.d.ts +8 -0
- package/lib/internal/_isTypeInt64Bigint.js +8 -0
- package/lib/internal/_isTypeInt64Bigint.js.map +1 -1
- package/lib/internal/_isTypeInt64Bigint.mjs +8 -0
- package/lib/internal/_isTypeInt64Bigint.mjs.map +1 -1
- package/lib/internal/_isTypeInt8.d.ts +8 -0
- package/lib/internal/_isTypeInt8.js +8 -0
- package/lib/internal/_isTypeInt8.js.map +1 -1
- package/lib/internal/_isTypeInt8.mjs +8 -0
- package/lib/internal/_isTypeInt8.mjs.map +1 -1
- package/lib/internal/_isTypeUint16.d.ts +8 -0
- package/lib/internal/_isTypeUint16.js +8 -0
- package/lib/internal/_isTypeUint16.js.map +1 -1
- package/lib/internal/_isTypeUint16.mjs +8 -0
- package/lib/internal/_isTypeUint16.mjs.map +1 -1
- package/lib/internal/_isTypeUint32.d.ts +8 -0
- package/lib/internal/_isTypeUint32.js +8 -0
- package/lib/internal/_isTypeUint32.js.map +1 -1
- package/lib/internal/_isTypeUint32.mjs +8 -0
- package/lib/internal/_isTypeUint32.mjs.map +1 -1
- package/lib/internal/_isTypeUint64.d.ts +11 -0
- package/lib/internal/_isTypeUint64.js +11 -0
- package/lib/internal/_isTypeUint64.js.map +1 -1
- package/lib/internal/_isTypeUint64.mjs +11 -0
- package/lib/internal/_isTypeUint64.mjs.map +1 -1
- package/lib/internal/_isTypeUint64Bigint.d.ts +8 -0
- package/lib/internal/_isTypeUint64Bigint.js +8 -0
- package/lib/internal/_isTypeUint64Bigint.js.map +1 -1
- package/lib/internal/_isTypeUint64Bigint.mjs +8 -0
- package/lib/internal/_isTypeUint64Bigint.mjs.map +1 -1
- package/lib/internal/_isTypeUint8.d.ts +8 -0
- package/lib/internal/_isTypeUint8.js +8 -0
- package/lib/internal/_isTypeUint8.js.map +1 -1
- package/lib/internal/_isTypeUint8.mjs +8 -0
- package/lib/internal/_isTypeUint8.mjs.map +1 -1
- package/lib/internal/_isUniqueItems.d.ts +17 -0
- package/lib/internal/_isUniqueItems.js +58 -0
- package/lib/internal/_isUniqueItems.js.map +1 -1
- package/lib/internal/_isUniqueItems.mjs +41 -0
- package/lib/internal/_isUniqueItems.mjs.map +1 -1
- package/lib/internal/_jsonStringifyArray.js +2 -0
- package/lib/internal/_jsonStringifyArray.js.map +1 -1
- package/lib/internal/_jsonStringifyArray.mjs +2 -0
- package/lib/internal/_jsonStringifyArray.mjs.map +1 -1
- package/lib/internal/_jsonStringifyElement.js +2 -0
- package/lib/internal/_jsonStringifyElement.js.map +1 -1
- package/lib/internal/_jsonStringifyElement.mjs +2 -0
- package/lib/internal/_jsonStringifyElement.mjs.map +1 -1
- package/lib/internal/_jsonStringifyNumber.d.ts +9 -0
- package/lib/internal/_jsonStringifyNumber.js +9 -0
- package/lib/internal/_jsonStringifyNumber.js.map +1 -1
- package/lib/internal/_jsonStringifyNumber.mjs +9 -0
- package/lib/internal/_jsonStringifyNumber.mjs.map +1 -1
- package/lib/internal/_jsonStringifyProperty.js +3 -1
- package/lib/internal/_jsonStringifyProperty.js.map +1 -1
- package/lib/internal/_jsonStringifyProperty.mjs +3 -1
- package/lib/internal/_jsonStringifyProperty.mjs.map +1 -1
- package/lib/internal/_jsonStringifyRest.d.ts +11 -0
- package/lib/internal/_jsonStringifyRest.js +11 -0
- package/lib/internal/_jsonStringifyRest.js.map +1 -1
- package/lib/internal/_jsonStringifyRest.mjs +11 -0
- package/lib/internal/_jsonStringifyRest.mjs.map +1 -1
- package/lib/internal/_jsonStringifyString.d.ts +13 -0
- package/lib/internal/_jsonStringifyString.js +13 -0
- package/lib/internal/_jsonStringifyString.js.map +1 -1
- package/lib/internal/_jsonStringifyString.mjs +13 -0
- package/lib/internal/_jsonStringifyString.mjs.map +1 -1
- package/lib/internal/_jsonStringifyTail.d.ts +8 -0
- package/lib/internal/_jsonStringifyTail.js +8 -0
- package/lib/internal/_jsonStringifyTail.js.map +1 -1
- package/lib/internal/_jsonStringifyTail.mjs +8 -0
- package/lib/internal/_jsonStringifyTail.mjs.map +1 -1
- package/lib/internal/_llmApplicationFinalize.d.ts +13 -0
- package/lib/internal/_llmApplicationFinalize.js +13 -0
- package/lib/internal/_llmApplicationFinalize.js.map +1 -1
- package/lib/internal/_llmApplicationFinalize.mjs +13 -0
- package/lib/internal/_llmApplicationFinalize.mjs.map +1 -1
- package/lib/internal/_notationAny.d.ts +14 -0
- package/lib/internal/_notationAny.js +14 -0
- package/lib/internal/_notationAny.js.map +1 -1
- package/lib/internal/_notationAny.mjs +14 -0
- package/lib/internal/_notationAny.mjs.map +1 -1
- package/lib/internal/_notationAssign.d.ts +12 -0
- package/lib/internal/_notationAssign.js +12 -0
- package/lib/internal/_notationAssign.js.map +1 -1
- package/lib/internal/_notationAssign.mjs +12 -0
- package/lib/internal/_notationAssign.mjs.map +1 -1
- package/lib/internal/_notationKebab.d.ts +9 -0
- package/lib/internal/_notationKebab.js +9 -0
- package/lib/internal/_notationKebab.js.map +1 -1
- package/lib/internal/_notationKebab.mjs +9 -0
- package/lib/internal/_notationKebab.mjs.map +1 -1
- package/lib/internal/_notationKeyCollision.d.ts +8 -0
- package/lib/internal/_notationKeyCollision.js +8 -0
- package/lib/internal/_notationKeyCollision.js.map +1 -1
- package/lib/internal/_notationKeyCollision.mjs +8 -0
- package/lib/internal/_notationKeyCollision.mjs.map +1 -1
- package/lib/internal/_notationSnake.d.ts +12 -0
- package/lib/internal/_notationSnake.js +12 -0
- package/lib/internal/_notationSnake.js.map +1 -1
- package/lib/internal/_notationSnake.mjs +12 -0
- package/lib/internal/_notationSnake.mjs.map +1 -1
- package/lib/internal/_parseLlmArguments.d.ts +12 -0
- package/lib/internal/_parseLlmArguments.js +12 -0
- package/lib/internal/_parseLlmArguments.js.map +1 -1
- package/lib/internal/_parseLlmArguments.mjs +12 -0
- package/lib/internal/_parseLlmArguments.mjs.map +1 -1
- package/lib/internal/_plainCloneAny.d.ts +15 -0
- package/lib/internal/_plainCloneAny.js +15 -0
- package/lib/internal/_plainCloneAny.js.map +1 -1
- package/lib/internal/_plainCloneAny.mjs +15 -0
- package/lib/internal/_plainCloneAny.mjs.map +1 -1
- package/lib/internal/_randomArray.d.ts +19 -1
- package/lib/internal/_randomArray.js +32 -14
- package/lib/internal/_randomArray.js.map +1 -1
- package/lib/internal/_randomArray.mjs +24 -6
- package/lib/internal/_randomArray.mjs.map +1 -1
- package/lib/internal/_randomBigint.d.ts +17 -1
- package/lib/internal/_randomBigint.js +95 -2
- package/lib/internal/_randomBigint.js.map +1 -1
- package/lib/internal/_randomBigint.mjs +75 -2
- package/lib/internal/_randomBigint.mjs.map +1 -1
- package/lib/internal/_randomBoolean.d.ts +8 -0
- package/lib/internal/_randomBoolean.js +8 -0
- package/lib/internal/_randomBoolean.js.map +1 -1
- package/lib/internal/_randomBoolean.mjs +8 -0
- package/lib/internal/_randomBoolean.mjs.map +1 -1
- package/lib/internal/_randomFormatByte.d.ts +8 -0
- package/lib/internal/_randomFormatByte.js +8 -0
- package/lib/internal/_randomFormatByte.js.map +1 -1
- package/lib/internal/_randomFormatByte.mjs +8 -0
- package/lib/internal/_randomFormatByte.mjs.map +1 -1
- package/lib/internal/_randomFormatDate.d.ts +10 -0
- package/lib/internal/_randomFormatDate.js +10 -0
- package/lib/internal/_randomFormatDate.js.map +1 -1
- package/lib/internal/_randomFormatDate.mjs +10 -0
- package/lib/internal/_randomFormatDate.mjs.map +1 -1
- package/lib/internal/_randomFormatDatetime.d.ts +10 -0
- package/lib/internal/_randomFormatDatetime.js +10 -0
- package/lib/internal/_randomFormatDatetime.js.map +1 -1
- package/lib/internal/_randomFormatDatetime.mjs +10 -0
- package/lib/internal/_randomFormatDatetime.mjs.map +1 -1
- package/lib/internal/_randomFormatDuration.d.ts +8 -0
- package/lib/internal/_randomFormatDuration.js +8 -0
- package/lib/internal/_randomFormatDuration.js.map +1 -1
- package/lib/internal/_randomFormatDuration.mjs +8 -0
- package/lib/internal/_randomFormatDuration.mjs.map +1 -1
- package/lib/internal/_randomFormatEmail.d.ts +8 -0
- package/lib/internal/_randomFormatEmail.js +8 -0
- package/lib/internal/_randomFormatEmail.js.map +1 -1
- package/lib/internal/_randomFormatEmail.mjs +8 -0
- package/lib/internal/_randomFormatEmail.mjs.map +1 -1
- package/lib/internal/_randomFormatHostname.d.ts +15 -1
- package/lib/internal/_randomFormatHostname.js +15 -1
- package/lib/internal/_randomFormatHostname.js.map +1 -1
- package/lib/internal/_randomFormatHostname.mjs +15 -1
- package/lib/internal/_randomFormatHostname.mjs.map +1 -1
- package/lib/internal/_randomFormatIdnEmail.d.ts +13 -0
- package/lib/internal/_randomFormatIdnEmail.js +13 -0
- package/lib/internal/_randomFormatIdnEmail.js.map +1 -1
- package/lib/internal/_randomFormatIdnEmail.mjs +13 -0
- package/lib/internal/_randomFormatIdnEmail.mjs.map +1 -1
- package/lib/internal/_randomFormatIdnHostname.d.ts +12 -0
- package/lib/internal/_randomFormatIdnHostname.js +12 -0
- package/lib/internal/_randomFormatIdnHostname.js.map +1 -1
- package/lib/internal/_randomFormatIdnHostname.mjs +12 -0
- package/lib/internal/_randomFormatIdnHostname.mjs.map +1 -1
- package/lib/internal/_randomFormatIpv4.d.ts +8 -0
- package/lib/internal/_randomFormatIpv4.js +8 -0
- package/lib/internal/_randomFormatIpv4.js.map +1 -1
- package/lib/internal/_randomFormatIpv4.mjs +8 -0
- package/lib/internal/_randomFormatIpv4.mjs.map +1 -1
- package/lib/internal/_randomFormatIpv6.d.ts +8 -0
- package/lib/internal/_randomFormatIpv6.js +8 -0
- package/lib/internal/_randomFormatIpv6.js.map +1 -1
- package/lib/internal/_randomFormatIpv6.mjs +8 -0
- package/lib/internal/_randomFormatIpv6.mjs.map +1 -1
- package/lib/internal/_randomFormatIri.d.ts +11 -0
- package/lib/internal/_randomFormatIri.js +11 -0
- package/lib/internal/_randomFormatIri.js.map +1 -1
- package/lib/internal/_randomFormatIri.mjs +11 -0
- package/lib/internal/_randomFormatIri.mjs.map +1 -1
- package/lib/internal/_randomFormatIriReference.d.ts +12 -0
- package/lib/internal/_randomFormatIriReference.js +12 -0
- package/lib/internal/_randomFormatIriReference.js.map +1 -1
- package/lib/internal/_randomFormatIriReference.mjs +12 -0
- package/lib/internal/_randomFormatIriReference.mjs.map +1 -1
- package/lib/internal/_randomFormatJsonPointer.d.ts +12 -0
- package/lib/internal/_randomFormatJsonPointer.js +12 -0
- package/lib/internal/_randomFormatJsonPointer.js.map +1 -1
- package/lib/internal/_randomFormatJsonPointer.mjs +12 -0
- package/lib/internal/_randomFormatJsonPointer.mjs.map +1 -1
- package/lib/internal/_randomFormatPassword.d.ts +13 -0
- package/lib/internal/_randomFormatPassword.js +13 -0
- package/lib/internal/_randomFormatPassword.js.map +1 -1
- package/lib/internal/_randomFormatPassword.mjs +13 -0
- package/lib/internal/_randomFormatPassword.mjs.map +1 -1
- package/lib/internal/_randomFormatRegex.d.ts +8 -0
- package/lib/internal/_randomFormatRegex.js +8 -0
- package/lib/internal/_randomFormatRegex.js.map +1 -1
- package/lib/internal/_randomFormatRegex.mjs +8 -0
- package/lib/internal/_randomFormatRegex.mjs.map +1 -1
- package/lib/internal/_randomFormatRelativeJsonPointer.d.ts +8 -0
- package/lib/internal/_randomFormatRelativeJsonPointer.js +8 -0
- package/lib/internal/_randomFormatRelativeJsonPointer.js.map +1 -1
- package/lib/internal/_randomFormatRelativeJsonPointer.mjs +8 -0
- package/lib/internal/_randomFormatRelativeJsonPointer.mjs.map +1 -1
- package/lib/internal/_randomFormatTime.d.ts +13 -0
- package/lib/internal/_randomFormatTime.js +13 -0
- package/lib/internal/_randomFormatTime.js.map +1 -1
- package/lib/internal/_randomFormatTime.mjs +13 -0
- package/lib/internal/_randomFormatTime.mjs.map +1 -1
- package/lib/internal/_randomFormatUri.d.ts +12 -0
- package/lib/internal/_randomFormatUri.js +12 -0
- package/lib/internal/_randomFormatUri.js.map +1 -1
- package/lib/internal/_randomFormatUri.mjs +12 -0
- package/lib/internal/_randomFormatUri.mjs.map +1 -1
- package/lib/internal/_randomFormatUriReference.d.ts +12 -0
- package/lib/internal/_randomFormatUriReference.js +12 -0
- package/lib/internal/_randomFormatUriReference.js.map +1 -1
- package/lib/internal/_randomFormatUriReference.mjs +12 -0
- package/lib/internal/_randomFormatUriReference.mjs.map +1 -1
- package/lib/internal/_randomFormatUriTemplate.d.ts +12 -0
- package/lib/internal/_randomFormatUriTemplate.js +12 -0
- package/lib/internal/_randomFormatUriTemplate.js.map +1 -1
- package/lib/internal/_randomFormatUriTemplate.mjs +12 -0
- package/lib/internal/_randomFormatUriTemplate.mjs.map +1 -1
- package/lib/internal/_randomFormatUrl.d.ts +12 -0
- package/lib/internal/_randomFormatUrl.js +12 -0
- package/lib/internal/_randomFormatUrl.js.map +1 -1
- package/lib/internal/_randomFormatUrl.mjs +12 -0
- package/lib/internal/_randomFormatUrl.mjs.map +1 -1
- package/lib/internal/_randomFormatUuid.d.ts +13 -0
- package/lib/internal/_randomFormatUuid.js +13 -0
- package/lib/internal/_randomFormatUuid.js.map +1 -1
- package/lib/internal/_randomFormatUuid.mjs +13 -0
- package/lib/internal/_randomFormatUuid.mjs.map +1 -1
- package/lib/internal/_randomInteger.d.ts +17 -1
- package/lib/internal/_randomInteger.js +74 -23
- package/lib/internal/_randomInteger.js.map +1 -1
- package/lib/internal/_randomInteger.mjs +62 -23
- package/lib/internal/_randomInteger.mjs.map +1 -1
- package/lib/internal/_randomMultiple.d.ts +18 -1
- package/lib/internal/_randomMultiple.js +30 -13
- package/lib/internal/_randomMultiple.js.map +1 -1
- package/lib/internal/_randomMultiple.mjs +30 -13
- package/lib/internal/_randomMultiple.mjs.map +1 -1
- package/lib/internal/_randomNumber.d.ts +17 -1
- package/lib/internal/_randomNumber.js +67 -18
- package/lib/internal/_randomNumber.js.map +1 -1
- package/lib/internal/_randomNumber.mjs +59 -22
- package/lib/internal/_randomNumber.mjs.map +1 -1
- package/lib/internal/_randomPattern.d.ts +12 -0
- package/lib/internal/_randomPattern.js +12 -0
- package/lib/internal/_randomPattern.js.map +1 -1
- package/lib/internal/_randomPattern.mjs +12 -0
- package/lib/internal/_randomPattern.mjs.map +1 -1
- package/lib/internal/_randomPick.d.ts +13 -1
- package/lib/internal/_randomPick.js +15 -3
- package/lib/internal/_randomPick.js.map +1 -1
- package/lib/internal/_randomPick.mjs +15 -3
- package/lib/internal/_randomPick.mjs.map +1 -1
- package/lib/internal/_randomString.d.ts +15 -1
- package/lib/internal/_randomString.js +19 -5
- package/lib/internal/_randomString.js.map +1 -1
- package/lib/internal/_randomString.mjs +19 -5
- package/lib/internal/_randomString.mjs.map +1 -1
- package/lib/internal/_randomStringLength.d.ts +30 -1
- package/lib/internal/_randomStringLength.js +23 -1
- package/lib/internal/_randomStringLength.js.map +1 -1
- package/lib/internal/_randomStringLength.mjs +23 -1
- package/lib/internal/_randomStringLength.mjs.map +1 -1
- package/lib/internal/_stringLength.d.ts +11 -0
- package/lib/internal/_stringLength.js +11 -0
- package/lib/internal/_stringLength.js.map +1 -1
- package/lib/internal/_stringLength.mjs +11 -0
- package/lib/internal/_stringLength.mjs.map +1 -1
- package/lib/internal/_stringLengthGte.d.ts +11 -0
- package/lib/internal/_stringLengthGte.js +11 -0
- package/lib/internal/_stringLengthGte.js.map +1 -1
- package/lib/internal/_stringLengthGte.mjs +11 -0
- package/lib/internal/_stringLengthGte.mjs.map +1 -1
- package/lib/internal/_stringLengthLte.d.ts +11 -0
- package/lib/internal/_stringLengthLte.js +11 -0
- package/lib/internal/_stringLengthLte.js.map +1 -1
- package/lib/internal/_stringLengthLte.mjs +11 -0
- package/lib/internal/_stringLengthLte.mjs.map +1 -1
- package/lib/internal/_throwTypeGuardError.d.ts +9 -0
- package/lib/internal/_throwTypeGuardError.js +9 -0
- package/lib/internal/_throwTypeGuardError.js.map +1 -1
- package/lib/internal/_throwTypeGuardError.mjs +9 -0
- package/lib/internal/_throwTypeGuardError.mjs.map +1 -1
- package/lib/internal/_validateReport.d.ts +15 -0
- package/lib/internal/_validateReport.js +15 -0
- package/lib/internal/_validateReport.js.map +1 -1
- package/lib/internal/_validateReport.mjs +15 -0
- package/lib/internal/_validateReport.mjs.map +1 -1
- package/lib/internal/private/__notationRename.d.ts +5 -0
- package/lib/internal/private/__notationRename.js +5 -0
- package/lib/internal/private/__notationRename.js.map +1 -1
- package/lib/internal/private/__notationRename.mjs +5 -0
- package/lib/internal/private/__notationRename.mjs.map +1 -1
- package/lib/internal/private/__randomComposition.d.ts +27 -3
- package/lib/internal/private/__randomComposition.js +27 -3
- package/lib/internal/private/__randomComposition.js.map +1 -1
- package/lib/internal/private/__randomComposition.mjs +27 -3
- package/lib/internal/private/__randomComposition.mjs.map +1 -1
- package/lib/internal/private/__randomEpoch.d.ts +15 -0
- package/lib/internal/private/__randomEpoch.js +5 -0
- package/lib/internal/private/__randomEpoch.js.map +1 -1
- package/lib/internal/private/__randomEpoch.mjs +5 -0
- package/lib/internal/private/__randomEpoch.mjs.map +1 -1
- package/lib/json.d.ts +49 -14
- package/lib/json.js.map +1 -1
- package/lib/json.mjs.map +1 -1
- package/lib/llm.d.ts +41 -25
- package/lib/llm.js.map +1 -1
- package/lib/llm.mjs.map +1 -1
- package/lib/module.d.ts +1 -702
- package/lib/module.js +1 -101
- package/lib/module.js.map +1 -1
- package/lib/module.mjs +1 -81
- package/lib/module.mjs.map +1 -1
- package/lib/notations.d.ts +60 -0
- package/lib/notations.js.map +1 -1
- package/lib/notations.mjs.map +1 -1
- package/lib/plain.d.ts +38 -0
- package/lib/plain.js.map +1 -1
- package/lib/plain.mjs.map +1 -1
- package/lib/protobuf.d.ts +38 -4
- package/lib/protobuf.js.map +1 -1
- package/lib/protobuf.mjs.map +1 -1
- package/lib/reflect.d.ts +16 -12
- package/lib/reflect.js.map +1 -1
- package/lib/reflect.mjs.map +1 -1
- package/lib/transform.d.ts +17 -0
- package/lib/transform.js +17 -0
- package/lib/transform.js.map +1 -1
- package/lib/transform.mjs +17 -0
- package/lib/transform.mjs.map +1 -1
- package/native/adapter/adapter.go +28 -3
- package/native/adapter/adapter_options_branch_matrix_test.go +39 -34
- package/native/adapter/plugin_options.go +5 -0
- package/native/adapter/plugin_options_payload_matrix_test.go +5 -0
- package/native/cmd/ttsc-typia/any_array_type_tags_transform_test.go +38 -131
- package/native/cmd/ttsc-typia/assert_guard_factory_contract_test.go +31 -58
- package/native/cmd/ttsc-typia/atomic_intersection_schema_transform_test.go +28 -79
- package/native/cmd/ttsc-typia/bigint_literal_precision_transform_test.go +16 -82
- package/native/cmd/ttsc-typia/build_diagnostics_preserve_details_test.go +41 -0
- package/native/cmd/ttsc-typia/build_no_emit_preserves_analysis_options_test.go +9 -10
- package/native/cmd/ttsc-typia/build_no_emit_transform_diagnostics_test.go +9 -7
- package/native/cmd/ttsc-typia/build_plugin_options_come_from_payload_test.go +9 -11
- package/native/cmd/ttsc-typia/build_transactional_emit_success_test.go +9 -7
- package/native/cmd/ttsc-typia/build_transform_failure_atomicity_test.go +9 -7
- package/native/cmd/ttsc-typia/callable_interface_function_semantics_transform_test.go +9 -164
- package/native/cmd/ttsc-typia/callable_type_literal_boundaries_transform_test.go +20 -580
- package/native/cmd/ttsc-typia/compare_equal_cover_transform_test.go +10 -127
- package/native/cmd/ttsc-typia/compare_functional_union_membership_transform_test.go +93 -289
- package/native/cmd/ttsc-typia/compare_less_nan_transform_test.go +15 -66
- package/native/cmd/ttsc-typia/compare_nondiscriminable_union_transform_test.go +9 -221
- package/native/cmd/ttsc-typia/create_assert_error_factory_arity_test.go +11 -82
- package/native/cmd/ttsc-typia/default_library_spoof_native_identity_transform_test.go +10 -100
- package/native/cmd/ttsc-typia/demo_rejects_bad_flag_test.go +15 -14
- package/native/cmd/ttsc-typia/dependency_collector_virtual_scheme_test.go +8 -17
- package/native/cmd/ttsc-typia/dynamic_key_path_helper_alias_transform_test.go +10 -70
- package/native/cmd/ttsc-typia/dynamic_key_tags_transform_test.go +9 -120
- package/native/cmd/ttsc-typia/exact_optional_family_emission_contract_test.go +252 -0
- package/native/cmd/ttsc-typia/exclude_type_tag_transform_test.go +10 -102
- package/native/cmd/ttsc-typia/fixture_directories_test.go +154 -0
- package/native/cmd/ttsc-typia/functional_promised_type_transform_test.go +11 -104
- package/native/cmd/ttsc-typia/functional_receiver_transform_test.go +16 -124
- package/native/cmd/ttsc-typia/inline_type_display_name_transform_test.go +10 -183
- package/native/cmd/ttsc-typia/instance_union_create_is_transform_test.go +11 -88
- package/native/cmd/ttsc-typia/intersection_nonsensible_backstop_transform_test.go +17 -30
- package/native/cmd/ttsc-typia/intersection_union_validation_transform_test.go +10 -404
- package/native/cmd/ttsc-typia/json_application_alias_function_validation_transform_test.go +10 -22
- package/native/cmd/ttsc-typia/json_is_stringify_scoped_checker_transform_test.go +10 -111
- package/native/cmd/ttsc-typia/json_schema_dynamic_key_determinism_transform_test.go +25 -110
- package/native/cmd/ttsc-typia/json_schema_nonsensible_intersection_diagnostic_test.go +10 -22
- package/native/cmd/ttsc-typia/json_stringify_constant_atomic_union_transform_test.go +10 -101
- package/native/cmd/ttsc-typia/lib_replacement_native_identity_transform_test.go +11 -98
- package/native/cmd/ttsc-typia/llm_evaluation_accepts_property_probability_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_accepts_unselected_source_probability_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_complete_object_shape_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_emits_configured_decimals_test.go +53 -0
- package/native/cmd/ttsc-typia/llm_evaluation_ignores_declaration_probability_without_call_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_plan_emission_transform_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_program_scan_dependencies_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_alias_comment_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_alias_refinement_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_computed_method_probability_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_conflicting_boolean_tags_test.go +52 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_finer_than_probability_decimals_test.go +100 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_imported_declaration_probability_test.go +6 -1
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_invalid_config_test.go +51 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_invalid_probability_test.go +14 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_oversized_questions_test.go +79 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_refinements_test.go +5 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_shared_values_test.go +128 -0
- package/native/cmd/ttsc-typia/llm_evaluation_rejects_undecidable_types_test.go +6 -12
- package/native/cmd/ttsc-typia/local_function_named_like_typia_operation_transform_test.go +9 -17
- package/native/cmd/ttsc-typia/metadata_type_tag_sole_malformed_diagnostic_test.go +10 -28
- package/native/cmd/ttsc-typia/native_collection_identity_is_transform_test.go +9 -129
- package/native/cmd/ttsc-typia/native_generic_name_guard_is_transform_test.go +10 -95
- package/native/cmd/ttsc-typia/native_name_collision_is_transform_test.go +9 -122
- package/native/cmd/ttsc-typia/native_named_intersection_union_transform_test.go +10 -135
- package/native/cmd/ttsc-typia/node_buffer_native_exports_is_transform_test.go +18 -234
- package/native/cmd/ttsc-typia/non_trailing_rest_tuple_transform_test.go +19 -71
- package/native/cmd/ttsc-typia/notation_kebab_case_transform_test.go +10 -109
- package/native/cmd/ttsc-typia/notation_pascal_case_transform_test.go +10 -142
- package/native/cmd/ttsc-typia/notation_unicode_key_transform_test.go +9 -201
- package/native/cmd/ttsc-typia/nullable_primitive_property_is_transform_test.go +10 -102
- package/native/cmd/ttsc-typia/object_custom_tag_validation_transform_test.go +10 -112
- package/native/cmd/ttsc-typia/object_union_explicit_pointer_schema_transform_test.go +68 -114
- package/native/cmd/ttsc-typia/package_declaration_native_identity_is_transform_test.go +10 -114
- package/native/cmd/ttsc-typia/pattern_line_terminator_escape_transform_test.go +45 -123
- package/native/cmd/ttsc-typia/plain_classify_class_ref_transform_test.go +12 -97
- package/native/cmd/ttsc-typia/plain_classify_container_seed_transform_test.go +12 -74
- package/native/cmd/ttsc-typia/plain_classify_cross_module_extra_transform_test.go +15 -91
- package/native/cmd/ttsc-typia/plain_classify_cross_module_transform_test.go +40 -0
- package/native/cmd/ttsc-typia/plain_classify_deep_nested_transform_test.go +12 -103
- package/native/cmd/ttsc-typia/plain_classify_field_copy_transform_test.go +10 -120
- package/native/cmd/ttsc-typia/plain_classify_from_new_transform_test.go +12 -255
- package/native/cmd/ttsc-typia/plain_classify_generic_private_rejected_test.go +30 -0
- package/native/cmd/ttsc-typia/plain_classify_inherited_private_rejected_test.go +33 -0
- package/native/cmd/ttsc-typia/plain_classify_named_interface_field_copy_test.go +33 -0
- package/native/cmd/ttsc-typia/plain_classify_private_field_rejected_test.go +36 -0
- package/native/cmd/ttsc-typia/plain_classify_recursive_anonymous_object_test.go +30 -0
- package/native/cmd/ttsc-typia/plain_classify_self_ref_private_rejected_test.go +33 -0
- package/native/cmd/ttsc-typia/plain_classify_static_private_allowed_test.go +35 -0
- package/native/cmd/ttsc-typia/plain_classify_strategy_edges_transform_test.go +16 -291
- package/native/cmd/ttsc-typia/plain_classify_unbound_anonymous_class_test.go +35 -0
- package/native/cmd/ttsc-typia/plain_classify_union_transform_test.go +12 -73
- package/native/cmd/ttsc-typia/plain_classify_validated_union_transform_test.go +11 -146
- package/native/cmd/ttsc-typia/plain_clone_bigint_wrapper_transform_test.go +10 -80
- package/native/cmd/ttsc-typia/private_field_filter_is_transform_test.go +10 -137
- package/native/cmd/ttsc-typia/project_catalog_transform_coverage_test.go +4 -0
- package/native/cmd/ttsc-typia/project_dependencies_barrel_reexport_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_callee_argument_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_callee_barrel_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_callee_inference_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_callee_shape_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_callee_untransformed_barrel_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_collapsed_alias_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_complete_diagnostic_transform_test.go +7 -11
- package/native/cmd/ttsc-typia/project_dependencies_complete_envelope_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_complete_inferred_type_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_complete_replaced_library_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_complete_untouched_reprint_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_computed_key_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_custom_lib_name_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_default_barrel_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_empty_heritage_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_enum_member_value_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_envelope_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_index_signature_alias_transform_test.go +9 -12
- package/native/cmd/ttsc-typia/project_dependencies_inferred_declaration_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_jsdoc_typedef_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_local_reexport_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_named_tuple_member_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_qualified_barrel_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_signature_alias_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_star_barrel_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_dependencies_type_parameter_default_transform_test.go +6 -10
- package/native/cmd/ttsc-typia/project_reference_graph_envelope_transform_test.go +10 -32
- package/native/cmd/ttsc-typia/protobuf_diagnostic_code_transform_test.go +9 -31
- package/native/cmd/ttsc-typia/protobuf_is_encode_finite_number_transform_test.go +10 -23
- package/native/cmd/ttsc-typia/protobuf_object_generic_union_encode_transform_test.go +12 -114
- package/native/cmd/ttsc-typia/protobuf_sequence_field_numbers_transform_test.go +9 -26
- package/native/cmd/ttsc-typia/random_recursive_min_items_diagnostic_test.go +26 -22
- package/native/cmd/ttsc-typia/random_unsatisfiable_recursive_diagnostic_test.go +10 -26
- package/native/cmd/ttsc-typia/recursive_conditional_alias_name_transform_test.go +10 -185
- package/native/cmd/ttsc-typia/recursive_visit_tracking_transform_test.go +10 -291
- package/native/cmd/ttsc-typia/reflect_literals_non_literal_rejection_transform_test.go +9 -28
- package/native/cmd/ttsc-typia/schema_dts_role_transform_test.go +11 -206
- package/native/cmd/ttsc-typia/schema_literal_helpers_test.go +110 -0
- package/native/cmd/ttsc-typia/shadowed_typia_module_declaration_diagnostic_test.go +9 -17
- package/native/cmd/ttsc-typia/shallow_depth_argument_error_transform_test.go +10 -24
- package/native/cmd/ttsc-typia/shallow_depth_limit_transform_test.go +10 -105
- package/native/cmd/ttsc-typia/shallow_nested_depth_transform_test.go +10 -24
- package/native/cmd/ttsc-typia/symbol_key_member_filter_transform_test.go +10 -147
- package/native/cmd/ttsc-typia/template_interpolation_type_tags_transform_test.go +10 -272
- package/native/cmd/ttsc-typia/template_literal_type_tags_transform_test.go +10 -92
- package/native/cmd/ttsc-typia/transform_diagnostics_preserve_details_test.go +9 -86
- package/native/cmd/ttsc-typia/transform_fixtures_emit_coverage_test.go +48 -29
- package/native/cmd/ttsc-typia/transform_helpers_test.go +41 -360
- package/native/cmd/ttsc-typia/transform_plugin_options_come_from_payload_test.go +9 -12
- package/native/cmd/ttsc-typia/transform_project_diagnostics_preserve_details_test.go +54 -0
- package/native/cmd/ttsc-typia/transform_single_file_failure_atomicity_test.go +9 -11
- package/native/cmd/ttsc-typia/transform_single_file_failure_writes_no_stdout_test.go +9 -8
- package/native/cmd/ttsc-typia/transform_single_file_js_distinguishes_same_basename_sources_test.go +9 -14
- package/native/cmd/ttsc-typia/transform_single_file_js_locates_output_across_layouts_test.go +9 -16
- package/native/cmd/ttsc-typia/transform_single_file_success_publishes_artifact_test.go +9 -9
- package/native/cmd/ttsc-typia/transform_wasm_host_argv_reports_diagnostics_test.go +9 -10
- package/native/cmd/ttsc-typia/tuple_optional_compare_clone_transform_test.go +33 -181
- package/native/cmd/ttsc-typia/typia_diagnostic_formatting_test.go +46 -0
- package/native/cmd/ttsc-typia/uri_template_comment_dotted_variable_transform_test.go +57 -0
- package/native/cmd/ttsc-typia/user_global_native_identity_transform_test.go +16 -202
- package/native/cmd/ttsc-typia/wrong_type_tag_target_diagnostic_test.go +12 -12
- package/native/core/context/EmitFactory.go +10 -0
- package/native/core/context/IProgrammerProps.go +21 -4
- package/native/core/context/ITransformOptions.go +22 -4
- package/native/core/context/ITypiaContext.go +61 -11
- package/native/core/context/ImportProgrammer.go +144 -6
- package/native/core/context/TransformerError.go +74 -7
- package/native/core/context/import_programmer_default_type_only_needs_every_request_test.go +58 -0
- package/native/core/context/import_programmer_module_identifier_test.go +5 -0
- package/native/core/context/import_programmer_statement_coverage_test.go +106 -50
- package/native/core/context/transformer_error_formatting_test.go +82 -77
- package/native/core/factories/CommentFactory.go +8 -0
- package/native/core/factories/ExpressionFactory.go +121 -5
- package/native/core/factories/FormatCheatSheet.go +1 -1
- package/native/core/factories/JsonMetadataFactory.go +29 -4
- package/native/core/factories/LiteralFactory.go +24 -1
- package/native/core/factories/MetadataCommentTagFactory.go +177 -29
- package/native/core/factories/MetadataFactory.go +59 -5
- package/native/core/factories/ProtobufFactory.go +17 -4
- package/native/core/factories/StatementFactory.go +38 -5
- package/native/core/factories/TemplateFactory.go +10 -0
- package/native/core/factories/TypeFactory.go +33 -5
- package/native/core/factories/expression_factory_number_spells_non_finite_values_test.go +74 -0
- package/native/core/factories/factory_utility_coverage_test.go +8 -3
- package/native/core/factories/format_alias_resolves_to_cheat_sheet_test.go +5 -0
- package/native/core/factories/format_alias_table_targets_the_cheat_sheet_test.go +20 -30
- package/native/core/factories/identifier_factory_postfix_escapes_every_key_test.go +5 -0
- package/native/core/factories/identifier_factory_postfix_survives_every_code_point_test.go +5 -0
- package/native/core/factories/internal/metadata/IMetadataIteratorProps.go +115 -22
- package/native/core/factories/internal/metadata/MetadataHelper.go +64 -1
- package/native/core/factories/internal/metadata/comment_tags_coverage_test.go +167 -148
- package/native/core/factories/internal/metadata/emend_metadata_atomics.go +28 -1
- package/native/core/factories/internal/metadata/emplace_metadata_alias.go +10 -3
- package/native/core/factories/internal/metadata/emplace_metadata_array_type.go +17 -0
- package/native/core/factories/internal/metadata/emplace_metadata_object.go +12 -1
- package/native/core/factories/internal/metadata/emplace_metadata_tuple.go +10 -0
- package/native/core/factories/internal/metadata/explore_metadata.go +48 -9
- package/native/core/factories/internal/metadata/iterate_metadata.go +12 -0
- package/native/core/factories/internal/metadata/iterate_metadata_alias.go +8 -0
- package/native/core/factories/internal/metadata/iterate_metadata_array.go +7 -0
- package/native/core/factories/internal/metadata/iterate_metadata_atomic.go +7 -0
- package/native/core/factories/internal/metadata/iterate_metadata_coalesce.go +8 -0
- package/native/core/factories/internal/metadata/iterate_metadata_collection.go +8 -0
- package/native/core/factories/internal/metadata/iterate_metadata_collection_branch_matrix_test.go +148 -143
- package/native/core/factories/internal/metadata/iterate_metadata_comment_tags.go +7 -0
- package/native/core/factories/internal/metadata/iterate_metadata_constant.go +68 -0
- package/native/core/factories/internal/metadata/iterate_metadata_escape.go +7 -0
- package/native/core/factories/internal/metadata/iterate_metadata_function.go +33 -10
- package/native/core/factories/internal/metadata/iterate_metadata_intersection.go +22 -11
- package/native/core/factories/internal/metadata/iterate_metadata_intersection_brand_coverage_test.go +5 -0
- package/native/core/factories/internal/metadata/iterate_metadata_intersection_coverage_test.go +88 -83
- package/native/core/factories/internal/metadata/iterate_metadata_intersection_shareable_name_test.go +4 -0
- package/native/core/factories/internal/metadata/iterate_metadata_map.go +7 -0
- package/native/core/factories/internal/metadata/iterate_metadata_native.go +11 -1
- package/native/core/factories/internal/metadata/iterate_metadata_object.go +8 -0
- package/native/core/factories/internal/metadata/iterate_metadata_set.go +7 -0
- package/native/core/factories/internal/metadata/iterate_metadata_sort.go +11 -0
- package/native/core/factories/internal/metadata/iterate_metadata_template.go +7 -0
- package/native/core/factories/internal/metadata/iterate_metadata_tuple.go +7 -0
- package/native/core/factories/internal/metadata/iterate_metadata_union.go +10 -0
- package/native/core/factories/internal/metadata/js_doc_link_text_test.go +5 -0
- package/native/core/factories/internal/metadata/js_doc_parameter_name_reads_qualified_name_test.go +31 -26
- package/native/core/factories/internal/metadata/js_doc_type_tag_blank_separation_test.go +88 -0
- package/native/core/factories/internal/metadata/sort_constants_coverage_test.go +50 -39
- package/native/core/factories/internal/metadata/type_arguments_precondition_test.go +5 -0
- package/native/core/factories/json_metadata_factory_dedupes_bigint_diagnostics_test.go +5 -0
- package/native/core/factories/json_metadata_factory_rejects_bigint_native_test.go +5 -0
- package/native/core/factories/literal_factory_null_survives_objects_test.go +5 -0
- package/native/core/factories/literal_factory_ordered_object_marshals_json_test.go +5 -0
- package/native/core/factories/metadata_comment_tag_factory_coverage_test.go +5 -0
- package/native/core/factories/metadata_comment_tag_factory_exclusivity_matches_interface_test.go +10 -5
- package/native/core/factories/metadata_comment_tag_factory_holds_bigint_tags_exact_test.go +173 -0
- package/native/core/factories/metadata_comment_tag_factory_reads_javascript_numbers_test.go +163 -0
- package/native/core/factories/metadata_comment_tag_factory_rejects_out_of_range_integer_test.go +7 -2
- package/native/core/factories/metadata_comment_tag_factory_string_length_helpers_test.go +5 -0
- package/native/core/factories/metadata_type_tag_factory_accepts_legal_tag_combinations_test.go +6 -1
- package/native/core/factories/metadata_type_tag_factory_keeps_bool_form_exclusivity_test.go +5 -0
- package/native/core/factories/metadata_type_tag_factory_rejects_cross_kind_exclusive_tags_test.go +5 -0
- package/native/core/factories/metadata_type_tag_factory_rejects_duplicated_array_form_tags_test.go +5 -0
- package/native/core/factories/metadata_type_tag_factory_reports_all_invalid_candidates_test.go +5 -0
- package/native/core/factories/numeric_range_factory_enforces_64bit_bounds_test.go +58 -2
- package/native/core/factories/protobuf_factory_bigint_keeps_each_width_test.go +47 -0
- package/native/core/factories/protobuf_factory_rejects_invalid_field_names_test.go +5 -0
- package/native/core/factories/protobuf_recovery_ownership_test.go +5 -0
- package/native/core/programmers/AssertProgrammer.go +27 -0
- package/native/core/programmers/IsProgrammer.go +67 -1
- package/native/core/programmers/RandomProgrammer.go +39 -22
- package/native/core/programmers/ValidateProgrammer.go +28 -1
- package/native/core/programmers/compare/CompareEqualProgrammer.go +26 -3
- package/native/core/programmers/compare/CompareLessProgrammer.go +17 -3
- package/native/core/programmers/functional/FunctionalAssertFunctionProgrammer.go +47 -6
- package/native/core/programmers/functional/FunctionalAssertParametersProgrammer.go +70 -13
- package/native/core/programmers/functional/FunctionalAssertReturnProgrammer.go +76 -12
- package/native/core/programmers/functional/FunctionalIsFunctionProgrammer.go +31 -5
- package/native/core/programmers/functional/FunctionalIsParametersProgrammer.go +169 -18
- package/native/core/programmers/functional/FunctionalIsReturnProgrammer.go +67 -11
- package/native/core/programmers/functional/FunctionalValidateFunctionProgrammer.go +31 -5
- package/native/core/programmers/functional/FunctionalValidateParametersProgrammer.go +63 -12
- package/native/core/programmers/functional/FunctionalValidateReturnProgrammer.go +68 -11
- package/native/core/programmers/functional/internal/FunctionalGeneralProgrammer.go +22 -2
- package/native/core/programmers/helpers/ClassifyJoiner.go +14 -6
- package/native/core/programmers/helpers/CloneJoiner.go +29 -0
- package/native/core/programmers/helpers/FunctionProgrammer.go +98 -0
- package/native/core/programmers/helpers/ICheckEntry.go +16 -0
- package/native/core/programmers/helpers/IExpressionEntry.go +8 -0
- package/native/core/programmers/helpers/ModuloText.go +5 -0
- package/native/core/programmers/helpers/NotationJoiner.go +23 -0
- package/native/core/programmers/helpers/ProtobufWire.go +8 -0
- package/native/core/programmers/helpers/PruneJoiner.go +21 -0
- package/native/core/programmers/helpers/RandomJoiner.go +52 -5
- package/native/core/programmers/helpers/StringifyJoinder.go +31 -12
- package/native/core/programmers/helpers/UnionExplorer.go +202 -70
- package/native/core/programmers/helpers/UnionPredicator.go +9 -0
- package/native/core/programmers/helpers/clone_joiner_optional_condition_test.go +14 -1
- package/native/core/programmers/helpers/function_programmer_unique_names_test.go +5 -0
- package/native/core/programmers/helpers/joiner_branch_coverage_test.go +5 -0
- package/native/core/programmers/helpers/option_predicator_contract_matrix_test.go +84 -0
- package/native/core/programmers/helpers/random_joiner_recursive_array_guard_test.go +5 -0
- package/native/core/programmers/helpers/union_explorer_coverage_test.go +120 -112
- package/native/core/programmers/helpers/union_predicator_checks_neighbor_flag_test.go +5 -0
- package/native/core/programmers/helpers/union_predicator_skips_atomic_like_native_fields_test.go +5 -0
- package/native/core/programmers/helpers/union_predicator_skips_collection_bucket_fields_test.go +5 -0
- package/native/core/programmers/helpers/union_predicator_skips_shared_native_names_test.go +5 -0
- package/native/core/programmers/helpers/union_predicator_skips_shared_object_fields_test.go +5 -0
- package/native/core/programmers/helpers/union_predicator_skips_shared_template_fields_test.go +5 -0
- package/native/core/programmers/http/HttpAssertFormDataProgrammer.go +9 -0
- package/native/core/programmers/http/HttpAssertHeadersProgrammer.go +9 -0
- package/native/core/programmers/http/HttpAssertQueryProgrammer.go +20 -0
- package/native/core/programmers/http/HttpFormDataProgrammer.go +48 -2
- package/native/core/programmers/http/HttpHeadersProgrammer.go +63 -4
- package/native/core/programmers/http/HttpIsFormDataProgrammer.go +8 -0
- package/native/core/programmers/http/HttpIsHeadersProgrammer.go +8 -0
- package/native/core/programmers/http/HttpIsQueryProgrammer.go +19 -1
- package/native/core/programmers/http/HttpParameterProgrammer.go +1 -3
- package/native/core/programmers/http/HttpQueryProgrammer.go +44 -44
- package/native/core/programmers/http/HttpValidateFormDataProgrammer.go +8 -0
- package/native/core/programmers/http/HttpValidateHeadersProgrammer.go +8 -0
- package/native/core/programmers/http/HttpValidateQueryProgrammer.go +18 -1
- package/native/core/programmers/http/http_programmer_helper_coverage_test.go +98 -93
- package/native/core/programmers/internal/CheckerProgrammer.go +162 -18
- package/native/core/programmers/internal/FeatureProgrammer.go +254 -38
- package/native/core/programmers/internal/feature_programmer_visit_guard_test.go +82 -55
- package/native/core/programmers/internal/internal_utility_coverage_test.go +338 -345
- package/native/core/programmers/iterate/check_array_length.go +15 -0
- package/native/core/programmers/iterate/check_bigint.go +14 -0
- package/native/core/programmers/iterate/check_dynamic_key.go +33 -19
- package/native/core/programmers/iterate/check_dynamic_key_tag_rows_test.go +59 -32
- package/native/core/programmers/iterate/check_dynamic_properties.go +70 -16
- package/native/core/programmers/iterate/check_everything.go +7 -0
- package/native/core/programmers/iterate/check_native.go +14 -0
- package/native/core/programmers/iterate/check_number.go +16 -0
- package/native/core/programmers/iterate/check_number_option_contract_matrix_test.go +84 -0
- package/native/core/programmers/iterate/check_object.go +28 -0
- package/native/core/programmers/iterate/check_object_strict_optional_undefined_test.go +6 -1
- package/native/core/programmers/iterate/check_object_type_tags.go +15 -0
- package/native/core/programmers/iterate/check_string.go +14 -0
- package/native/core/programmers/iterate/check_template.go +15 -0
- package/native/core/programmers/iterate/decode_union_object.go +35 -2
- package/native/core/programmers/iterate/exact_optional_checker_entry_contract_test.go +142 -0
- package/native/core/programmers/iterate/exact_optional_graph_clone_random_contract_test.go +213 -0
- package/native/core/programmers/iterate/feature_object_entries.go +40 -0
- package/native/core/programmers/iterate/iterate_utility_coverage_test.go +30 -5
- package/native/core/programmers/iterate/json_schema_array.go +16 -0
- package/native/core/programmers/iterate/json_schema_bigint.go +7 -0
- package/native/core/programmers/iterate/json_schema_boolean.go +7 -0
- package/native/core/programmers/iterate/json_schema_discriminator_declaration_syntax_test.go +10 -5
- package/native/core/programmers/iterate/json_schema_jsDocTags.go +10 -3
- package/native/core/programmers/iterate/json_schema_jsdoc_tags_cast_reads_javascript_numbers_test.go +69 -0
- package/native/core/programmers/iterate/json_schema_native.go +27 -0
- package/native/core/programmers/iterate/json_schema_number.go +7 -0
- package/native/core/programmers/iterate/json_schema_pattern_property_order_test.go +5 -0
- package/native/core/programmers/iterate/json_schema_plugin.go +7 -0
- package/native/core/programmers/iterate/json_schema_station.go +16 -0
- package/native/core/programmers/iterate/json_schema_string.go +7 -0
- package/native/core/programmers/iterate/openapi_v3_downgrader.go +29 -10
- package/native/core/programmers/iterate/openapi_v3_downgrader_boolean_default_test.go +9 -4
- package/native/core/programmers/iterate/openapi_v3_downgrader_test.go +9 -4
- package/native/core/programmers/iterate/postfix_of_tuple.go +8 -0
- package/native/core/programmers/iterate/template_interpolation_tags_test.go +46 -4
- package/native/core/programmers/iterate/template_runtime_pattern.go +10 -4
- package/native/core/programmers/iterate/wrap_metadata_rest_tuple.go +8 -0
- package/native/core/programmers/json/JsonApplicationProgrammer.go +9 -0
- package/native/core/programmers/json/JsonAssertParseProgrammer.go +9 -0
- package/native/core/programmers/json/JsonAssertStringifyProgrammer.go +9 -0
- package/native/core/programmers/json/JsonIsParseProgrammer.go +7 -0
- package/native/core/programmers/json/JsonIsStringifyProgrammer.go +8 -0
- package/native/core/programmers/json/JsonSchemaProgrammer.go +15 -0
- package/native/core/programmers/json/JsonSchemasProgrammer.go +16 -0
- package/native/core/programmers/json/JsonStringifyProgrammer.go +20 -32
- package/native/core/programmers/json/JsonValidateParseProgrammer.go +8 -0
- package/native/core/programmers/json/JsonValidateStringifyProgrammer.go +8 -0
- package/native/core/programmers/json/json_schema_programmer_coverage_test.go +176 -171
- package/native/core/programmers/json/json_schemas_programmer_dedupes_bigint_diagnostics_test.go +5 -0
- package/native/core/programmers/json/json_schemas_programmer_rejects_bigint_native_test.go +5 -0
- package/native/core/programmers/json/json_stringify_programmer_coverage_test.go +400 -398
- package/native/core/programmers/llm/LlmApplicationProgrammer.go +10 -9
- package/native/core/programmers/llm/LlmCoerceProgrammer.go +16 -9
- package/native/core/programmers/llm/LlmControllerProgrammer.go +10 -0
- package/native/core/programmers/llm/LlmEvaluationProgrammer.go +107 -11
- package/native/core/programmers/llm/LlmParametersProgrammer.go +8 -9
- package/native/core/programmers/llm/LlmParseProgrammer.go +24 -9
- package/native/core/programmers/llm/LlmSchemaProgrammer.go +50 -13
- package/native/core/programmers/llm/LlmStructuredOutputProgrammer.go +8 -9
- package/native/core/programmers/llm/llm_application_programmer_coverage_test.go +146 -141
- package/native/core/programmers/llm/llm_reference_codec_test.go +5 -0
- package/native/core/programmers/llm/llm_reference_description_test.go +13 -3
- package/native/core/programmers/llm/llm_schema_programmer_coverage_test.go +255 -250
- package/native/core/programmers/llm/llm_schema_programmer_dedupes_bigint_diagnostics_test.go +5 -0
- package/native/core/programmers/llm/llm_schema_programmer_rejects_bigint_native_test.go +5 -0
- package/native/core/programmers/llm/llm_schema_programmer_rejects_exclude_tag_in_strict_test.go +7 -3
- package/native/core/programmers/notations/NotationAssertGeneralProgrammer.go +32 -4
- package/native/core/programmers/notations/NotationGeneralProgrammer.go +70 -42
- package/native/core/programmers/notations/NotationIsGeneralProgrammer.go +29 -3
- package/native/core/programmers/notations/NotationValidateGeneralProgrammer.go +32 -4
- package/native/core/programmers/notations/notation_general_helpers_test.go +363 -367
- package/native/core/programmers/notations/notation_general_programmer_pascal_multiword_test.go +5 -0
- package/native/core/programmers/notations/notation_general_programmer_snake_prefix_test.go +5 -0
- package/native/core/programmers/notations/notation_general_programmer_underscore_boundary_test.go +5 -0
- package/native/core/programmers/plain/PlainAssertClassifyProgrammer.go +23 -3
- package/native/core/programmers/plain/PlainAssertCloneProgrammer.go +22 -3
- package/native/core/programmers/plain/PlainAssertPruneProgrammer.go +22 -3
- package/native/core/programmers/plain/PlainClassifyProgrammer.go +61 -85
- package/native/core/programmers/plain/PlainCloneProgrammer.go +34 -38
- package/native/core/programmers/plain/PlainIsCloneProgrammer.go +18 -2
- package/native/core/programmers/plain/PlainIsPruneProgrammer.go +18 -2
- package/native/core/programmers/plain/PlainPruneProgrammer.go +29 -10
- package/native/core/programmers/plain/PlainValidateClassifyProgrammer.go +22 -3
- package/native/core/programmers/plain/PlainValidateCloneProgrammer.go +22 -3
- package/native/core/programmers/plain/PlainValidatePruneProgrammer.go +22 -3
- package/native/core/programmers/plain/plain_programmer_helper_coverage_test.go +6 -3
- package/native/core/programmers/plain/plain_prune_programmer_branch_matrix_test.go +5 -0
- package/native/core/programmers/plain/plain_tuple_seed_recovery_ownership_test.go +5 -0
- package/native/core/programmers/protobuf/ProtobufAssertDecodeProgrammer.go +19 -0
- package/native/core/programmers/protobuf/ProtobufAssertEncodeProgrammer.go +19 -0
- package/native/core/programmers/protobuf/ProtobufDecodeProgrammer.go +19 -1
- package/native/core/programmers/protobuf/ProtobufEncodeProgrammer.go +30 -30
- package/native/core/programmers/protobuf/ProtobufIsDecodeProgrammer.go +19 -1
- package/native/core/programmers/protobuf/ProtobufIsEncodeProgrammer.go +19 -1
- package/native/core/programmers/protobuf/ProtobufMessageProgrammer.go +11 -5
- package/native/core/programmers/protobuf/ProtobufValidateDecodeProgrammer.go +19 -1
- package/native/core/programmers/protobuf/ProtobufValidateEncodeProgrammer.go +19 -1
- package/native/core/programmers/protobuf/protobuf_programmer_helper_coverage_test.go +493 -453
- package/native/core/programmers/random_programmer_helper_coverage_test.go +350 -342
- package/native/core/programmers/random_programmer_length_argument_test.go +32 -1
- package/native/core/programmers/random_programmer_min_items_tag_test.go +5 -0
- package/native/core/programmers/random_programmer_pick_hook_test.go +88 -0
- package/native/core/programmers/reflect/ReflectLiteralsProgrammer.go +15 -0
- package/native/core/schemas/metadata/IMetadataTypeTagSequence.go +12 -1
- package/native/core/schemas/metadata/MetadataAlias.go +41 -1
- package/native/core/schemas/metadata/MetadataAliasType.go +57 -21
- package/native/core/schemas/metadata/MetadataArray.go +37 -1
- package/native/core/schemas/metadata/MetadataArrayType.go +52 -18
- package/native/core/schemas/metadata/MetadataAtomic.go +44 -10
- package/native/core/schemas/metadata/MetadataBigint.go +20 -4
- package/native/core/schemas/metadata/MetadataCollection.go +264 -53
- package/native/core/schemas/metadata/MetadataComponents.go +13 -116
- package/native/core/schemas/metadata/MetadataConstant.go +35 -13
- package/native/core/schemas/metadata/MetadataConstantValue.go +87 -20
- package/native/core/schemas/metadata/MetadataDefaultLibrary.go +20 -0
- package/native/core/schemas/metadata/MetadataDependency.go +52 -2
- package/native/core/schemas/metadata/MetadataEscaped.go +48 -8
- package/native/core/schemas/metadata/MetadataFunction.go +42 -16
- package/native/core/schemas/metadata/MetadataMap.go +53 -4
- package/native/core/schemas/metadata/MetadataNative.go +65 -9
- package/native/core/schemas/metadata/MetadataObject.go +37 -1
- package/native/core/schemas/metadata/MetadataObjectType.go +117 -74
- package/native/core/schemas/metadata/MetadataParameter.go +51 -16
- package/native/core/schemas/metadata/MetadataProperty.go +49 -19
- package/native/core/schemas/metadata/MetadataSchema.go +324 -198
- package/native/core/schemas/metadata/MetadataSet.go +49 -2
- package/native/core/schemas/metadata/MetadataTemplate.go +61 -15
- package/native/core/schemas/metadata/MetadataTuple.go +21 -0
- package/native/core/schemas/metadata/MetadataTupleType.go +61 -19
- package/native/core/schemas/metadata/metadata_atomic_tags_are_owned_test.go +75 -0
- package/native/core/schemas/metadata/metadata_bigint_is_comparable_test.go +5 -0
- package/native/core/schemas/metadata/metadata_collection_generic_argument_dot_test.go +13 -8
- package/native/core/schemas/metadata/metadata_collection_name_allocation_test.go +9 -2
- package/native/core/schemas/metadata/metadata_collection_openapi_name_cascade_test.go +5 -0
- package/native/core/schemas/metadata/metadata_collection_openapi_name_test.go +7 -1
- package/native/core/schemas/metadata/metadata_object_coverage_compares_property_values_test.go +61 -0
- package/native/core/schemas/metadata/metadata_object_type_required_literal_property_test.go +7 -1
- package/native/core/schemas/metadata/metadata_schema_covers_tag_matrix_test.go +8 -3
- package/native/core/schemas/metadata/metadata_schema_merge_keeps_inputs_test.go +117 -0
- package/native/core/schemas/metadata/metadata_schema_optional_root_isolation_test.go +59 -0
- package/native/core/schemas/metadata/metadata_schema_shallow_clone_names_test.go +36 -0
- package/native/core/schemas/metadata/metadata_schema_sole_literal_caches_pointer_test.go +5 -0
- package/native/core/schemas/metadata/schema_sequence_and_json_coverage_test.go +289 -387
- package/native/core/schemas/protobuf/IProtobufProperty.go +11 -0
- package/native/core/schemas/protobuf/IProtobufPropertyType.go +94 -0
- package/native/core/schemas/protobuf/IProtobufSchema.go +89 -5
- package/native/core/utils/NumberUtil.go +201 -0
- package/native/core/utils/PromiseTypeFactory.go +12 -1
- package/native/core/utils/number_util_rational_keeps_written_value_test.go +67 -0
- package/native/core/utils/number_util_reads_javascript_number_grammar_test.go +152 -0
- package/native/core/utils/promise_type_factory_semantics_test.go +5 -0
- package/native/transform/CallExpressionTransformer.go +42 -10
- package/native/transform/FileTransformer.go +72 -53
- package/native/transform/ITransformProps.go +7 -0
- package/native/transform/NodeTransformer.go +10 -1
- package/native/transform/TransformerError.go +31 -0
- package/native/transform/call_expression_transformer_registry_coverage_test.go +40 -31
- package/native/transform/call_expression_transformer_target_test.go +33 -4
- package/native/transform/features/CreateIsTransformer.go +0 -1
- package/native/transform/features/CreateShallowTransformer.go +0 -1
- package/native/transform/features/CreateValidateTransformer.go +0 -1
- package/native/transform/features/IsTransformer.go +0 -1
- package/native/transform/features/ShallowTransformer.go +0 -1
- package/native/transform/features/ValidateTransformer.go +0 -1
- package/native/transform/features/functional/FunctionalGenericTransformer.go +46 -7
- package/native/transform/features/http/CreateHttpIsQueryTransformer.go +0 -1
- package/native/transform/features/http/CreateHttpQueryTransformer.go +0 -1
- package/native/transform/features/http/CreateHttpValidateQueryTransformer.go +0 -1
- package/native/transform/features/http/HttpIsQueryTransformer.go +0 -1
- package/native/transform/features/http/HttpQueryTransformer.go +0 -1
- package/native/transform/features/http/HttpValidateQueryTransformer.go +0 -1
- package/native/transform/features/llm/LlmEvaluationProbabilityDeclarations_test.go +6 -1
- package/native/transform/features/llm/LlmEvaluationTransformer.go +55 -1
- package/native/transform/features/notations/notation_transformer_capitalize_test.go +29 -0
- package/native/transform/features/protobuf/ProtobufCreateDecodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufCreateEncodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufCreateIsDecodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufCreateIsEncodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufCreateValidateDecodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufCreateValidateEncodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufDecodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufEncodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufIsDecodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufIsEncodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufValidateDecodeTransformer.go +1 -1
- package/native/transform/features/protobuf/ProtobufValidateEncodeTransformer.go +1 -1
- package/native/transform/features/reflect/reflect_metadata_transformer_edge_branches_test.go +42 -30
- package/native/transform/file_transformer_coverage_test.go +17 -3
- package/native/transform/internal/GenericTransformer.go +67 -113
- package/native/transform/transform.go +16 -2
- package/package.json +7 -6
- package/src/TypeGuardError.ts +20 -4
- package/src/basic.ts +1020 -0
- package/src/compare.ts +21 -0
- package/src/functional.ts +42 -0
- package/src/http.ts +136 -34
- package/src/internal/_IProtobufWriter.ts +115 -0
- package/src/internal/_ProtobufReader.ts +159 -1
- package/src/internal/_ProtobufSizer.ts +137 -5
- package/src/internal/_ProtobufWriter.ts +154 -1
- package/src/internal/_accessExpressionAsString.ts +11 -0
- package/src/internal/_assertGuard.ts +12 -0
- package/src/internal/_coerceLlmArguments.ts +10 -0
- package/src/internal/_createLlmEvaluation.ts +10 -53
- package/src/internal/_createStandardSchema.ts +13 -0
- package/src/internal/_decimal.ts +77 -0
- package/src/internal/_functionalTypeGuardErrorFactory.ts +8 -0
- package/src/internal/_httpFormDataReadArray.ts +9 -0
- package/src/internal/_httpFormDataReadBigint.ts +15 -1
- package/src/internal/_httpFormDataReadBlob.ts +11 -0
- package/src/internal/_httpFormDataReadBoolean.ts +14 -1
- package/src/internal/_httpFormDataReadFile.ts +11 -0
- package/src/internal/_httpFormDataReadNumber.ts +14 -1
- package/src/internal/_httpFormDataReadString.ts +15 -1
- package/src/internal/_httpHeaderReadBigint.ts +17 -1
- package/src/internal/_httpHeaderReadBoolean.ts +12 -0
- package/src/internal/_httpHeaderReadNumber.ts +17 -1
- package/src/internal/_httpParameterReadBigint.ts +14 -0
- package/src/internal/_httpParameterReadBoolean.ts +11 -0
- package/src/internal/_httpParameterReadNumber.ts +14 -0
- package/src/internal/_httpParameterReadString.ts +17 -2
- package/src/internal/_httpQueryParseURLSearchParams.ts +14 -0
- package/src/internal/_httpQueryReadArray.ts +9 -0
- package/src/internal/_httpQueryReadBigint.ts +18 -1
- package/src/internal/_httpQueryReadBoolean.ts +15 -1
- package/src/internal/_httpQueryReadNumber.ts +18 -1
- package/src/internal/_httpQueryReadString.ts +15 -1
- package/src/internal/_isBetween.ts +8 -0
- package/src/internal/_isBigintString.ts +11 -0
- package/src/internal/_isFormatByte.ts +12 -0
- package/src/internal/_isFormatDate.ts +11 -0
- package/src/internal/_isFormatDateTime.ts +13 -0
- package/src/internal/_isFormatDuration.ts +13 -0
- package/src/internal/_isFormatEmail.ts +13 -0
- package/src/internal/_isFormatHostname.ts +12 -0
- package/src/internal/_isFormatIdnEmail.ts +14 -0
- package/src/internal/_isFormatIdnHostname.ts +14 -0
- package/src/internal/_isFormatIpv4.ts +11 -0
- package/src/internal/_isFormatIpv6.ts +12 -0
- package/src/internal/_isFormatIri.ts +11 -0
- package/src/internal/_isFormatIriReference.ts +13 -0
- package/src/internal/_isFormatJsonPointer.ts +11 -0
- package/src/internal/_isFormatPassword.ts +11 -0
- package/src/internal/_isFormatRegex.ts +11 -0
- package/src/internal/_isFormatRelativeJsonPointer.ts +11 -0
- package/src/internal/_isFormatTime.ts +12 -0
- package/src/internal/_isFormatUri.ts +15 -0
- package/src/internal/_isFormatUriReference.ts +11 -0
- package/src/internal/_isFormatUriTemplate.ts +14 -1
- package/src/internal/_isFormatUrl.ts +15 -0
- package/src/internal/_isFormatUuid.ts +11 -0
- package/src/internal/_isMultipleOf.ts +11 -0
- package/src/internal/_isTypeFloat.ts +9 -0
- package/src/internal/_isTypeInt16.ts +8 -0
- package/src/internal/_isTypeInt32.ts +8 -0
- package/src/internal/_isTypeInt64.ts +11 -0
- package/src/internal/_isTypeInt64Bigint.ts +8 -0
- package/src/internal/_isTypeInt8.ts +8 -0
- package/src/internal/_isTypeUint16.ts +8 -0
- package/src/internal/_isTypeUint32.ts +8 -0
- package/src/internal/_isTypeUint64.ts +11 -0
- package/src/internal/_isTypeUint64Bigint.ts +8 -0
- package/src/internal/_isTypeUint8.ts +8 -0
- package/src/internal/_isUniqueItems.ts +46 -0
- package/src/internal/_jsonStringifyArray.ts +2 -0
- package/src/internal/_jsonStringifyElement.ts +2 -0
- package/src/internal/_jsonStringifyNumber.ts +9 -0
- package/src/internal/_jsonStringifyProperty.ts +3 -1
- package/src/internal/_jsonStringifyRest.ts +11 -0
- package/src/internal/_jsonStringifyString.ts +13 -0
- package/src/internal/_jsonStringifyTail.ts +8 -0
- package/src/internal/_llmApplicationFinalize.ts +13 -0
- package/src/internal/_notationAny.ts +14 -0
- package/src/internal/_notationAssign.ts +12 -0
- package/src/internal/_notationKebab.ts +9 -0
- package/src/internal/_notationKeyCollision.ts +8 -0
- package/src/internal/_notationSnake.ts +12 -0
- package/src/internal/_parseLlmArguments.ts +12 -0
- package/src/internal/_plainCloneAny.ts +15 -0
- package/src/internal/_randomArray.ts +42 -20
- package/src/internal/_randomBigint.ts +116 -3
- package/src/internal/_randomBoolean.ts +8 -0
- package/src/internal/_randomFormatByte.ts +8 -0
- package/src/internal/_randomFormatDate.ts +10 -0
- package/src/internal/_randomFormatDatetime.ts +10 -0
- package/src/internal/_randomFormatDuration.ts +8 -0
- package/src/internal/_randomFormatEmail.ts +8 -0
- package/src/internal/_randomFormatHostname.ts +15 -1
- package/src/internal/_randomFormatIdnEmail.ts +13 -0
- package/src/internal/_randomFormatIdnHostname.ts +12 -0
- package/src/internal/_randomFormatIpv4.ts +8 -0
- package/src/internal/_randomFormatIpv6.ts +8 -0
- package/src/internal/_randomFormatIri.ts +11 -0
- package/src/internal/_randomFormatIriReference.ts +12 -0
- package/src/internal/_randomFormatJsonPointer.ts +12 -0
- package/src/internal/_randomFormatPassword.ts +13 -0
- package/src/internal/_randomFormatRegex.ts +8 -0
- package/src/internal/_randomFormatRelativeJsonPointer.ts +8 -0
- package/src/internal/_randomFormatTime.ts +13 -0
- package/src/internal/_randomFormatUri.ts +12 -0
- package/src/internal/_randomFormatUriReference.ts +12 -0
- package/src/internal/_randomFormatUriTemplate.ts +12 -0
- package/src/internal/_randomFormatUrl.ts +12 -0
- package/src/internal/_randomFormatUuid.ts +13 -0
- package/src/internal/_randomInteger.ts +99 -33
- package/src/internal/_randomMultiple.ts +47 -15
- package/src/internal/_randomNumber.ts +107 -38
- package/src/internal/_randomPattern.ts +12 -0
- package/src/internal/_randomPick.ts +25 -7
- package/src/internal/_randomString.ts +36 -13
- package/src/internal/_randomStringLength.ts +31 -1
- package/src/internal/_stringLength.ts +11 -0
- package/src/internal/_stringLengthGte.ts +11 -0
- package/src/internal/_stringLengthLte.ts +11 -0
- package/src/internal/_throwTypeGuardError.ts +9 -0
- package/src/internal/_validateReport.ts +15 -0
- package/src/internal/private/__notationRename.ts +5 -0
- package/src/internal/private/__randomComposition.ts +27 -3
- package/src/internal/private/__randomEpoch.ts +15 -0
- package/src/json.ts +49 -14
- package/src/llm.ts +45 -26
- package/src/module.ts +1 -935
- package/src/notations.ts +60 -0
- package/src/plain.ts +38 -0
- package/src/protobuf.ts +41 -7
- package/src/reflect.ts +16 -12
- package/src/transform.ts +17 -0
- package/native/cmd/ttsc-typia/boolean_literal_discriminant_schema_transform_test.go +0 -374
- package/native/cmd/ttsc-typia/build_reports_semantic_diagnostics_test.go +0 -34
- package/native/cmd/ttsc-typia/build_reports_syntactic_diagnostics_test.go +0 -34
- package/native/cmd/ttsc-typia/command_routes_and_diagnostics_coverage_test.go +0 -316
- package/native/cmd/ttsc-typia/compare_less_transform_test.go +0 -180
- package/native/cmd/ttsc-typia/compare_method_delegation_transform_test.go +0 -173
- package/native/cmd/ttsc-typia/compare_native_object_overmatch_transform_test.go +0 -161
- package/native/cmd/ttsc-typia/compare_template_literal_union_transform_test.go +0 -241
- package/native/cmd/ttsc-typia/compare_union_discrimination_transform_test.go +0 -289
- package/native/cmd/ttsc-typia/escaped_property_key_path_transform_test.go +0 -193
- package/native/cmd/ttsc-typia/finite_option_number_leaf_transform_test.go +0 -240
- package/native/cmd/ttsc-typia/intersection_all_never_union_transform_test.go +0 -168
- package/native/cmd/ttsc-typia/intersection_brand_transform_test.go +0 -267
- package/native/cmd/ttsc-typia/is_object_function_member_transform_test.go +0 -205
- package/native/cmd/ttsc-typia/json_is_stringify_finite_number_transform_test.go +0 -198
- package/native/cmd/ttsc-typia/json_stringify_contextual_undefined_transform_test.go +0 -556
- package/native/cmd/ttsc-typia/json_stringify_special_key_transform_test.go +0 -238
- package/native/cmd/ttsc-typia/notation_dynamic_keys_transform_test.go +0 -286
- package/native/cmd/ttsc-typia/notation_literal_collision_transform_test.go +0 -164
- package/native/cmd/ttsc-typia/plain_prune_union_object_overmatch_transform_test.go +0 -219
- package/native/cmd/ttsc-typia/recursive_container_helper_index_transform_test.go +0 -206
- package/native/cmd/ttsc-typia/reflect_literals_bigint_transform_test.go +0 -148
- package/native/cmd/ttsc-typia/reflect_schema_bigint_transform_test.go +0 -173
- package/native/cmd/ttsc-typia/run_default_build_route_test.go +0 -31
- package/native/cmd/ttsc-typia/shallow_depth_runtime_test.go +0 -173
- package/native/cmd/ttsc-typia/shallow_factory_depth_runtime_test.go +0 -171
- package/native/cmd/ttsc-typia/symbol_index_domain_transform_test.go +0 -316
- package/native/cmd/ttsc-typia/transform_declaration_source_produces_no_javascript_test.go +0 -67
- package/native/cmd/ttsc-typia/transform_single_file_js_empty_emit_reports_no_output_test.go +0 -100
- package/native/core/factories/internal/metadata/optional_coalesce_coverage_test.go +0 -38
- package/native/core/programmers/functional/functional_assert_helper_coverage_test.go +0 -26
- package/native/core/programmers/iterate/iterate_check_coverage_test.go +0 -96
- package/native/core/programmers/programmer_direct_helper_coverage_test.go +0 -70
- package/native/core/schemas/metadata/IMetadataDictionary.go +0 -8
- package/native/core/schemas/protobuf/protobuf_marker_coverage_test.go +0 -58
- package/native/core/typings/Writable.go +0 -5
- package/native/transform/ImportTransformer.go +0 -285
- package/native/transform/TypiaGenerator.go +0 -171
- package/native/transform/features/feature_transformer_entry_coverage_test.go +0 -59
- package/native/transform/features/http/http_transformer_entry_coverage_test.go +0 -65
- package/native/transform/features/json/json_transformer_entry_coverage_test.go +0 -56
- package/native/transform/features/llm/llm_transformer_entry_coverage_test.go +0 -50
- package/native/transform/features/notations/notation_transformer_entry_coverage_test.go +0 -58
- package/native/transform/features/plain/plain_transformer_entry_coverage_test.go +0 -61
- package/native/transform/features/protobuf/protobuf_transformer_entry_coverage_test.go +0 -56
- package/native/transform/features/reflect/reflect_transformer_entry_coverage_test.go +0 -47
- package/native/transform/import_transformer_coverage_test.go +0 -153
- package/native/transform/typia_generator_helpers_coverage_test.go +0 -166
package/lib/http.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.mjs","names":[],"sources":["../src/http.ts"],"sourcesContent":["import {\n Atomic,\n IReadableURLSearchParams,\n IValidation,\n Resolved,\n} from \"@typia/interface\";\n\nimport { TypeGuardError } from \"./TypeGuardError\";\nimport { NoTransformConfigurationError } from \"./transformers/NoTransformConfigurationError\";\n\n/* ===========================================================\n HTTP\n - FORM-DATA\n - QUERY\n - HEADERS\n - PARAMETER\n - FACTORY FUNCTIONS\n==============================================================\n FORM-DATA\n----------------------------------------------------------- */\n/**\n * Decodes `FormData` into type `T`.\n *\n * Parses a `FormData` instance with automatic type casting. Properties typed as\n * `boolean` or `Blob` are cast to expected types during decoding.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string`, `Blob`, `File` or their array\n * types allowed\n * 4. No union types allowed\n *\n * Does not validate the decoded value. For validation, use:\n *\n * - {@link assertFormData} — Throws on type mismatch\n * - {@link isFormData} — Returns `null` on type mismatch\n * - {@link validateFormData} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input FormData instance to decode\n * @returns Decoded object of type `T`\n * @danger You must configure the generic argument `T`\n */\nexport function formData<T extends object>(input: FormData): Resolved<T>;\n\n/** @internal */\nexport function formData(): never {\n NoTransformConfigurationError(\"http.formData\");\n}\n\n/**\n * Decodes `FormData` into type `T` with assertion.\n *\n * Parses a `FormData` instance with automatic type casting, then validates the\n * result via {@link assert}. Throws {@link TypeGuardError} on mismatch.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string`, `Blob`, `File` or their array\n * types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link formData} — No validation\n * - {@link isFormData} — Returns `null` instead of throwing\n * - {@link validateFormData} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input FormData instance to decode\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Decoded object of type `T`\n * @throws {TypeGuardError} When decoded value doesn't conform to type `T`\n * @danger You must configure the generic argument `T`\n */\nexport function assertFormData<T extends object>(\n input: FormData,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Resolved<T>;\n\n/** @internal */\nexport function assertFormData(): never {\n NoTransformConfigurationError(\"http.assertFormData\");\n}\n\n/**\n * Decodes `FormData` into type `T` with type checking.\n *\n * Parses a `FormData` instance with automatic type casting, then validates the\n * result via {@link is}. Returns `null` on type mismatch.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string`, `Blob`, `File` or their array\n * types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link formData} — No validation\n * - {@link assertFormData} — Throws instead of returning `null`\n * - {@link validateFormData} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input FormData instance to decode\n * @returns Decoded object of type `T`, or `null` if invalid\n * @danger You must configure the generic argument `T`\n */\nexport function isFormData<T extends object>(\n input: FormData,\n): Resolved<T> | null;\n\n/** @internal */\nexport function isFormData(): never {\n NoTransformConfigurationError(\"http.isFormData\");\n}\n\n/**\n * Decodes `FormData` into type `T` with validation.\n *\n * Parses a `FormData` instance with automatic type casting, then validates the\n * result via {@link validate}. Returns {@link IValidation.IFailure} with all\n * errors on mismatch, or {@link IValidation.ISuccess} with decoded value.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string`, `Blob`, `File` or their array\n * types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link formData} — No validation\n * - {@link assertFormData} — Throws on first error\n * - {@link isFormData} — Returns `null` instead of error details\n *\n * @template T Target object type\n * @param input FormData instance to decode\n * @returns Validation result containing decoded value or errors\n * @danger You must configure the generic argument `T`\n */\nexport function validateFormData<T extends object>(\n input: FormData,\n): IValidation<Resolved<T>>;\n\n/** @internal */\nexport function validateFormData(): never {\n NoTransformConfigurationError(\"http.validateFormData\");\n}\n\n/* -----------------------------------------------------------\n QUERY\n----------------------------------------------------------- */\n/**\n * Decodes URL query string into type `T`.\n *\n * Parses a query string or `URLSearchParams` instance with automatic type\n * casting. Properties typed as `boolean` or `number` are cast to expected types\n * during decoding.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 4. No union types allowed\n *\n * Does not validate the decoded value. For validation, use:\n *\n * - {@link assertQuery} — Throws on type mismatch\n * - {@link isQuery} — Returns `null` on type mismatch\n * - {@link validateQuery} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input Query string or URLSearchParams instance\n * @returns Decoded object of type `T`\n * @danger You must configure the generic argument `T`\n */\nexport function query<T extends object>(\n input: string | IReadableURLSearchParams,\n): Resolved<T>;\n\n/** @internal */\nexport function query(): never {\n NoTransformConfigurationError(\"http.query\");\n}\n\n/**\n * Decodes URL query string into type `T` with assertion.\n *\n * Parses a query string or `URLSearchParams` instance with automatic type\n * casting, then validates the result via {@link assert}. Throws\n * {@link TypeGuardError} on mismatch.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link query} — No validation\n * - {@link isQuery} — Returns `null` instead of throwing\n * - {@link validateQuery} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input Query string or URLSearchParams instance\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Decoded object of type `T`\n * @throws {TypeGuardError} When decoded value doesn't conform to type `T`\n * @danger You must configure the generic argument `T`\n */\nexport function assertQuery<T extends object>(\n input: string | IReadableURLSearchParams,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Resolved<T>;\n\n/** @internal */\nexport function assertQuery(): never {\n NoTransformConfigurationError(\"http.assertQuery\");\n}\n\n/**\n * Decodes URL query string into type `T` with type checking.\n *\n * Parses a query string or `URLSearchParams` instance with automatic type\n * casting, then validates the result via {@link is}. Returns `null` on type\n * mismatch.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link query} — No validation\n * - {@link assertQuery} — Throws instead of returning `null`\n * - {@link validateQuery} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input Query string or URLSearchParams instance\n * @returns Decoded object of type `T`, or `null` if invalid\n * @danger You must configure the generic argument `T`\n */\nexport function isQuery<T extends object>(\n input: string | IReadableURLSearchParams,\n): Resolved<T> | null;\n\n/** @internal */\nexport function isQuery(): never {\n NoTransformConfigurationError(\"http.isQuery\");\n}\n\n/**\n * Decodes URL query string into type `T` with validation.\n *\n * Parses a query string or `URLSearchParams` instance with automatic type\n * casting, then validates the result via {@link validate}. Returns\n * {@link IValidation.IFailure} with all errors on mismatch, or\n * {@link IValidation.ISuccess} with decoded value.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link query} — No validation\n * - {@link assertQuery} — Throws on first error\n * - {@link isQuery} — Returns `null` instead of error details\n *\n * @template T Target object type\n * @param input Query string or URLSearchParams instance\n * @returns Validation result containing decoded value or errors\n * @danger You must configure the generic argument `T`\n */\nexport function validateQuery<T extends object>(\n input: string | IReadableURLSearchParams,\n): IValidation<Resolved<T>>;\n\n/** @internal */\nexport function validateQuery(): never {\n NoTransformConfigurationError(\"http.validateQuery\");\n}\n\n/* -----------------------------------------------------------\n HEADERS\n----------------------------------------------------------- */\n/**\n * Decodes HTTP headers into type `T`.\n *\n * Parses HTTP headers object with automatic type casting. Properties typed as\n * `boolean` or `number` are cast to expected types during decoding. Compatible\n * with Express and Fastify request headers.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Property keys must be lowercase\n * 4. Property values cannot be `null` (but `undefined` is allowed)\n * 5. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 6. No union types allowed\n * 7. Property `set-cookie` must be array type\n * 8. These properties cannot be array type: `age`, `authorization`,\n * `content-length`, `content-type`, `etag`, `expires`, `from`, `host`,\n * `if-modified-since`, `if-unmodified-since`, `last-modified`, `location`,\n * `max-forwards`, `proxy-authorization`, `referer`, `retry-after`, `server`,\n * `user-agent`\n *\n * Does not validate the decoded value. For validation, use:\n *\n * - {@link assertHeaders} — Throws on type mismatch\n * - {@link isHeaders} — Returns `null` on type mismatch\n * - {@link validateHeaders} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input Headers object from HTTP request\n * @returns Decoded object of type `T`\n * @danger You must configure the generic argument `T`\n */\nexport function headers<T extends object>(\n input: Record<string, string | string[] | undefined>,\n): Resolved<T>;\n\n/** @internal */\nexport function headers(): never {\n NoTransformConfigurationError(\"http.headers\");\n}\n\n/**\n * Decodes HTTP headers into type `T` with assertion.\n *\n * Parses HTTP headers object with automatic type casting, then validates the\n * result via {@link assert}. Throws {@link TypeGuardError} on mismatch.\n * Compatible with Express and Fastify request headers.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Property keys must be lowercase\n * 4. Property values cannot be `null` (but `undefined` is allowed)\n * 5. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 6. No union types allowed\n * 7. Property `set-cookie` must be array type\n * 8. These properties cannot be array type: `age`, `authorization`,\n * `content-length`, `content-type`, `etag`, `expires`, `from`, `host`,\n * `if-modified-since`, `if-unmodified-since`, `last-modified`, `location`,\n * `max-forwards`, `proxy-authorization`, `referer`, `retry-after`, `server`,\n * `user-agent`\n *\n * Related functions:\n *\n * - {@link headers} — No validation\n * - {@link isHeaders} — Returns `null` instead of throwing\n * - {@link validateHeaders} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input Headers object from HTTP request\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Decoded object of type `T`\n * @throws {TypeGuardError} When decoded value doesn't conform to type `T`\n * @danger You must configure the generic argument `T`\n */\nexport function assertHeaders<T extends object>(\n input: Record<string, string | string[] | undefined>,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Resolved<T>;\n\n/** @internal */\nexport function assertHeaders(): never {\n NoTransformConfigurationError(\"http.assertHeaders\");\n}\n\n/**\n * Decodes HTTP headers into type `T` with type checking.\n *\n * Parses HTTP headers object with automatic type casting, then validates the\n * result via {@link is}. Returns `null` on type mismatch. Compatible with\n * Express and Fastify request headers.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Property keys must be lowercase\n * 4. Property values cannot be `null` (but `undefined` is allowed)\n * 5. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 6. No union types allowed\n * 7. Property `set-cookie` must be array type\n * 8. These properties cannot be array type: `age`, `authorization`,\n * `content-length`, `content-type`, `etag`, `expires`, `from`, `host`,\n * `if-modified-since`, `if-unmodified-since`, `last-modified`, `location`,\n * `max-forwards`, `proxy-authorization`, `referer`, `retry-after`, `server`,\n * `user-agent`\n *\n * Related functions:\n *\n * - {@link headers} — No validation\n * - {@link assertHeaders} — Throws instead of returning `null`\n * - {@link validateHeaders} — Returns detailed validation errors\n *\n * @template T Target object type\n * @param input Headers object from HTTP request\n * @returns Decoded object of type `T`, or `null` if invalid\n * @danger You must configure the generic argument `T`\n */\nexport function isHeaders<T extends object>(\n input: Record<string, string | string[] | undefined>,\n): Resolved<T> | null;\n\n/** @internal */\nexport function isHeaders(): never {\n NoTransformConfigurationError(\"http.isHeaders\");\n}\n\n/**\n * Decodes HTTP headers into type `T` with validation.\n *\n * Parses HTTP headers object with automatic type casting, then validates the\n * result via {@link validate}. Returns {@link IValidation.IFailure} with all\n * errors on mismatch, or {@link IValidation.ISuccess} with decoded value.\n * Compatible with Express and Fastify request headers.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Property keys must be lowercase\n * 4. Property values cannot be `null` (but `undefined` is allowed)\n * 5. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 6. No union types allowed\n * 7. Property `set-cookie` must be array type\n * 8. These properties cannot be array type: `age`, `authorization`,\n * `content-length`, `content-type`, `etag`, `expires`, `from`, `host`,\n * `if-modified-since`, `if-unmodified-since`, `last-modified`, `location`,\n * `max-forwards`, `proxy-authorization`, `referer`, `retry-after`, `server`,\n * `user-agent`\n *\n * Related functions:\n *\n * - {@link headers} — No validation\n * - {@link assertHeaders} — Throws on first error\n * - {@link isHeaders} — Returns `null` instead of error details\n *\n * @template T Target object type\n * @param input Headers object from HTTP request\n * @returns Validation result containing decoded value or errors\n * @danger You must configure the generic argument `T`\n */\nexport function validateHeaders<T extends object>(\n input: Record<string, string | string[] | undefined>,\n): IValidation<Resolved<T>>;\n\n/** @internal */\nexport function validateHeaders(): never {\n NoTransformConfigurationError(\"http.validateHeaders\");\n}\n\n/* -----------------------------------------------------------\n PARAMETER\n----------------------------------------------------------- */\n/**\n * Decodes URL path parameter into type `T`.\n *\n * Parses a path parameter string with automatic type casting. When type `T` is\n * `boolean` or `number`, casts the string value to the expected type. Also\n * performs type assertion via {@link assert}, throwing {@link TypeGuardError} on\n * mismatch.\n *\n * @template T Target atomic type (`boolean`, `bigint`, `number`, `string`, or\n * `null`)\n * @param input Path parameter string\n * @returns Decoded value of type `T`\n * @throws {TypeGuardError} When decoded value doesn't conform to type `T`\n * @danger You must configure the generic argument `T`\n */\nexport function parameter<T extends Atomic.Type | null>(\n input: string,\n): Resolved<T>;\n\n/** @internal */\nexport function parameter(): never {\n NoTransformConfigurationError(\"http.parameter\");\n}\n\n/* -----------------------------------------------------------\n FACTORY FUNCTIONS\n----------------------------------------------------------- */\n/**\n * Creates reusable {@link formData} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createFormData(): never;\n\n/**\n * Creates reusable {@link formData} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createFormData<T extends object>(): (input: FormData) => T;\n\n/** @internal */\nexport function createFormData<T>(): (input: FormData) => T {\n NoTransformConfigurationError(\"http.createFormData\");\n}\n\n/**\n * Creates reusable {@link assertFormData} function.\n *\n * @template T Target object type\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertFormData(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertFormData} function.\n *\n * @template T Target object type\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Reusable decoder function\n */\nexport function createAssertFormData<T extends object>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: FormData,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => T;\n\n/** @internal */\nexport function createAssertFormData<T>(): (\n input: FormData,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => T {\n NoTransformConfigurationError(\"http.createAssertFormData\");\n}\n\n/**\n * Creates reusable {@link isFormData} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createIsFormData(): never;\n\n/**\n * Creates reusable {@link isFormData} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createIsFormData<T extends object>(): (\n input: FormData,\n) => T | null;\n\n/** @internal */\nexport function createIsFormData<T>(): (input: FormData) => T | null {\n NoTransformConfigurationError(\"http.createIsFormData\");\n}\n\n/**\n * Creates reusable {@link validateFormData} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateFormData(): never;\n\n/**\n * Creates reusable {@link validateFormData} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createValidateFormData<T extends object>(): (\n input: FormData,\n) => IValidation<Resolved<T>>;\n\n/** @internal */\nexport function createValidateFormData<T>(): (\n input: FormData,\n) => IValidation<Resolved<T>> {\n NoTransformConfigurationError(\"http.createValidateFormData\");\n}\n\n/**\n * Creates reusable {@link query} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createQuery(): never;\n\n/**\n * Creates reusable {@link query} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createQuery<T extends object>(): (\n input: string | IReadableURLSearchParams,\n) => T;\n\n/** @internal */\nexport function createQuery<T>(): (\n input: string | IReadableURLSearchParams,\n) => T {\n NoTransformConfigurationError(\"http.createQuery\");\n}\n\n/**\n * Creates reusable {@link assertQuery} function.\n *\n * @template T Target object type\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertQuery(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertQuery} function.\n *\n * @template T Target object type\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Reusable decoder function\n */\nexport function createAssertQuery<T extends object>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: string | IReadableURLSearchParams,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => T;\n\n/** @internal */\nexport function createAssertQuery<T>(): (\n input: string | IReadableURLSearchParams,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => T {\n NoTransformConfigurationError(\"http.createAssertQuery\");\n}\n\n/**\n * Creates reusable {@link isQuery} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createIsQuery(): never;\n\n/**\n * Creates reusable {@link isQuery} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createIsQuery<T extends object>(): (\n input: string | IReadableURLSearchParams,\n) => T | null;\n\n/** @internal */\nexport function createIsQuery<T>(): (\n input: string | IReadableURLSearchParams,\n) => T | null {\n NoTransformConfigurationError(\"http.createIsQuery\");\n}\n\n/**\n * Creates reusable {@link validateQuery} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateQuery(): never;\n\n/**\n * Creates reusable {@link validateQuery} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createValidateQuery<T extends object>(): (\n input: string | IReadableURLSearchParams,\n) => IValidation<Resolved<T>>;\n\n/** @internal */\nexport function createValidateQuery<T>(): (\n input: string | IReadableURLSearchParams,\n) => IValidation<Resolved<T>> {\n NoTransformConfigurationError(\"http.createValidateQuery\");\n}\n\n/**\n * Creates reusable {@link headers} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createHeaders(): never;\n\n/**\n * Creates reusable {@link headers} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createHeaders<T extends object>(): (\n input: Record<string, string | string[] | undefined>,\n) => T;\n\n/** @internal */\nexport function createHeaders<T>(): (\n input: Record<string, string | string[] | undefined>,\n) => T {\n NoTransformConfigurationError(\"http.createHeaders\");\n}\n\n/**\n * Creates reusable {@link assertHeaders} function.\n *\n * @template T Target object type\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertHeaders(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertHeaders} function.\n *\n * @template T Target object type\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n * @returns Reusable decoder function\n */\nexport function createAssertHeaders<T extends object>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: Record<string, string | string[] | undefined>,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => T;\n\n/** @internal */\nexport function createAssertHeaders<T>(): (\n input: Record<string, string | string[] | undefined>,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => T {\n NoTransformConfigurationError(\"http.createAssertHeaders\");\n}\n\n/**\n * Creates reusable {@link isHeaders} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createIsHeaders(): never;\n\n/**\n * Creates reusable {@link isHeaders} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createIsHeaders<T extends object>(): (\n input: Record<string, string | string[] | undefined>,\n) => T | null;\n\n/** @internal */\nexport function createIsHeaders<T>(): (\n input: Record<string, string | string[] | undefined>,\n) => T | null {\n NoTransformConfigurationError(\"http.createIsHeaders\");\n}\n\n/**\n * Creates reusable {@link validateHeaders} function.\n *\n * @template T Target object type\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateHeaders(): never;\n\n/**\n * Creates reusable {@link validateHeaders} function.\n *\n * @template T Target object type\n * @returns Reusable decoder function\n */\nexport function createValidateHeaders<T extends object>(): (\n input: Record<string, string | string[] | undefined>,\n) => IValidation<Resolved<T>>;\n\n/** @internal */\nexport function createValidateHeaders<T>(): (\n input: Record<string, string | string[] | undefined>,\n) => IValidation<Resolved<T>> {\n NoTransformConfigurationError(\"http.createValidateHeaders\");\n}\n\n/**\n * Creates reusable {@link parameter} function.\n *\n * @template T Target atomic type\n * @danger You must configure the generic argument `T`\n */\nexport function createParameter(): never;\n\n/**\n * Creates reusable {@link parameter} function.\n *\n * @template T Target atomic type\n * @returns Reusable decoder function\n */\nexport function createParameter<T extends Atomic.Type | null>(): (\n input: string,\n) => T;\n\n/** @internal */\nexport function createParameter<T extends Atomic.Type | null>(): (\n input: string,\n) => T {\n NoTransformConfigurationError(\"http.createParameter\");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,SAAgB,WAAkB;CAChC,8BAA8B,eAAe;AAC/C;;AAoCA,SAAgB,iBAAwB;CACtC,8BAA8B,qBAAqB;AACrD;;AAgCA,SAAgB,aAAoB;CAClC,8BAA8B,iBAAiB;AACjD;;AAiCA,SAAgB,mBAA0B;CACxC,8BAA8B,uBAAuB;AACvD;;AAmCA,SAAgB,QAAe;CAC7B,8BAA8B,YAAY;AAC5C;;AAoCA,SAAgB,cAAqB;CACnC,8BAA8B,kBAAkB;AAClD;;AAgCA,SAAgB,UAAiB;CAC/B,8BAA8B,cAAc;AAC9C;;AAiCA,SAAgB,gBAAuB;CACrC,8BAA8B,oBAAoB;AACpD;;AA2CA,SAAgB,UAAiB;CAC/B,8BAA8B,cAAc;AAC9C;;AA4CA,SAAgB,gBAAuB;CACrC,8BAA8B,oBAAoB;AACpD;;AAwCA,SAAgB,YAAmB;CACjC,8BAA8B,gBAAgB;AAChD;;AAyCA,SAAgB,kBAAyB;CACvC,8BAA8B,sBAAsB;AACtD;;AAyBA,SAAgB,YAAmB;CACjC,8BAA8B,gBAAgB;AAChD;;AAsBA,SAAgB,iBAA4C;CAC1D,8BAA8B,qBAAqB;AACrD;;AA8BA,SAAgB,uBAGT;CACL,8BAA8B,2BAA2B;AAC3D;;AAqBA,SAAgB,mBAAqD;CACnE,8BAA8B,uBAAuB;AACvD;;AAqBA,SAAgB,yBAEc;CAC5B,8BAA8B,6BAA6B;AAC7D;;AAqBA,SAAgB,cAET;CACL,8BAA8B,kBAAkB;AAClD;;AA8BA,SAAgB,oBAGT;CACL,8BAA8B,wBAAwB;AACxD;;AAqBA,SAAgB,gBAEF;CACZ,8BAA8B,oBAAoB;AACpD;;AAqBA,SAAgB,sBAEc;CAC5B,8BAA8B,0BAA0B;AAC1D;;AAqBA,SAAgB,gBAET;CACL,8BAA8B,oBAAoB;AACpD;;AA8BA,SAAgB,sBAGT;CACL,8BAA8B,0BAA0B;AAC1D;;AAqBA,SAAgB,kBAEF;CACZ,8BAA8B,sBAAsB;AACtD;;AAqBA,SAAgB,wBAEc;CAC5B,8BAA8B,4BAA4B;AAC5D;;AAqBA,SAAgB,kBAET;CACL,8BAA8B,sBAAsB;AACtD"}
|
|
1
|
+
{"version":3,"file":"http.mjs","names":[],"sources":["../src/http.ts"],"sourcesContent":["import {\n Atomic,\n IReadableURLSearchParams,\n IValidation,\n Resolved,\n} from \"@typia/interface\";\n\nimport { TypeGuardError } from \"./TypeGuardError\";\nimport { NoTransformConfigurationError } from \"./transformers/NoTransformConfigurationError\";\n\n/* ===========================================================\n HTTP\n - FORM-DATA\n - QUERY\n - HEADERS\n - PARAMETER\n - FACTORY FUNCTIONS\n==============================================================\n FORM-DATA\n----------------------------------------------------------- */\n/**\n * Decodes `FormData` into type `T`.\n *\n * Parses a `FormData` instance with automatic type casting. Properties typed as\n * `boolean`, `bigint`, or `number` are cast from their text, and `Blob` and\n * `File` properties are read as given, except that the text `null` reads as\n * `null`: as `undefined` instead for an optional single property whose type\n * does not admit `null`, and always as `null` for an array element.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string`, `Blob`, `File` or their array\n * types allowed\n * 4. No union types allowed\n *\n * An absent key decodes a required array to `[]`, a nullable one to `null`, and\n * an optional one to `undefined`. A string property keeps the text `null`\n * unless its type admits `null`, and a blank numeric value decodes to\n * `undefined`.\n *\n * Does not validate the decoded value. For validation, use:\n *\n * - {@link assertFormData} — Throws on type mismatch\n * - {@link isFormData} — Returns `null` on type mismatch\n * - {@link validateFormData} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input FormData instance to decode\n *\n * @returns Decoded object of type `T`\n *\n * @danger You must configure the generic argument `T`\n */\nexport function formData<T extends object>(input: FormData): Resolved<T>;\n\n/** @internal */\nexport function formData(): never {\n NoTransformConfigurationError(\"http.formData\");\n}\n\n/**\n * Decodes `FormData` into type `T` with assertion.\n *\n * Parses a `FormData` instance with automatic type casting, then validates the\n * result via {@link assert}. Throws {@link TypeGuardError} on mismatch.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string`, `Blob`, `File` or their array\n * types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link formData} — No validation\n * - {@link isFormData} — Returns `null` instead of throwing\n * - {@link validateFormData} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input FormData instance to decode\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Decoded object of type `T`\n *\n * @throws {TypeGuardError} When decoded value doesn't conform to type `T`\n *\n * @danger You must configure the generic argument `T`\n */\nexport function assertFormData<T extends object>(\n input: FormData,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Resolved<T>;\n\n/** @internal */\nexport function assertFormData(): never {\n NoTransformConfigurationError(\"http.assertFormData\");\n}\n\n/**\n * Decodes `FormData` into type `T` with type checking.\n *\n * Parses a `FormData` instance with automatic type casting, then validates the\n * result via {@link is}. Returns `null` on type mismatch.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string`, `Blob`, `File` or their array\n * types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link formData} — No validation\n * - {@link assertFormData} — Throws instead of returning `null`\n * - {@link validateFormData} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input FormData instance to decode\n *\n * @returns Decoded object of type `T`, or `null` if invalid\n *\n * @danger You must configure the generic argument `T`\n */\nexport function isFormData<T extends object>(\n input: FormData,\n): Resolved<T> | null;\n\n/** @internal */\nexport function isFormData(): never {\n NoTransformConfigurationError(\"http.isFormData\");\n}\n\n/**\n * Decodes `FormData` into type `T` with validation.\n *\n * Parses a `FormData` instance with automatic type casting, then validates the\n * result via {@link validate}. Returns {@link IValidation.IFailure} with all\n * errors on mismatch, or {@link IValidation.ISuccess} with decoded value.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string`, `Blob`, `File` or their array\n * types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link formData} — No validation\n * - {@link assertFormData} — Throws on first error\n * - {@link isFormData} — Returns `null` instead of error details\n *\n * @template T Target object type\n *\n * @param input FormData instance to decode\n *\n * @returns Validation result containing decoded value or errors\n *\n * @danger You must configure the generic argument `T`\n */\nexport function validateFormData<T extends object>(\n input: FormData,\n): IValidation<Resolved<T>>;\n\n/** @internal */\nexport function validateFormData(): never {\n NoTransformConfigurationError(\"http.validateFormData\");\n}\n\n/* -----------------------------------------------------------\n QUERY\n----------------------------------------------------------- */\n/**\n * Decodes URL query string into type `T`.\n *\n * Parses a query string or `URLSearchParams` instance with automatic type\n * casting. Properties typed as `boolean`, `bigint`, or `number` are cast to\n * expected types during decoding.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 4. No union types allowed\n *\n * An absent key decodes a required array to `[]`, a nullable one to `null`, and\n * an optional one to `undefined`, since a query string has no other spelling\n * for an empty array. An absent required non-array property throws\n * `Error(\"missing <key>\")`. A string property keeps the text `null` unless its\n * type admits `null`, and a blank numeric value decodes to `undefined`.\n *\n * Does not validate the decoded value. For validation, use:\n *\n * - {@link assertQuery} — Throws on type mismatch\n * - {@link isQuery} — Returns `null` on type mismatch\n * - {@link validateQuery} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input Query string or URLSearchParams instance\n *\n * @returns Decoded object of type `T`\n *\n * @danger You must configure the generic argument `T`\n */\nexport function query<T extends object>(\n input: string | IReadableURLSearchParams,\n): Resolved<T>;\n\n/** @internal */\nexport function query(): never {\n NoTransformConfigurationError(\"http.query\");\n}\n\n/**\n * Decodes URL query string into type `T` with assertion.\n *\n * Parses a query string or `URLSearchParams` instance with automatic type\n * casting, then validates the result via {@link assert}. Throws\n * {@link TypeGuardError} on mismatch.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link query} — No validation\n * - {@link isQuery} — Returns `null` instead of throwing\n * - {@link validateQuery} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input Query string or URLSearchParams instance\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Decoded object of type `T`\n *\n * @throws {TypeGuardError} When decoded value doesn't conform to type `T`\n *\n * @danger You must configure the generic argument `T`\n */\nexport function assertQuery<T extends object>(\n input: string | IReadableURLSearchParams,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Resolved<T>;\n\n/** @internal */\nexport function assertQuery(): never {\n NoTransformConfigurationError(\"http.assertQuery\");\n}\n\n/**\n * Decodes URL query string into type `T` with type checking.\n *\n * Parses a query string or `URLSearchParams` instance with automatic type\n * casting, then validates the result via {@link is}. Returns `null` on type\n * mismatch.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link query} — No validation\n * - {@link assertQuery} — Throws instead of returning `null`\n * - {@link validateQuery} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input Query string or URLSearchParams instance\n *\n * @returns Decoded object of type `T`, or `null` if invalid\n *\n * @danger You must configure the generic argument `T`\n */\nexport function isQuery<T extends object>(\n input: string | IReadableURLSearchParams,\n): Resolved<T> | null;\n\n/** @internal */\nexport function isQuery(): never {\n NoTransformConfigurationError(\"http.isQuery\");\n}\n\n/**\n * Decodes URL query string into type `T` with validation.\n *\n * Parses a query string or `URLSearchParams` instance with automatic type\n * casting, then validates the result via {@link validate}. Returns\n * {@link IValidation.IFailure} with all errors on mismatch, or\n * {@link IValidation.ISuccess} with decoded value.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 4. No union types allowed\n *\n * Related functions:\n *\n * - {@link query} — No validation\n * - {@link assertQuery} — Throws on first error\n * - {@link isQuery} — Returns `null` instead of error details\n *\n * @template T Target object type\n *\n * @param input Query string or URLSearchParams instance\n *\n * @returns Validation result containing decoded value or errors\n *\n * @danger You must configure the generic argument `T`\n */\nexport function validateQuery<T extends object>(\n input: string | IReadableURLSearchParams,\n): IValidation<Resolved<T>>;\n\n/** @internal */\nexport function validateQuery(): never {\n NoTransformConfigurationError(\"http.validateQuery\");\n}\n\n/* -----------------------------------------------------------\n HEADERS\n----------------------------------------------------------- */\n/**\n * Decodes HTTP headers into type `T`.\n *\n * Parses HTTP headers object with automatic type casting. Properties typed as\n * `boolean`, `bigint`, or `number` are cast to expected types during decoding.\n * Compatible with Express and Fastify request headers.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Property keys are read by their lowercase name; two keys that differ only by\n * case are not allowed\n * 4. Property values cannot be `null` (but `undefined` is allowed)\n * 5. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 6. No union types allowed\n * 7. Property `set-cookie` must be array type\n * 8. These properties cannot be array type: `age`, `authorization`,\n * `content-length`, `content-type`, `etag`, `expires`, `from`, `host`,\n * `if-modified-since`, `if-unmodified-since`, `last-modified`, `location`,\n * `max-forwards`, `proxy-authorization`, `referer`, `retry-after`, `server`,\n * `user-agent`\n *\n * An absent optional array header, or one given as an empty array, is omitted,\n * and an absent required one decodes to `[]`. `set-cookie` values are never\n * split. A blank numeric header decodes to `undefined`.\n *\n * Does not validate the decoded value. For validation, use:\n *\n * - {@link assertHeaders} — Throws on type mismatch\n * - {@link isHeaders} — Returns `null` on type mismatch\n * - {@link validateHeaders} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input Headers object from HTTP request\n *\n * @returns Decoded object of type `T`\n *\n * @danger You must configure the generic argument `T`\n */\nexport function headers<T extends object>(\n input: Record<string, string | string[] | undefined>,\n): Resolved<T>;\n\n/** @internal */\nexport function headers(): never {\n NoTransformConfigurationError(\"http.headers\");\n}\n\n/**\n * Decodes HTTP headers into type `T` with assertion.\n *\n * Parses HTTP headers object with automatic type casting, then validates the\n * result via {@link assert}. Throws {@link TypeGuardError} on mismatch.\n * Compatible with Express and Fastify request headers.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Property keys are read by their lowercase name; two keys that differ only by\n * case are not allowed\n * 4. Property values cannot be `null` (but `undefined` is allowed)\n * 5. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 6. No union types allowed\n * 7. Property `set-cookie` must be array type\n * 8. These properties cannot be array type: `age`, `authorization`,\n * `content-length`, `content-type`, `etag`, `expires`, `from`, `host`,\n * `if-modified-since`, `if-unmodified-since`, `last-modified`, `location`,\n * `max-forwards`, `proxy-authorization`, `referer`, `retry-after`, `server`,\n * `user-agent`\n *\n * Related functions:\n *\n * - {@link headers} — No validation\n * - {@link isHeaders} — Returns `null` instead of throwing\n * - {@link validateHeaders} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input Headers object from HTTP request\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Decoded object of type `T`\n *\n * @throws {TypeGuardError} When decoded value doesn't conform to type `T`\n *\n * @danger You must configure the generic argument `T`\n */\nexport function assertHeaders<T extends object>(\n input: Record<string, string | string[] | undefined>,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): Resolved<T>;\n\n/** @internal */\nexport function assertHeaders(): never {\n NoTransformConfigurationError(\"http.assertHeaders\");\n}\n\n/**\n * Decodes HTTP headers into type `T` with type checking.\n *\n * Parses HTTP headers object with automatic type casting, then validates the\n * result via {@link is}. Returns `null` on type mismatch. Compatible with\n * Express and Fastify request headers.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Property keys are read by their lowercase name; two keys that differ only by\n * case are not allowed\n * 4. Property values cannot be `null` (but `undefined` is allowed)\n * 5. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 6. No union types allowed\n * 7. Property `set-cookie` must be array type\n * 8. These properties cannot be array type: `age`, `authorization`,\n * `content-length`, `content-type`, `etag`, `expires`, `from`, `host`,\n * `if-modified-since`, `if-unmodified-since`, `last-modified`, `location`,\n * `max-forwards`, `proxy-authorization`, `referer`, `retry-after`, `server`,\n * `user-agent`\n *\n * Related functions:\n *\n * - {@link headers} — No validation\n * - {@link assertHeaders} — Throws instead of returning `null`\n * - {@link validateHeaders} — Returns detailed validation errors\n *\n * @template T Target object type\n *\n * @param input Headers object from HTTP request\n *\n * @returns Decoded object of type `T`, or `null` if invalid\n *\n * @danger You must configure the generic argument `T`\n */\nexport function isHeaders<T extends object>(\n input: Record<string, string | string[] | undefined>,\n): Resolved<T> | null;\n\n/** @internal */\nexport function isHeaders(): never {\n NoTransformConfigurationError(\"http.isHeaders\");\n}\n\n/**\n * Decodes HTTP headers into type `T` with validation.\n *\n * Parses HTTP headers object with automatic type casting, then validates the\n * result via {@link validate}. Returns {@link IValidation.IFailure} with all\n * errors on mismatch, or {@link IValidation.ISuccess} with decoded value.\n * Compatible with Express and Fastify request headers.\n *\n * Type `T` constraints:\n *\n * 1. Must be an object type\n * 2. No dynamic properties allowed\n * 3. Property keys are read by their lowercase name; two keys that differ only by\n * case are not allowed\n * 4. Property values cannot be `null` (but `undefined` is allowed)\n * 5. Only `boolean`, `bigint`, `number`, `string` or their array types allowed\n * 6. No union types allowed\n * 7. Property `set-cookie` must be array type\n * 8. These properties cannot be array type: `age`, `authorization`,\n * `content-length`, `content-type`, `etag`, `expires`, `from`, `host`,\n * `if-modified-since`, `if-unmodified-since`, `last-modified`, `location`,\n * `max-forwards`, `proxy-authorization`, `referer`, `retry-after`, `server`,\n * `user-agent`\n *\n * Related functions:\n *\n * - {@link headers} — No validation\n * - {@link assertHeaders} — Throws on first error\n * - {@link isHeaders} — Returns `null` instead of error details\n *\n * @template T Target object type\n *\n * @param input Headers object from HTTP request\n *\n * @returns Validation result containing decoded value or errors\n *\n * @danger You must configure the generic argument `T`\n */\nexport function validateHeaders<T extends object>(\n input: Record<string, string | string[] | undefined>,\n): IValidation<Resolved<T>>;\n\n/** @internal */\nexport function validateHeaders(): never {\n NoTransformConfigurationError(\"http.validateHeaders\");\n}\n\n/* -----------------------------------------------------------\n PARAMETER\n----------------------------------------------------------- */\n/**\n * Decodes URL path parameter into type `T`.\n *\n * Parses a path parameter string with automatic type casting. When type `T` is\n * `boolean`, `bigint`, or `number`, casts the string value to the expected\n * type. Also performs type assertion via {@link assert}, throwing\n * {@link TypeGuardError} on mismatch.\n *\n * A blank value is not a number, and a string parameter keeps the text `null`\n * unless `T` admits `null`.\n *\n * @template T Target atomic type (`boolean`, `bigint`, `number`, or `string`),\n * optionally with `null`\n *\n * @param input Path parameter string\n *\n * @returns Decoded value of type `T`\n *\n * @throws {TypeGuardError} When decoded value doesn't conform to type `T`\n *\n * @danger You must configure the generic argument `T`\n */\nexport function parameter<T extends Atomic.Type | null>(\n input: string,\n): Resolved<T>;\n\n/** @internal */\nexport function parameter(): never {\n NoTransformConfigurationError(\"http.parameter\");\n}\n\n/* -----------------------------------------------------------\n FACTORY FUNCTIONS\n----------------------------------------------------------- */\n/**\n * Creates reusable {@link formData} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createFormData(): never;\n\n/**\n * Creates reusable {@link formData} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createFormData<T extends object>(): (\n input: FormData,\n) => Resolved<T>;\n\n/** @internal */\nexport function createFormData<T>(): (input: FormData) => Resolved<T> {\n NoTransformConfigurationError(\"http.createFormData\");\n}\n\n/**\n * Creates reusable {@link assertFormData} function.\n *\n * @template T Target object type\n *\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertFormData(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertFormData} function.\n *\n * @template T Target object type\n *\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Reusable decoder function\n */\nexport function createAssertFormData<T extends object>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: FormData,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T>;\n\n/** @internal */\nexport function createAssertFormData<T>(): (\n input: FormData,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T> {\n NoTransformConfigurationError(\"http.createAssertFormData\");\n}\n\n/**\n * Creates reusable {@link isFormData} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createIsFormData(): never;\n\n/**\n * Creates reusable {@link isFormData} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createIsFormData<T extends object>(): (\n input: FormData,\n) => Resolved<T> | null;\n\n/** @internal */\nexport function createIsFormData<T>(): (input: FormData) => Resolved<T> | null {\n NoTransformConfigurationError(\"http.createIsFormData\");\n}\n\n/**\n * Creates reusable {@link validateFormData} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateFormData(): never;\n\n/**\n * Creates reusable {@link validateFormData} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createValidateFormData<T extends object>(): (\n input: FormData,\n) => IValidation<Resolved<T>>;\n\n/** @internal */\nexport function createValidateFormData<T>(): (\n input: FormData,\n) => IValidation<Resolved<T>> {\n NoTransformConfigurationError(\"http.createValidateFormData\");\n}\n\n/**\n * Creates reusable {@link query} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createQuery(): never;\n\n/**\n * Creates reusable {@link query} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createQuery<T extends object>(): (\n input: string | IReadableURLSearchParams,\n) => Resolved<T>;\n\n/** @internal */\nexport function createQuery<T>(): (\n input: string | IReadableURLSearchParams,\n) => Resolved<T> {\n NoTransformConfigurationError(\"http.createQuery\");\n}\n\n/**\n * Creates reusable {@link assertQuery} function.\n *\n * @template T Target object type\n *\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertQuery(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertQuery} function.\n *\n * @template T Target object type\n *\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Reusable decoder function\n */\nexport function createAssertQuery<T extends object>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: string | IReadableURLSearchParams,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T>;\n\n/** @internal */\nexport function createAssertQuery<T>(): (\n input: string | IReadableURLSearchParams,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T> {\n NoTransformConfigurationError(\"http.createAssertQuery\");\n}\n\n/**\n * Creates reusable {@link isQuery} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createIsQuery(): never;\n\n/**\n * Creates reusable {@link isQuery} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createIsQuery<T extends object>(): (\n input: string | IReadableURLSearchParams,\n) => Resolved<T> | null;\n\n/** @internal */\nexport function createIsQuery<T>(): (\n input: string | IReadableURLSearchParams,\n) => Resolved<T> | null {\n NoTransformConfigurationError(\"http.createIsQuery\");\n}\n\n/**\n * Creates reusable {@link validateQuery} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateQuery(): never;\n\n/**\n * Creates reusable {@link validateQuery} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createValidateQuery<T extends object>(): (\n input: string | IReadableURLSearchParams,\n) => IValidation<Resolved<T>>;\n\n/** @internal */\nexport function createValidateQuery<T>(): (\n input: string | IReadableURLSearchParams,\n) => IValidation<Resolved<T>> {\n NoTransformConfigurationError(\"http.createValidateQuery\");\n}\n\n/**\n * Creates reusable {@link headers} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createHeaders(): never;\n\n/**\n * Creates reusable {@link headers} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createHeaders<T extends object>(): (\n input: Record<string, string | string[] | undefined>,\n) => Resolved<T>;\n\n/** @internal */\nexport function createHeaders<T>(): (\n input: Record<string, string | string[] | undefined>,\n) => Resolved<T> {\n NoTransformConfigurationError(\"http.createHeaders\");\n}\n\n/**\n * Creates reusable {@link assertHeaders} function.\n *\n * @template T Target object type\n *\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createAssertHeaders(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): never;\n\n/**\n * Creates reusable {@link assertHeaders} function.\n *\n * @template T Target object type\n *\n * @param errorFactory Custom error factory receiving\n * {@link TypeGuardError.IProps}\n *\n * @returns Reusable decoder function\n */\nexport function createAssertHeaders<T extends object>(\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n): (\n input: Record<string, string | string[] | undefined>,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T>;\n\n/** @internal */\nexport function createAssertHeaders<T>(): (\n input: Record<string, string | string[] | undefined>,\n errorFactory?: undefined | ((props: TypeGuardError.IProps) => Error),\n) => Resolved<T> {\n NoTransformConfigurationError(\"http.createAssertHeaders\");\n}\n\n/**\n * Creates reusable {@link isHeaders} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createIsHeaders(): never;\n\n/**\n * Creates reusable {@link isHeaders} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createIsHeaders<T extends object>(): (\n input: Record<string, string | string[] | undefined>,\n) => Resolved<T> | null;\n\n/** @internal */\nexport function createIsHeaders<T>(): (\n input: Record<string, string | string[] | undefined>,\n) => Resolved<T> | null {\n NoTransformConfigurationError(\"http.createIsHeaders\");\n}\n\n/**\n * Creates reusable {@link validateHeaders} function.\n *\n * @template T Target object type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createValidateHeaders(): never;\n\n/**\n * Creates reusable {@link validateHeaders} function.\n *\n * @template T Target object type\n *\n * @returns Reusable decoder function\n */\nexport function createValidateHeaders<T extends object>(): (\n input: Record<string, string | string[] | undefined>,\n) => IValidation<Resolved<T>>;\n\n/** @internal */\nexport function createValidateHeaders<T>(): (\n input: Record<string, string | string[] | undefined>,\n) => IValidation<Resolved<T>> {\n NoTransformConfigurationError(\"http.createValidateHeaders\");\n}\n\n/**\n * Creates reusable {@link parameter} function.\n *\n * @template T Target atomic type\n *\n * @danger You must configure the generic argument `T`\n */\nexport function createParameter(): never;\n\n/**\n * Creates reusable {@link parameter} function.\n *\n * @template T Target atomic type\n *\n * @returns Reusable decoder function\n */\nexport function createParameter<T extends Atomic.Type | null>(): (\n input: string,\n) => Resolved<T>;\n\n/** @internal */\nexport function createParameter<T extends Atomic.Type | null>(): (\n input: string,\n) => Resolved<T> {\n NoTransformConfigurationError(\"http.createParameter\");\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2DA,SAAgB,WAAkB;CAChC,8BAA8B,eAAe;AAC/C;;AAwCA,SAAgB,iBAAwB;CACtC,8BAA8B,qBAAqB;AACrD;;AAmCA,SAAgB,aAAoB;CAClC,8BAA8B,iBAAiB;AACjD;;AAoCA,SAAgB,mBAA0B;CACxC,8BAA8B,uBAAuB;AACvD;;AA4CA,SAAgB,QAAe;CAC7B,8BAA8B,YAAY;AAC5C;;AAwCA,SAAgB,cAAqB;CACnC,8BAA8B,kBAAkB;AAClD;;AAmCA,SAAgB,UAAiB;CAC/B,8BAA8B,cAAc;AAC9C;;AAoCA,SAAgB,gBAAuB;CACrC,8BAA8B,oBAAoB;AACpD;;AAmDA,SAAgB,UAAiB;CAC/B,8BAA8B,cAAc;AAC9C;;AAiDA,SAAgB,gBAAuB;CACrC,8BAA8B,oBAAoB;AACpD;;AA4CA,SAAgB,YAAmB;CACjC,8BAA8B,gBAAgB;AAChD;;AA6CA,SAAgB,kBAAyB;CACvC,8BAA8B,sBAAsB;AACtD;;AAgCA,SAAgB,YAAmB;CACjC,8BAA8B,gBAAgB;AAChD;;AA0BA,SAAgB,iBAAsD;CACpE,8BAA8B,qBAAqB;AACrD;;AAkCA,SAAgB,uBAGC;CACf,8BAA8B,2BAA2B;AAC3D;;AAuBA,SAAgB,mBAA+D;CAC7E,8BAA8B,uBAAuB;AACvD;;AAuBA,SAAgB,yBAEc;CAC5B,8BAA8B,6BAA6B;AAC7D;;AAuBA,SAAgB,cAEC;CACf,8BAA8B,kBAAkB;AAClD;;AAkCA,SAAgB,oBAGC;CACf,8BAA8B,wBAAwB;AACxD;;AAuBA,SAAgB,gBAEQ;CACtB,8BAA8B,oBAAoB;AACpD;;AAuBA,SAAgB,sBAEc;CAC5B,8BAA8B,0BAA0B;AAC1D;;AAuBA,SAAgB,gBAEC;CACf,8BAA8B,oBAAoB;AACpD;;AAkCA,SAAgB,sBAGC;CACf,8BAA8B,0BAA0B;AAC1D;;AAuBA,SAAgB,kBAEQ;CACtB,8BAA8B,sBAAsB;AACtD;;AAuBA,SAAgB,wBAEc;CAC5B,8BAA8B,4BAA4B;AAC5D;;AAuBA,SAAgB,kBAEC;CACf,8BAA8B,sBAAsB;AACtD"}
|
package/lib/index.mjs
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { TypeGuardError } from "./TypeGuardError.mjs";
|
|
2
|
+
import { assert, assertEquals, assertGuard, assertGuardEquals, createAssert, createAssertEquals, createAssertGuard, createAssertGuardEquals, createEquals, createIs, createRandom, createShallow, createValidate, createValidateEquals, equals, is, random, shallow, validate, validateEquals } from "./basic.mjs";
|
|
2
3
|
import { compare_exports } from "./compare.mjs";
|
|
3
4
|
import { functional_exports } from "./functional.mjs";
|
|
4
5
|
import { http_exports } from "./http.mjs";
|
|
@@ -9,7 +10,7 @@ import { notations_exports } from "./notations.mjs";
|
|
|
9
10
|
import { protobuf_exports } from "./protobuf.mjs";
|
|
10
11
|
import { reflect_exports } from "./reflect.mjs";
|
|
11
12
|
import { tags } from "./re-exports.mjs";
|
|
12
|
-
import {
|
|
13
|
+
import { module_exports } from "./module.mjs";
|
|
13
14
|
//#region src/index.ts
|
|
14
15
|
var src_default = module_exports;
|
|
15
16
|
//#endregion
|
package/lib/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":["typia"],"sources":["../src/index.ts"],"sourcesContent":["import * as typia from \"./module\";\n\nexport default typia;\nexport * from \"./module\";\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["typia"],"sources":["../src/index.ts"],"sourcesContent":["import * as typia from \"./module\";\n\nexport default typia;\nexport * from \"./module\";\n"],"mappings":";;;;;;;;;;;;;;AAEA,IAAA,cAAeA"}
|
|
@@ -1,15 +1,130 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Operations of a Protocol Buffer writer.
|
|
3
|
+
*
|
|
4
|
+
* Both {@link _ProtobufSizer} and {@link _ProtobufWriter} implement it, so one
|
|
5
|
+
* generated encoder can first measure a message and then write it.
|
|
6
|
+
*
|
|
7
|
+
* @evidence contracts/common.md#principled-implementation The interface lists the primitive operations that the generated encoder calls on a writer, so one generated code path can drive both a sizer and a writer: scalars, bytes, strings and the fork and ldelim pair that delimit a length-prefixed message.
|
|
8
|
+
* @evidence contracts/common.md#clear-and-simple-design One interface implemented by the sizer and the writer; scalars take number or bigint where the wire format needs 64 bits.
|
|
9
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
10
|
+
* @evidence contracts/common.md#meaningful-documentation A comment states the role of the interface and that both implementations share it.
|
|
11
|
+
*/
|
|
1
12
|
export interface _IProtobufWriter {
|
|
13
|
+
/**
|
|
14
|
+
* Write a boolean as one byte.
|
|
15
|
+
*
|
|
16
|
+
* @evidence contracts/common.md#principled-implementation A boolean is written as one varint byte of zero or one.
|
|
17
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
18
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
19
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
20
|
+
*/
|
|
2
21
|
bool(value: boolean): void;
|
|
22
|
+
/**
|
|
23
|
+
* Write a signed 32-bit integer as a varint.
|
|
24
|
+
*
|
|
25
|
+
* @evidence contracts/common.md#principled-implementation A signed 32-bit integer in the two's-complement varint form, taking a number.
|
|
26
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
27
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
28
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
29
|
+
*/
|
|
3
30
|
int32(value: number): void;
|
|
31
|
+
/**
|
|
32
|
+
* Write a signed 32-bit integer in ZigZag form.
|
|
33
|
+
*
|
|
34
|
+
* @evidence contracts/common.md#principled-implementation A signed 32-bit integer in ZigZag form, so small magnitudes take few bytes.
|
|
35
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
36
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
37
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
38
|
+
*/
|
|
4
39
|
sint32(value: number): void;
|
|
40
|
+
/**
|
|
41
|
+
* Write an unsigned 32-bit integer as a varint.
|
|
42
|
+
*
|
|
43
|
+
* @evidence contracts/common.md#principled-implementation An unsigned 32-bit integer in varint form.
|
|
44
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
45
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
46
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
47
|
+
*/
|
|
5
48
|
uint32(value: number): void;
|
|
49
|
+
/**
|
|
50
|
+
* Write a signed 64-bit integer as a varint.
|
|
51
|
+
*
|
|
52
|
+
* @evidence contracts/common.md#principled-implementation A signed 64-bit integer in varint form. Bigint inputs retain integer precision; number inputs retain only the precision already present in the number before conversion.
|
|
53
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
54
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
55
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
56
|
+
*/
|
|
6
57
|
int64(value: bigint | number): void;
|
|
58
|
+
/**
|
|
59
|
+
* Write a signed 64-bit integer in ZigZag form.
|
|
60
|
+
*
|
|
61
|
+
* @evidence contracts/common.md#principled-implementation A signed 64-bit integer in ZigZag form, taking a bigint or a number.
|
|
62
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
63
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
64
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
65
|
+
*/
|
|
7
66
|
sint64(value: bigint | number): void;
|
|
67
|
+
/**
|
|
68
|
+
* Write an unsigned 64-bit integer as a varint.
|
|
69
|
+
*
|
|
70
|
+
* @evidence contracts/common.md#principled-implementation An unsigned 64-bit integer in varint form, taking a bigint or a number.
|
|
71
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
72
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
73
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
74
|
+
*/
|
|
8
75
|
uint64(value: bigint | number): void;
|
|
76
|
+
/**
|
|
77
|
+
* Write a 32-bit float in little-endian order.
|
|
78
|
+
*
|
|
79
|
+
* @evidence contracts/common.md#principled-implementation A 32-bit float, written little-endian in four bytes.
|
|
80
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
81
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
82
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
83
|
+
*/
|
|
9
84
|
float(value: number): void;
|
|
85
|
+
/**
|
|
86
|
+
* Write a 64-bit float in little-endian order.
|
|
87
|
+
*
|
|
88
|
+
* @evidence contracts/common.md#principled-implementation A 64-bit float, written little-endian in eight bytes.
|
|
89
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
90
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
91
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
92
|
+
*/
|
|
10
93
|
double(value: number): void;
|
|
94
|
+
/**
|
|
95
|
+
* Write a byte array with its length prefix.
|
|
96
|
+
*
|
|
97
|
+
* @evidence contracts/common.md#principled-implementation A byte array with its length prefix.
|
|
98
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
99
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
100
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
101
|
+
*/
|
|
11
102
|
bytes(value: Uint8Array): void;
|
|
103
|
+
/**
|
|
104
|
+
* Write a UTF-8 string with its byte-length prefix.
|
|
105
|
+
*
|
|
106
|
+
* @evidence contracts/common.md#principled-implementation A string in UTF-8 with a byte-length prefix.
|
|
107
|
+
* @evidence contracts/common.md#clear-and-simple-design One member.
|
|
108
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
109
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
110
|
+
*/
|
|
12
111
|
string(value: string): void;
|
|
112
|
+
/**
|
|
113
|
+
* Begin a length-delimited message.
|
|
114
|
+
*
|
|
115
|
+
* @evidence contracts/common.md#principled-implementation Marks the start of a length-delimited message, whose length is known only after the body has been sized.
|
|
116
|
+
* @evidence contracts/common.md#clear-and-simple-design One member paired with ldelim.
|
|
117
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
118
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
119
|
+
*/
|
|
13
120
|
fork(): void;
|
|
121
|
+
/**
|
|
122
|
+
* End the message that the matching `fork` began.
|
|
123
|
+
*
|
|
124
|
+
* @evidence contracts/common.md#principled-implementation Marks the end of the message opened by the matching fork, where the sizer records the length and the writer has nothing left to do.
|
|
125
|
+
* @evidence contracts/common.md#clear-and-simple-design One member paired with fork.
|
|
126
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts A declaration only.
|
|
127
|
+
* @evidence contracts/common.md#meaningful-documentation A one-line comment states the member's role.
|
|
128
|
+
*/
|
|
14
129
|
ldelim(): void;
|
|
15
130
|
}
|
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
import { ProtobufWire } from "@typia/interface";
|
|
2
|
+
/**
|
|
3
|
+
* Reads a Protocol Buffer message from a buffer.
|
|
4
|
+
*
|
|
5
|
+
* Every malformed input throws an error prefixed with
|
|
6
|
+
* `typia.protobuf.decode()`. Length-prefixed bytes, message forks and field
|
|
7
|
+
* skips restore their position on failure. Scalar varints may consume bytes
|
|
8
|
+
* before failing, and invalid UTF-8 is reported after its byte range has been
|
|
9
|
+
* consumed. Adapted from the fixed reader of as-proto.
|
|
10
|
+
*
|
|
11
|
+
* @evidence contracts/common.md#principled-implementation The reader decodes the wire format from a buffer with a pointer and a length-delimited boundary, throwing a typia-prefixed error for overflow, malformed varints or invalid UTF-8. Atomic bytes, fork and skip operations restore their pointer and boundary on failure; scalar varint reads can retain consumed bytes, and UTF-8 decoding can fail after bytes has completed. Varints are bounded to ten bytes with a tenth byte limited to bit 63 in every reading path, so skipping and reading agree on the wire limits.
|
|
12
|
+
* @evidence contracts/common.md#clear-and-simple-design One class with public typed readers, skip methods and a message fork and close pair, and private varint readers and a bounds check shared by all of them; the fault builder and limits are module constants.
|
|
13
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts Limits come from the wire format; invalid input throws and is never repaired by truncation or guessing.
|
|
14
|
+
* @evidence contracts/common.md#meaningful-documentation A reference comment names the origin, the fields have comments and the skip and varint helpers explain their bounds.
|
|
15
|
+
*/
|
|
2
16
|
export declare class _ProtobufReader {
|
|
3
17
|
/** Read buffer */
|
|
4
18
|
private buf;
|
|
@@ -9,22 +23,153 @@ export declare class _ProtobufReader {
|
|
|
9
23
|
/** Current length-delimited boundary. */
|
|
10
24
|
private end;
|
|
11
25
|
constructor(buf: Uint8Array);
|
|
26
|
+
/**
|
|
27
|
+
* Return the offset of the next byte to read.
|
|
28
|
+
*
|
|
29
|
+
* @evidence contracts/common.md#principled-implementation Returns the read pointer, which is the offset of the next byte to be read.
|
|
30
|
+
* @evidence contracts/common.md#clear-and-simple-design One accessor.
|
|
31
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts It exposes no mutable state.
|
|
32
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is returned.
|
|
33
|
+
*/
|
|
12
34
|
index(): number;
|
|
35
|
+
/**
|
|
36
|
+
* Return the end of the buffer or of the open length-delimited message.
|
|
37
|
+
*
|
|
38
|
+
* @evidence contracts/common.md#principled-implementation Returns the current boundary, which is the end of the whole buffer or of the open length-delimited message.
|
|
39
|
+
* @evidence contracts/common.md#clear-and-simple-design One accessor.
|
|
40
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts It exposes no mutable state.
|
|
41
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is returned.
|
|
42
|
+
*/
|
|
13
43
|
size(): number;
|
|
44
|
+
/**
|
|
45
|
+
* Read an unsigned 32-bit varint.
|
|
46
|
+
*
|
|
47
|
+
* @evidence contracts/common.md#principled-implementation Reads a varint and reinterprets it as an unsigned 32-bit number, so values of 2^31 or more are positive.
|
|
48
|
+
* @evidence contracts/common.md#clear-and-simple-design One delegation with an unsigned shift.
|
|
49
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The reading follows the wire format.
|
|
50
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
51
|
+
*/
|
|
14
52
|
uint32(): number;
|
|
53
|
+
/**
|
|
54
|
+
* Read a signed 32-bit varint.
|
|
55
|
+
*
|
|
56
|
+
* @evidence contracts/common.md#principled-implementation Reads a varint as a signed 32-bit number, which keeps the two's-complement meaning of a ten-byte negative value after truncation to 32 bits.
|
|
57
|
+
* @evidence contracts/common.md#clear-and-simple-design One delegation.
|
|
58
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The reading follows the wire format.
|
|
59
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
60
|
+
*/
|
|
15
61
|
int32(): number;
|
|
62
|
+
/**
|
|
63
|
+
* Read a ZigZag encoded signed 32-bit integer.
|
|
64
|
+
*
|
|
65
|
+
* @evidence contracts/common.md#principled-implementation The varint is decoded with the ZigZag inverse `(v >>> 1) ^ -(v & 1)`, where the unsigned shift treats the 32-bit pattern as unsigned.
|
|
66
|
+
* @evidence contracts/common.md#clear-and-simple-design One expression over the varint reader.
|
|
67
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The mapping is the protobuf definition.
|
|
68
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
69
|
+
*/
|
|
16
70
|
sint32(): number;
|
|
71
|
+
/**
|
|
72
|
+
* Read an unsigned 64-bit varint.
|
|
73
|
+
*
|
|
74
|
+
* @evidence contracts/common.md#principled-implementation Reads a varint as an unsigned bigint, rejecting a payload above bit 63 or a varint longer than ten bytes.
|
|
75
|
+
* @evidence contracts/common.md#clear-and-simple-design One delegation.
|
|
76
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The bounds are the wire format's.
|
|
77
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
78
|
+
*/
|
|
17
79
|
uint64(): bigint;
|
|
80
|
+
/**
|
|
81
|
+
* Read a signed 64-bit varint.
|
|
82
|
+
*
|
|
83
|
+
* @evidence contracts/common.md#principled-implementation Reads the unsigned pattern and reinterprets it as a signed 64-bit bigint.
|
|
84
|
+
* @evidence contracts/common.md#clear-and-simple-design One delegation with an integer cast.
|
|
85
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The reading follows the wire format.
|
|
86
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
87
|
+
*/
|
|
18
88
|
int64(): bigint;
|
|
89
|
+
/**
|
|
90
|
+
* Read a ZigZag encoded signed 64-bit integer.
|
|
91
|
+
*
|
|
92
|
+
* @evidence contracts/common.md#principled-implementation The varint is decoded with the ZigZag inverse on a bigint.
|
|
93
|
+
* @evidence contracts/common.md#clear-and-simple-design One expression over the 64-bit reader.
|
|
94
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The mapping is the protobuf definition.
|
|
95
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
96
|
+
*/
|
|
19
97
|
sint64(): bigint;
|
|
98
|
+
/**
|
|
99
|
+
* Read a boolean, which is true for any non-zero varint.
|
|
100
|
+
*
|
|
101
|
+
* @evidence contracts/common.md#principled-implementation A varint is true when it is not zero, as the format defines.
|
|
102
|
+
* @evidence contracts/common.md#clear-and-simple-design One delegation.
|
|
103
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The reading follows the wire format.
|
|
104
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
105
|
+
*/
|
|
20
106
|
bool(): boolean;
|
|
107
|
+
/**
|
|
108
|
+
* Read a little-endian 32-bit float.
|
|
109
|
+
*
|
|
110
|
+
* @evidence contracts/common.md#principled-implementation Reads four little-endian bytes through the data view after a bounds check.
|
|
111
|
+
* @evidence contracts/common.md#clear-and-simple-design One checked read.
|
|
112
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The bounds check throws rather than reading past the boundary.
|
|
113
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
114
|
+
*/
|
|
21
115
|
float(): number;
|
|
116
|
+
/**
|
|
117
|
+
* Read a little-endian 64-bit float.
|
|
118
|
+
*
|
|
119
|
+
* @evidence contracts/common.md#principled-implementation Reads eight little-endian bytes through the data view after a bounds check.
|
|
120
|
+
* @evidence contracts/common.md#clear-and-simple-design One checked read.
|
|
121
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The bounds check throws rather than reading past the boundary.
|
|
122
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
123
|
+
*/
|
|
22
124
|
double(): number;
|
|
125
|
+
/**
|
|
126
|
+
* Read a length-prefixed byte range as a view into the buffer, without
|
|
127
|
+
* copying.
|
|
128
|
+
*
|
|
129
|
+
* @evidence contracts/common.md#principled-implementation Reads a length-prefixed byte range as a view of the buffer and not a copy, inside an atomic block that restores the pointer if the length is invalid.
|
|
130
|
+
* @evidence contracts/common.md#clear-and-simple-design One function using the checked read.
|
|
131
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The returned view shares memory with the input buffer, a stated aliasing.
|
|
132
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
133
|
+
*/
|
|
23
134
|
bytes(): Uint8Array;
|
|
135
|
+
/**
|
|
136
|
+
* Read a length-prefixed UTF-8 string, throwing on invalid UTF-8 after
|
|
137
|
+
* consuming its byte range. An invalid length restores the read position.
|
|
138
|
+
*
|
|
139
|
+
* @evidence contracts/common.md#principled-implementation Reads the bytes and decodes them with a decoder that is fatal on invalid UTF-8, so malformed text throws a typia error instead of producing replacement characters. A byte-range failure rolls back through bytes; a decoding failure occurs after that range has been consumed and does not rewind it.
|
|
140
|
+
* @evidence contracts/common.md#clear-and-simple-design One function over bytes with a shared decoder.
|
|
141
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The error is raised, not repaired.
|
|
142
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is read.
|
|
143
|
+
*/
|
|
24
144
|
string(): string;
|
|
145
|
+
/**
|
|
146
|
+
* Begin a length-delimited message and return the previous boundary to pass
|
|
147
|
+
* to `close`.
|
|
148
|
+
*
|
|
149
|
+
* @evidence contracts/common.md#principled-implementation Reads the length prefix, checks that it fits within the current boundary, narrows the boundary to the message end and returns the previous boundary for `close`; the pointer is restored on failure.
|
|
150
|
+
* @evidence contracts/common.md#clear-and-simple-design One atomic function paired with close.
|
|
151
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The bounds check throws on an oversized prefix.
|
|
152
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states what is returned.
|
|
153
|
+
*/
|
|
25
154
|
fork(): number;
|
|
155
|
+
/**
|
|
156
|
+
* End the message that `fork` began, which must have been consumed
|
|
157
|
+
* completely.
|
|
158
|
+
*
|
|
159
|
+
* @evidence contracts/common.md#principled-implementation Requires that the whole message was consumed and restores the previous boundary; an unread remainder is a malformed message and throws.
|
|
160
|
+
* @evidence contracts/common.md#clear-and-simple-design One check and one assignment.
|
|
161
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The strictness is intentional and reports corruption.
|
|
162
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states the check.
|
|
163
|
+
*/
|
|
26
164
|
close(previous: number): void;
|
|
27
|
-
/**
|
|
165
|
+
/**
|
|
166
|
+
* Advance by exactly `length` bytes, for every length including zero.
|
|
167
|
+
*
|
|
168
|
+
* @evidence contracts/common.md#principled-implementation Advances exactly the given number of bytes after a bounds check, including zero, so a zero-length field is skipped without moving or failing.
|
|
169
|
+
* @evidence contracts/common.md#clear-and-simple-design One checked advance.
|
|
170
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The bounds check throws on overflow.
|
|
171
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states the zero-length case.
|
|
172
|
+
*/
|
|
28
173
|
skip(length: number): void;
|
|
29
174
|
/**
|
|
30
175
|
* Advance by exactly one varint, which carries no length prefix.
|
|
@@ -37,8 +182,21 @@ export declare class _ProtobufReader {
|
|
|
37
182
|
* never notices a value it could not have represented. Relaxing either bound
|
|
38
183
|
* here would accept a varint that `varint32` and `varint64` reject, making
|
|
39
184
|
* the limit depend on which method happens to consume the value.
|
|
185
|
+
*
|
|
186
|
+
* @evidence contracts/common.md#principled-implementation Advances over one varint, which has no length prefix, using the same ten-byte and bit-63 limits as the value readers, so the limit does not depend on which method consumes the value.
|
|
187
|
+
* @evidence contracts/common.md#clear-and-simple-design One atomic loop that delegates the last byte check to a shared helper.
|
|
188
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts The skipped bytes are validated, which is the point of the helper; no looser limit is used.
|
|
189
|
+
* @evidence contracts/common.md#meaningful-documentation A long comment explains the bounds and why skipping must match reading.
|
|
40
190
|
*/
|
|
41
191
|
skipVarint(): void;
|
|
192
|
+
/**
|
|
193
|
+
* Skip a field of the given wire type, including a nested group.
|
|
194
|
+
*
|
|
195
|
+
* @evidence contracts/common.md#principled-implementation A wire type selects how far to advance: a varint, eight bytes, a length-prefixed range, a group read until its end tag or four bytes; an unknown type throws with the offset. Group skipping recurses on nested types.
|
|
196
|
+
* @evidence contracts/common.md#clear-and-simple-design One atomic function with a switch.
|
|
197
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts Unknown wire types are an error and not skipped by guess.
|
|
198
|
+
* @evidence contracts/common.md#meaningful-documentation A short comment states the supported wire types.
|
|
199
|
+
*/
|
|
42
200
|
skipType(wireType: ProtobufWire): void;
|
|
43
201
|
private varint32;
|
|
44
202
|
private varint64;
|