@danielsimonjr/mathts-functions 0.2.3 → 0.2.4

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 (749) hide show
  1. package/dist/algebra/decomposition/lup.d.ts +78 -0
  2. package/dist/algebra/decomposition/lup.d.ts.map +1 -0
  3. package/dist/algebra/decomposition/qr.d.ts +60 -0
  4. package/dist/algebra/decomposition/qr.d.ts.map +1 -0
  5. package/dist/algebra/decomposition/schur.d.ts +40 -0
  6. package/dist/algebra/decomposition/schur.d.ts.map +1 -0
  7. package/dist/algebra/decomposition/slu.d.ts +37 -0
  8. package/dist/algebra/decomposition/slu.d.ts.map +1 -0
  9. package/dist/algebra/derivative.d.ts +35 -0
  10. package/dist/algebra/derivative.d.ts.map +1 -0
  11. package/dist/algebra/leafCount.d.ts +9 -0
  12. package/dist/algebra/leafCount.d.ts.map +1 -0
  13. package/dist/algebra/lyap.d.ts +14 -0
  14. package/dist/algebra/lyap.d.ts.map +1 -0
  15. package/dist/algebra/polynomialRoot.d.ts +22 -0
  16. package/dist/algebra/polynomialRoot.d.ts.map +1 -0
  17. package/dist/algebra/rationalize.d.ts +43 -0
  18. package/dist/algebra/rationalize.d.ts.map +1 -0
  19. package/dist/algebra/resolve.d.ts +25 -0
  20. package/dist/algebra/resolve.d.ts.map +1 -0
  21. package/dist/algebra/simplify/util.d.ts +35 -0
  22. package/dist/algebra/simplify/util.d.ts.map +1 -0
  23. package/dist/algebra/simplify/wildcards.d.ts +5 -0
  24. package/dist/algebra/simplify/wildcards.d.ts.map +1 -0
  25. package/dist/algebra/simplify.d.ts +57 -0
  26. package/dist/algebra/simplify.d.ts.map +1 -0
  27. package/dist/algebra/simplifyConstant.d.ts +20 -0
  28. package/dist/algebra/simplifyConstant.d.ts.map +1 -0
  29. package/dist/algebra/simplifyCore.d.ts +21 -0
  30. package/dist/algebra/simplifyCore.d.ts.map +1 -0
  31. package/dist/algebra/solver/lsolve.d.ts +46 -0
  32. package/dist/algebra/solver/lsolve.d.ts.map +1 -0
  33. package/dist/algebra/solver/lsolveAll.d.ts +53 -0
  34. package/dist/algebra/solver/lsolveAll.d.ts.map +1 -0
  35. package/dist/algebra/solver/lusolve.d.ts +62 -0
  36. package/dist/algebra/solver/lusolve.d.ts.map +1 -0
  37. package/dist/algebra/solver/usolve.d.ts +46 -0
  38. package/dist/algebra/solver/usolve.d.ts.map +1 -0
  39. package/dist/algebra/solver/usolveAll.d.ts +53 -0
  40. package/dist/algebra/solver/usolveAll.d.ts.map +1 -0
  41. package/dist/algebra/solver/utils/solveValidation.d.ts +31 -0
  42. package/dist/algebra/solver/utils/solveValidation.d.ts.map +1 -0
  43. package/dist/algebra/sparse/csAmd.d.ts +15 -0
  44. package/dist/algebra/sparse/csAmd.d.ts.map +1 -0
  45. package/dist/algebra/sparse/csChol.d.ts +39 -0
  46. package/dist/algebra/sparse/csChol.d.ts.map +1 -0
  47. package/dist/algebra/sparse/csCounts.d.ts +13 -0
  48. package/dist/algebra/sparse/csCounts.d.ts.map +1 -0
  49. package/dist/algebra/sparse/csCumsum.d.ts +9 -0
  50. package/dist/algebra/sparse/csCumsum.d.ts.map +1 -0
  51. package/dist/algebra/sparse/csDfs.d.ts +23 -0
  52. package/dist/algebra/sparse/csDfs.d.ts.map +1 -0
  53. package/dist/algebra/sparse/csEreach.d.ts +20 -0
  54. package/dist/algebra/sparse/csEreach.d.ts.map +1 -0
  55. package/dist/algebra/sparse/csEtree.d.ts +16 -0
  56. package/dist/algebra/sparse/csEtree.d.ts.map +1 -0
  57. package/dist/algebra/sparse/csFkeep.d.ts +22 -0
  58. package/dist/algebra/sparse/csFkeep.d.ts.map +1 -0
  59. package/dist/algebra/sparse/csFlip.d.ts +7 -0
  60. package/dist/algebra/sparse/csFlip.d.ts.map +1 -0
  61. package/dist/algebra/sparse/csIpvec.d.ts +10 -0
  62. package/dist/algebra/sparse/csIpvec.d.ts.map +1 -0
  63. package/dist/algebra/sparse/csLeaf.d.ts +21 -0
  64. package/dist/algebra/sparse/csLeaf.d.ts.map +1 -0
  65. package/dist/algebra/sparse/csLu.d.ts +37 -0
  66. package/dist/algebra/sparse/csLu.d.ts.map +1 -0
  67. package/dist/algebra/sparse/csMark.d.ts +8 -0
  68. package/dist/algebra/sparse/csMark.d.ts.map +1 -0
  69. package/dist/algebra/sparse/csMarked.d.ts +8 -0
  70. package/dist/algebra/sparse/csMarked.d.ts.map +1 -0
  71. package/dist/algebra/sparse/csPermute.d.ts +27 -0
  72. package/dist/algebra/sparse/csPermute.d.ts.map +1 -0
  73. package/dist/algebra/sparse/csPost.d.ts +8 -0
  74. package/dist/algebra/sparse/csPost.d.ts.map +1 -0
  75. package/dist/algebra/sparse/csReach.d.ts +23 -0
  76. package/dist/algebra/sparse/csReach.d.ts.map +1 -0
  77. package/dist/algebra/sparse/csSpsolve.d.ts +15 -0
  78. package/dist/algebra/sparse/csSpsolve.d.ts.map +1 -0
  79. package/dist/algebra/sparse/csSqr.d.ts +25 -0
  80. package/dist/algebra/sparse/csSqr.d.ts.map +1 -0
  81. package/dist/algebra/sparse/csSymperm.d.ts +22 -0
  82. package/dist/algebra/sparse/csSymperm.d.ts.map +1 -0
  83. package/dist/algebra/sparse/csTdfs.d.ts +13 -0
  84. package/dist/algebra/sparse/csTdfs.d.ts.map +1 -0
  85. package/dist/algebra/sparse/csUnflip.d.ts +7 -0
  86. package/dist/algebra/sparse/csUnflip.d.ts.map +1 -0
  87. package/dist/algebra/sylvester.d.ts +30 -0
  88. package/dist/algebra/sylvester.d.ts.map +1 -0
  89. package/dist/algebra/symbolicEqual.d.ts +18 -0
  90. package/dist/algebra/symbolicEqual.d.ts.map +1 -0
  91. package/dist/arithmetic/abs.d.ts +7 -0
  92. package/dist/arithmetic/abs.d.ts.map +1 -0
  93. package/dist/arithmetic/addScalar.d.ts +7 -0
  94. package/dist/arithmetic/addScalar.d.ts.map +1 -0
  95. package/dist/arithmetic/cbrt.d.ts +37 -0
  96. package/dist/arithmetic/cbrt.d.ts.map +1 -0
  97. package/dist/arithmetic/ceil.d.ts +22 -0
  98. package/dist/arithmetic/ceil.d.ts.map +1 -0
  99. package/dist/arithmetic/cube.d.ts +7 -0
  100. package/dist/arithmetic/cube.d.ts.map +1 -0
  101. package/dist/arithmetic/divide.d.ts +42 -0
  102. package/dist/arithmetic/divide.d.ts.map +1 -0
  103. package/dist/arithmetic/divideScalar.d.ts +8 -0
  104. package/dist/arithmetic/divideScalar.d.ts.map +1 -0
  105. package/dist/arithmetic/dotDivide.d.ts +13 -0
  106. package/dist/arithmetic/dotDivide.d.ts.map +1 -0
  107. package/dist/arithmetic/dotMultiply.d.ts +11 -0
  108. package/dist/arithmetic/dotMultiply.d.ts.map +1 -0
  109. package/dist/arithmetic/dotPow.d.ts +16 -0
  110. package/dist/arithmetic/dotPow.d.ts.map +1 -0
  111. package/dist/arithmetic/exp.d.ts +7 -0
  112. package/dist/arithmetic/exp.d.ts.map +1 -0
  113. package/dist/arithmetic/expm1.d.ts +15 -0
  114. package/dist/arithmetic/expm1.d.ts.map +1 -0
  115. package/dist/arithmetic/fix.d.ts +30 -0
  116. package/dist/arithmetic/fix.d.ts.map +1 -0
  117. package/dist/arithmetic/floor.d.ts +22 -0
  118. package/dist/arithmetic/floor.d.ts.map +1 -0
  119. package/dist/arithmetic/gcd.d.ts +25 -0
  120. package/dist/arithmetic/gcd.d.ts.map +1 -0
  121. package/dist/arithmetic/hypot.d.ts +14 -0
  122. package/dist/arithmetic/hypot.d.ts.map +1 -0
  123. package/dist/arithmetic/invmod.d.ts +19 -0
  124. package/dist/arithmetic/invmod.d.ts.map +1 -0
  125. package/dist/arithmetic/lcm.d.ts +10 -0
  126. package/dist/arithmetic/lcm.d.ts.map +1 -0
  127. package/dist/arithmetic/log.d.ts +18 -0
  128. package/dist/arithmetic/log.d.ts.map +1 -0
  129. package/dist/arithmetic/log10.d.ts +18 -0
  130. package/dist/arithmetic/log10.d.ts.map +1 -0
  131. package/dist/arithmetic/log1p.d.ts +19 -0
  132. package/dist/arithmetic/log1p.d.ts.map +1 -0
  133. package/dist/arithmetic/log2.d.ts +17 -0
  134. package/dist/arithmetic/log2.d.ts.map +1 -0
  135. package/dist/arithmetic/mod.d.ts +15 -0
  136. package/dist/arithmetic/mod.d.ts.map +1 -0
  137. package/dist/arithmetic/multiplyScalar.d.ts +7 -0
  138. package/dist/arithmetic/multiplyScalar.d.ts.map +1 -0
  139. package/dist/arithmetic/norm.d.ts +33 -0
  140. package/dist/arithmetic/norm.d.ts.map +1 -0
  141. package/dist/arithmetic/nthRoot.d.ts +38 -0
  142. package/dist/arithmetic/nthRoot.d.ts.map +1 -0
  143. package/dist/arithmetic/nthRoots.d.ts +23 -0
  144. package/dist/arithmetic/nthRoots.d.ts.map +1 -0
  145. package/dist/arithmetic/pow.d.ts +34 -0
  146. package/dist/arithmetic/pow.d.ts.map +1 -0
  147. package/dist/arithmetic/round.d.ts +27 -0
  148. package/dist/arithmetic/round.d.ts.map +1 -0
  149. package/dist/arithmetic/sign.d.ts +31 -0
  150. package/dist/arithmetic/sign.d.ts.map +1 -0
  151. package/dist/arithmetic/sqrt.d.ts +16 -0
  152. package/dist/arithmetic/sqrt.d.ts.map +1 -0
  153. package/dist/arithmetic/square.d.ts +7 -0
  154. package/dist/arithmetic/square.d.ts.map +1 -0
  155. package/dist/arithmetic/subtract.d.ts +18 -0
  156. package/dist/arithmetic/subtract.d.ts.map +1 -0
  157. package/dist/arithmetic/subtractScalar.d.ts +7 -0
  158. package/dist/arithmetic/subtractScalar.d.ts.map +1 -0
  159. package/dist/arithmetic/unaryMinus.d.ts +10 -0
  160. package/dist/arithmetic/unaryMinus.d.ts.map +1 -0
  161. package/dist/arithmetic/unaryPlus.d.ts +10 -0
  162. package/dist/arithmetic/unaryPlus.d.ts.map +1 -0
  163. package/dist/arithmetic/utils/nodeOperations.d.ts +37 -0
  164. package/dist/arithmetic/utils/nodeOperations.d.ts.map +1 -0
  165. package/dist/arithmetic/xgcd.d.ts +25 -0
  166. package/dist/arithmetic/xgcd.d.ts.map +1 -0
  167. package/dist/bitwise/bitAnd.d.ts +10 -0
  168. package/dist/bitwise/bitAnd.d.ts.map +1 -0
  169. package/dist/bitwise/bitNot.d.ts +7 -0
  170. package/dist/bitwise/bitNot.d.ts.map +1 -0
  171. package/dist/bitwise/bitOr.d.ts +11 -0
  172. package/dist/bitwise/bitOr.d.ts.map +1 -0
  173. package/dist/bitwise/bitXor.d.ts +11 -0
  174. package/dist/bitwise/bitXor.d.ts.map +1 -0
  175. package/dist/bitwise/leftShift.d.ts +17 -0
  176. package/dist/bitwise/leftShift.d.ts.map +1 -0
  177. package/dist/bitwise/rightArithShift.d.ts +17 -0
  178. package/dist/bitwise/rightArithShift.d.ts.map +1 -0
  179. package/dist/bitwise/rightLogShift.d.ts +17 -0
  180. package/dist/bitwise/rightLogShift.d.ts.map +1 -0
  181. package/dist/bitwise/useMatrixForArrayScalar.d.ts +19 -0
  182. package/dist/bitwise/useMatrixForArrayScalar.d.ts.map +1 -0
  183. package/dist/combinatorics/bellNumbers.d.ts +14 -0
  184. package/dist/combinatorics/bellNumbers.d.ts.map +1 -0
  185. package/dist/combinatorics/catalan.d.ts +16 -0
  186. package/dist/combinatorics/catalan.d.ts.map +1 -0
  187. package/dist/combinatorics/composition.d.ts +16 -0
  188. package/dist/combinatorics/composition.d.ts.map +1 -0
  189. package/dist/combinatorics/stirlingS2.d.ts +22 -0
  190. package/dist/combinatorics/stirlingS2.d.ts.map +1 -0
  191. package/dist/complex/arg.d.ts +7 -0
  192. package/dist/complex/arg.d.ts.map +1 -0
  193. package/dist/complex/conj.d.ts +7 -0
  194. package/dist/complex/conj.d.ts.map +1 -0
  195. package/dist/complex/im.d.ts +7 -0
  196. package/dist/complex/im.d.ts.map +1 -0
  197. package/dist/complex/re.d.ts +7 -0
  198. package/dist/complex/re.d.ts.map +1 -0
  199. package/dist/core/config.d.ts +17 -0
  200. package/dist/core/config.d.ts.map +1 -0
  201. package/dist/core/create.d.ts +137 -0
  202. package/dist/core/create.d.ts.map +1 -0
  203. package/dist/core/function/config.d.ts +35 -0
  204. package/dist/core/function/config.d.ts.map +1 -0
  205. package/dist/core/function/import.d.ts +30 -0
  206. package/dist/core/function/import.d.ts.map +1 -0
  207. package/dist/core/function/typed.d.ts +127 -0
  208. package/dist/core/function/typed.d.ts.map +1 -0
  209. package/dist/error/ArgumentsError.d.ts +21 -0
  210. package/dist/error/ArgumentsError.d.ts.map +1 -0
  211. package/dist/error/DimensionError.d.ts +18 -0
  212. package/dist/error/DimensionError.d.ts.map +1 -0
  213. package/dist/error/IndexError.d.ts +24 -0
  214. package/dist/error/IndexError.d.ts.map +1 -0
  215. package/dist/error/MathjsError.d.ts +13 -0
  216. package/dist/error/MathjsError.d.ts.map +1 -0
  217. package/dist/expression/operators.d.ts +942 -0
  218. package/dist/expression/operators.d.ts.map +1 -0
  219. package/dist/factories/evaluate.d.ts +91 -0
  220. package/dist/factories/evaluate.d.ts.map +1 -0
  221. package/dist/factories/index.d.ts +317 -0
  222. package/dist/factories/index.d.ts.map +1 -0
  223. package/dist/factories/matrix-bridge.d.ts +241 -0
  224. package/dist/factories/matrix-bridge.d.ts.map +1 -0
  225. package/dist/factories/scope.d.ts +12 -0
  226. package/dist/factories/scope.d.ts.map +1 -0
  227. package/dist/geometry/distance.d.ts +15 -0
  228. package/dist/geometry/distance.d.ts.map +1 -0
  229. package/dist/geometry/intersect.d.ts +26 -0
  230. package/dist/geometry/intersect.d.ts.map +1 -0
  231. package/dist/index.d.ts +16 -0
  232. package/dist/index.d.ts.map +1 -0
  233. package/dist/logical/and.d.ts +17 -0
  234. package/dist/logical/and.d.ts.map +1 -0
  235. package/dist/logical/not.d.ts +7 -0
  236. package/dist/logical/not.d.ts.map +1 -0
  237. package/dist/logical/nullish.d.ts +11 -0
  238. package/dist/logical/nullish.d.ts.map +1 -0
  239. package/dist/logical/or.d.ts +15 -0
  240. package/dist/logical/or.d.ts.map +1 -0
  241. package/dist/logical/xor.d.ts +15 -0
  242. package/dist/logical/xor.d.ts.map +1 -0
  243. package/dist/matrix/column.d.ts +22 -0
  244. package/dist/matrix/column.d.ts.map +1 -0
  245. package/dist/matrix/concat.d.ts +6 -0
  246. package/dist/matrix/concat.d.ts.map +1 -0
  247. package/dist/matrix/count.d.ts +9 -0
  248. package/dist/matrix/count.d.ts.map +1 -0
  249. package/dist/matrix/cross.d.ts +7 -0
  250. package/dist/matrix/cross.d.ts.map +1 -0
  251. package/dist/matrix/ctranspose.d.ts +9 -0
  252. package/dist/matrix/ctranspose.d.ts.map +1 -0
  253. package/dist/matrix/det.d.ts +42 -0
  254. package/dist/matrix/det.d.ts.map +1 -0
  255. package/dist/matrix/diag.d.ts +26 -0
  256. package/dist/matrix/diag.d.ts.map +1 -0
  257. package/dist/matrix/diff.d.ts +8 -0
  258. package/dist/matrix/diff.d.ts.map +1 -0
  259. package/dist/matrix/dot.d.ts +17 -0
  260. package/dist/matrix/dot.d.ts.map +1 -0
  261. package/dist/matrix/eigs/complexEigs.d.ts +48 -0
  262. package/dist/matrix/eigs/complexEigs.d.ts.map +1 -0
  263. package/dist/matrix/eigs/realSymmetric.d.ts +34 -0
  264. package/dist/matrix/eigs/realSymmetric.d.ts.map +1 -0
  265. package/dist/matrix/eigs.d.ts +75 -0
  266. package/dist/matrix/eigs.d.ts.map +1 -0
  267. package/dist/matrix/expm.d.ts +26 -0
  268. package/dist/matrix/expm.d.ts.map +1 -0
  269. package/dist/matrix/fft.d.ts +41 -0
  270. package/dist/matrix/fft.d.ts.map +1 -0
  271. package/dist/matrix/filter.d.ts +7 -0
  272. package/dist/matrix/filter.d.ts.map +1 -0
  273. package/dist/matrix/flatten.d.ts +7 -0
  274. package/dist/matrix/flatten.d.ts.map +1 -0
  275. package/dist/matrix/forEach.d.ts +7 -0
  276. package/dist/matrix/forEach.d.ts.map +1 -0
  277. package/dist/matrix/getMatrixDataType.d.ts +7 -0
  278. package/dist/matrix/getMatrixDataType.d.ts.map +1 -0
  279. package/dist/matrix/identity.d.ts +41 -0
  280. package/dist/matrix/identity.d.ts.map +1 -0
  281. package/dist/matrix/ifft.d.ts +33 -0
  282. package/dist/matrix/ifft.d.ts.map +1 -0
  283. package/dist/matrix/inv.d.ts +48 -0
  284. package/dist/matrix/inv.d.ts.map +1 -0
  285. package/dist/matrix/kron.d.ts +17 -0
  286. package/dist/matrix/kron.d.ts.map +1 -0
  287. package/dist/matrix/map.d.ts +7 -0
  288. package/dist/matrix/map.d.ts.map +1 -0
  289. package/dist/matrix/mapSlices.d.ts +6 -0
  290. package/dist/matrix/mapSlices.d.ts.map +1 -0
  291. package/dist/matrix/matrixFromColumns.d.ts +36 -0
  292. package/dist/matrix/matrixFromColumns.d.ts.map +1 -0
  293. package/dist/matrix/matrixFromFunction.d.ts +7 -0
  294. package/dist/matrix/matrixFromFunction.d.ts.map +1 -0
  295. package/dist/matrix/matrixFromRows.d.ts +36 -0
  296. package/dist/matrix/matrixFromRows.d.ts.map +1 -0
  297. package/dist/matrix/ones.d.ts +3 -0
  298. package/dist/matrix/ones.d.ts.map +1 -0
  299. package/dist/matrix/partitionSelect.d.ts +13 -0
  300. package/dist/matrix/partitionSelect.d.ts.map +1 -0
  301. package/dist/matrix/pinv.d.ts +51 -0
  302. package/dist/matrix/pinv.d.ts.map +1 -0
  303. package/dist/matrix/range.d.ts +27 -0
  304. package/dist/matrix/range.d.ts.map +1 -0
  305. package/dist/matrix/reshape.d.ts +8 -0
  306. package/dist/matrix/reshape.d.ts.map +1 -0
  307. package/dist/matrix/resize.d.ts +17 -0
  308. package/dist/matrix/resize.d.ts.map +1 -0
  309. package/dist/matrix/rotate.d.ts +7 -0
  310. package/dist/matrix/rotate.d.ts.map +1 -0
  311. package/dist/matrix/rotationMatrix.d.ts +17 -0
  312. package/dist/matrix/rotationMatrix.d.ts.map +1 -0
  313. package/dist/matrix/row.d.ts +22 -0
  314. package/dist/matrix/row.d.ts.map +1 -0
  315. package/dist/matrix/size.d.ts +9 -0
  316. package/dist/matrix/size.d.ts.map +1 -0
  317. package/dist/matrix/sort.d.ts +8 -0
  318. package/dist/matrix/sort.d.ts.map +1 -0
  319. package/dist/matrix/sqrtm.d.ts +33 -0
  320. package/dist/matrix/sqrtm.d.ts.map +1 -0
  321. package/dist/matrix/squeeze.d.ts +7 -0
  322. package/dist/matrix/squeeze.d.ts.map +1 -0
  323. package/dist/matrix/subset.d.ts +7 -0
  324. package/dist/matrix/subset.d.ts.map +1 -0
  325. package/dist/matrix/trace.d.ts +25 -0
  326. package/dist/matrix/trace.d.ts.map +1 -0
  327. package/dist/matrix/transpose.d.ts +45 -0
  328. package/dist/matrix/transpose.d.ts.map +1 -0
  329. package/dist/matrix/utils/zerosAndOnes.d.ts +32 -0
  330. package/dist/matrix/utils/zerosAndOnes.d.ts.map +1 -0
  331. package/dist/matrix/zeros.d.ts +3 -0
  332. package/dist/matrix/zeros.d.ts.map +1 -0
  333. package/dist/numeric/solveODE.d.ts +2 -0
  334. package/dist/numeric/solveODE.d.ts.map +1 -0
  335. package/dist/plain/number/arithmetic.d.ts +168 -0
  336. package/dist/plain/number/arithmetic.d.ts.map +1 -0
  337. package/dist/plain/number/bitwise.d.ts +29 -0
  338. package/dist/plain/number/bitwise.d.ts.map +1 -0
  339. package/dist/plain/number/combinations.d.ts +5 -0
  340. package/dist/plain/number/combinations.d.ts.map +1 -0
  341. package/dist/plain/number/constants.d.ts +5 -0
  342. package/dist/plain/number/constants.d.ts.map +1 -0
  343. package/dist/plain/number/index.d.ts +10 -0
  344. package/dist/plain/number/index.d.ts.map +1 -0
  345. package/dist/plain/number/logical.d.ts +17 -0
  346. package/dist/plain/number/logical.d.ts.map +1 -0
  347. package/dist/plain/number/probability.d.ts +15 -0
  348. package/dist/plain/number/probability.d.ts.map +1 -0
  349. package/dist/plain/number/relational.d.ts +29 -0
  350. package/dist/plain/number/relational.d.ts.map +1 -0
  351. package/dist/plain/number/trigonometry.d.ts +101 -0
  352. package/dist/plain/number/trigonometry.d.ts.map +1 -0
  353. package/dist/plain/number/utils.d.ts +21 -0
  354. package/dist/plain/number/utils.d.ts.map +1 -0
  355. package/dist/probability/bernoulli.d.ts +19 -0
  356. package/dist/probability/bernoulli.d.ts.map +1 -0
  357. package/dist/probability/combinations.d.ts +7 -0
  358. package/dist/probability/combinations.d.ts.map +1 -0
  359. package/dist/probability/combinationsWithRep.d.ts +7 -0
  360. package/dist/probability/combinationsWithRep.d.ts.map +1 -0
  361. package/dist/probability/factorial.d.ts +8 -0
  362. package/dist/probability/factorial.d.ts.map +1 -0
  363. package/dist/probability/gamma.d.ts +45 -0
  364. package/dist/probability/gamma.d.ts.map +1 -0
  365. package/dist/probability/kldivergence.d.ts +18 -0
  366. package/dist/probability/kldivergence.d.ts.map +1 -0
  367. package/dist/probability/lgamma.d.ts +24 -0
  368. package/dist/probability/lgamma.d.ts.map +1 -0
  369. package/dist/probability/multinomial.d.ts +13 -0
  370. package/dist/probability/multinomial.d.ts.map +1 -0
  371. package/dist/probability/permutations.d.ts +8 -0
  372. package/dist/probability/permutations.d.ts.map +1 -0
  373. package/dist/probability/pickRandom.d.ts +10 -0
  374. package/dist/probability/pickRandom.d.ts.map +1 -0
  375. package/dist/probability/random.d.ts +11 -0
  376. package/dist/probability/random.d.ts.map +1 -0
  377. package/dist/probability/randomInt.d.ts +11 -0
  378. package/dist/probability/randomInt.d.ts.map +1 -0
  379. package/dist/probability/util/randomMatrix.d.ts +10 -0
  380. package/dist/probability/util/randomMatrix.d.ts.map +1 -0
  381. package/dist/probability/util/seededRNG.d.ts +4 -0
  382. package/dist/probability/util/seededRNG.d.ts.map +1 -0
  383. package/dist/relational/compare.d.ts +38 -0
  384. package/dist/relational/compare.d.ts.map +1 -0
  385. package/dist/relational/compareNatural.d.ts +8 -0
  386. package/dist/relational/compareNatural.d.ts.map +1 -0
  387. package/dist/relational/compareText.d.ts +15 -0
  388. package/dist/relational/compareText.d.ts.map +1 -0
  389. package/dist/relational/compareUnits.d.ts +9 -0
  390. package/dist/relational/compareUnits.d.ts.map +1 -0
  391. package/dist/relational/deepEqual.d.ts +8 -0
  392. package/dist/relational/deepEqual.d.ts.map +1 -0
  393. package/dist/relational/equal.d.ts +26 -0
  394. package/dist/relational/equal.d.ts.map +1 -0
  395. package/dist/relational/equalScalar.d.ts +11 -0
  396. package/dist/relational/equalScalar.d.ts.map +1 -0
  397. package/dist/relational/equalText.d.ts +9 -0
  398. package/dist/relational/equalText.d.ts.map +1 -0
  399. package/dist/relational/larger.d.ts +34 -0
  400. package/dist/relational/larger.d.ts.map +1 -0
  401. package/dist/relational/largerEq.d.ts +27 -0
  402. package/dist/relational/largerEq.d.ts.map +1 -0
  403. package/dist/relational/smaller.d.ts +34 -0
  404. package/dist/relational/smaller.d.ts.map +1 -0
  405. package/dist/relational/smallerEq.d.ts +27 -0
  406. package/dist/relational/smallerEq.d.ts.map +1 -0
  407. package/dist/relational/unequal.d.ts +28 -0
  408. package/dist/relational/unequal.d.ts.map +1 -0
  409. package/dist/set/setCartesian.d.ts +15 -0
  410. package/dist/set/setCartesian.d.ts.map +1 -0
  411. package/dist/set/setDifference.d.ts +15 -0
  412. package/dist/set/setDifference.d.ts.map +1 -0
  413. package/dist/set/setDistinct.d.ts +2 -0
  414. package/dist/set/setDistinct.d.ts.map +1 -0
  415. package/dist/set/setIntersect.d.ts +15 -0
  416. package/dist/set/setIntersect.d.ts.map +1 -0
  417. package/dist/set/setIsSubset.d.ts +2 -0
  418. package/dist/set/setIsSubset.d.ts.map +1 -0
  419. package/dist/set/setMultiplicity.d.ts +2 -0
  420. package/dist/set/setMultiplicity.d.ts.map +1 -0
  421. package/dist/set/setPowerset.d.ts +2 -0
  422. package/dist/set/setPowerset.d.ts.map +1 -0
  423. package/dist/set/setSize.d.ts +2 -0
  424. package/dist/set/setSize.d.ts.map +1 -0
  425. package/dist/set/setSymDifference.d.ts +15 -0
  426. package/dist/set/setSymDifference.d.ts.map +1 -0
  427. package/dist/set/setUnion.d.ts +16 -0
  428. package/dist/set/setUnion.d.ts.map +1 -0
  429. package/dist/signal/freqz.d.ts +2 -0
  430. package/dist/signal/freqz.d.ts.map +1 -0
  431. package/dist/signal/zpk2tf.d.ts +2 -0
  432. package/dist/signal/zpk2tf.d.ts.map +1 -0
  433. package/dist/special/erf.d.ts +7 -0
  434. package/dist/special/erf.d.ts.map +1 -0
  435. package/dist/special/zeta.d.ts +38 -0
  436. package/dist/special/zeta.d.ts.map +1 -0
  437. package/dist/statistics/corr.d.ts +18 -0
  438. package/dist/statistics/corr.d.ts.map +1 -0
  439. package/dist/statistics/cumsum.d.ts +9 -0
  440. package/dist/statistics/cumsum.d.ts.map +1 -0
  441. package/dist/statistics/mad.d.ts +11 -0
  442. package/dist/statistics/mad.d.ts.map +1 -0
  443. package/dist/statistics/max.d.ts +12 -0
  444. package/dist/statistics/max.d.ts.map +1 -0
  445. package/dist/statistics/mean.d.ts +9 -0
  446. package/dist/statistics/mean.d.ts.map +1 -0
  447. package/dist/statistics/median.d.ts +11 -0
  448. package/dist/statistics/median.d.ts.map +1 -0
  449. package/dist/statistics/min.d.ts +12 -0
  450. package/dist/statistics/min.d.ts.map +1 -0
  451. package/dist/statistics/mode.d.ts +9 -0
  452. package/dist/statistics/mode.d.ts.map +1 -0
  453. package/dist/statistics/prod.d.ts +12 -0
  454. package/dist/statistics/prod.d.ts.map +1 -0
  455. package/dist/statistics/quantileSeq.d.ts +26 -0
  456. package/dist/statistics/quantileSeq.d.ts.map +1 -0
  457. package/dist/statistics/std.d.ts +10 -0
  458. package/dist/statistics/std.d.ts.map +1 -0
  459. package/dist/statistics/sum.d.ts +12 -0
  460. package/dist/statistics/sum.d.ts.map +1 -0
  461. package/dist/statistics/utils/improveErrorMessage.d.ts +18 -0
  462. package/dist/statistics/utils/improveErrorMessage.d.ts.map +1 -0
  463. package/dist/statistics/variance.d.ts +13 -0
  464. package/dist/statistics/variance.d.ts.map +1 -0
  465. package/dist/string/bin.d.ts +36 -0
  466. package/dist/string/bin.d.ts.map +1 -0
  467. package/dist/string/format.d.ts +7 -0
  468. package/dist/string/format.d.ts.map +1 -0
  469. package/dist/string/hex.d.ts +35 -0
  470. package/dist/string/hex.d.ts.map +1 -0
  471. package/dist/string/oct.d.ts +36 -0
  472. package/dist/string/oct.d.ts.map +1 -0
  473. package/dist/string/print.d.ts +7 -0
  474. package/dist/string/print.d.ts.map +1 -0
  475. package/dist/trigonometry/acos.d.ts +16 -0
  476. package/dist/trigonometry/acos.d.ts.map +1 -0
  477. package/dist/trigonometry/acosh.d.ts +14 -0
  478. package/dist/trigonometry/acosh.d.ts.map +1 -0
  479. package/dist/trigonometry/acot.d.ts +12 -0
  480. package/dist/trigonometry/acot.d.ts.map +1 -0
  481. package/dist/trigonometry/acoth.d.ts +19 -0
  482. package/dist/trigonometry/acoth.d.ts.map +1 -0
  483. package/dist/trigonometry/acsc.d.ts +19 -0
  484. package/dist/trigonometry/acsc.d.ts.map +1 -0
  485. package/dist/trigonometry/acsch.d.ts +12 -0
  486. package/dist/trigonometry/acsch.d.ts.map +1 -0
  487. package/dist/trigonometry/asec.d.ts +19 -0
  488. package/dist/trigonometry/asec.d.ts.map +1 -0
  489. package/dist/trigonometry/asech.d.ts +19 -0
  490. package/dist/trigonometry/asech.d.ts.map +1 -0
  491. package/dist/trigonometry/asin.d.ts +16 -0
  492. package/dist/trigonometry/asin.d.ts.map +1 -0
  493. package/dist/trigonometry/asinh.d.ts +5 -0
  494. package/dist/trigonometry/asinh.d.ts.map +1 -0
  495. package/dist/trigonometry/atan.d.ts +7 -0
  496. package/dist/trigonometry/atan.d.ts.map +1 -0
  497. package/dist/trigonometry/atan2.d.ts +22 -0
  498. package/dist/trigonometry/atan2.d.ts.map +1 -0
  499. package/dist/trigonometry/atanh.d.ts +14 -0
  500. package/dist/trigonometry/atanh.d.ts.map +1 -0
  501. package/dist/trigonometry/cos.d.ts +7 -0
  502. package/dist/trigonometry/cos.d.ts.map +1 -0
  503. package/dist/trigonometry/cosh.d.ts +7 -0
  504. package/dist/trigonometry/cosh.d.ts.map +1 -0
  505. package/dist/trigonometry/cot.d.ts +12 -0
  506. package/dist/trigonometry/cot.d.ts.map +1 -0
  507. package/dist/trigonometry/coth.d.ts +12 -0
  508. package/dist/trigonometry/coth.d.ts.map +1 -0
  509. package/dist/trigonometry/csc.d.ts +12 -0
  510. package/dist/trigonometry/csc.d.ts.map +1 -0
  511. package/dist/trigonometry/csch.d.ts +12 -0
  512. package/dist/trigonometry/csch.d.ts.map +1 -0
  513. package/dist/trigonometry/sec.d.ts +12 -0
  514. package/dist/trigonometry/sec.d.ts.map +1 -0
  515. package/dist/trigonometry/sech.d.ts +12 -0
  516. package/dist/trigonometry/sech.d.ts.map +1 -0
  517. package/dist/trigonometry/sin.d.ts +7 -0
  518. package/dist/trigonometry/sin.d.ts.map +1 -0
  519. package/dist/trigonometry/sinh.d.ts +7 -0
  520. package/dist/trigonometry/sinh.d.ts.map +1 -0
  521. package/dist/trigonometry/tan.d.ts +7 -0
  522. package/dist/trigonometry/tan.d.ts.map +1 -0
  523. package/dist/trigonometry/tanh.d.ts +7 -0
  524. package/dist/trigonometry/tanh.d.ts.map +1 -0
  525. package/dist/trigonometry/trigUnit.d.ts +9 -0
  526. package/dist/trigonometry/trigUnit.d.ts.map +1 -0
  527. package/dist/type/bignumber/BigNumber.d.ts +46 -0
  528. package/dist/type/bignumber/BigNumber.d.ts.map +1 -0
  529. package/dist/type/chain/Chain.d.ts +58 -0
  530. package/dist/type/chain/Chain.d.ts.map +1 -0
  531. package/dist/type/chain/function/chain.d.ts +6 -0
  532. package/dist/type/chain/function/chain.d.ts.map +1 -0
  533. package/dist/type/complex/Complex.d.ts +74 -0
  534. package/dist/type/complex/Complex.d.ts.map +1 -0
  535. package/dist/type/local/Decimal.d.ts +223 -0
  536. package/dist/type/local/Decimal.d.ts.map +1 -0
  537. package/dist/type/matrix/FibonacciHeap.d.ts +59 -0
  538. package/dist/type/matrix/FibonacciHeap.d.ts.map +1 -0
  539. package/dist/type/matrix/ImmutableDenseMatrix.d.ts +282 -0
  540. package/dist/type/matrix/ImmutableDenseMatrix.d.ts.map +1 -0
  541. package/dist/type/matrix/MatrixIndex.d.ts +386 -0
  542. package/dist/type/matrix/MatrixIndex.d.ts.map +1 -0
  543. package/dist/type/matrix/Spa.d.ts +40 -0
  544. package/dist/type/matrix/Spa.d.ts.map +1 -0
  545. package/dist/type/matrix/function/index.d.ts +11 -0
  546. package/dist/type/matrix/function/index.d.ts.map +1 -0
  547. package/dist/type/matrix/types.d.ts +435 -0
  548. package/dist/type/matrix/types.d.ts.map +1 -0
  549. package/dist/type/matrix/utils/broadcast.d.ts +18 -0
  550. package/dist/type/matrix/utils/broadcast.d.ts.map +1 -0
  551. package/dist/type/matrix/utils/matAlgo01xDSid.d.ts +34 -0
  552. package/dist/type/matrix/utils/matAlgo01xDSid.d.ts.map +1 -0
  553. package/dist/type/matrix/utils/matAlgo02xDS0.d.ts +32 -0
  554. package/dist/type/matrix/utils/matAlgo02xDS0.d.ts.map +1 -0
  555. package/dist/type/matrix/utils/matAlgo03xDSf.d.ts +31 -0
  556. package/dist/type/matrix/utils/matAlgo03xDSf.d.ts.map +1 -0
  557. package/dist/type/matrix/utils/matAlgo04xSidSid.d.ts +21 -0
  558. package/dist/type/matrix/utils/matAlgo04xSidSid.d.ts.map +1 -0
  559. package/dist/type/matrix/utils/matAlgo05xSfSf.d.ts +21 -0
  560. package/dist/type/matrix/utils/matAlgo05xSfSf.d.ts.map +1 -0
  561. package/dist/type/matrix/utils/matAlgo06xS0S0.d.ts +21 -0
  562. package/dist/type/matrix/utils/matAlgo06xS0S0.d.ts.map +1 -0
  563. package/dist/type/matrix/utils/matAlgo07xSSf.d.ts +26 -0
  564. package/dist/type/matrix/utils/matAlgo07xSSf.d.ts.map +1 -0
  565. package/dist/type/matrix/utils/matAlgo08xS0Sid.d.ts +21 -0
  566. package/dist/type/matrix/utils/matAlgo08xS0Sid.d.ts.map +1 -0
  567. package/dist/type/matrix/utils/matAlgo09xS0Sf.d.ts +21 -0
  568. package/dist/type/matrix/utils/matAlgo09xS0Sf.d.ts.map +1 -0
  569. package/dist/type/matrix/utils/matAlgo10xSids.d.ts +33 -0
  570. package/dist/type/matrix/utils/matAlgo10xSids.d.ts.map +1 -0
  571. package/dist/type/matrix/utils/matAlgo11xS0s.d.ts +19 -0
  572. package/dist/type/matrix/utils/matAlgo11xS0s.d.ts.map +1 -0
  573. package/dist/type/matrix/utils/matAlgo12xSfs.d.ts +33 -0
  574. package/dist/type/matrix/utils/matAlgo12xSfs.d.ts.map +1 -0
  575. package/dist/type/matrix/utils/matAlgo13xDD.d.ts +20 -0
  576. package/dist/type/matrix/utils/matAlgo13xDD.d.ts.map +1 -0
  577. package/dist/type/matrix/utils/matAlgo14xDs.d.ts +19 -0
  578. package/dist/type/matrix/utils/matAlgo14xDs.d.ts.map +1 -0
  579. package/dist/type/matrix/utils/matrixAlgorithmSuite.d.ts +23 -0
  580. package/dist/type/matrix/utils/matrixAlgorithmSuite.d.ts.map +1 -0
  581. package/dist/type/resultset/ResultSet.d.ts +28 -0
  582. package/dist/type/resultset/ResultSet.d.ts.map +1 -0
  583. package/dist/type/unit/Unit.d.ts +13907 -0
  584. package/dist/type/unit/Unit.d.ts.map +1 -0
  585. package/dist/type/unit/function/createUnit.d.ts +40 -0
  586. package/dist/type/unit/function/createUnit.d.ts.map +1 -0
  587. package/dist/type/unit/function/splitUnit.d.ts +10 -0
  588. package/dist/type/unit/function/splitUnit.d.ts.map +1 -0
  589. package/dist/type/unit/function/unit.d.ts +27 -0
  590. package/dist/type/unit/function/unit.d.ts.map +1 -0
  591. package/dist/type/unit/physicalConstants.d.ts +89 -0
  592. package/dist/type/unit/physicalConstants.d.ts.map +1 -0
  593. package/dist/typed/algebra.d.ts +418 -0
  594. package/dist/typed/algebra.d.ts.map +1 -0
  595. package/dist/typed/arithmetic.d.ts +302 -0
  596. package/dist/typed/arithmetic.d.ts.map +1 -0
  597. package/dist/typed/bitwise.d.ts +48 -0
  598. package/dist/typed/bitwise.d.ts.map +1 -0
  599. package/dist/typed/cas.d.ts +691 -0
  600. package/dist/typed/cas.d.ts.map +1 -0
  601. package/dist/typed/combinatorics.d.ts +333 -0
  602. package/dist/typed/combinatorics.d.ts.map +1 -0
  603. package/dist/typed/complex.d.ts +91 -0
  604. package/dist/typed/complex.d.ts.map +1 -0
  605. package/dist/typed/dist-objects.d.ts +219 -0
  606. package/dist/typed/dist-objects.d.ts.map +1 -0
  607. package/dist/typed/distributions.d.ts +247 -0
  608. package/dist/typed/distributions.d.ts.map +1 -0
  609. package/dist/typed/geometry.d.ts +329 -0
  610. package/dist/typed/geometry.d.ts.map +1 -0
  611. package/dist/typed/gpu.d.ts +62 -0
  612. package/dist/typed/gpu.d.ts.map +1 -0
  613. package/dist/typed/graph.d.ts +339 -0
  614. package/dist/typed/graph.d.ts.map +1 -0
  615. package/dist/typed/hypothesis.d.ts +274 -0
  616. package/dist/typed/hypothesis.d.ts.map +1 -0
  617. package/dist/typed/index.d.ts +299 -0
  618. package/dist/typed/index.d.ts.map +1 -0
  619. package/dist/typed/integration.d.ts +219 -0
  620. package/dist/typed/integration.d.ts.map +1 -0
  621. package/dist/typed/interpolation.d.ts +189 -0
  622. package/dist/typed/interpolation.d.ts.map +1 -0
  623. package/dist/typed/logical.d.ts +87 -0
  624. package/dist/typed/logical.d.ts.map +1 -0
  625. package/dist/typed/matrix-ops.d.ts +303 -0
  626. package/dist/typed/matrix-ops.d.ts.map +1 -0
  627. package/dist/typed/numeric.d.ts +395 -0
  628. package/dist/typed/numeric.d.ts.map +1 -0
  629. package/dist/typed/probability.d.ts +165 -0
  630. package/dist/typed/probability.d.ts.map +1 -0
  631. package/dist/typed/relational.d.ts +136 -0
  632. package/dist/typed/relational.d.ts.map +1 -0
  633. package/dist/typed/set.d.ts +145 -0
  634. package/dist/typed/set.d.ts.map +1 -0
  635. package/dist/typed/signal.d.ts +427 -0
  636. package/dist/typed/signal.d.ts.map +1 -0
  637. package/dist/typed/special.d.ts +469 -0
  638. package/dist/typed/special.d.ts.map +1 -0
  639. package/dist/typed/statistics.d.ts +174 -0
  640. package/dist/typed/statistics.d.ts.map +1 -0
  641. package/dist/typed/string.d.ts +114 -0
  642. package/dist/typed/string.d.ts.map +1 -0
  643. package/dist/typed/trigonometry.d.ts +111 -0
  644. package/dist/typed/trigonometry.d.ts.map +1 -0
  645. package/dist/typed/typed-bridge.d.ts +6 -0
  646. package/dist/typed/typed-bridge.d.ts.map +1 -0
  647. package/dist/typed/unit.d.ts +60 -0
  648. package/dist/typed/unit.d.ts.map +1 -0
  649. package/dist/types.d.ts +20 -0
  650. package/dist/types.d.ts.map +1 -0
  651. package/dist/unit/to.d.ts +13 -0
  652. package/dist/unit/to.d.ts.map +1 -0
  653. package/dist/unit/toBest.d.ts +5 -0
  654. package/dist/unit/toBest.d.ts.map +1 -0
  655. package/dist/utils/array.d.ts +249 -0
  656. package/dist/utils/array.d.ts.map +1 -0
  657. package/dist/utils/bigint.d.ts +18 -0
  658. package/dist/utils/bigint.d.ts.map +1 -0
  659. package/dist/utils/bignumber/bitwise.d.ts +99 -0
  660. package/dist/utils/bignumber/bitwise.d.ts.map +1 -0
  661. package/dist/utils/bignumber/constants.d.ts +25 -0
  662. package/dist/utils/bignumber/constants.d.ts.map +1 -0
  663. package/dist/utils/bignumber/formatter.d.ts +105 -0
  664. package/dist/utils/bignumber/formatter.d.ts.map +1 -0
  665. package/dist/utils/bignumber/nearlyEqual.d.ts +18 -0
  666. package/dist/utils/bignumber/nearlyEqual.d.ts.map +1 -0
  667. package/dist/utils/clone.d.ts +7 -0
  668. package/dist/utils/clone.d.ts.map +1 -0
  669. package/dist/utils/collection.d.ts +67 -0
  670. package/dist/utils/collection.d.ts.map +1 -0
  671. package/dist/utils/complex.d.ts +11 -0
  672. package/dist/utils/complex.d.ts.map +1 -0
  673. package/dist/utils/customs.d.ts +51 -0
  674. package/dist/utils/customs.d.ts.map +1 -0
  675. package/dist/utils/emitter.d.ts +13 -0
  676. package/dist/utils/emitter.d.ts.map +1 -0
  677. package/dist/utils/factory.d.ts +112 -0
  678. package/dist/utils/factory.d.ts.map +1 -0
  679. package/dist/utils/function.d.ts +44 -0
  680. package/dist/utils/function.d.ts.map +1 -0
  681. package/dist/utils/hasNumericValue.d.ts +8 -0
  682. package/dist/utils/hasNumericValue.d.ts.map +1 -0
  683. package/dist/utils/is.d.ts +204 -0
  684. package/dist/utils/is.d.ts.map +1 -0
  685. package/dist/utils/isBounded.d.ts +6 -0
  686. package/dist/utils/isBounded.d.ts.map +1 -0
  687. package/dist/utils/isFinite.d.ts +10 -0
  688. package/dist/utils/isFinite.d.ts.map +1 -0
  689. package/dist/utils/isInteger.d.ts +8 -0
  690. package/dist/utils/isInteger.d.ts.map +1 -0
  691. package/dist/utils/isNaN.d.ts +7 -0
  692. package/dist/utils/isNaN.d.ts.map +1 -0
  693. package/dist/utils/isNegative.d.ts +9 -0
  694. package/dist/utils/isNegative.d.ts.map +1 -0
  695. package/dist/utils/isNumeric.d.ts +6 -0
  696. package/dist/utils/isNumeric.d.ts.map +1 -0
  697. package/dist/utils/isPositive.d.ts +9 -0
  698. package/dist/utils/isPositive.d.ts.map +1 -0
  699. package/dist/utils/isPrime.d.ts +7 -0
  700. package/dist/utils/isPrime.d.ts.map +1 -0
  701. package/dist/utils/isZero.d.ts +8 -0
  702. package/dist/utils/isZero.d.ts.map +1 -0
  703. package/dist/utils/log.d.ts +5 -0
  704. package/dist/utils/log.d.ts.map +1 -0
  705. package/dist/utils/lruQueue.d.ts +6 -0
  706. package/dist/utils/lruQueue.d.ts.map +1 -0
  707. package/dist/utils/map.d.ts +95 -0
  708. package/dist/utils/map.d.ts.map +1 -0
  709. package/dist/utils/node.d.ts +2 -0
  710. package/dist/utils/node.d.ts.map +1 -0
  711. package/dist/utils/noop.d.ts +6 -0
  712. package/dist/utils/noop.d.ts.map +1 -0
  713. package/dist/utils/number.d.ts +314 -0
  714. package/dist/utils/number.d.ts.map +1 -0
  715. package/dist/utils/numeric.d.ts +10 -0
  716. package/dist/utils/numeric.d.ts.map +1 -0
  717. package/dist/utils/object.d.ts +123 -0
  718. package/dist/utils/object.d.ts.map +1 -0
  719. package/dist/utils/optimizeCallback.d.ts +22 -0
  720. package/dist/utils/optimizeCallback.d.ts.map +1 -0
  721. package/dist/utils/parseNumber.d.ts +2 -0
  722. package/dist/utils/parseNumber.d.ts.map +1 -0
  723. package/dist/utils/print.d.ts +2 -0
  724. package/dist/utils/print.d.ts.map +1 -0
  725. package/dist/utils/product.d.ts +6 -0
  726. package/dist/utils/product.d.ts.map +1 -0
  727. package/dist/utils/string.d.ts +66 -0
  728. package/dist/utils/string.d.ts.map +1 -0
  729. package/dist/utils/switch.d.ts +8 -0
  730. package/dist/utils/switch.d.ts.map +1 -0
  731. package/dist/utils/typeOf.d.ts +7 -0
  732. package/dist/utils/typeOf.d.ts.map +1 -0
  733. package/dist/wasm/WasmLoader.d.ts +395 -0
  734. package/dist/wasm/WasmLoader.d.ts.map +1 -0
  735. package/dist/wasm/bitwise/wasm-bridge.d.ts +65 -0
  736. package/dist/wasm/bitwise/wasm-bridge.d.ts.map +1 -0
  737. package/dist/wasm/integrity.d.ts +48 -0
  738. package/dist/wasm/integrity.d.ts.map +1 -0
  739. package/dist/wasm/interpolation/wasm-bridge.d.ts +95 -0
  740. package/dist/wasm/interpolation/wasm-bridge.d.ts.map +1 -0
  741. package/dist/wasm/poly/wasm-bridge.d.ts +99 -0
  742. package/dist/wasm/poly/wasm-bridge.d.ts.map +1 -0
  743. package/dist/wasm/signal/wasm-bridge.d.ts +61 -0
  744. package/dist/wasm/signal/wasm-bridge.d.ts.map +1 -0
  745. package/dist/wasm/sort/wasm-bridge.d.ts +43 -0
  746. package/dist/wasm/sort/wasm-bridge.d.ts.map +1 -0
  747. package/dist/wasm/special/wasm-bridge.d.ts +133 -0
  748. package/dist/wasm/special/wasm-bridge.d.ts.map +1 -0
  749. package/package.json +2 -2
@@ -0,0 +1,395 @@
1
+ /**
2
+ * WASM Loader - Loads and manages WebAssembly modules
3
+ * Provides a bridge between JavaScript/TypeScript and compiled WASM
4
+ *
5
+ * Optimizations:
6
+ * - Singleton pattern with module caching
7
+ * - Streaming compilation in browsers (WebAssembly.instantiateStreaming)
8
+ * - Memory pooling for frequent allocations
9
+ * - Compiled module caching for faster re-instantiation
10
+ * - Configurable size thresholds for JS fallback
11
+ *
12
+ * Security:
13
+ * - Optional SHA-384 integrity verification against a sibling
14
+ * `wasm-manifest.json`. See `./integrity.ts`. When the manifest is
15
+ * present any tampered .wasm payload is rejected before instantiation.
16
+ */
17
+ export interface WasmModule {
18
+ multiplyDense: (aPtr: number, aRows: number, aCols: number, bPtr: number, bRows: number, bCols: number, resultPtr: number) => void;
19
+ multiplyDenseSIMD: (aPtr: number, aRows: number, aCols: number, bPtr: number, bRows: number, bCols: number, resultPtr: number) => void;
20
+ multiplyVector: (aPtr: number, aRows: number, aCols: number, xPtr: number, resultPtr: number) => void;
21
+ transpose: (dataPtr: number, rows: number, cols: number, resultPtr: number) => void;
22
+ add: (aPtr: number, bPtr: number, size: number, resultPtr: number) => void;
23
+ subtract: (aPtr: number, bPtr: number, size: number, resultPtr: number) => void;
24
+ scalarMultiply: (aPtr: number, scalar: number, size: number, resultPtr: number) => void;
25
+ dotProduct: (aPtr: number, bPtr: number, size: number) => number;
26
+ luDecomposition: (aPtr: number, n: number, permPtr: number) => number;
27
+ qrDecomposition: (aPtr: number, m: number, n: number, qPtr: number) => void;
28
+ choleskyDecomposition: (aPtr: number, n: number, lPtr: number) => number;
29
+ schur: (aPtr: number, n: number, maxIter: number, tol: number, qPtr: number, tPtr: number, workPtr: number) => number;
30
+ luSolve: (luPtr: number, n: number, permPtr: number, bPtr: number, xPtr: number) => void;
31
+ luDeterminant: (luPtr: number, n: number, permPtr: number) => number;
32
+ laDet: (aPtr: number, n: number, workPtr: number) => number;
33
+ laInv: (aPtr: number, n: number, resultPtr: number, workPtr: number) => number;
34
+ laInv2x2: (aPtr: number, resultPtr: number) => number;
35
+ laInv3x3: (aPtr: number, resultPtr: number) => number;
36
+ laCond1: (aPtr: number, n: number, workPtr: number) => number;
37
+ laCondInf: (aPtr: number, n: number, workPtr: number) => number;
38
+ laKron: (aPtr: number, aRows: number, aCols: number, bPtr: number, bRows: number, bCols: number) => number;
39
+ laDot: (aPtr: number, bPtr: number, n: number) => number;
40
+ laCross: (aPtr: number, bPtr: number) => number;
41
+ laNorm2: (xPtr: number, n: number) => number;
42
+ laSolve: (aPtr: number, bPtr: number, n: number, resultPtr: number, workPtr: number) => number;
43
+ laLsolve: (lPtr: number, bPtr: number, n: number, resultPtr: number) => number;
44
+ laUsolve: (uPtr: number, bPtr: number, n: number, resultPtr: number) => number;
45
+ eigsSymmetric: (matrixPtr: number, n: number, precision: number, eigenvaluesPtr: number, eigenvectorsPtr: number, workPtr: number) => number;
46
+ powerIteration: (matrixPtr: number, n: number, eigenvaluePtr: number, eigenvectorPtr: number, workPtr: number, maxIterations: number, tolerance: number) => number;
47
+ spectralRadius: (matrixPtr: number, n: number, workPtr: number, maxIterations: number, tolerance: number) => number;
48
+ inverseIteration: (matrixPtr: number, n: number, shift: number, eigenvectorPtr: number, workPtr: number, maxIterations: number, tolerance: number) => number;
49
+ balanceMatrix: (matrixPtr: number, n: number, scalePtr: number, transformPtr: number) => void;
50
+ reduceToHessenberg: (matrixPtr: number, n: number, transformPtr: number) => void;
51
+ eigenvalues2x2: (a: number, b: number, c: number, d: number, realPtr: number, imagPtr: number) => void;
52
+ qrIterationStep: (matrixPtr: number, n: number, workPtr: number, shift: number) => void;
53
+ qrAlgorithm: (matrixPtr: number, n: number, eigenvaluesRealPtr: number, eigenvaluesImagPtr: number, workPtr: number, maxIterations: number, tolerance: number) => number;
54
+ hessenbergQRStep: (matrixPtr: number, n: number, startRow: number, endRow: number, shift: number) => void;
55
+ expm: (matrixPtr: number, n: number, resultPtr: number, workPtr: number) => number;
56
+ expmSmall: (matrixPtr: number, n: number, resultPtr: number, workPtr: number, terms: number) => void;
57
+ expmv: (matrixPtr: number, n: number, vectorPtr: number, resultPtr: number, workPtr: number, t: number) => void;
58
+ sqrtm: (matrixPtr: number, n: number, resultPtr: number, tolerance: number, maxIterations: number, workPtr: number) => number;
59
+ sqrtmNewtonSchulz: (matrixPtr: number, n: number, resultPtr: number, workPtr: number, maxIterations: number, tolerance: number) => number;
60
+ sqrtmCholesky: (matrixPtr: number, n: number, resultPtr: number, workPtr: number) => number;
61
+ sparseLu: (valuesPtr: number, rowIndPtr: number, colPtrPtr: number, n: number, nnz: number, lValuesPtr: number, lRowIndPtr: number, lColPtrPtr: number, uValuesPtr: number, uRowIndPtr: number, uColPtrPtr: number, permPtr: number, workPtr: number) => number;
62
+ sparseForwardSolve: (lValuesPtr: number, lRowIndPtr: number, lColPtrPtr: number, n: number, bPtr: number, xPtr: number) => void;
63
+ sparseBackwardSolve: (uValuesPtr: number, uRowIndPtr: number, uColPtrPtr: number, n: number, bPtr: number, xPtr: number) => void;
64
+ sparseLuSolve: (lValuesPtr: number, lRowIndPtr: number, lColPtrPtr: number, uValuesPtr: number, uRowIndPtr: number, uColPtrPtr: number, n: number, permPtr: number, bPtr: number, xPtr: number, workPtr: number) => void;
65
+ sparseChol: (valuesPtr: number, rowIndPtr: number, colPtrPtr: number, n: number, nnz: number, lValuesPtr: number, lRowIndPtr: number, lColPtrPtr: number, parentPtr: number, workPtr: number) => number;
66
+ sparseCholSolve: (lValuesPtr: number, lRowIndPtr: number, lColPtrPtr: number, n: number, bPtr: number, xPtr: number, workPtr: number) => void;
67
+ eliminationTree: (rowIndPtr: number, colPtrPtr: number, n: number, parentPtr: number) => void;
68
+ columnCounts: (rowIndPtr: number, colPtrPtr: number, n: number, parentPtr: number, countsPtr: number, workPtr: number) => void;
69
+ amd: (colPtrPtr: number, rowIdxPtr: number, n: number, permPtr: number, workPtr: number) => void;
70
+ amdAggressive: (colPtrPtr: number, rowIdxPtr: number, n: number, permPtr: number, workPtr: number) => void;
71
+ symbolicCholesky: (indexPtr: number, ptrPtr: number, n: number, parentPtr: number, postPtr: number, colCountPtr: number, workPtr: number) => void;
72
+ simdDotF64: (aPtr: number, bPtr: number, length: number) => number;
73
+ simdSumF64: (aPtr: number, length: number) => number;
74
+ simdSumSquaresF64: (aPtr: number, length: number) => number;
75
+ simdNormF64: (aPtr: number, length: number) => number;
76
+ simdMinF64: (aPtr: number, length: number) => number;
77
+ simdMaxF64: (aPtr: number, length: number) => number;
78
+ simdMeanF64: (aPtr: number, length: number) => number;
79
+ simdVarianceF64: (aPtr: number, length: number, ddof: number) => number;
80
+ simdStdF64: (aPtr: number, length: number, ddof: number) => number;
81
+ simdAddF64: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
82
+ simdSubF64: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
83
+ simdMulF64: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
84
+ simdScaleF64: (aPtr: number, scalar: number, resultPtr: number, length: number) => void;
85
+ simdAbsF64: (aPtr: number, resultPtr: number, length: number) => void;
86
+ simdMatMulF64: (aPtr: number, bPtr: number, cPtr: number, m: number, k: number, n: number) => void;
87
+ gcdArray: (aPtr: number, n: number) => number;
88
+ hypotArray: (aPtr: number, n: number) => number;
89
+ norm1: (aPtr: number, n: number) => number;
90
+ norm2: (aPtr: number, n: number) => number;
91
+ normInf: (aPtr: number, n: number) => number;
92
+ normP: (aPtr: number, n: number, p: number) => number;
93
+ erfArray: (aPtr: number, n: number, resultPtr: number) => void;
94
+ zetaArray: (aPtr: number, n: number, resultPtr: number) => void;
95
+ gammaArray: (aPtr: number, n: number, resultPtr: number) => void;
96
+ lgammaArray: (aPtr: number, n: number, resultPtr: number) => void;
97
+ lgamma_f64: (xsPtr: number, n: number, outPtr: number) => number;
98
+ partitionSelect: (dataPtr: number, n: number, k: number, workPtr: number) => number;
99
+ distanceND: (p1Ptr: number, p2Ptr: number, n: number) => number;
100
+ distance2D: (x1: number, y1: number, x2: number, y2: number) => number;
101
+ distance3D: (x1: number, y1: number, z1: number, x2: number, y2: number, z2: number) => number;
102
+ intersect2DLines: (x1: number, y1: number, x2: number, y2: number, x3: number, y3: number, x4: number, y4: number, resultPtr: number) => void;
103
+ intersect2DInfiniteLines: (x1: number, y1: number, x2: number, y2: number, x3: number, y3: number, x4: number, y4: number, resultPtr: number) => void;
104
+ distancePointToLine2D: (px: number, py: number, x1: number, y1: number, x2: number, y2: number) => number;
105
+ statsMean: (aPtr: number, n: number) => number;
106
+ statsMedian: (aPtr: number, n: number) => number;
107
+ statsVariance: (aPtr: number, n: number, ddof: number) => number;
108
+ statsStd: (aPtr: number, n: number, ddof: number) => number;
109
+ statsSum: (aPtr: number, n: number) => number;
110
+ statsProd: (aPtr: number, n: number) => number;
111
+ statsMin: (aPtr: number, n: number) => number;
112
+ statsMax: (aPtr: number, n: number) => number;
113
+ statsCumsum: (aPtr: number, n: number) => void;
114
+ statsMad: (aPtr: number, n: number) => number;
115
+ statsCorrelation: (aPtr: number, bPtr: number, n: number) => number;
116
+ statsCovariance: (aPtr: number, bPtr: number, n: number, ddof: number) => number;
117
+ dct_wasm: (inPtr: number, outPtr: number, n: number) => void;
118
+ idct_wasm: (inPtr: number, outPtr: number, n: number) => void;
119
+ dst_wasm: (inPtr: number, outPtr: number, n: number) => void;
120
+ idst_wasm: (inPtr: number, outPtr: number, n: number) => void;
121
+ dwt_wasm: (inPtr: number, approxPtr: number, detailPtr: number, n: number) => void;
122
+ hilbert_wasm: (inRe: number, inIm: number, outRe: number, outIm: number, n: number) => void;
123
+ spectrogram_wasm: (inPtr: number, outPtr: number, n: number, windowSize: number, hop: number) => number;
124
+ periodogram_wasm: (inPtr: number, outPtr: number, n: number) => void;
125
+ fir_filter_wasm: (inPtr: number, coeffsPtr: number, outPtr: number, n: number, numCoeffs: number) => void;
126
+ freqz: (bPtr: number, bLen: number, aPtr: number, aLen: number, wPtr: number, wLen: number, hRealPtr: number, hImagPtr: number) => void;
127
+ fft: (dataPtr: number, n: number, inverse: number) => void;
128
+ fft2d: (dataPtr: number, rows: number, cols: number, inverse: number) => void;
129
+ convolve: (signalPtr: number, n: number, kernelPtr: number, m: number, resultPtr: number) => void;
130
+ rfft: (dataPtr: number, n: number, resultPtr: number) => void;
131
+ irfft: (dataPtr: number, n: number, resultPtr: number) => void;
132
+ isPowerOf2: (n: number) => number;
133
+ vectorAdd: (aPtr: number, bPtr: number, n: number, resultPtr: number) => void;
134
+ vectorScale: (aPtr: number, scalar: number, n: number, resultPtr: number) => void;
135
+ vectorCopy: (srcPtr: number, n: number, dstPtr: number) => void;
136
+ maxError: (errorPtr: number, n: number) => number;
137
+ computeStepAdjustment: (maxErr: number, tol: number, order: number, minDelta: number, maxDelta: number) => number;
138
+ rk45Step: (yPtr: number, t: number, h: number, n: number, kPtr: number, yNextPtr: number, yErrorPtr: number) => void;
139
+ rk23Step: (yPtr: number, t: number, h: number, n: number, kPtr: number, yNextPtr: number, yErrorPtr: number) => void;
140
+ minimize_quadratic_wasm: (hPtr: number, fPtr: number, n: number, xPtr: number) => number;
141
+ least_squares_wasm: (aPtr: number, bPtr: number, m: number, n: number, xPtr: number) => number;
142
+ levenberg_marquardt_wasm: (jPtr: number, rPtr: number, m: number, n: number, dpPtr: number, lambda: number) => void;
143
+ condition_number_wasm: (aPtr: number, n: number) => number;
144
+ matrix_rank_wasm: (aPtr: number, m: number, n: number, tol: number) => number;
145
+ bezier_eval_wasm: (ctrlPtr: number, nPoints: number, dims: number, t: number, resultPtr: number) => void;
146
+ bspline_eval_wasm: (ctrlPtr: number, nPoints: number, degree: number, t: number, resultPtr: number) => void;
147
+ loess_wasm: (xsPtr: number, ysPtr: number, n: number, x: number, bandwidth: number) => number;
148
+ rbf_interp_wasm: (pointsPtr: number, valuesPtr: number, n: number, dims: number, xiPtr: number, ni: number, resultPtr: number) => void;
149
+ griddata_wasm: (pointsPtr: number, valuesPtr: number, n: number, xiPtr: number, yiPtr: number, ni: number, resultPtr: number) => void;
150
+ implicit_euler_step_wasm: (yPtr: number, fPtr: number, jPtr: number, h: number, n: number, resultPtr: number) => void;
151
+ ode_system_rk4_step_wasm: (yPtr: number, kPtrs: number, h: number, n: number, resultPtr: number) => void;
152
+ delaunay_wasm: (ptsPtr: number, n: number, trisPtr: number) => number;
153
+ voronoi_wasm: (ptsPtr: number, n: number, boundsPtr: number, vertsPtr: number, edgesPtr: number, maxVerts: number, maxEdges: number) => number;
154
+ kdtree_build_wasm: (ptsPtr: number, n: number, dims: number, treePtr: number) => number;
155
+ kdtree_nearest_wasm: (treePtr: number, queryPtr: number, dims: number, treeSize: number) => number;
156
+ convex_hull_3d_wasm: (ptsPtr: number, nPts: number, facesPtr: number, maxFaces: number) => number;
157
+ bitAndArray?: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
158
+ bitOrArray?: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
159
+ bitXorArray?: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
160
+ bitNotArray?: (inputPtr: number, resultPtr: number, length: number) => void;
161
+ leftShiftArrayPerElement?: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
162
+ rightArithShiftArrayPerElement?: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
163
+ rightLogShiftArrayPerElement?: (aPtr: number, bPtr: number, resultPtr: number, length: number) => void;
164
+ bitAnd_i32_array?: (a: Int32Array, b: Int32Array, result: Int32Array) => void;
165
+ bitOr_i32_array?: (a: Int32Array, b: Int32Array, result: Int32Array) => void;
166
+ bitXor_i32_array?: (a: Int32Array, b: Int32Array, result: Int32Array) => void;
167
+ bitNot_i32_array?: (a: Int32Array, result: Int32Array) => void;
168
+ leftShift_i32_array?: (a: Int32Array, b: Int32Array, result: Int32Array) => void;
169
+ rightArithShift_i32_array?: (a: Int32Array, b: Int32Array, result: Int32Array) => void;
170
+ rightLogShift_i32_array?: (a: Int32Array, b: Int32Array, result: Int32Array) => void;
171
+ poly_mul_f64?: (aPtr: number, aLen: number, bPtr: number, bLen: number, outPtr: number) => number;
172
+ poly_div_mod_f64?: (numPtr: number, numLen: number, denPtr: number, denLen: number, outPtr: number) => number;
173
+ poly_mul_f64_as?: (a: Float64Array, b: Float64Array) => Float64Array;
174
+ poly_div_mod_f64_as?: (num: Float64Array, den: Float64Array) => Float64Array;
175
+ poly_resultant_f64?: (pPtr: number, pLen: number, qPtr: number, qLen: number) => number;
176
+ poly_discriminant_f64?: (pPtr: number, pLen: number) => number;
177
+ poly_resultant_f64_as?: (p: Float64Array, q: Float64Array) => number;
178
+ poly_discriminant_f64_as?: (p: Float64Array) => number;
179
+ poly_fit_f64?: (xsPtr: number, ysPtr: number, n: number, degree: number, outPtr: number) => number;
180
+ cheb_fit_f64?: (xsPtr: number, ysPtr: number, n: number, degree: number, outPtr: number) => number;
181
+ legendre_fit_f64?: (xsPtr: number, ysPtr: number, n: number, degree: number, outPtr: number) => number;
182
+ poly_fit_f64_as?: (xs: Float64Array, ys: Float64Array, degree: number) => Float64Array;
183
+ cheb_fit_f64_as?: (xs: Float64Array, ys: Float64Array, degree: number) => Float64Array;
184
+ legendre_fit_f64_as?: (xs: Float64Array, ys: Float64Array, degree: number) => Float64Array;
185
+ tridiag_solve_f64?: (diagPtr: number, lowerPtr: number, upperPtr: number, rhsPtr: number, n: number, outPtr: number) => number;
186
+ tridiag_solve_f64_as?: (diag: Float64Array, lower: Float64Array, upper: Float64Array, rhs: Float64Array) => Float64Array;
187
+ divided_difference_f64?: (xsPtr: number, ysPtr: number, n: number, outPtr: number) => number;
188
+ divided_difference_f64_as?: (xs: Float64Array, ys: Float64Array) => Float64Array;
189
+ bessel_j0_f64?: (xsPtr: number, n: number, outPtr: number) => number;
190
+ bessel_j1_f64?: (xsPtr: number, n: number, outPtr: number) => number;
191
+ bessel_j_f64?: (order: number, xsPtr: number, nElems: number, outPtr: number) => number;
192
+ bessel_y0_f64?: (xsPtr: number, n: number, outPtr: number) => number;
193
+ bessel_y1_f64?: (xsPtr: number, n: number, outPtr: number) => number;
194
+ bessel_y_f64?: (order: number, xsPtr: number, nElems: number, outPtr: number) => number;
195
+ airy_ai_f64?: (xsPtr: number, n: number, outPtr: number) => number;
196
+ airy_bi_f64?: (xsPtr: number, n: number, outPtr: number) => number;
197
+ elliptic_k_f64?: (msPtr: number, n: number, outPtr: number) => number;
198
+ elliptic_e_f64?: (msPtr: number, n: number, outPtr: number) => number;
199
+ elliptic_k_f64_as?: (ms: Float64Array) => Float64Array;
200
+ elliptic_e_f64_as?: (ms: Float64Array) => Float64Array;
201
+ carlson_rc_f64?: (xsPtr: number, ysPtr: number, n: number, outPtr: number) => number;
202
+ carlson_rf_f64?: (xsPtr: number, ysPtr: number, zsPtr: number, n: number, outPtr: number) => number;
203
+ carlson_rd_f64?: (xsPtr: number, ysPtr: number, zsPtr: number, n: number, outPtr: number) => number;
204
+ carlson_rj_f64?: (xsPtr: number, ysPtr: number, zsPtr: number, psPtr: number, n: number, outPtr: number) => number;
205
+ elliptic_f_incomplete_f64?: (phisPtr: number, msPtr: number, n: number, outPtr: number) => number;
206
+ elliptic_e_incomplete_f64?: (phisPtr: number, msPtr: number, n: number, outPtr: number) => number;
207
+ elliptic_pi_incomplete_f64?: (nsPtr: number, phisPtr: number, msPtr: number, n: number, outPtr: number) => number;
208
+ carlson_rc_f64_as?: (xs: Float64Array, ys: Float64Array) => Float64Array;
209
+ carlson_rf_f64_as?: (xs: Float64Array, ys: Float64Array, zs: Float64Array) => Float64Array;
210
+ carlson_rd_f64_as?: (xs: Float64Array, ys: Float64Array, zs: Float64Array) => Float64Array;
211
+ carlson_rj_f64_as?: (xs: Float64Array, ys: Float64Array, zs: Float64Array, ps: Float64Array) => Float64Array;
212
+ elliptic_f_incomplete_f64_as?: (phis: Float64Array, ms: Float64Array) => Float64Array;
213
+ elliptic_e_incomplete_f64_as?: (phis: Float64Array, ms: Float64Array) => Float64Array;
214
+ elliptic_pi_incomplete_f64_as?: (ns: Float64Array, phis: Float64Array, ms: Float64Array) => Float64Array;
215
+ bessel_j0_f64_as?: (xs: Float64Array) => Float64Array;
216
+ bessel_j1_f64_as?: (xs: Float64Array) => Float64Array;
217
+ bessel_jn_f64_as?: (n: number, xs: Float64Array) => Float64Array;
218
+ bessel_y0_f64_as?: (xs: Float64Array) => Float64Array;
219
+ bessel_y1_f64_as?: (xs: Float64Array) => Float64Array;
220
+ bessel_yn_f64_as?: (n: number, xs: Float64Array) => Float64Array;
221
+ airy_ai_f64_as?: (xs: Float64Array) => Float64Array;
222
+ airy_bi_f64_as?: (xs: Float64Array) => Float64Array;
223
+ apply_window_f64?: (samplesPtr: number, n: number, windowType: number) => number;
224
+ welch_psd_f64?: (samplesPtr: number, n: number, frameLength: number, overlap: number, windowType: number, outPtr: number) => number;
225
+ bartlett_psd_f64?: (samplesPtr: number, n: number, frameLength: number, outPtr: number) => number;
226
+ goertzel_f64?: (samplesPtr: number, n: number, targetFreq: number, sampleRate: number) => number;
227
+ chirp_z_transform_f64?: (samplesPtr: number, n: number, m: number, phiStartRe: number, phiStartIm: number, phiStepRe: number, phiStepIm: number, outRePtr: number, outImPtr: number) => number;
228
+ apply_window_f64_as?: (samples: Float64Array, windowType: number) => number;
229
+ welch_psd_f64_as?: (samples: Float64Array, frameLength: number, overlap: number, windowType: number) => Float64Array;
230
+ bartlett_psd_f64_as?: (samples: Float64Array, frameLength: number) => Float64Array;
231
+ goertzel_f64_as?: (samples: Float64Array, targetFreq: number, sampleRate: number) => number;
232
+ chirp_z_transform_f64_as?: (samples: Float64Array, m: number, phiStartRe: number, phiStartIm: number, phiStepRe: number, phiStepIm: number) => Float64Array;
233
+ sort_f64?: (ptr: number, n: number) => number;
234
+ argsort_f64?: (dataPtr: number, n: number, outPtr: number) => number;
235
+ rank_f64?: (dataPtr: number, n: number, outPtr: number) => number;
236
+ matrix_lu_decompose?: (aHdr: number, n: number, lOutHdr: number, uOutHdr: number, permOutHdr: number) => number;
237
+ matrix_qr_decompose?: (aHdr: number, m: number, n: number, qOutHdr: number, rOutHdr: number) => number;
238
+ matrix_cholesky?: (aHdr: number, n: number, lOutHdr: number) => number;
239
+ matrix_inverse?: (aHdr: number, n: number, resultHdr: number, workHdr: number) => number;
240
+ matrix_determinant?: (aHdr: number, n: number, workHdr: number) => number;
241
+ __new: (size: number, id: number) => number;
242
+ __pin: (ptr: number) => number;
243
+ __unpin: (ptr: number) => void;
244
+ __collect: () => void;
245
+ memory: WebAssembly.Memory;
246
+ }
247
+ /**
248
+ * Loading metrics for performance monitoring
249
+ */
250
+ export interface LoadingMetrics {
251
+ fileReadMs: number;
252
+ compileMs: number;
253
+ instantiateMs: number;
254
+ totalMs: number;
255
+ fromCache: boolean;
256
+ }
257
+ export declare class WasmLoader {
258
+ private static instance;
259
+ private wasmModule;
260
+ private compiledModule;
261
+ private loading;
262
+ private isNode;
263
+ private lastMetrics;
264
+ private float64Pool;
265
+ private int32Pool;
266
+ private readonly maxPoolSize;
267
+ private readonly poolSizeThreshold;
268
+ private constructor();
269
+ static getInstance(): WasmLoader;
270
+ /**
271
+ * Load the WASM module
272
+ */
273
+ load(wasmPath?: string): Promise<WasmModule>;
274
+ /**
275
+ * Precompile the WASM module without instantiation
276
+ * Useful for build-time or startup optimization
277
+ */
278
+ precompile(wasmPath?: string): Promise<void>;
279
+ private loadModule;
280
+ /**
281
+ * Get the WASM binary path based on the selected backend.
282
+ * Set MATHTS_WASM_BACKEND=assemblyscript to use the AS binary.
283
+ * Default is Rust (after migration cutover).
284
+ *
285
+ * Filenames were renamed from mathjs.wasm / mathjs-as.wasm during the
286
+ * mathjs-to-MathTS rebrand; the legacy MATHJS_WASM_BACKEND env var
287
+ * still works for one release for backward compatibility.
288
+ *
289
+ * Returns an async result because the Node branch dynamically imports
290
+ * `node:url` (fileURLToPath) so the path is resolved relative to this
291
+ * source file's location rather than process.cwd().
292
+ */
293
+ private getDefaultWasmPath;
294
+ private loadNodeWasm;
295
+ private loadBrowserWasm;
296
+ private getImports;
297
+ /**
298
+ * Get the loaded WASM module
299
+ */
300
+ getModule(): WasmModule | null;
301
+ /**
302
+ * Get the compiled WASM module (for caching/serialization)
303
+ */
304
+ getCompiledModule(): WebAssembly.Module | null;
305
+ /**
306
+ * Check if WASM is loaded
307
+ */
308
+ isLoaded(): boolean;
309
+ /**
310
+ * Check if WASM is precompiled
311
+ */
312
+ isPrecompiled(): boolean;
313
+ /**
314
+ * Get loading performance metrics
315
+ */
316
+ getLoadingMetrics(): LoadingMetrics | null;
317
+ /**
318
+ * Allocate Float64Array in WASM memory
319
+ * Uses memory pooling for frequently reused sizes
320
+ */
321
+ allocateFloat64Array(data: number[] | Float64Array): {
322
+ ptr: number;
323
+ array: Float64Array;
324
+ };
325
+ /**
326
+ * Allocate Float64Array without copying data (for output buffers)
327
+ */
328
+ allocateFloat64ArrayEmpty(length: number): {
329
+ ptr: number;
330
+ array: Float64Array;
331
+ };
332
+ /**
333
+ * Allocate Int32Array in WASM memory
334
+ * Uses memory pooling for frequently reused sizes
335
+ */
336
+ allocateInt32Array(data: number[] | Int32Array): {
337
+ ptr: number;
338
+ array: Int32Array;
339
+ };
340
+ /**
341
+ * Allocate Int32Array without copying data (for output buffers)
342
+ */
343
+ allocateInt32ArrayEmpty(length: number): {
344
+ ptr: number;
345
+ array: Int32Array;
346
+ };
347
+ /**
348
+ * Get a suitable entry from the memory pool
349
+ */
350
+ private getFromPool;
351
+ /**
352
+ * Return allocation to pool for reuse
353
+ */
354
+ release(ptr: number, isFloat64?: boolean): void;
355
+ /**
356
+ * Free allocated memory (immediate, bypasses pool)
357
+ */
358
+ free(ptr: number): void;
359
+ /**
360
+ * Clear the memory pool
361
+ */
362
+ clearPool(): void;
363
+ /**
364
+ * Get pool statistics
365
+ */
366
+ getPoolStats(): {
367
+ float64: {
368
+ total: number;
369
+ inUse: number;
370
+ totalBytes: number;
371
+ };
372
+ int32: {
373
+ total: number;
374
+ inUse: number;
375
+ totalBytes: number;
376
+ };
377
+ };
378
+ /**
379
+ * Run garbage collection
380
+ */
381
+ collect(): void;
382
+ /**
383
+ * Reset the loader (for testing)
384
+ */
385
+ reset(): void;
386
+ }
387
+ /**
388
+ * Global WASM loader instance
389
+ */
390
+ export declare const wasmLoader: WasmLoader;
391
+ /**
392
+ * Initialize WASM module (call once at startup)
393
+ */
394
+ export declare function initWasm(wasmPath?: string): Promise<WasmModule>;
395
+ //# sourceMappingURL=WasmLoader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WasmLoader.d.ts","sourceRoot":"","sources":["../../src/wasm/WasmLoader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * WASM dispatch bridge for elementwise Int32Array bitwise ops.
3
+ *
4
+ * The typed bitwise functions in `functions/src/typed/bitwise.ts` already
5
+ * have a `ComputePool` fallback for `Int32Array` inputs (worker-pool tier
6
+ * or in-process JS, depending on size). This bridge adds a *third* tier
7
+ * above that for very large arrays where the SIMD/native WASM kernels
8
+ * dominate the worker dispatch overhead.
9
+ *
10
+ * Behavior:
11
+ * - If `wasmLoader.getModule()` returns null (nobody called
12
+ * `wasmLoader.load()` yet, or load failed), every helper here returns
13
+ * `null` and the caller falls back to `ComputePool`.
14
+ * - If the loaded module has the matching export, we marshal both
15
+ * operand `Int32Array`s into WASM-owned memory, run the kernel, and
16
+ * return a JS-side copy of the result.
17
+ * - Any thrown error is swallowed and the helper returns `null` so the
18
+ * `ComputePool` fallback still runs — the WASM tier is purely an
19
+ * optimization, not a correctness requirement.
20
+ *
21
+ * Both backends (Rust primary, AssemblyScript legacy) are supported:
22
+ * - Rust exports use the `*Array` (binary) and `*ArrayPerElement`
23
+ * (per-element shift) names with pointer-style arguments.
24
+ * - AS exports use `*_i32_array` and pass high-level `Int32Array`
25
+ * references that the AS loader rebinds against module memory.
26
+ */
27
+ import { type WasmModule } from '../WasmLoader.js';
28
+ /**
29
+ * Length threshold above which we attempt the WASM dispatch tier. This is
30
+ * deliberately conservative (64K Int32 elements = 256 KiB per operand)
31
+ * because the marshal cost (two memcpys in + one memcpy out) only pays
32
+ * off when the kernel inner loop dominates. At smaller sizes the
33
+ * `ComputePool` in-process path is already faster than a WASM round trip.
34
+ */
35
+ export declare const WASM_BITWISE_THRESHOLD: number;
36
+ /**
37
+ * Names of the WASM exports we look for, ordered (Rust first, AS
38
+ * second). The first match wins.
39
+ */
40
+ interface OpNames {
41
+ rust: keyof WasmModule;
42
+ as: keyof WasmModule;
43
+ }
44
+ declare const BINARY_OPS: Record<string, OpNames>;
45
+ declare const UNARY_OPS: Record<string, OpNames>;
46
+ /**
47
+ * Run an elementwise binary Int32Array op via WASM. Returns the result
48
+ * (a new `Int32Array` copy) on success, `null` if no kernel is available.
49
+ * Any error from the kernel is swallowed and treated as `null` so the
50
+ * caller falls back to `ComputePool`.
51
+ */
52
+ export declare function runBinaryBitwiseWasm(op: keyof typeof BINARY_OPS, a: Int32Array, b: Int32Array): Int32Array | null;
53
+ /**
54
+ * Unary variant — currently only `bitNot`.
55
+ */
56
+ export declare function runUnaryBitwiseWasm(op: keyof typeof UNARY_OPS, a: Int32Array): Int32Array | null;
57
+ /**
58
+ * Test-only hook: force-clear any cached state. Re-runs of the typed
59
+ * bitwise tests rely on `wasmLoader.reset()` to drop the loaded module;
60
+ * this re-exports it under a stable name so the bitwise tests don't have
61
+ * to import the loader directly.
62
+ */
63
+ export declare function resetBitwiseWasm(): void;
64
+ export {};
65
+ //# sourceMappingURL=wasm-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm-bridge.d.ts","sourceRoot":"","sources":["../../../src/wasm/bitwise/wasm-bridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE/D;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,QAAY,CAAC;AAUhD;;;GAGG;AACH,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,UAAU,CAAC;IACvB,EAAE,EAAE,MAAM,UAAU,CAAC;CACtB;AAED,QAAA,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAgBvC,CAAC;AAEF,QAAA,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAEtC,CAAC;AA4CF;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,MAAM,OAAO,UAAU,EAC3B,CAAC,EAAE,UAAU,EACb,CAAC,EAAE,UAAU,GACZ,UAAU,GAAG,IAAI,CAgCnB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,OAAO,SAAS,EAAE,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI,CAwBhG;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * WASM integrity verification — SHA-384 manifest check.
3
+ *
4
+ * The build pipeline writes a JSON manifest beside the .wasm artefact:
5
+ *
6
+ * {
7
+ * "mathjs.wasm": "sha384-<base64-of-binary-digest>",
8
+ * "mathjs-as.wasm": "sha384-<base64-of-binary-digest>"
9
+ * }
10
+ *
11
+ * At load time the runtime hashes the freshly read buffer with SHA-384
12
+ * and compares against the manifest. A mismatch throws — preventing
13
+ * silent code-injection if the .wasm artefact is tampered with on disk
14
+ * or in transit (e.g. a CDN/MITM compromise).
15
+ *
16
+ * Browser path uses `crypto.subtle.digest('SHA-384', buf)`.
17
+ * Node path uses `crypto.createHash('sha384').update(buf).digest()`.
18
+ *
19
+ * If the manifest is missing or has no entry for the given file, we
20
+ * emit a console warning and fall through. This keeps existing
21
+ * unsigned builds usable while making signed builds tamper-evident.
22
+ */
23
+ export interface WasmManifest {
24
+ /** Map of filename -> "sha384-<base64 digest>" */
25
+ [fileName: string]: string;
26
+ }
27
+ /**
28
+ * Compute the SHA-384 digest of a buffer and return base64 encoding,
29
+ * prefixed with "sha384-" to match SRI conventions.
30
+ */
31
+ export declare function sha384OfBuffer(buffer: ArrayBuffer | Uint8Array): Promise<string>;
32
+ /**
33
+ * Load the manifest sitting next to the .wasm artefact.
34
+ *
35
+ * @param wasmPath Resolved path or URL to the .wasm file.
36
+ * @returns parsed manifest, or `null` if the manifest cannot be located.
37
+ */
38
+ export declare function loadWasmManifest(wasmPath: string): Promise<WasmManifest | null>;
39
+ /**
40
+ * Verify a freshly loaded WASM buffer against the manifest.
41
+ *
42
+ * @throws Error if the buffer's SHA-384 differs from the manifest entry.
43
+ */
44
+ export declare function verifyWasmIntegrity(buffer: ArrayBuffer | Uint8Array, wasmPath: string, options?: {
45
+ manifest?: WasmManifest | null;
46
+ required?: boolean;
47
+ }): Promise<void>;
48
+ //# sourceMappingURL=integrity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integrity.d.ts","sourceRoot":"","sources":["../../src/wasm/integrity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,MAAM,WAAW,YAAY;IAC3B,kDAAkD;IAClD,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAwBtF;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAmBrF;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,WAAW,GAAG,UAAU,EAChC,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,GACnE,OAAO,CAAC,IAAI,CAAC,CAmCf"}