asn1-ts 8.0.5 → 9.0.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.
Files changed (430) hide show
  1. package/README.md +2 -1
  2. package/dist/{node/ConstructedElementSpecification.d.ts → ConstructedElementSpecification.d.mts} +2 -2
  3. package/dist/ConstructedElementSpecification.mjs +1 -0
  4. package/dist/{node/asn1.d.ts → asn1.d.mts} +7 -7
  5. package/dist/{node/asn1.js → asn1.mjs} +91 -132
  6. package/dist/{node/classes/ABSTRACT-SYNTAX.d.ts → classes/ABSTRACT-SYNTAX.d.mts} +2 -2
  7. package/dist/classes/ABSTRACT-SYNTAX.mjs +1 -0
  8. package/dist/{node/classes/TYPE-IDENTIFIER.d.ts → classes/TYPE-IDENTIFIER.d.mts} +2 -2
  9. package/dist/classes/TYPE-IDENTIFIER.mjs +1 -0
  10. package/dist/classes/index.d.mts +2 -0
  11. package/dist/classes/index.mjs +1 -0
  12. package/dist/{node/codecs/ber/decoders/decodeBitString.d.ts → codecs/ber/decoders/decodeBitString.d.mts} +1 -1
  13. package/dist/codecs/ber/decoders/decodeBitString.mjs +19 -0
  14. package/dist/{node/codecs/ber/decoders/decodeBoolean.d.ts → codecs/ber/decoders/decodeBoolean.d.mts} +1 -1
  15. package/dist/codecs/ber/decoders/decodeBoolean.mjs +7 -0
  16. package/dist/{node/codecs/ber/decoders/decodeDuration.d.ts → codecs/ber/decoders/decodeDuration.d.mts} +1 -1
  17. package/dist/{node/codecs/ber/decoders/decodeDuration.js → codecs/ber/decoders/decodeDuration.mjs} +9 -48
  18. package/dist/{node/codecs/ber/decoders/decodeGeneralizedTime.d.ts → codecs/ber/decoders/decodeGeneralizedTime.d.mts} +1 -1
  19. package/dist/{node/codecs/ber/decoders/decodeGeneralizedTime.js → codecs/ber/decoders/decodeGeneralizedTime.mjs} +10 -49
  20. package/dist/{node/codecs/ber/decoders/decodeReal.d.ts → codecs/ber/decoders/decodeReal.d.mts} +1 -1
  21. package/dist/codecs/ber/decoders/decodeReal.mjs +108 -0
  22. package/dist/codecs/ber/decoders/decodeSequence.d.mts +3 -0
  23. package/dist/codecs/ber/decoders/decodeSequence.mjs +11 -0
  24. package/dist/{node/codecs/ber/decoders/decodeUTCTime.d.ts → codecs/ber/decoders/decodeUTCTime.d.mts} +1 -1
  25. package/dist/codecs/ber/decoders/decodeUTCTime.mjs +45 -0
  26. package/dist/{node/codecs/ber/encoders/encodeGeneralString.d.ts → codecs/ber/encoders/encodeGeneralString.d.mts} +1 -1
  27. package/dist/codecs/ber/encoders/encodeGeneralString.mjs +13 -0
  28. package/dist/{node/codecs/ber/encoders/encodeGraphicString.d.ts → codecs/ber/encoders/encodeGraphicString.d.mts} +1 -1
  29. package/dist/codecs/ber/encoders/encodeGraphicString.mjs +13 -0
  30. package/dist/{node/codecs/ber/encoders/encodeNumericString.d.ts → codecs/ber/encoders/encodeNumericString.d.mts} +1 -1
  31. package/dist/codecs/ber/encoders/encodeNumericString.mjs +13 -0
  32. package/dist/{node/codecs/ber/encoders/encodeObjectDescriptor.d.ts → codecs/ber/encoders/encodeObjectDescriptor.d.mts} +1 -1
  33. package/dist/codecs/ber/encoders/encodeObjectDescriptor.mjs +13 -0
  34. package/dist/{node/codecs/ber/encoders/encodePrintableString.d.ts → codecs/ber/encoders/encodePrintableString.d.mts} +1 -1
  35. package/dist/codecs/ber/encoders/encodePrintableString.mjs +14 -0
  36. package/dist/{node/codecs/ber/encoders/encodeVisibleString.d.ts → codecs/ber/encoders/encodeVisibleString.d.mts} +1 -1
  37. package/dist/codecs/ber/encoders/encodeVisibleString.mjs +13 -0
  38. package/dist/{node/codecs/ber.d.ts → codecs/ber.d.mts} +5 -5
  39. package/dist/{node/codecs/ber.js → codecs/ber.mjs} +142 -180
  40. package/dist/codecs/cer/decoders/decodeSequence.d.mts +3 -0
  41. package/dist/codecs/cer/decoders/decodeSequence.mjs +14 -0
  42. package/dist/{node/codecs/cer.d.ts → codecs/cer.d.mts} +5 -5
  43. package/dist/{node/codecs/cer.js → codecs/cer.mjs} +146 -184
  44. package/dist/{node/codecs/coer/decoders/decodeBoolean.d.ts → codecs/coer/decoders/decodeBoolean.d.mts} +1 -1
  45. package/dist/codecs/coer/decoders/decodeBoolean.mjs +10 -0
  46. package/dist/{node/codecs/der/decoders/decodeBitString.d.ts → codecs/der/decoders/decodeBitString.d.mts} +1 -1
  47. package/dist/codecs/der/decoders/decodeBitString.mjs +23 -0
  48. package/dist/{node/codecs/der/decoders/decodeBoolean.d.ts → codecs/der/decoders/decodeBoolean.d.mts} +1 -1
  49. package/dist/codecs/der/decoders/decodeBoolean.mjs +10 -0
  50. package/dist/{node/codecs/der/decoders/decodeDuration.d.ts → codecs/der/decoders/decodeDuration.d.mts} +1 -1
  51. package/dist/{node/codecs/der/decoders/decodeDuration.js → codecs/der/decoders/decodeDuration.mjs} +9 -48
  52. package/dist/{node/codecs/der/decoders/decodeGeneralizedTime.d.ts → codecs/der/decoders/decodeGeneralizedTime.d.mts} +1 -1
  53. package/dist/codecs/der/decoders/decodeGeneralizedTime.mjs +42 -0
  54. package/dist/{node/codecs/der/decoders/decodeReal.d.ts → codecs/der/decoders/decodeReal.d.mts} +1 -1
  55. package/dist/codecs/der/decoders/decodeReal.mjs +95 -0
  56. package/dist/codecs/der/decoders/decodeSequence.d.mts +3 -0
  57. package/dist/codecs/der/decoders/decodeSequence.mjs +14 -0
  58. package/dist/{node/codecs/der/decoders/decodeUTCTime.d.ts → codecs/der/decoders/decodeUTCTime.d.mts} +1 -1
  59. package/dist/codecs/der/decoders/decodeUTCTime.mjs +24 -0
  60. package/dist/{node/codecs/der.d.ts → codecs/der.d.mts} +5 -5
  61. package/dist/{node/codecs/der.js → codecs/der.mjs} +138 -176
  62. package/dist/{node/codecs/x690/decoders/decodeCharacterString.d.ts → codecs/x690/decoders/decodeCharacterString.d.mts} +1 -1
  63. package/dist/codecs/x690/decoders/decodeCharacterString.mjs +12 -0
  64. package/dist/{node/codecs/x690/decoders/decodeDate.d.ts → codecs/x690/decoders/decodeDate.d.mts} +1 -1
  65. package/dist/codecs/x690/decoders/decodeDate.mjs +10 -0
  66. package/dist/{node/codecs/x690/decoders/decodeDateTime.d.ts → codecs/x690/decoders/decodeDateTime.d.mts} +1 -1
  67. package/dist/codecs/x690/decoders/decodeDateTime.mjs +13 -0
  68. package/dist/{node/codecs/x690/decoders/decodeEmbeddedPDV.d.ts → codecs/x690/decoders/decodeEmbeddedPDV.d.mts} +1 -1
  69. package/dist/codecs/x690/decoders/decodeEmbeddedPDV.mjs +8 -0
  70. package/dist/{node/codecs/x690/decoders/decodeExternal.d.ts → codecs/x690/decoders/decodeExternal.d.mts} +1 -1
  71. package/dist/codecs/x690/decoders/decodeExternal.mjs +39 -0
  72. package/dist/{node/codecs/x690/decoders/decodeGeneralString.d.ts → codecs/x690/decoders/decodeGeneralString.d.mts} +1 -1
  73. package/dist/codecs/x690/decoders/decodeGeneralString.mjs +12 -0
  74. package/dist/{node/codecs/x690/decoders/decodeGraphicString.d.ts → codecs/x690/decoders/decodeGraphicString.d.mts} +1 -1
  75. package/dist/codecs/x690/decoders/decodeGraphicString.mjs +12 -0
  76. package/dist/{node/codecs/x690/decoders/decodeInteger.d.ts → codecs/x690/decoders/decodeInteger.d.mts} +1 -1
  77. package/dist/codecs/x690/decoders/decodeInteger.mjs +16 -0
  78. package/dist/{node/codecs/x690/decoders/decodeNumericString.d.ts → codecs/x690/decoders/decodeNumericString.d.mts} +1 -1
  79. package/dist/codecs/x690/decoders/decodeNumericString.mjs +12 -0
  80. package/dist/{node/codecs/x690/decoders/decodeOIDIRI.d.ts → codecs/x690/decoders/decodeOIDIRI.d.mts} +1 -1
  81. package/dist/codecs/x690/decoders/decodeOIDIRI.mjs +4 -0
  82. package/dist/{node/codecs/x690/decoders/decodeObjectDescriptor.d.ts → codecs/x690/decoders/decodeObjectDescriptor.d.mts} +1 -1
  83. package/dist/codecs/x690/decoders/decodeObjectDescriptor.mjs +12 -0
  84. package/dist/{node/codecs/x690/decoders/decodeObjectIdentifier.d.ts → codecs/x690/decoders/decodeObjectIdentifier.d.mts} +1 -1
  85. package/dist/codecs/x690/decoders/decodeObjectIdentifier.mjs +46 -0
  86. package/dist/{node/codecs/x690/decoders/decodePrintableString.d.ts → codecs/x690/decoders/decodePrintableString.d.mts} +1 -1
  87. package/dist/codecs/x690/decoders/decodePrintableString.mjs +13 -0
  88. package/dist/{node/codecs/x690/decoders/decodeRelativeOIDIRI.d.ts → codecs/x690/decoders/decodeRelativeOIDIRI.d.mts} +1 -1
  89. package/dist/codecs/x690/decoders/decodeRelativeOIDIRI.mjs +4 -0
  90. package/dist/{node/codecs/x690/decoders/decodeRelativeObjectIdentifier.d.ts → codecs/x690/decoders/decodeRelativeObjectIdentifier.d.mts} +1 -1
  91. package/dist/codecs/x690/decoders/decodeRelativeObjectIdentifier.mjs +24 -0
  92. package/dist/{node/codecs/x690/decoders/decodeTime.d.ts → codecs/x690/decoders/decodeTime.d.mts} +1 -1
  93. package/dist/codecs/x690/decoders/decodeTime.mjs +4 -0
  94. package/dist/{node/codecs/x690/decoders/decodeTimeOfDay.d.ts → codecs/x690/decoders/decodeTimeOfDay.d.mts} +1 -1
  95. package/dist/codecs/x690/decoders/decodeTimeOfDay.mjs +14 -0
  96. package/dist/{node/codecs/x690/decoders/decodeVisibleString.d.ts → codecs/x690/decoders/decodeVisibleString.d.mts} +1 -1
  97. package/dist/codecs/x690/decoders/decodeVisibleString.mjs +12 -0
  98. package/dist/{node/codecs/x690/encoders/encodeBitString.d.ts → codecs/x690/encoders/encodeBitString.d.mts} +1 -1
  99. package/dist/codecs/x690/encoders/encodeBitString.mjs +13 -0
  100. package/dist/{node/codecs/x690/encoders/encodeBoolean.d.ts → codecs/x690/encoders/encodeBoolean.d.mts} +1 -1
  101. package/dist/codecs/x690/encoders/encodeBoolean.mjs +3 -0
  102. package/dist/{node/codecs/x690/encoders/encodeCharacterString.d.ts → codecs/x690/encoders/encodeCharacterString.d.mts} +1 -1
  103. package/dist/codecs/x690/encoders/encodeCharacterString.mjs +9 -0
  104. package/dist/{node/codecs/x690/encoders/encodeDate.d.ts → codecs/x690/encoders/encodeDate.d.mts} +1 -1
  105. package/dist/codecs/x690/encoders/encodeDate.mjs +11 -0
  106. package/dist/{node/codecs/x690/encoders/encodeDateTime.d.ts → codecs/x690/encoders/encodeDateTime.d.mts} +1 -1
  107. package/dist/codecs/x690/encoders/encodeDateTime.mjs +14 -0
  108. package/dist/{node/codecs/x690/encoders/encodeDuration.d.ts → codecs/x690/encoders/encodeDuration.d.mts} +1 -1
  109. package/dist/{node/codecs/x690/encoders/encodeDuration.js → codecs/x690/encoders/encodeDuration.mjs} +5 -11
  110. package/dist/{node/codecs/x690/encoders/encodeEmbeddedPDV.d.ts → codecs/x690/encoders/encodeEmbeddedPDV.d.mts} +1 -1
  111. package/dist/codecs/x690/encoders/encodeEmbeddedPDV.mjs +9 -0
  112. package/dist/{node/codecs/x690/encoders/encodeExternal.d.ts → codecs/x690/encoders/encodeExternal.d.mts} +1 -1
  113. package/dist/codecs/x690/encoders/encodeExternal.mjs +36 -0
  114. package/dist/{node/codecs/x690/encoders/encodeGeneralizedTime.d.ts → codecs/x690/encoders/encodeGeneralizedTime.d.mts} +1 -1
  115. package/dist/{node/codecs/x690/encoders/encodeGeneralizedTime.js → codecs/x690/encoders/encodeGeneralizedTime.mjs} +3 -9
  116. package/dist/{node/codecs/x690/encoders/encodeInteger.d.ts → codecs/x690/encoders/encodeInteger.d.mts} +1 -1
  117. package/dist/codecs/x690/encoders/encodeInteger.mjs +4 -0
  118. package/dist/{node/codecs/x690/encoders/encodeOIDIRI.d.ts → codecs/x690/encoders/encodeOIDIRI.d.mts} +1 -1
  119. package/dist/codecs/x690/encoders/encodeOIDIRI.mjs +4 -0
  120. package/dist/{node/codecs/x690/encoders/encodeObjectIdentifier.d.ts → codecs/x690/encoders/encodeObjectIdentifier.d.mts} +1 -1
  121. package/dist/{node/codecs/x690/encoders/encodeObjectIdentifier.js → codecs/x690/encoders/encodeObjectIdentifier.mjs} +3 -6
  122. package/dist/{node/codecs/x690/encoders/encodeReal.d.ts → codecs/x690/encoders/encodeReal.d.mts} +1 -1
  123. package/dist/codecs/x690/encoders/encodeReal.mjs +4 -0
  124. package/dist/{node/codecs/x690/encoders/encodeRelativeOIDIRI.d.ts → codecs/x690/encoders/encodeRelativeOIDIRI.d.mts} +1 -1
  125. package/dist/codecs/x690/encoders/encodeRelativeOIDIRI.mjs +4 -0
  126. package/dist/{node/codecs/x690/encoders/encodeRelativeObjectIdentifier.d.ts → codecs/x690/encoders/encodeRelativeObjectIdentifier.d.mts} +1 -1
  127. package/dist/{node/codecs/x690/encoders/encodeRelativeObjectIdentifier.js → codecs/x690/encoders/encodeRelativeObjectIdentifier.mjs} +3 -6
  128. package/dist/codecs/x690/encoders/encodeSequence.d.mts +3 -0
  129. package/dist/codecs/x690/encoders/encodeSequence.mjs +4 -0
  130. package/dist/{node/codecs/x690/encoders/encodeTime.d.ts → codecs/x690/encoders/encodeTime.d.mts} +1 -1
  131. package/dist/codecs/x690/encoders/encodeTime.mjs +4 -0
  132. package/dist/{node/codecs/x690/encoders/encodeTimeOfDay.d.ts → codecs/x690/encoders/encodeTimeOfDay.d.mts} +1 -1
  133. package/dist/codecs/x690/encoders/encodeTimeOfDay.mjs +4 -0
  134. package/dist/{node/codecs/x690/encoders/encodeUTCTime.d.ts → codecs/x690/encoders/encodeUTCTime.d.mts} +1 -1
  135. package/dist/{node/codecs/x690/encoders/encodeUTCTime.js → codecs/x690/encoders/encodeUTCTime.mjs} +3 -9
  136. package/dist/{node/errors.d.ts → errors.d.mts} +1 -1
  137. package/dist/{node/errors.js → errors.mjs} +26 -23
  138. package/dist/{node/functional.d.ts → functional.d.mts} +2 -2
  139. package/dist/functional.mjs +766 -0
  140. package/dist/index.d.mts +16 -0
  141. package/dist/index.mjs +15 -0
  142. package/dist/interfaces/Byteable.d.mts +4 -0
  143. package/dist/interfaces/Byteable.mjs +1 -0
  144. package/dist/interfaces/CharacterValidationFunction.mjs +1 -0
  145. package/dist/interfaces/Debyteable.mjs +1 -0
  146. package/dist/{node/interfaces/Deelementable.d.ts → interfaces/Deelementable.d.mts} +1 -1
  147. package/dist/interfaces/Deelementable.mjs +1 -0
  148. package/dist/interfaces/Destringable.mjs +1 -0
  149. package/dist/interfaces/Elementable.d.mts +4 -0
  150. package/dist/interfaces/Elementable.mjs +1 -0
  151. package/dist/interfaces/Enbyteable.mjs +1 -0
  152. package/dist/{node/interfaces/Enelementable.d.ts → interfaces/Enelementable.d.mts} +1 -1
  153. package/dist/interfaces/Enelementable.mjs +1 -0
  154. package/dist/interfaces/Enstringable.mjs +1 -0
  155. package/dist/{node/interfaces/Identified.d.ts → interfaces/Identified.d.mts} +1 -1
  156. package/dist/interfaces/Identified.mjs +1 -0
  157. package/dist/interfaces/Long.mjs +1 -0
  158. package/dist/interfaces/Named.mjs +1 -0
  159. package/dist/interfaces/Stringable.d.mts +4 -0
  160. package/dist/interfaces/Stringable.mjs +1 -0
  161. package/dist/interfaces/index.d.mts +12 -0
  162. package/dist/interfaces/index.mjs +1 -0
  163. package/dist/{node/macros.d.ts → macros.d.mts} +5 -5
  164. package/dist/macros.mjs +14 -0
  165. package/dist/{node/types/CharacterString.d.ts → types/CharacterString.d.mts} +1 -1
  166. package/dist/{node/types/CharacterString.js → types/CharacterString.mjs} +3 -4
  167. package/dist/{node/types/EmbeddedPDV.d.ts → types/EmbeddedPDV.d.mts} +1 -1
  168. package/dist/{node/types/EmbeddedPDV.js → types/EmbeddedPDV.mjs} +3 -4
  169. package/dist/{node/types/External.d.ts → types/External.d.mts} +2 -2
  170. package/dist/{node/types/External.js → types/External.mjs} +7 -9
  171. package/dist/{node/types/ObjectIdentifier.js → types/ObjectIdentifier.mjs} +6 -11
  172. package/dist/{node/types/TypeIdentifier.d.ts → types/TypeIdentifier.d.mts} +2 -2
  173. package/dist/types/TypeIdentifier.mjs +8 -0
  174. package/dist/types/index.d.mts +18 -0
  175. package/dist/types/index.mjs +18 -0
  176. package/dist/{node/types/time/DATE-ENCODING.d.ts → types/time/DATE-ENCODING.d.mts} +1 -1
  177. package/dist/types/time/DATE-ENCODING.mjs +13 -0
  178. package/dist/{node/types/time/DURATION-EQUIVALENT.d.ts → types/time/DURATION-EQUIVALENT.d.mts} +1 -1
  179. package/dist/types/time/DURATION-EQUIVALENT.mjs +93 -0
  180. package/dist/{node/types/time/DURATION-INTERVAL-ENCODING.d.ts → types/time/DURATION-INTERVAL-ENCODING.d.mts} +1 -1
  181. package/dist/types/time/DURATION-INTERVAL-ENCODING.mjs +50 -0
  182. package/dist/{node/types/time/HOURS-DIFF-ENCODING.d.ts → types/time/HOURS-DIFF-ENCODING.d.mts} +1 -1
  183. package/dist/types/time/HOURS-DIFF-ENCODING.mjs +11 -0
  184. package/dist/{node/types/time/HOURS-ENCODING.d.ts → types/time/HOURS-ENCODING.d.mts} +1 -1
  185. package/dist/types/time/HOURS-ENCODING.mjs +8 -0
  186. package/dist/{node/types/time/HOURS-MINUTES-DIFF-ENCODING.d.ts → types/time/HOURS-MINUTES-DIFF-ENCODING.d.mts} +1 -1
  187. package/dist/types/time/HOURS-MINUTES-DIFF-ENCODING.mjs +14 -0
  188. package/dist/{node/types/time/HOURS-MINUTES-ENCODING.d.ts → types/time/HOURS-MINUTES-ENCODING.d.mts} +1 -1
  189. package/dist/types/time/HOURS-MINUTES-ENCODING.mjs +11 -0
  190. package/dist/{node/types/time/TIME-OF-DAY-DIFF-ENCODING.d.ts → types/time/TIME-OF-DAY-DIFF-ENCODING.d.mts} +1 -1
  191. package/dist/types/time/TIME-OF-DAY-DIFF-ENCODING.mjs +17 -0
  192. package/dist/{node/types/time/TIME-OF-DAY-ENCODING.d.ts → types/time/TIME-OF-DAY-ENCODING.d.mts} +1 -1
  193. package/dist/types/time/TIME-OF-DAY-ENCODING.mjs +14 -0
  194. package/dist/{node/types/time/TIME-OF-DAY-FRACTION-DIFF-ENCODING.d.ts → types/time/TIME-OF-DAY-FRACTION-DIFF-ENCODING.d.mts} +1 -1
  195. package/dist/types/time/TIME-OF-DAY-FRACTION-DIFF-ENCODING.mjs +20 -0
  196. package/dist/{node/types/time/TIME-OF-DAY-FRACTION-ENCODING.d.ts → types/time/TIME-OF-DAY-FRACTION-ENCODING.d.mts} +1 -1
  197. package/dist/types/time/TIME-OF-DAY-FRACTION-ENCODING.mjs +17 -0
  198. package/dist/{node/types/time/YEAR-ENCODING.d.ts → types/time/YEAR-ENCODING.d.mts} +1 -1
  199. package/dist/types/time/YEAR-ENCODING.mjs +6 -0
  200. package/dist/{node/types/time/YEAR-MONTH-ENCODING.d.ts → types/time/YEAR-MONTH-ENCODING.d.mts} +1 -1
  201. package/dist/types/time/YEAR-MONTH-ENCODING.mjs +10 -0
  202. package/dist/utils/base128Length.mjs +3 -0
  203. package/dist/{node/utils/bigint.d.ts → utils/bigint.d.mts} +1 -1
  204. package/dist/{node/utils/bigint.js → utils/bigint.mjs} +21 -25
  205. package/dist/{node/utils/compareSetOfElementsCanonically.d.ts → utils/compareSetOfElementsCanonically.d.mts} +1 -1
  206. package/dist/{node/utils/compareSetOfElementsCanonically.js → utils/compareSetOfElementsCanonically.mjs} +1 -4
  207. package/dist/utils/convertBytesToText.mjs +14 -0
  208. package/dist/utils/convertTextToBytes.mjs +11 -0
  209. package/dist/utils/decodeIEEE754DoublePrecisionFloat.mjs +3 -0
  210. package/dist/utils/decodeIEEE754SinglePrecisionFloat.mjs +3 -0
  211. package/dist/utils/decodeSignedBigEndianInteger.mjs +13 -0
  212. package/dist/utils/decodeUnsignedBigEndianInteger.mjs +13 -0
  213. package/dist/utils/decodeX690RealNumber.mjs +108 -0
  214. package/dist/utils/dissectFloat.mjs +13 -0
  215. package/dist/utils/encodeIEEE754DoublePrecisionFloat.mjs +3 -0
  216. package/dist/utils/encodeIEEE754SinglePrecisionFloat.mjs +3 -0
  217. package/dist/utils/encodeSignedBigEndianInteger.mjs +36 -0
  218. package/dist/utils/encodeUnsignedBigEndianInteger.mjs +23 -0
  219. package/dist/utils/encodeX690Base10RealNumber.mjs +21 -0
  220. package/dist/utils/encodeX690BinaryRealNumber.mjs +43 -0
  221. package/dist/utils/getBitFromBase128.mjs +4 -0
  222. package/dist/utils/getBitFromBase256.mjs +3 -0
  223. package/dist/{node/utils/index.d.ts → utils/index.d.mts} +22 -22
  224. package/dist/utils/index.mjs +22 -0
  225. package/dist/{node/utils/isInCanonicalOrder.d.ts → utils/isInCanonicalOrder.d.mts} +1 -1
  226. package/dist/{node/utils/isInCanonicalOrder.js → utils/isInCanonicalOrder.mjs} +4 -7
  227. package/dist/{node/utils/isUniquelyTagged.d.ts → utils/isUniquelyTagged.d.mts} +1 -1
  228. package/dist/{node/utils/isUniquelyTagged.js → utils/isUniquelyTagged.mjs} +1 -4
  229. package/dist/{node/utils/packBits.d.ts → utils/packBits.d.mts} +1 -1
  230. package/dist/{node/utils/packBits.js → utils/packBits.mjs} +3 -6
  231. package/dist/{node/utils/setBitInBase128.js → utils/setBitInBase128.mjs} +1 -4
  232. package/dist/{node/utils/setBitInBase256.js → utils/setBitInBase256.mjs} +1 -4
  233. package/dist/{node/utils/sortCanonically.d.ts → utils/sortCanonically.d.mts} +1 -1
  234. package/dist/utils/sortCanonically.mjs +11 -0
  235. package/dist/utils/splitOctetsCanonically.mjs +5 -0
  236. package/dist/{node/utils/trimLeadingPaddingBytes.js → utils/trimLeadingPaddingBytes.mjs} +1 -4
  237. package/dist/{node/utils/unpackBits.d.ts → utils/unpackBits.d.mts} +1 -1
  238. package/dist/{node/utils/unpackBits.js → utils/unpackBits.mjs} +3 -6
  239. package/dist/{node/validators/datetimeComponentValidator.d.ts → validators/datetimeComponentValidator.d.mts} +1 -1
  240. package/dist/validators/datetimeComponentValidator.mjs +14 -0
  241. package/dist/{node/validators/index.d.ts → validators/index.d.mts} +6 -6
  242. package/dist/validators/index.mjs +6 -0
  243. package/dist/validators/isGeneralCharacter.mjs +3 -0
  244. package/dist/validators/isGraphicCharacter.mjs +3 -0
  245. package/dist/validators/isNumericCharacter.mjs +3 -0
  246. package/dist/validators/isObjectDescriptorCharacter.mjs +4 -0
  247. package/dist/{node/validators/isPrintableCharacter.js → validators/isPrintableCharacter.mjs} +1 -4
  248. package/dist/validators/isVisibleCharacter.mjs +4 -0
  249. package/dist/{node/validators/validateConstruction.d.ts → validators/validateConstruction.d.mts} +2 -2
  250. package/dist/validators/validateConstruction.mjs +37 -0
  251. package/dist/validators/validateDate.mjs +49 -0
  252. package/dist/validators/validateDateTime.mjs +6 -0
  253. package/dist/validators/validateTime.mjs +21 -0
  254. package/dist/{node/values.js → values.mjs} +36 -39
  255. package/dist/{node/x690.d.ts → x690.d.mts} +2 -2
  256. package/dist/x690.mjs +95 -0
  257. package/package.json +8 -7
  258. package/dist/node/ConstructedElementSpecification.js +0 -2
  259. package/dist/node/classes/ABSTRACT-SYNTAX.js +0 -2
  260. package/dist/node/classes/TYPE-IDENTIFIER.js +0 -2
  261. package/dist/node/classes/index.d.ts +0 -2
  262. package/dist/node/classes/index.js +0 -2
  263. package/dist/node/codecs/ber/decoders/decodeBitString.js +0 -55
  264. package/dist/node/codecs/ber/decoders/decodeBoolean.js +0 -43
  265. package/dist/node/codecs/ber/decoders/decodeReal.js +0 -147
  266. package/dist/node/codecs/ber/decoders/decodeSequence.d.ts +0 -3
  267. package/dist/node/codecs/ber/decoders/decodeSequence.js +0 -17
  268. package/dist/node/codecs/ber/decoders/decodeUTCTime.js +0 -84
  269. package/dist/node/codecs/ber/encoders/encodeGeneralString.js +0 -19
  270. package/dist/node/codecs/ber/encoders/encodeGraphicString.js +0 -19
  271. package/dist/node/codecs/ber/encoders/encodeNumericString.js +0 -19
  272. package/dist/node/codecs/ber/encoders/encodeObjectDescriptor.js +0 -19
  273. package/dist/node/codecs/ber/encoders/encodePrintableString.js +0 -20
  274. package/dist/node/codecs/ber/encoders/encodeVisibleString.js +0 -19
  275. package/dist/node/codecs/cer/decoders/decodeSequence.d.ts +0 -3
  276. package/dist/node/codecs/cer/decoders/decodeSequence.js +0 -20
  277. package/dist/node/codecs/coer/decoders/decodeBoolean.js +0 -46
  278. package/dist/node/codecs/der/decoders/decodeBitString.js +0 -59
  279. package/dist/node/codecs/der/decoders/decodeBoolean.js +0 -46
  280. package/dist/node/codecs/der/decoders/decodeGeneralizedTime.js +0 -81
  281. package/dist/node/codecs/der/decoders/decodeReal.js +0 -134
  282. package/dist/node/codecs/der/decoders/decodeSequence.d.ts +0 -3
  283. package/dist/node/codecs/der/decoders/decodeSequence.js +0 -20
  284. package/dist/node/codecs/der/decoders/decodeUTCTime.js +0 -63
  285. package/dist/node/codecs/oer/decoders/decodeBoolean.d.ts +0 -2
  286. package/dist/node/codecs/oer/decoders/decodeBoolean.js +0 -43
  287. package/dist/node/codecs/x690/decoders/decodeCharacterString.js +0 -18
  288. package/dist/node/codecs/x690/decoders/decodeDate.js +0 -16
  289. package/dist/node/codecs/x690/decoders/decodeDateTime.js +0 -19
  290. package/dist/node/codecs/x690/decoders/decodeEmbeddedPDV.js +0 -14
  291. package/dist/node/codecs/x690/decoders/decodeExternal.js +0 -78
  292. package/dist/node/codecs/x690/decoders/decodeGeneralString.js +0 -18
  293. package/dist/node/codecs/x690/decoders/decodeGraphicString.js +0 -18
  294. package/dist/node/codecs/x690/decoders/decodeInteger.js +0 -52
  295. package/dist/node/codecs/x690/decoders/decodeNumericString.js +0 -18
  296. package/dist/node/codecs/x690/decoders/decodeOIDIRI.js +0 -10
  297. package/dist/node/codecs/x690/decoders/decodeObjectDescriptor.js +0 -18
  298. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.js +0 -85
  299. package/dist/node/codecs/x690/decoders/decodePrintableString.js +0 -19
  300. package/dist/node/codecs/x690/decoders/decodeRelativeOIDIRI.js +0 -10
  301. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.js +0 -60
  302. package/dist/node/codecs/x690/decoders/decodeTime.js +0 -10
  303. package/dist/node/codecs/x690/decoders/decodeTimeOfDay.js +0 -20
  304. package/dist/node/codecs/x690/decoders/decodeVisibleString.js +0 -18
  305. package/dist/node/codecs/x690/encoders/encodeBitString.js +0 -19
  306. package/dist/node/codecs/x690/encoders/encodeBoolean.js +0 -6
  307. package/dist/node/codecs/x690/encoders/encodeCharacterString.js +0 -15
  308. package/dist/node/codecs/x690/encoders/encodeDate.js +0 -50
  309. package/dist/node/codecs/x690/encoders/encodeDateTime.js +0 -53
  310. package/dist/node/codecs/x690/encoders/encodeEmbeddedPDV.js +0 -15
  311. package/dist/node/codecs/x690/encoders/encodeExternal.js +0 -42
  312. package/dist/node/codecs/x690/encoders/encodeInteger.js +0 -7
  313. package/dist/node/codecs/x690/encoders/encodeOIDIRI.js +0 -10
  314. package/dist/node/codecs/x690/encoders/encodeReal.js +0 -10
  315. package/dist/node/codecs/x690/encoders/encodeRelativeOIDIRI.js +0 -10
  316. package/dist/node/codecs/x690/encoders/encodeSequence.d.ts +0 -3
  317. package/dist/node/codecs/x690/encoders/encodeSequence.js +0 -7
  318. package/dist/node/codecs/x690/encoders/encodeTime.js +0 -10
  319. package/dist/node/codecs/x690/encoders/encodeTimeOfDay.js +0 -10
  320. package/dist/node/codecs/x696/encoders/encodeBoolean.d.ts +0 -2
  321. package/dist/node/codecs/x696/encoders/encodeBoolean.js +0 -6
  322. package/dist/node/functional.js +0 -880
  323. package/dist/node/index.d.ts +0 -16
  324. package/dist/node/index.js +0 -42
  325. package/dist/node/interfaces/Byteable.d.ts +0 -4
  326. package/dist/node/interfaces/Byteable.js +0 -2
  327. package/dist/node/interfaces/CharacterValidationFunction.js +0 -2
  328. package/dist/node/interfaces/Debyteable.js +0 -2
  329. package/dist/node/interfaces/Deelementable.js +0 -2
  330. package/dist/node/interfaces/Destringable.js +0 -2
  331. package/dist/node/interfaces/Elementable.d.ts +0 -4
  332. package/dist/node/interfaces/Elementable.js +0 -2
  333. package/dist/node/interfaces/Enbyteable.js +0 -2
  334. package/dist/node/interfaces/Enelementable.js +0 -2
  335. package/dist/node/interfaces/Enstringable.js +0 -2
  336. package/dist/node/interfaces/Identified.js +0 -2
  337. package/dist/node/interfaces/Long.js +0 -2
  338. package/dist/node/interfaces/Named.js +0 -2
  339. package/dist/node/interfaces/Stringable.d.ts +0 -4
  340. package/dist/node/interfaces/Stringable.js +0 -2
  341. package/dist/node/interfaces/index.d.ts +0 -12
  342. package/dist/node/interfaces/index.js +0 -2
  343. package/dist/node/macros.js +0 -21
  344. package/dist/node/types/TypeIdentifier.js +0 -9
  345. package/dist/node/types/index.d.ts +0 -18
  346. package/dist/node/types/index.js +0 -42
  347. package/dist/node/types/time/DATE-ENCODING.js +0 -16
  348. package/dist/node/types/time/DURATION-EQUIVALENT.js +0 -124
  349. package/dist/node/types/time/DURATION-INTERVAL-ENCODING.js +0 -81
  350. package/dist/node/types/time/HOURS-DIFF-ENCODING.js +0 -15
  351. package/dist/node/types/time/HOURS-ENCODING.js +0 -13
  352. package/dist/node/types/time/HOURS-MINUTES-DIFF-ENCODING.js +0 -17
  353. package/dist/node/types/time/HOURS-MINUTES-ENCODING.js +0 -15
  354. package/dist/node/types/time/TIME-OF-DAY-DIFF-ENCODING.js +0 -19
  355. package/dist/node/types/time/TIME-OF-DAY-ENCODING.js +0 -17
  356. package/dist/node/types/time/TIME-OF-DAY-FRACTION-DIFF-ENCODING.js +0 -21
  357. package/dist/node/types/time/TIME-OF-DAY-FRACTION-ENCODING.js +0 -19
  358. package/dist/node/types/time/YEAR-ENCODING.js +0 -8
  359. package/dist/node/types/time/YEAR-MONTH-ENCODING.js +0 -14
  360. package/dist/node/utils/base128Length.js +0 -6
  361. package/dist/node/utils/convertBytesToText.js +0 -17
  362. package/dist/node/utils/convertTextToBytes.js +0 -14
  363. package/dist/node/utils/decodeIEEE754DoublePrecisionFloat.js +0 -6
  364. package/dist/node/utils/decodeIEEE754SinglePrecisionFloat.js +0 -6
  365. package/dist/node/utils/decodeSignedBigEndianInteger.js +0 -49
  366. package/dist/node/utils/decodeUnsignedBigEndianInteger.js +0 -49
  367. package/dist/node/utils/decodeX690RealNumber.js +0 -147
  368. package/dist/node/utils/dissectFloat.js +0 -16
  369. package/dist/node/utils/encodeIEEE754DoublePrecisionFloat.js +0 -6
  370. package/dist/node/utils/encodeIEEE754SinglePrecisionFloat.js +0 -6
  371. package/dist/node/utils/encodeSignedBigEndianInteger.js +0 -72
  372. package/dist/node/utils/encodeUnsignedBigEndianInteger.js +0 -59
  373. package/dist/node/utils/encodeX690Base10RealNumber.js +0 -27
  374. package/dist/node/utils/encodeX690BinaryRealNumber.js +0 -82
  375. package/dist/node/utils/getBitFromBase128.js +0 -7
  376. package/dist/node/utils/getBitFromBase256.js +0 -6
  377. package/dist/node/utils/index.js +0 -50
  378. package/dist/node/utils/sortCanonically.js +0 -14
  379. package/dist/node/utils/splitOctetsCanonically.js +0 -8
  380. package/dist/node/validators/datetimeComponentValidator.js +0 -50
  381. package/dist/node/validators/index.js +0 -18
  382. package/dist/node/validators/isGeneralCharacter.js +0 -6
  383. package/dist/node/validators/isGraphicCharacter.js +0 -6
  384. package/dist/node/validators/isNumericCharacter.js +0 -6
  385. package/dist/node/validators/isObjectDescriptorCharacter.js +0 -10
  386. package/dist/node/validators/isVisibleCharacter.js +0 -10
  387. package/dist/node/validators/validateConstruction.js +0 -73
  388. package/dist/node/validators/validateDate.js +0 -85
  389. package/dist/node/validators/validateDateTime.js +0 -12
  390. package/dist/node/validators/validateTime.js +0 -57
  391. package/dist/node/x690.js +0 -134
  392. /package/dist/{node/interfaces/CharacterValidationFunction.d.ts → interfaces/CharacterValidationFunction.d.mts} +0 -0
  393. /package/dist/{node/interfaces/Debyteable.d.ts → interfaces/Debyteable.d.mts} +0 -0
  394. /package/dist/{node/interfaces/Destringable.d.ts → interfaces/Destringable.d.mts} +0 -0
  395. /package/dist/{node/interfaces/Enbyteable.d.ts → interfaces/Enbyteable.d.mts} +0 -0
  396. /package/dist/{node/interfaces/Enstringable.d.ts → interfaces/Enstringable.d.mts} +0 -0
  397. /package/dist/{node/interfaces/Long.d.ts → interfaces/Long.d.mts} +0 -0
  398. /package/dist/{node/interfaces/Named.d.ts → interfaces/Named.d.mts} +0 -0
  399. /package/dist/{node/types/ObjectIdentifier.d.ts → types/ObjectIdentifier.d.mts} +0 -0
  400. /package/dist/{node/utils/base128Length.d.ts → utils/base128Length.d.mts} +0 -0
  401. /package/dist/{node/utils/convertBytesToText.d.ts → utils/convertBytesToText.d.mts} +0 -0
  402. /package/dist/{node/utils/convertTextToBytes.d.ts → utils/convertTextToBytes.d.mts} +0 -0
  403. /package/dist/{node/utils/decodeIEEE754DoublePrecisionFloat.d.ts → utils/decodeIEEE754DoublePrecisionFloat.d.mts} +0 -0
  404. /package/dist/{node/utils/decodeIEEE754SinglePrecisionFloat.d.ts → utils/decodeIEEE754SinglePrecisionFloat.d.mts} +0 -0
  405. /package/dist/{node/utils/decodeSignedBigEndianInteger.d.ts → utils/decodeSignedBigEndianInteger.d.mts} +0 -0
  406. /package/dist/{node/utils/decodeUnsignedBigEndianInteger.d.ts → utils/decodeUnsignedBigEndianInteger.d.mts} +0 -0
  407. /package/dist/{node/utils/decodeX690RealNumber.d.ts → utils/decodeX690RealNumber.d.mts} +0 -0
  408. /package/dist/{node/utils/dissectFloat.d.ts → utils/dissectFloat.d.mts} +0 -0
  409. /package/dist/{node/utils/encodeIEEE754DoublePrecisionFloat.d.ts → utils/encodeIEEE754DoublePrecisionFloat.d.mts} +0 -0
  410. /package/dist/{node/utils/encodeIEEE754SinglePrecisionFloat.d.ts → utils/encodeIEEE754SinglePrecisionFloat.d.mts} +0 -0
  411. /package/dist/{node/utils/encodeSignedBigEndianInteger.d.ts → utils/encodeSignedBigEndianInteger.d.mts} +0 -0
  412. /package/dist/{node/utils/encodeUnsignedBigEndianInteger.d.ts → utils/encodeUnsignedBigEndianInteger.d.mts} +0 -0
  413. /package/dist/{node/utils/encodeX690Base10RealNumber.d.ts → utils/encodeX690Base10RealNumber.d.mts} +0 -0
  414. /package/dist/{node/utils/encodeX690BinaryRealNumber.d.ts → utils/encodeX690BinaryRealNumber.d.mts} +0 -0
  415. /package/dist/{node/utils/getBitFromBase128.d.ts → utils/getBitFromBase128.d.mts} +0 -0
  416. /package/dist/{node/utils/getBitFromBase256.d.ts → utils/getBitFromBase256.d.mts} +0 -0
  417. /package/dist/{node/utils/setBitInBase128.d.ts → utils/setBitInBase128.d.mts} +0 -0
  418. /package/dist/{node/utils/setBitInBase256.d.ts → utils/setBitInBase256.d.mts} +0 -0
  419. /package/dist/{node/utils/splitOctetsCanonically.d.ts → utils/splitOctetsCanonically.d.mts} +0 -0
  420. /package/dist/{node/utils/trimLeadingPaddingBytes.d.ts → utils/trimLeadingPaddingBytes.d.mts} +0 -0
  421. /package/dist/{node/validators/isGeneralCharacter.d.ts → validators/isGeneralCharacter.d.mts} +0 -0
  422. /package/dist/{node/validators/isGraphicCharacter.d.ts → validators/isGraphicCharacter.d.mts} +0 -0
  423. /package/dist/{node/validators/isNumericCharacter.d.ts → validators/isNumericCharacter.d.mts} +0 -0
  424. /package/dist/{node/validators/isObjectDescriptorCharacter.d.ts → validators/isObjectDescriptorCharacter.d.mts} +0 -0
  425. /package/dist/{node/validators/isPrintableCharacter.d.ts → validators/isPrintableCharacter.d.mts} +0 -0
  426. /package/dist/{node/validators/isVisibleCharacter.d.ts → validators/isVisibleCharacter.d.mts} +0 -0
  427. /package/dist/{node/validators/validateDate.d.ts → validators/validateDate.d.mts} +0 -0
  428. /package/dist/{node/validators/validateDateTime.d.ts → validators/validateDateTime.d.mts} +0 -0
  429. /package/dist/{node/validators/validateTime.d.ts → validators/validateTime.d.mts} +0 -0
  430. /package/dist/{node/values.d.ts → values.d.mts} +0 -0
@@ -0,0 +1,17 @@
1
+ import datetimeComponentValidator from "../../validators/datetimeComponentValidator.mjs";
2
+ export default class TIME_OF_DAY_DIFF_ENCODING {
3
+ hours;
4
+ minutes;
5
+ seconds;
6
+ minutes_diff;
7
+ constructor(hours, minutes, seconds, minutes_diff) {
8
+ this.hours = hours;
9
+ this.minutes = minutes;
10
+ this.seconds = seconds;
11
+ this.minutes_diff = minutes_diff;
12
+ datetimeComponentValidator("hour", 0, 24)("TIME-OF-DAY-DIFF-ENCODING", hours);
13
+ datetimeComponentValidator("minute", 0, 59)("TIME-OF-DAY-DIFF-ENCODING", minutes);
14
+ datetimeComponentValidator("seconds", 0, 60)("TIME-OF-DAY-DIFF-ENCODING", seconds);
15
+ datetimeComponentValidator("minute-diff", -900, 900)("TIME-OF-DAY-DIFF-ENCODING", minutes_diff);
16
+ }
17
+ }
@@ -1,4 +1,4 @@
1
- import { INTEGER } from "../../macros";
1
+ import { INTEGER } from "../../macros.mjs";
2
2
  export default class TIME_OF_DAY_ENCODING {
3
3
  readonly hours: INTEGER;
4
4
  readonly minutes: INTEGER;
@@ -0,0 +1,14 @@
1
+ import datetimeComponentValidator from "../../validators/datetimeComponentValidator.mjs";
2
+ export default class TIME_OF_DAY_ENCODING {
3
+ hours;
4
+ minutes;
5
+ seconds;
6
+ constructor(hours, minutes, seconds) {
7
+ this.hours = hours;
8
+ this.minutes = minutes;
9
+ this.seconds = seconds;
10
+ datetimeComponentValidator("hour", 0, 24)("TIME-OF-DAY-ENCODING", hours);
11
+ datetimeComponentValidator("minute", 0, 59)("TIME-OF-DAY-ENCODING", minutes);
12
+ datetimeComponentValidator("seconds", 0, 60)("TIME-OF-DAY-ENCODING", seconds);
13
+ }
14
+ }
@@ -1,4 +1,4 @@
1
- import { INTEGER } from "../../macros";
1
+ import { INTEGER } from "../../macros.mjs";
2
2
  export default class TIME_OF_DAY_FRACTION_DIFF_ENCODING {
3
3
  readonly hours: INTEGER;
4
4
  readonly minutes: INTEGER;
@@ -0,0 +1,20 @@
1
+ import datetimeComponentValidator from "../../validators/datetimeComponentValidator.mjs";
2
+ export default class TIME_OF_DAY_FRACTION_DIFF_ENCODING {
3
+ hours;
4
+ minutes;
5
+ seconds;
6
+ fractional_part;
7
+ minutes_diff;
8
+ constructor(hours, minutes, seconds, fractional_part, minutes_diff) {
9
+ this.hours = hours;
10
+ this.minutes = minutes;
11
+ this.seconds = seconds;
12
+ this.fractional_part = fractional_part;
13
+ this.minutes_diff = minutes_diff;
14
+ datetimeComponentValidator("hour", 0, 24)("TIME-OF-DAY-FRACTION-DIFF-ENCODING", hours);
15
+ datetimeComponentValidator("minute", 0, 59)("TIME-OF-DAY-FRACTION-DIFF-ENCODING", minutes);
16
+ datetimeComponentValidator("seconds", 0, 60)("TIME-OF-DAY-FRACTION-DIFF-ENCODING", seconds);
17
+ datetimeComponentValidator("fractional-part", 0, Number.MAX_SAFE_INTEGER)("TIME-OF-DAY-FRACTION-DIFF-ENCODING", fractional_part);
18
+ datetimeComponentValidator("minute-diff", -900, 900)("TIME-OF-DAY-FRACTION-DIFF-ENCODING", minutes_diff);
19
+ }
20
+ }
@@ -1,4 +1,4 @@
1
- import { INTEGER } from "../../macros";
1
+ import { INTEGER } from "../../macros.mjs";
2
2
  export default class TIME_OF_DAY_FRACTION_ENCODING {
3
3
  readonly hours: INTEGER;
4
4
  readonly minutes: INTEGER;
@@ -0,0 +1,17 @@
1
+ import datetimeComponentValidator from "../../validators/datetimeComponentValidator.mjs";
2
+ export default class TIME_OF_DAY_FRACTION_ENCODING {
3
+ hours;
4
+ minutes;
5
+ seconds;
6
+ fractional_part;
7
+ constructor(hours, minutes, seconds, fractional_part) {
8
+ this.hours = hours;
9
+ this.minutes = minutes;
10
+ this.seconds = seconds;
11
+ this.fractional_part = fractional_part;
12
+ datetimeComponentValidator("hour", 0, 24)("TIME-OF-DAY-FRACTION-ENCODING", hours);
13
+ datetimeComponentValidator("minute", 0, 59)("TIME-OF-DAY-FRACTION-ENCODING", minutes);
14
+ datetimeComponentValidator("seconds", 0, 60)("TIME-OF-DAY-FRACTION-ENCODING", seconds);
15
+ datetimeComponentValidator("fractional-part", 0, Number.MAX_SAFE_INTEGER)("TIME-OF-DAY-FRACTION-ENCODING", fractional_part);
16
+ }
17
+ }
@@ -1,4 +1,4 @@
1
- import { INTEGER } from "../../macros";
1
+ import { INTEGER } from "../../macros.mjs";
2
2
  export default class YEAR_ENCODING {
3
3
  readonly year: INTEGER;
4
4
  constructor(year: INTEGER);
@@ -0,0 +1,6 @@
1
+ export default class YEAR_ENCODING {
2
+ year;
3
+ constructor(year) {
4
+ this.year = year;
5
+ }
6
+ }
@@ -1,4 +1,4 @@
1
- import { INTEGER } from "../../macros";
1
+ import { INTEGER } from "../../macros.mjs";
2
2
  export default class YEAR_MONTH_ENCODING {
3
3
  readonly year: INTEGER;
4
4
  readonly month: INTEGER;
@@ -0,0 +1,10 @@
1
+ import datetimeComponentValidator from "../../validators/datetimeComponentValidator.mjs";
2
+ export default class YEAR_MONTH_ENCODING {
3
+ year;
4
+ month;
5
+ constructor(year, month) {
6
+ this.year = year;
7
+ this.month = month;
8
+ datetimeComponentValidator("month", 1, 12)("YEAR-MONTH-ENCODING", month);
9
+ }
10
+ }
@@ -0,0 +1,3 @@
1
+ export default function base128Length(numberOfBytes) {
2
+ return Math.ceil(numberOfBytes * (8 / 7));
3
+ }
@@ -1,4 +1,4 @@
1
- import type { INTEGER } from "../macros";
1
+ import type { INTEGER } from "../macros.mjs";
2
2
  import { Buffer } from "node:buffer";
3
3
  export declare function bufferToInteger(input: Buffer | Uint8Array): INTEGER;
4
4
  export declare function integerToBuffer(int: INTEGER): Buffer;
@@ -1,13 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.bufferToInteger = bufferToInteger;
4
- exports.integerToBuffer = integerToBuffer;
5
- const values_1 = require("../values");
6
- const node_buffer_1 = require("node:buffer");
7
- function bufferToInteger(input) {
8
- const buf = (input instanceof node_buffer_1.Buffer)
1
+ import { MIN_SINT_32, MAX_SINT_32 } from "../values.mjs";
2
+ import { Buffer } from "node:buffer";
3
+ export function bufferToInteger(input) {
4
+ const buf = (input instanceof Buffer)
9
5
  ? input
10
- : node_buffer_1.Buffer.from(input.buffer);
6
+ : Buffer.from(input.buffer);
11
7
  switch (buf.length) {
12
8
  case (0): return 0;
13
9
  case (1): return buf.readInt8();
@@ -24,30 +20,30 @@ function bufferToInteger(input) {
24
20
  }
25
21
  }
26
22
  }
27
- function integerToBuffer(int) {
23
+ export function integerToBuffer(int) {
28
24
  if (typeof int === "number") {
29
25
  if ((int <= 127) && (int >= -128)) {
30
- const buf = node_buffer_1.Buffer.allocUnsafe(1);
26
+ const buf = Buffer.allocUnsafe(1);
31
27
  buf.writeInt8(int);
32
28
  return buf;
33
29
  }
34
30
  else if ((int <= 32767) && (int >= -32768)) {
35
- const buf = node_buffer_1.Buffer.allocUnsafe(2);
31
+ const buf = Buffer.allocUnsafe(2);
36
32
  buf.writeInt16BE(int);
37
33
  return buf;
38
34
  }
39
35
  else if ((int <= 8388607) && (int >= -8388608)) {
40
- const buf = node_buffer_1.Buffer.allocUnsafe(4);
36
+ const buf = Buffer.allocUnsafe(4);
41
37
  buf.writeInt32BE(int);
42
38
  return buf.subarray(1);
43
39
  }
44
- else if ((int >= values_1.MIN_SINT_32) && (int <= values_1.MAX_SINT_32)) {
45
- const buf = node_buffer_1.Buffer.allocUnsafe(4);
40
+ else if ((int >= MIN_SINT_32) && (int <= MAX_SINT_32)) {
41
+ const buf = Buffer.allocUnsafe(4);
46
42
  buf.writeInt32BE(int);
47
43
  return buf;
48
44
  }
49
45
  else {
50
- const ret = node_buffer_1.Buffer.allocUnsafe(8);
46
+ const ret = Buffer.allocUnsafe(8);
51
47
  ret.writeBigInt64BE(BigInt(int));
52
48
  let startOfNonPadding = 0;
53
49
  if (int >= 0) {
@@ -75,27 +71,27 @@ function integerToBuffer(int) {
75
71
  }
76
72
  else {
77
73
  let startOfNonPadding = 0;
78
- let ret = node_buffer_1.Buffer.allocUnsafe(8);
74
+ let ret = Buffer.allocUnsafe(8);
79
75
  if ((int >= Number.MIN_SAFE_INTEGER)
80
76
  && (int <= Number.MAX_SAFE_INTEGER)) {
81
77
  ret.writeBigInt64BE(int);
82
78
  }
83
79
  else if (int >= 0) {
84
80
  const hex = int.toString(16);
85
- ret = node_buffer_1.Buffer.from(((hex.length % 2) ? `0${hex}` : hex), "hex");
86
- if (ret[0] & 128) {
87
- ret = node_buffer_1.Buffer.concat([
88
- node_buffer_1.Buffer.from([0x00]),
81
+ ret = Buffer.from(((hex.length % 2) ? `0${hex}` : hex), "hex");
82
+ if (ret[0] & 0b1000_0000) {
83
+ ret = Buffer.concat([
84
+ Buffer.from([0x00]),
89
85
  ret,
90
86
  ]);
91
87
  }
92
88
  }
93
89
  else {
94
90
  const hex = BigInt.asUintN(100000000, int).toString(16);
95
- ret = node_buffer_1.Buffer.from(((hex.length % 2) ? `0${hex}` : hex), "hex");
96
- if (!(ret[0] & 128)) {
97
- ret = node_buffer_1.Buffer.concat([
98
- node_buffer_1.Buffer.from([0xFF]),
91
+ ret = Buffer.from(((hex.length % 2) ? `0${hex}` : hex), "hex");
92
+ if (!(ret[0] & 0b1000_0000)) {
93
+ ret = Buffer.concat([
94
+ Buffer.from([0xFF]),
99
95
  ret,
100
96
  ]);
101
97
  }
@@ -1,2 +1,2 @@
1
- import type ASN1Element from "../asn1";
1
+ import type ASN1Element from "../asn1.mjs";
2
2
  export default function compareSetOfElementsCanonically(a: ASN1Element, b: ASN1Element): number;
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = compareSetOfElementsCanonically;
4
- function compareSetOfElementsCanonically(a, b) {
1
+ export default function compareSetOfElementsCanonically(a, b) {
5
2
  const longestLength = (a.value.length > b.value.length)
6
3
  ? a.value.length
7
4
  : b.value.length;
@@ -0,0 +1,14 @@
1
+ import { ASN1Error } from "../errors.mjs";
2
+ import { Buffer } from "node:buffer";
3
+ export default function convertBytesToText(bytes, codec = "utf-8") {
4
+ if (typeof Buffer !== "undefined") {
5
+ if (bytes instanceof Buffer) {
6
+ return bytes.toString(codec);
7
+ }
8
+ return (Buffer.from(bytes.buffer, bytes.byteOffset, bytes.length)).toString(codec);
9
+ }
10
+ else if (typeof TextEncoder !== "undefined") {
11
+ return (new TextDecoder(codec)).decode(bytes);
12
+ }
13
+ throw new ASN1Error("Neither TextDecoder nor Buffer are defined to decode bytes into text.");
14
+ }
@@ -0,0 +1,11 @@
1
+ import { ASN1Error } from "../errors.mjs";
2
+ import { Buffer } from "node:buffer";
3
+ export default function convertTextToBytes(text, codec = "utf-8") {
4
+ if (typeof TextEncoder !== "undefined") {
5
+ return (new TextEncoder()).encode(text);
6
+ }
7
+ else if (typeof Buffer !== "undefined") {
8
+ return Buffer.from(text, codec);
9
+ }
10
+ throw new ASN1Error("Neither TextEncoder nor Buffer are defined to encode text into bytes.");
11
+ }
@@ -0,0 +1,3 @@
1
+ export default function decodeIEEE754DoublePrecisionFloat(bytes) {
2
+ return new Float64Array(bytes.reverse().buffer)[0];
3
+ }
@@ -0,0 +1,3 @@
1
+ export default function decodeIEEE754SinglePrecisionFloat(bytes) {
2
+ return new Float32Array(bytes.reverse().buffer)[0];
3
+ }
@@ -0,0 +1,13 @@
1
+ import * as errors from "../errors.mjs";
2
+ import { Buffer } from "node:buffer";
3
+ export default function decodeSignedBigEndianInteger(value) {
4
+ if (value.length === 0) {
5
+ return 0;
6
+ }
7
+ if (value.length > 4) {
8
+ throw new errors.ASN1OverflowError("Number too long to decode.");
9
+ }
10
+ const ret = Buffer.alloc(4, (value[0] >= 0b10000000) ? 0xFF : 0x00);
11
+ ret.set(value, (4 - value.length));
12
+ return ret.readInt32BE();
13
+ }
@@ -0,0 +1,13 @@
1
+ import * as errors from "../errors.mjs";
2
+ import { Buffer } from "node:buffer";
3
+ export default function decodeUnsignedBigEndianInteger(value) {
4
+ if (value.length === 0) {
5
+ return 0;
6
+ }
7
+ if (value.length > 4) {
8
+ throw new errors.ASN1OverflowError(`Number on ${value.length} bytes is too long to decode.`);
9
+ }
10
+ const ret = Buffer.alloc(4);
11
+ ret.set(value, (4 - value.length));
12
+ return ret.readUInt32BE();
13
+ }
@@ -0,0 +1,108 @@
1
+ import * as errors from "../errors.mjs";
2
+ import { ASN1SpecialRealValue, ASN1RealEncodingBase, ASN1RealEncodingScale, nr1Regex, nr2Regex, nr3Regex, } from "../values.mjs";
3
+ import convertBytesToText from "./convertBytesToText.mjs";
4
+ import decodeSignedBigEndianInteger from "../utils/decodeSignedBigEndianInteger.mjs";
5
+ import decodeUnsignedBigEndianInteger from "../utils/decodeUnsignedBigEndianInteger.mjs";
6
+ export default function decodeX690RealNumber(bytes) {
7
+ if (bytes.length === 0)
8
+ return 0.0;
9
+ switch (bytes[0] & 0b11000000) {
10
+ case (0b01000000): {
11
+ if (bytes[0] === ASN1SpecialRealValue.notANumber)
12
+ return NaN;
13
+ if (bytes[0] === ASN1SpecialRealValue.minusZero)
14
+ return -0.0;
15
+ if (bytes[0] === ASN1SpecialRealValue.plusInfinity)
16
+ return Infinity;
17
+ if (bytes[0] === ASN1SpecialRealValue.minusInfinity)
18
+ return -Infinity;
19
+ throw new errors.ASN1UndefinedError("Unrecognized special REAL value!");
20
+ }
21
+ case (0b00000000): {
22
+ const realString = convertBytesToText(bytes.subarray(1));
23
+ switch (bytes[0] & 0b00111111) {
24
+ case 1: {
25
+ if (!nr1Regex.test(realString))
26
+ throw new errors.ASN1Error("Malformed NR1 Base-10 REAL");
27
+ return Number.parseFloat(realString);
28
+ }
29
+ case 2: {
30
+ if (!nr2Regex.test(realString))
31
+ throw new errors.ASN1Error("Malformed NR2 Base-10 REAL");
32
+ return Number.parseFloat(realString.replace(",", "."));
33
+ }
34
+ case 3: {
35
+ if (!nr3Regex.test(realString))
36
+ throw new errors.ASN1Error("Malformed NR3 Base-10 REAL");
37
+ return Number.parseFloat(realString.replace(",", "."));
38
+ }
39
+ default:
40
+ throw new errors.ASN1UndefinedError("Undefined Base-10 REAL encoding.");
41
+ }
42
+ }
43
+ case (0b10000000):
44
+ case (0b11000000): {
45
+ const sign = ((bytes[0] & 0b01000000) ? -1 : 1);
46
+ const base = ((flag) => {
47
+ switch (flag) {
48
+ case (ASN1RealEncodingBase.base2): return 2;
49
+ case (ASN1RealEncodingBase.base8): return 8;
50
+ case (ASN1RealEncodingBase.base16): return 16;
51
+ default:
52
+ throw new errors.ASN1Error("Impossible REAL encoding base encountered.");
53
+ }
54
+ })(bytes[0] & 0b00110000);
55
+ const scale = ((flag) => {
56
+ switch (flag) {
57
+ case (ASN1RealEncodingScale.scale0): return 0;
58
+ case (ASN1RealEncodingScale.scale1): return 1;
59
+ case (ASN1RealEncodingScale.scale2): return 2;
60
+ case (ASN1RealEncodingScale.scale3): return 3;
61
+ default:
62
+ throw new errors.ASN1Error("Impossible REAL encoding scale encountered.");
63
+ }
64
+ })(bytes[0] & 0b00001100);
65
+ let exponent;
66
+ let mantissa;
67
+ switch (bytes[0] & 0b00000011) {
68
+ case (0b00000000): {
69
+ if (bytes.length < 3)
70
+ throw new errors.ASN1TruncationError("Binary-encoded REAL truncated.");
71
+ exponent = decodeSignedBigEndianInteger(bytes.subarray(1, 2));
72
+ mantissa = decodeUnsignedBigEndianInteger(bytes.subarray(2));
73
+ break;
74
+ }
75
+ case (0b00000001): {
76
+ if (bytes.length < 4)
77
+ throw new errors.ASN1TruncationError("Binary-encoded REAL truncated.");
78
+ exponent = decodeSignedBigEndianInteger(bytes.subarray(1, 3));
79
+ mantissa = decodeUnsignedBigEndianInteger(bytes.subarray(3));
80
+ break;
81
+ }
82
+ case (0b00000010): {
83
+ if (bytes.length < 5)
84
+ throw new errors.ASN1TruncationError("Binary-encoded REAL truncated.");
85
+ exponent = decodeSignedBigEndianInteger(bytes.subarray(1, 4));
86
+ mantissa = decodeUnsignedBigEndianInteger(bytes.subarray(4));
87
+ break;
88
+ }
89
+ case (0b00000011): {
90
+ if (bytes.length < 3)
91
+ throw new errors.ASN1TruncationError("Binary-encoded REAL truncated.");
92
+ const exponentLength = bytes[1];
93
+ if (bytes.length < (3 + exponentLength)) {
94
+ throw new errors.ASN1TruncationError("Binary-encoded REAL truncated.");
95
+ }
96
+ exponent = decodeSignedBigEndianInteger(bytes.subarray(2, (2 + exponentLength)));
97
+ mantissa = decodeUnsignedBigEndianInteger(bytes.subarray((2 + exponentLength)));
98
+ break;
99
+ }
100
+ default:
101
+ throw new errors.ASN1Error("Impossible binary REAL exponent encoding encountered.");
102
+ }
103
+ return (sign * mantissa * Math.pow(2, scale) * Math.pow(base, exponent));
104
+ }
105
+ default:
106
+ throw new errors.ASN1Error("Impossible REAL format encountered.");
107
+ }
108
+ }
@@ -0,0 +1,13 @@
1
+ const EXPONENT_BITMASK = 0b0111_1111_1111_0000_0000_0000_0000_0000;
2
+ export default function dissectFloat(value) {
3
+ const float = new Float64Array([value]);
4
+ const uints = new Uint32Array(float.buffer);
5
+ const exponent = (((uints[1] & EXPONENT_BITMASK) >>> 20) - 1023 - 31);
6
+ const mantissa = 0x8000_0000 + ((((uints[1] & 0x000F_FFFF) << 11)
7
+ | ((uints[0] & 0xFFE0_0000) >>> 21)));
8
+ return {
9
+ negative: (value < 0),
10
+ exponent,
11
+ mantissa,
12
+ };
13
+ }
@@ -0,0 +1,3 @@
1
+ export default function encodeIEEE754DoublePrecisionFloat(value) {
2
+ return new Uint8Array(new Float64Array([value]).buffer).reverse();
3
+ }
@@ -0,0 +1,3 @@
1
+ export default function encodeIEEE754SinglePrecisionFloat(value) {
2
+ return new Uint8Array(new Float32Array([value]).buffer).reverse();
3
+ }
@@ -0,0 +1,36 @@
1
+ import * as errors from "../errors.mjs";
2
+ import { MIN_SINT_32, MAX_SINT_32 } from "../values.mjs";
3
+ export default function encodeBigEndianSignedInteger(value) {
4
+ if (value < MIN_SINT_32) {
5
+ throw new errors.ASN1OverflowError(`Number ${value} too small to be encoded as a big-endian signed integer.`);
6
+ }
7
+ if (value > MAX_SINT_32) {
8
+ throw new errors.ASN1OverflowError(`Number ${value} too big to be encoded as a big-endian signed integer.`);
9
+ }
10
+ if (value <= 127 && value >= -128) {
11
+ return new Uint8Array([
12
+ (value & 255),
13
+ ]);
14
+ }
15
+ else if (value <= 32767 && value >= -32768) {
16
+ return new Uint8Array([
17
+ ((value >> 8) & 255),
18
+ (value & 255),
19
+ ]);
20
+ }
21
+ else if (value <= 8388607 && value >= -8388608) {
22
+ return new Uint8Array([
23
+ ((value >> 16) & 255),
24
+ ((value >> 8) & 255),
25
+ (value & 255),
26
+ ]);
27
+ }
28
+ else {
29
+ return new Uint8Array([
30
+ ((value >> 24) & 255),
31
+ ((value >> 16) & 255),
32
+ ((value >> 8) & 255),
33
+ (value & 255),
34
+ ]);
35
+ }
36
+ }
@@ -0,0 +1,23 @@
1
+ import * as errors from "../errors.mjs";
2
+ import { MIN_UINT_32, MAX_UINT_32 } from "../values.mjs";
3
+ import { Buffer } from "node:buffer";
4
+ export default function encodeUnsignedBigEndianInteger(value) {
5
+ if (value < MIN_UINT_32) {
6
+ throw new errors.ASN1OverflowError(`Number ${value} too small to be encoded as a big-endian unsigned integer.`);
7
+ }
8
+ if (value > MAX_UINT_32) {
9
+ throw new errors.ASN1OverflowError(`Number ${value} too big to be encoded as a big-endian unsigned integer.`);
10
+ }
11
+ const bytes = Buffer.alloc(4);
12
+ bytes.writeUInt32BE(value);
13
+ let startOfNonPadding = 0;
14
+ for (let i = 0; i < bytes.length - 1; i++) {
15
+ if (bytes[i] === 0x00) {
16
+ startOfNonPadding++;
17
+ }
18
+ else {
19
+ break;
20
+ }
21
+ }
22
+ return bytes.subarray(startOfNonPadding);
23
+ }
@@ -0,0 +1,21 @@
1
+ import { ASN1SpecialRealValue } from "../values.mjs";
2
+ import convertTextToBytes from "./convertTextToBytes.mjs";
3
+ export default function encodeX690Base10RealNumber(value) {
4
+ if (value === 0.0) {
5
+ return new Uint8Array(0);
6
+ }
7
+ else if (Number.isNaN(value)) {
8
+ return new Uint8Array([ASN1SpecialRealValue.notANumber]);
9
+ }
10
+ else if (value === -0.0) {
11
+ return new Uint8Array([ASN1SpecialRealValue.minusZero]);
12
+ }
13
+ else if (value === Infinity) {
14
+ return new Uint8Array([ASN1SpecialRealValue.plusInfinity]);
15
+ }
16
+ else if (value === -Infinity) {
17
+ return new Uint8Array([ASN1SpecialRealValue.minusInfinity]);
18
+ }
19
+ const valueString = (String.fromCharCode(0b00000011) + value.toFixed(7));
20
+ return convertTextToBytes(valueString);
21
+ }
@@ -0,0 +1,43 @@
1
+ import dissectFloat from "./dissectFloat.mjs";
2
+ import encodeUnsignedBigEndianInteger from "./encodeUnsignedBigEndianInteger.mjs";
3
+ import encodeSignedBigEndianInteger from "./encodeSignedBigEndianInteger.mjs";
4
+ import { ASN1SpecialRealValue } from "../values.mjs";
5
+ import * as errors from "../errors.mjs";
6
+ export default function encodeX690BinaryRealNumber(value) {
7
+ if (value === 0.0) {
8
+ return new Uint8Array(0);
9
+ }
10
+ else if (Number.isNaN(value)) {
11
+ return new Uint8Array([ASN1SpecialRealValue.notANumber]);
12
+ }
13
+ else if (value === -0.0) {
14
+ return new Uint8Array([ASN1SpecialRealValue.minusZero]);
15
+ }
16
+ else if (value === Infinity) {
17
+ return new Uint8Array([ASN1SpecialRealValue.plusInfinity]);
18
+ }
19
+ else if (value === -Infinity) {
20
+ return new Uint8Array([ASN1SpecialRealValue.minusInfinity]);
21
+ }
22
+ const floatComponents = dissectFloat(value);
23
+ while (floatComponents.mantissa !== 0 && (floatComponents.mantissa % 2) === 0) {
24
+ floatComponents.mantissa = floatComponents.mantissa >>> 1;
25
+ floatComponents.exponent++;
26
+ }
27
+ if (floatComponents.exponent <= -1020) {
28
+ throw new errors.ASN1OverflowError(`REAL number ${value} (having exponent ${floatComponents.exponent}) `
29
+ + "is too precise to encode.");
30
+ }
31
+ const singleByteExponent = ((floatComponents.exponent <= 127)
32
+ && (floatComponents.exponent >= -128));
33
+ const firstByte = (0b1000_0000
34
+ | (value >= 0 ? 0b0000_0000 : 0b0100_0000)
35
+ | (singleByteExponent ? 0b0000_0000 : 0b0000_0001));
36
+ const exponentBytes = encodeSignedBigEndianInteger(floatComponents.exponent);
37
+ const mantissaBytes = encodeUnsignedBigEndianInteger(floatComponents.mantissa);
38
+ const ret = new Uint8Array(1 + exponentBytes.length + mantissaBytes.length);
39
+ ret[0] = firstByte;
40
+ ret.set(exponentBytes, 1);
41
+ ret.set(mantissaBytes, (1 + exponentBytes.length));
42
+ return ret;
43
+ }
@@ -0,0 +1,4 @@
1
+ export default function getBitFromBase128(from, bitIndex) {
2
+ const byteIndex = (from.length - (Math.floor(bitIndex / 7) + 1));
3
+ return ((from[byteIndex] & (0x01 << (bitIndex % 7))) > 0);
4
+ }
@@ -0,0 +1,3 @@
1
+ export default function getBit(from, bitIndex) {
2
+ return ((from[from.length - (Math.floor(bitIndex / 8) + 1)] & (0x01 << (bitIndex % 8))) > 0);
3
+ }
@@ -1,22 +1,22 @@
1
- export { default as base128Length } from "./base128Length";
2
- export { default as decodeIEEE754DoublePrecisionFloat } from "./decodeIEEE754DoublePrecisionFloat";
3
- export { default as decodeIEEE754SinglePrecisionFloat } from "./decodeIEEE754SinglePrecisionFloat";
4
- export { default as decodeSignedBigEndianInteger } from "./decodeSignedBigEndianInteger";
5
- export { default as decodeUnsignedBigEndianInteger } from "./decodeUnsignedBigEndianInteger";
6
- export { default as decodeX690RealNumber } from "./decodeX690RealNumber";
7
- export { default as dissectFloat } from "./dissectFloat";
8
- export { default as encodeIEEE754DoublePrecisionFloat } from "./encodeIEEE754DoublePrecisionFloat";
9
- export { default as encodeIEEE754SinglePrecisionFloat } from "./encodeIEEE754SinglePrecisionFloat";
10
- export { default as encodeSignedBigEndianInteger } from "./encodeSignedBigEndianInteger";
11
- export { default as encodeUnsignedBigEndianInteger } from "./encodeUnsignedBigEndianInteger";
12
- export { default as encodeX690Base10RealNumber } from "./encodeX690Base10RealNumber";
13
- export { default as encodeX690BinaryRealNumber } from "./encodeX690BinaryRealNumber";
14
- export { default as getBitFromBase128 } from "./getBitFromBase128";
15
- export { default as getBitFromBase256 } from "./getBitFromBase256";
16
- export { default as isInCanonicalOrder } from "./isInCanonicalOrder";
17
- export { default as isUniquelyTagged } from "./isUniquelyTagged";
18
- export { default as packBits } from "./packBits";
19
- export { default as setBitInBase128 } from "./setBitInBase128";
20
- export { default as setBitInBase256 } from "./setBitInBase256";
21
- export { default as trimLeadingPaddingBytes } from "./trimLeadingPaddingBytes";
22
- export { default as unpackBits } from "./unpackBits";
1
+ export { default as base128Length } from "./base128Length.mjs";
2
+ export { default as decodeIEEE754DoublePrecisionFloat } from "./decodeIEEE754DoublePrecisionFloat.mjs";
3
+ export { default as decodeIEEE754SinglePrecisionFloat } from "./decodeIEEE754SinglePrecisionFloat.mjs";
4
+ export { default as decodeSignedBigEndianInteger } from "./decodeSignedBigEndianInteger.mjs";
5
+ export { default as decodeUnsignedBigEndianInteger } from "./decodeUnsignedBigEndianInteger.mjs";
6
+ export { default as decodeX690RealNumber } from "./decodeX690RealNumber.mjs";
7
+ export { default as dissectFloat } from "./dissectFloat.mjs";
8
+ export { default as encodeIEEE754DoublePrecisionFloat } from "./encodeIEEE754DoublePrecisionFloat.mjs";
9
+ export { default as encodeIEEE754SinglePrecisionFloat } from "./encodeIEEE754SinglePrecisionFloat.mjs";
10
+ export { default as encodeSignedBigEndianInteger } from "./encodeSignedBigEndianInteger.mjs";
11
+ export { default as encodeUnsignedBigEndianInteger } from "./encodeUnsignedBigEndianInteger.mjs";
12
+ export { default as encodeX690Base10RealNumber } from "./encodeX690Base10RealNumber.mjs";
13
+ export { default as encodeX690BinaryRealNumber } from "./encodeX690BinaryRealNumber.mjs";
14
+ export { default as getBitFromBase128 } from "./getBitFromBase128.mjs";
15
+ export { default as getBitFromBase256 } from "./getBitFromBase256.mjs";
16
+ export { default as isInCanonicalOrder } from "./isInCanonicalOrder.mjs";
17
+ export { default as isUniquelyTagged } from "./isUniquelyTagged.mjs";
18
+ export { default as packBits } from "./packBits.mjs";
19
+ export { default as setBitInBase128 } from "./setBitInBase128.mjs";
20
+ export { default as setBitInBase256 } from "./setBitInBase256.mjs";
21
+ export { default as trimLeadingPaddingBytes } from "./trimLeadingPaddingBytes.mjs";
22
+ export { default as unpackBits } from "./unpackBits.mjs";