oakscriptjs 0.8.1 → 0.9.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 (544) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +31 -9
  3. package/dist/cjs/array/index.d.ts +701 -0
  4. package/dist/cjs/array/index.d.ts.map +1 -0
  5. package/dist/cjs/array/index.js +392 -0
  6. package/dist/cjs/array/index.js.map +7 -0
  7. package/dist/cjs/box/index.d.ts +444 -0
  8. package/dist/cjs/box/index.d.ts.map +1 -0
  9. package/dist/cjs/box/index.js +246 -0
  10. package/dist/cjs/box/index.js.map +7 -0
  11. package/dist/cjs/callsite/index.d.ts +61 -0
  12. package/dist/cjs/callsite/index.d.ts.map +1 -0
  13. package/dist/cjs/callsite/index.js +65 -0
  14. package/dist/cjs/callsite/index.js.map +7 -0
  15. package/dist/cjs/chartpoint/index.d.ts +90 -0
  16. package/dist/cjs/chartpoint/index.d.ts.map +1 -0
  17. package/dist/cjs/chartpoint/index.js +56 -0
  18. package/dist/cjs/chartpoint/index.js.map +7 -0
  19. package/dist/cjs/color/index.d.ts +285 -0
  20. package/dist/cjs/color/index.d.ts.map +1 -0
  21. package/dist/cjs/color/index.js +143 -0
  22. package/dist/cjs/color/index.js.map +7 -0
  23. package/dist/cjs/compare/index.d.ts +26 -0
  24. package/dist/cjs/compare/index.d.ts.map +1 -0
  25. package/dist/cjs/compare/index.js +50 -0
  26. package/dist/cjs/compare/index.js.map +7 -0
  27. package/dist/cjs/drawing/registry.d.ts +42 -0
  28. package/dist/cjs/drawing/registry.d.ts.map +1 -0
  29. package/dist/cjs/drawing/registry.js +87 -0
  30. package/dist/cjs/drawing/registry.js.map +7 -0
  31. package/dist/cjs/index.d.ts +85 -0
  32. package/dist/cjs/index.d.ts.map +1 -0
  33. package/dist/cjs/index.js +184 -0
  34. package/dist/cjs/index.js.map +7 -0
  35. package/dist/cjs/indicator.d.ts +117 -0
  36. package/dist/cjs/indicator.d.ts.map +1 -0
  37. package/dist/cjs/indicator.js +74 -0
  38. package/dist/cjs/indicator.js.map +7 -0
  39. package/dist/cjs/input.d.ts +196 -0
  40. package/dist/cjs/input.d.ts.map +1 -0
  41. package/dist/cjs/input.js +197 -0
  42. package/dist/cjs/input.js.map +7 -0
  43. package/dist/cjs/label/index.d.ts +303 -0
  44. package/dist/cjs/label/index.d.ts.map +1 -0
  45. package/dist/cjs/label/index.js +190 -0
  46. package/dist/cjs/label/index.js.map +7 -0
  47. package/dist/cjs/lib/index.d.ts +8 -0
  48. package/dist/cjs/lib/index.d.ts.map +1 -0
  49. package/dist/cjs/lib/index.js +19 -0
  50. package/dist/cjs/lib/index.js.map +7 -0
  51. package/dist/{lib → cjs/lib}/zigzag/index.d.ts +4 -1
  52. package/dist/cjs/lib/zigzag/index.d.ts.map +1 -0
  53. package/dist/cjs/lib/zigzag/index.js +27 -0
  54. package/dist/cjs/lib/zigzag/index.js.map +7 -0
  55. package/dist/cjs/lib/zigzag/zigzag.d.ts +100 -0
  56. package/dist/cjs/lib/zigzag/zigzag.d.ts.map +1 -0
  57. package/dist/cjs/lib/zigzag/zigzag.js +207 -0
  58. package/dist/cjs/lib/zigzag/zigzag.js.map +7 -0
  59. package/dist/cjs/line/index.d.ts +342 -0
  60. package/dist/cjs/line/index.d.ts.map +1 -0
  61. package/dist/cjs/line/index.js +193 -0
  62. package/dist/cjs/line/index.js.map +7 -0
  63. package/dist/cjs/linefill/index.d.ts +124 -0
  64. package/dist/cjs/linefill/index.d.ts.map +1 -0
  65. package/dist/cjs/linefill/index.js +56 -0
  66. package/dist/cjs/linefill/index.js.map +7 -0
  67. package/dist/cjs/map/index.d.ts +69 -0
  68. package/dist/cjs/map/index.d.ts.map +1 -0
  69. package/dist/cjs/map/index.js +80 -0
  70. package/dist/cjs/map/index.js.map +7 -0
  71. package/dist/cjs/math/index.d.ts +560 -0
  72. package/dist/cjs/math/index.d.ts.map +1 -0
  73. package/dist/cjs/math/index.js +441 -0
  74. package/dist/cjs/math/index.js.map +7 -0
  75. package/dist/cjs/matrix/index.d.ts +1231 -0
  76. package/dist/cjs/matrix/index.d.ts.map +1 -0
  77. package/dist/cjs/matrix/index.js +1200 -0
  78. package/dist/cjs/matrix/index.js.map +7 -0
  79. package/dist/cjs/package.json +1 -0
  80. package/dist/cjs/plot.d.ts +76 -0
  81. package/dist/cjs/plot.d.ts.map +1 -0
  82. package/dist/cjs/plot.js +51 -0
  83. package/dist/cjs/plot.js.map +7 -0
  84. package/dist/cjs/polyline/index.d.ts +115 -0
  85. package/dist/cjs/polyline/index.d.ts.map +1 -0
  86. package/dist/cjs/polyline/index.js +76 -0
  87. package/dist/cjs/polyline/index.js.map +7 -0
  88. package/dist/cjs/runtime/adapters/LightweightChartsAdapter.d.ts +86 -0
  89. package/dist/cjs/runtime/adapters/LightweightChartsAdapter.d.ts.map +1 -0
  90. package/dist/cjs/runtime/adapters/LightweightChartsAdapter.js +141 -0
  91. package/dist/cjs/runtime/adapters/LightweightChartsAdapter.js.map +7 -0
  92. package/dist/cjs/runtime/adapters/SimpleInputAdapter.d.ts +59 -0
  93. package/dist/cjs/runtime/adapters/SimpleInputAdapter.d.ts.map +1 -0
  94. package/dist/cjs/runtime/adapters/SimpleInputAdapter.js +117 -0
  95. package/dist/cjs/runtime/adapters/SimpleInputAdapter.js.map +7 -0
  96. package/dist/{runtime → cjs/runtime}/index.d.ts +12 -5
  97. package/dist/cjs/runtime/index.d.ts.map +1 -0
  98. package/dist/cjs/runtime/index.js +49 -0
  99. package/dist/cjs/runtime/index.js.map +7 -0
  100. package/dist/cjs/runtime/inputs.d.ts +91 -0
  101. package/dist/cjs/runtime/inputs.d.ts.map +1 -0
  102. package/dist/cjs/runtime/inputs.js +262 -0
  103. package/dist/cjs/runtime/inputs.js.map +7 -0
  104. package/dist/cjs/runtime/runtime.d.ts +70 -0
  105. package/dist/cjs/runtime/runtime.d.ts.map +1 -0
  106. package/dist/cjs/runtime/runtime.js +148 -0
  107. package/dist/cjs/runtime/runtime.js.map +7 -0
  108. package/dist/cjs/runtime/series.d.ts +362 -0
  109. package/dist/cjs/runtime/series.d.ts.map +1 -0
  110. package/dist/cjs/runtime/series.js +560 -0
  111. package/dist/cjs/runtime/series.js.map +7 -0
  112. package/dist/cjs/runtime/types.d.ts +282 -0
  113. package/dist/cjs/runtime/types.d.ts.map +1 -0
  114. package/dist/cjs/runtime/types.js +17 -0
  115. package/dist/cjs/runtime/types.js.map +7 -0
  116. package/dist/cjs/script/index.d.ts +987 -0
  117. package/dist/cjs/script/index.d.ts.map +1 -0
  118. package/dist/cjs/script/index.js +1169 -0
  119. package/dist/cjs/script/index.js.map +7 -0
  120. package/dist/cjs/security/resample.d.ts +63 -0
  121. package/dist/cjs/security/resample.d.ts.map +1 -0
  122. package/dist/cjs/security/resample.js +84 -0
  123. package/dist/cjs/security/resample.js.map +7 -0
  124. package/dist/cjs/session/bars.d.ts +80 -0
  125. package/dist/cjs/session/bars.d.ts.map +1 -0
  126. package/dist/cjs/session/bars.js +219 -0
  127. package/dist/cjs/session/bars.js.map +7 -0
  128. package/dist/cjs/session/calendar.d.ts +70 -0
  129. package/dist/cjs/session/calendar.d.ts.map +1 -0
  130. package/dist/cjs/session/calendar.js +164 -0
  131. package/dist/cjs/session/calendar.js.map +7 -0
  132. package/dist/cjs/str/dateformat.d.ts +15 -0
  133. package/dist/cjs/str/dateformat.d.ts.map +1 -0
  134. package/dist/cjs/str/dateformat.js +149 -0
  135. package/dist/cjs/str/dateformat.js.map +7 -0
  136. package/dist/cjs/str/index.d.ts +459 -0
  137. package/dist/cjs/str/index.d.ts.map +1 -0
  138. package/dist/cjs/str/index.js +143 -0
  139. package/dist/cjs/str/index.js.map +7 -0
  140. package/dist/cjs/str/messageformat.d.ts +14 -0
  141. package/dist/cjs/str/messageformat.d.ts.map +1 -0
  142. package/dist/cjs/str/messageformat.js +114 -0
  143. package/dist/cjs/str/messageformat.js.map +7 -0
  144. package/dist/cjs/str/numberformat.d.ts +19 -0
  145. package/dist/cjs/str/numberformat.d.ts.map +1 -0
  146. package/dist/cjs/str/numberformat.js +170 -0
  147. package/dist/cjs/str/numberformat.js.map +7 -0
  148. package/dist/{strategy → cjs/strategy}/index.d.ts +50 -0
  149. package/dist/cjs/strategy/index.d.ts.map +1 -0
  150. package/dist/cjs/strategy/index.js +92 -0
  151. package/dist/cjs/strategy/index.js.map +7 -0
  152. package/dist/cjs/ta/index.d.ts +1397 -0
  153. package/dist/cjs/ta/index.d.ts.map +1 -0
  154. package/dist/cjs/ta/index.js +1715 -0
  155. package/dist/cjs/ta/index.js.map +7 -0
  156. package/dist/cjs/ta/running-sum.d.ts +30 -0
  157. package/dist/cjs/ta/running-sum.d.ts.map +1 -0
  158. package/dist/cjs/ta/running-sum.js +99 -0
  159. package/dist/cjs/ta/running-sum.js.map +7 -0
  160. package/dist/cjs/ta-series.d.ts +558 -0
  161. package/dist/cjs/ta-series.d.ts.map +1 -0
  162. package/dist/cjs/ta-series.js +606 -0
  163. package/dist/cjs/ta-series.js.map +7 -0
  164. package/dist/cjs/text/index.d.ts +14 -0
  165. package/dist/cjs/text/index.d.ts.map +1 -0
  166. package/dist/cjs/text/index.js +29 -0
  167. package/dist/cjs/text/index.js.map +7 -0
  168. package/dist/cjs/time/datestring.d.ts +23 -0
  169. package/dist/cjs/time/datestring.d.ts.map +1 -0
  170. package/dist/cjs/time/datestring.js +106 -0
  171. package/dist/cjs/time/datestring.js.map +7 -0
  172. package/dist/cjs/time/index.d.ts +89 -0
  173. package/dist/cjs/time/index.d.ts.map +1 -0
  174. package/dist/cjs/time/index.js +85 -0
  175. package/dist/cjs/time/index.js.map +7 -0
  176. package/dist/cjs/time/session.d.ts +17 -0
  177. package/dist/cjs/time/session.d.ts.map +1 -0
  178. package/dist/cjs/time/session.js +65 -0
  179. package/dist/cjs/time/session.js.map +7 -0
  180. package/dist/cjs/time/timezone.d.ts +40 -0
  181. package/dist/cjs/time/timezone.d.ts.map +1 -0
  182. package/dist/cjs/time/timezone.js +125 -0
  183. package/dist/cjs/time/timezone.js.map +7 -0
  184. package/dist/cjs/timeframe/index.d.ts +73 -0
  185. package/dist/cjs/timeframe/index.d.ts.map +1 -0
  186. package/dist/cjs/timeframe/index.js +85 -0
  187. package/dist/cjs/timeframe/index.js.map +7 -0
  188. package/dist/cjs/types/index.d.ts +343 -0
  189. package/dist/cjs/types/index.d.ts.map +1 -0
  190. package/dist/cjs/types/index.js +32 -0
  191. package/dist/cjs/types/index.js.map +7 -0
  192. package/dist/cjs/types/metadata.d.ts +300 -0
  193. package/dist/cjs/types/metadata.d.ts.map +1 -0
  194. package/dist/cjs/types/metadata.js +17 -0
  195. package/dist/cjs/types/metadata.js.map +7 -0
  196. package/dist/cjs/utils/index.d.ts +167 -0
  197. package/dist/cjs/utils/index.d.ts.map +1 -0
  198. package/dist/cjs/utils/index.js +209 -0
  199. package/dist/cjs/utils/index.js.map +7 -0
  200. package/dist/esm/array/index.d.ts +701 -0
  201. package/dist/esm/array/index.d.ts.map +1 -0
  202. package/dist/esm/array/index.js +983 -0
  203. package/dist/esm/array/index.js.map +1 -0
  204. package/dist/esm/box/index.d.ts +444 -0
  205. package/dist/esm/box/index.d.ts.map +1 -0
  206. package/dist/esm/box/index.js +602 -0
  207. package/dist/esm/box/index.js.map +1 -0
  208. package/dist/esm/callsite/index.d.ts +61 -0
  209. package/dist/esm/callsite/index.d.ts.map +1 -0
  210. package/dist/esm/callsite/index.js +97 -0
  211. package/dist/esm/callsite/index.js.map +1 -0
  212. package/dist/esm/chartpoint/index.d.ts +90 -0
  213. package/dist/esm/chartpoint/index.d.ts.map +1 -0
  214. package/dist/esm/chartpoint/index.js +113 -0
  215. package/dist/esm/chartpoint/index.js.map +1 -0
  216. package/dist/esm/color/index.d.ts +285 -0
  217. package/dist/esm/color/index.d.ts.map +1 -0
  218. package/dist/esm/color/index.js +373 -0
  219. package/dist/esm/color/index.js.map +1 -0
  220. package/dist/esm/compare/index.d.ts +26 -0
  221. package/dist/esm/compare/index.d.ts.map +1 -0
  222. package/dist/esm/compare/index.js +39 -0
  223. package/dist/esm/compare/index.js.map +1 -0
  224. package/dist/esm/drawing/registry.d.ts +42 -0
  225. package/dist/esm/drawing/registry.d.ts.map +1 -0
  226. package/dist/esm/drawing/registry.js +89 -0
  227. package/dist/esm/drawing/registry.js.map +1 -0
  228. package/dist/esm/index.d.ts +85 -0
  229. package/dist/esm/index.d.ts.map +1 -0
  230. package/dist/esm/index.js +96 -0
  231. package/dist/esm/index.js.map +1 -0
  232. package/dist/esm/indicator.d.ts +117 -0
  233. package/dist/esm/indicator.d.ts.map +1 -0
  234. package/dist/esm/indicator.js +84 -0
  235. package/dist/esm/indicator.js.map +1 -0
  236. package/dist/esm/input.d.ts +196 -0
  237. package/dist/esm/input.d.ts.map +1 -0
  238. package/dist/esm/input.js +183 -0
  239. package/dist/esm/input.js.map +1 -0
  240. package/dist/esm/label/index.d.ts +303 -0
  241. package/dist/esm/label/index.d.ts.map +1 -0
  242. package/dist/esm/label/index.js +417 -0
  243. package/dist/esm/label/index.js.map +1 -0
  244. package/dist/esm/lib/index.d.ts +8 -0
  245. package/dist/esm/lib/index.d.ts.map +1 -0
  246. package/dist/esm/lib/index.js +8 -0
  247. package/dist/esm/lib/index.js.map +1 -0
  248. package/dist/esm/lib/zigzag/index.d.ts +5 -0
  249. package/dist/esm/lib/zigzag/index.d.ts.map +1 -0
  250. package/dist/esm/lib/zigzag/index.js +5 -0
  251. package/dist/esm/lib/zigzag/index.js.map +1 -0
  252. package/dist/esm/lib/zigzag/zigzag.d.ts +100 -0
  253. package/dist/esm/lib/zigzag/zigzag.d.ts.map +1 -0
  254. package/dist/esm/lib/zigzag/zigzag.js +229 -0
  255. package/dist/esm/lib/zigzag/zigzag.js.map +1 -0
  256. package/dist/esm/line/index.d.ts +342 -0
  257. package/dist/esm/line/index.d.ts.map +1 -0
  258. package/dist/esm/line/index.js +470 -0
  259. package/dist/esm/line/index.js.map +1 -0
  260. package/dist/esm/linefill/index.d.ts +124 -0
  261. package/dist/esm/linefill/index.d.ts.map +1 -0
  262. package/dist/esm/linefill/index.js +144 -0
  263. package/dist/esm/linefill/index.js.map +1 -0
  264. package/dist/esm/map/index.d.ts +69 -0
  265. package/dist/esm/map/index.d.ts.map +1 -0
  266. package/dist/esm/map/index.js +106 -0
  267. package/dist/esm/map/index.js.map +1 -0
  268. package/dist/esm/math/index.d.ts +560 -0
  269. package/dist/esm/math/index.d.ts.map +1 -0
  270. package/dist/esm/math/index.js +495 -0
  271. package/dist/esm/math/index.js.map +1 -0
  272. package/dist/esm/matrix/index.d.ts +1231 -0
  273. package/dist/esm/matrix/index.d.ts.map +1 -0
  274. package/dist/esm/matrix/index.js +2450 -0
  275. package/dist/esm/matrix/index.js.map +1 -0
  276. package/dist/esm/plot.d.ts +76 -0
  277. package/dist/esm/plot.d.ts.map +1 -0
  278. package/dist/esm/plot.js +63 -0
  279. package/dist/esm/plot.js.map +1 -0
  280. package/dist/esm/polyline/index.d.ts +115 -0
  281. package/dist/esm/polyline/index.d.ts.map +1 -0
  282. package/dist/esm/polyline/index.js +157 -0
  283. package/dist/esm/polyline/index.js.map +1 -0
  284. package/dist/esm/runtime/adapters/LightweightChartsAdapter.d.ts +86 -0
  285. package/dist/esm/runtime/adapters/LightweightChartsAdapter.d.ts.map +1 -0
  286. package/dist/esm/runtime/adapters/LightweightChartsAdapter.js +140 -0
  287. package/dist/esm/runtime/adapters/LightweightChartsAdapter.js.map +1 -0
  288. package/dist/esm/runtime/adapters/SimpleInputAdapter.d.ts +59 -0
  289. package/dist/esm/runtime/adapters/SimpleInputAdapter.d.ts.map +1 -0
  290. package/dist/esm/runtime/adapters/SimpleInputAdapter.js +115 -0
  291. package/dist/esm/runtime/adapters/SimpleInputAdapter.js.map +1 -0
  292. package/dist/esm/runtime/index.d.ts +13 -0
  293. package/dist/esm/runtime/index.d.ts.map +1 -0
  294. package/dist/esm/runtime/index.js +14 -0
  295. package/dist/esm/runtime/index.js.map +1 -0
  296. package/dist/esm/runtime/inputs.d.ts +91 -0
  297. package/dist/esm/runtime/inputs.d.ts.map +1 -0
  298. package/dist/esm/runtime/inputs.js +334 -0
  299. package/dist/esm/runtime/inputs.js.map +1 -0
  300. package/dist/esm/runtime/runtime.d.ts +70 -0
  301. package/dist/esm/runtime/runtime.d.ts.map +1 -0
  302. package/dist/esm/runtime/runtime.js +193 -0
  303. package/dist/esm/runtime/runtime.js.map +1 -0
  304. package/dist/esm/runtime/series.d.ts +362 -0
  305. package/dist/esm/runtime/series.d.ts.map +1 -0
  306. package/dist/esm/runtime/series.js +583 -0
  307. package/dist/esm/runtime/series.js.map +1 -0
  308. package/dist/esm/runtime/types.d.ts +282 -0
  309. package/dist/esm/runtime/types.d.ts.map +1 -0
  310. package/dist/esm/runtime/types.js +7 -0
  311. package/dist/esm/runtime/types.js.map +1 -0
  312. package/dist/esm/script/index.d.ts +987 -0
  313. package/dist/esm/script/index.d.ts.map +1 -0
  314. package/dist/esm/script/index.js +1289 -0
  315. package/dist/esm/script/index.js.map +1 -0
  316. package/dist/esm/security/resample.d.ts +63 -0
  317. package/dist/esm/security/resample.d.ts.map +1 -0
  318. package/dist/esm/security/resample.js +110 -0
  319. package/dist/esm/security/resample.js.map +1 -0
  320. package/dist/esm/session/bars.d.ts +80 -0
  321. package/dist/esm/session/bars.d.ts.map +1 -0
  322. package/dist/esm/session/bars.js +232 -0
  323. package/dist/esm/session/bars.js.map +1 -0
  324. package/dist/esm/session/calendar.d.ts +70 -0
  325. package/dist/esm/session/calendar.d.ts.map +1 -0
  326. package/dist/esm/session/calendar.js +172 -0
  327. package/dist/esm/session/calendar.js.map +1 -0
  328. package/dist/esm/str/dateformat.d.ts +15 -0
  329. package/dist/esm/str/dateformat.d.ts.map +1 -0
  330. package/dist/esm/str/dateformat.js +136 -0
  331. package/dist/esm/str/dateformat.js.map +1 -0
  332. package/dist/esm/str/index.d.ts +459 -0
  333. package/dist/esm/str/index.d.ts.map +1 -0
  334. package/dist/esm/str/index.js +540 -0
  335. package/dist/esm/str/index.js.map +1 -0
  336. package/dist/esm/str/messageformat.d.ts +14 -0
  337. package/dist/esm/str/messageformat.d.ts.map +1 -0
  338. package/dist/esm/str/messageformat.js +111 -0
  339. package/dist/esm/str/messageformat.js.map +1 -0
  340. package/dist/esm/str/numberformat.d.ts +19 -0
  341. package/dist/esm/str/numberformat.d.ts.map +1 -0
  342. package/dist/esm/str/numberformat.js +189 -0
  343. package/dist/esm/str/numberformat.js.map +1 -0
  344. package/dist/esm/strategy/index.d.ts +245 -0
  345. package/dist/esm/strategy/index.d.ts.map +1 -0
  346. package/dist/esm/strategy/index.js +84 -0
  347. package/dist/esm/strategy/index.js.map +1 -0
  348. package/dist/esm/ta/index.d.ts +1397 -0
  349. package/dist/esm/ta/index.d.ts.map +1 -0
  350. package/dist/esm/ta/index.js +3227 -0
  351. package/dist/esm/ta/index.js.map +1 -0
  352. package/dist/esm/ta/running-sum.d.ts +30 -0
  353. package/dist/esm/ta/running-sum.d.ts.map +1 -0
  354. package/dist/esm/ta/running-sum.js +113 -0
  355. package/dist/esm/ta/running-sum.js.map +1 -0
  356. package/dist/esm/ta-series.d.ts +558 -0
  357. package/dist/esm/ta-series.d.ts.map +1 -0
  358. package/dist/esm/ta-series.js +910 -0
  359. package/dist/esm/ta-series.js.map +1 -0
  360. package/dist/esm/text/index.d.ts +14 -0
  361. package/dist/esm/text/index.d.ts.map +1 -0
  362. package/dist/esm/text/index.js +14 -0
  363. package/dist/esm/text/index.js.map +1 -0
  364. package/dist/esm/time/datestring.d.ts +23 -0
  365. package/dist/esm/time/datestring.d.ts.map +1 -0
  366. package/dist/esm/time/datestring.js +94 -0
  367. package/dist/esm/time/datestring.js.map +1 -0
  368. package/dist/esm/time/index.d.ts +89 -0
  369. package/dist/esm/time/index.d.ts.map +1 -0
  370. package/dist/esm/time/index.js +108 -0
  371. package/dist/esm/time/index.js.map +1 -0
  372. package/dist/esm/time/session.d.ts +17 -0
  373. package/dist/esm/time/session.d.ts.map +1 -0
  374. package/dist/esm/time/session.js +69 -0
  375. package/dist/esm/time/session.js.map +1 -0
  376. package/dist/esm/time/timezone.d.ts +40 -0
  377. package/dist/esm/time/timezone.d.ts.map +1 -0
  378. package/dist/esm/time/timezone.js +144 -0
  379. package/dist/esm/time/timezone.js.map +1 -0
  380. package/dist/esm/timeframe/index.d.ts +73 -0
  381. package/dist/esm/timeframe/index.d.ts.map +1 -0
  382. package/dist/esm/timeframe/index.js +131 -0
  383. package/dist/esm/timeframe/index.js.map +1 -0
  384. package/dist/esm/types/index.d.ts +343 -0
  385. package/dist/esm/types/index.d.ts.map +1 -0
  386. package/dist/esm/types/index.js +17 -0
  387. package/dist/esm/types/index.js.map +1 -0
  388. package/dist/esm/types/metadata.d.ts +300 -0
  389. package/dist/esm/types/metadata.d.ts.map +1 -0
  390. package/dist/esm/types/metadata.js +7 -0
  391. package/dist/esm/types/metadata.js.map +1 -0
  392. package/dist/esm/utils/index.d.ts +167 -0
  393. package/dist/esm/utils/index.d.ts.map +1 -0
  394. package/dist/esm/utils/index.js +295 -0
  395. package/dist/esm/utils/index.js.map +1 -0
  396. package/package.json +53 -23
  397. package/src/array/index.ts +1056 -0
  398. package/src/box/index.ts +680 -0
  399. package/src/callsite/index.ts +104 -0
  400. package/src/chartpoint/index.ts +126 -0
  401. package/src/color/index.ts +411 -0
  402. package/src/compare/index.ts +46 -0
  403. package/src/drawing/registry.ts +106 -0
  404. package/src/index.ts +201 -0
  405. package/src/indicator.ts +185 -0
  406. package/src/input.ts +280 -0
  407. package/src/label/index.ts +490 -0
  408. package/src/lib/index.ts +8 -0
  409. package/src/lib/zigzag/index.ts +13 -0
  410. package/src/lib/zigzag/zigzag.ts +318 -0
  411. package/src/line/index.ts +530 -0
  412. package/src/linefill/index.ts +152 -0
  413. package/src/map/index.ts +115 -0
  414. package/src/math/index.ts +1071 -0
  415. package/src/matrix/index.ts +2697 -0
  416. package/src/plot.ts +121 -0
  417. package/src/polyline/index.ts +184 -0
  418. package/src/runtime/adapters/LightweightChartsAdapter.ts +201 -0
  419. package/src/runtime/adapters/SimpleInputAdapter.ts +132 -0
  420. package/src/runtime/index.ts +52 -0
  421. package/src/runtime/inputs.ts +377 -0
  422. package/src/runtime/runtime.ts +241 -0
  423. package/src/runtime/series.ts +644 -0
  424. package/src/runtime/types.ts +292 -0
  425. package/src/script/index.ts +1865 -0
  426. package/src/security/resample.ts +119 -0
  427. package/src/session/bars.ts +262 -0
  428. package/src/session/calendar.ts +199 -0
  429. package/src/str/dateformat.ts +104 -0
  430. package/src/str/index.ts +557 -0
  431. package/src/str/messageformat.ts +109 -0
  432. package/src/str/numberformat.ts +197 -0
  433. package/src/strategy/index.ts +281 -0
  434. package/src/ta/index.ts +3580 -0
  435. package/src/ta/running-sum.ts +117 -0
  436. package/src/ta-series.ts +1036 -0
  437. package/src/text/index.ts +14 -0
  438. package/src/time/datestring.ts +96 -0
  439. package/src/time/index.ts +161 -0
  440. package/src/time/session.ts +79 -0
  441. package/src/time/timezone.ts +180 -0
  442. package/src/timeframe/index.ts +144 -0
  443. package/src/types/index.ts +398 -0
  444. package/src/types/metadata.ts +334 -0
  445. package/src/utils/index.ts +334 -0
  446. package/dist/array/index.d.ts +0 -57
  447. package/dist/array/index.d.ts.map +0 -1
  448. package/dist/box/index.d.ts +0 -37
  449. package/dist/box/index.d.ts.map +0 -1
  450. package/dist/callsite/index.d.ts +0 -7
  451. package/dist/callsite/index.d.ts.map +0 -1
  452. package/dist/chartpoint/index.d.ts +0 -8
  453. package/dist/chartpoint/index.d.ts.map +0 -1
  454. package/dist/color/index.d.ts +0 -28
  455. package/dist/color/index.d.ts.map +0 -1
  456. package/dist/compare/index.d.ts +0 -8
  457. package/dist/compare/index.d.ts.map +0 -1
  458. package/dist/drawing/registry.d.ts +0 -19
  459. package/dist/drawing/registry.d.ts.map +0 -1
  460. package/dist/index.cjs +0 -7979
  461. package/dist/index.d.ts +0 -64
  462. package/dist/index.d.ts.map +0 -1
  463. package/dist/index.mjs +0 -7962
  464. package/dist/indicator.d.ts +0 -42
  465. package/dist/indicator.d.ts.map +0 -1
  466. package/dist/input.d.ts +0 -47
  467. package/dist/input.d.ts.map +0 -1
  468. package/dist/label/index.d.ts +0 -30
  469. package/dist/label/index.d.ts.map +0 -1
  470. package/dist/lib/index.d.ts +0 -2
  471. package/dist/lib/index.d.ts.map +0 -1
  472. package/dist/lib/zigzag/index.d.ts.map +0 -1
  473. package/dist/lib/zigzag/zigzag.d.ts +0 -47
  474. package/dist/lib/zigzag/zigzag.d.ts.map +0 -1
  475. package/dist/line/index.d.ts +0 -30
  476. package/dist/line/index.d.ts.map +0 -1
  477. package/dist/linefill/index.d.ts +0 -10
  478. package/dist/linefill/index.d.ts.map +0 -1
  479. package/dist/map/index.d.ts +0 -14
  480. package/dist/map/index.d.ts.map +0 -1
  481. package/dist/math/index.d.ts +0 -53
  482. package/dist/math/index.d.ts.map +0 -1
  483. package/dist/matrix/index.d.ts +0 -52
  484. package/dist/matrix/index.d.ts.map +0 -1
  485. package/dist/plot.d.ts +0 -20
  486. package/dist/plot.d.ts.map +0 -1
  487. package/dist/polyline/index.d.ts +0 -11
  488. package/dist/polyline/index.d.ts.map +0 -1
  489. package/dist/runtime/adapters/LightweightChartsAdapter.d.ts +0 -15
  490. package/dist/runtime/adapters/LightweightChartsAdapter.d.ts.map +0 -1
  491. package/dist/runtime/adapters/SimpleInputAdapter.d.ts +0 -16
  492. package/dist/runtime/adapters/SimpleInputAdapter.d.ts.map +0 -1
  493. package/dist/runtime/index.cjs +0 -600
  494. package/dist/runtime/index.d.ts.map +0 -1
  495. package/dist/runtime/index.mjs +0 -577
  496. package/dist/runtime/inputs.d.ts +0 -13
  497. package/dist/runtime/inputs.d.ts.map +0 -1
  498. package/dist/runtime/runtime.d.ts +0 -16
  499. package/dist/runtime/runtime.d.ts.map +0 -1
  500. package/dist/runtime/series.d.ts +0 -60
  501. package/dist/runtime/series.d.ts.map +0 -1
  502. package/dist/runtime/types.d.ts +0 -122
  503. package/dist/runtime/types.d.ts.map +0 -1
  504. package/dist/script/index.cjs +0 -6372
  505. package/dist/script/index.d.ts +0 -709
  506. package/dist/script/index.d.ts.map +0 -1
  507. package/dist/script/index.mjs +0 -6355
  508. package/dist/security/resample.d.ts +0 -13
  509. package/dist/security/resample.d.ts.map +0 -1
  510. package/dist/session/bars.d.ts +0 -34
  511. package/dist/session/bars.d.ts.map +0 -1
  512. package/dist/session/calendar.d.ts +0 -31
  513. package/dist/session/calendar.d.ts.map +0 -1
  514. package/dist/str/dateformat.d.ts +0 -2
  515. package/dist/str/dateformat.d.ts.map +0 -1
  516. package/dist/str/index.d.ts +0 -24
  517. package/dist/str/index.d.ts.map +0 -1
  518. package/dist/str/messageformat.d.ts +0 -2
  519. package/dist/str/messageformat.d.ts.map +0 -1
  520. package/dist/str/numberformat.d.ts +0 -3
  521. package/dist/str/numberformat.d.ts.map +0 -1
  522. package/dist/strategy/index.d.ts.map +0 -1
  523. package/dist/ta/index.d.ts +0 -72
  524. package/dist/ta/index.d.ts.map +0 -1
  525. package/dist/ta-series.d.ts +0 -143
  526. package/dist/ta-series.d.ts.map +0 -1
  527. package/dist/text/index.d.ts +0 -4
  528. package/dist/text/index.d.ts.map +0 -1
  529. package/dist/time/datestring.d.ts +0 -2
  530. package/dist/time/datestring.d.ts.map +0 -1
  531. package/dist/time/index.d.ts +0 -15
  532. package/dist/time/index.d.ts.map +0 -1
  533. package/dist/time/session.d.ts +0 -2
  534. package/dist/time/session.d.ts.map +0 -1
  535. package/dist/time/timezone.d.ts +0 -13
  536. package/dist/time/timezone.d.ts.map +0 -1
  537. package/dist/timeframe/index.d.ts +0 -17
  538. package/dist/timeframe/index.d.ts.map +0 -1
  539. package/dist/types/index.d.ts +0 -181
  540. package/dist/types/index.d.ts.map +0 -1
  541. package/dist/types/metadata.d.ts +0 -131
  542. package/dist/types/metadata.d.ts.map +0 -1
  543. package/dist/utils/index.d.ts +0 -26
  544. package/dist/utils/index.d.ts.map +0 -1
@@ -0,0 +1,560 @@
1
+ /**
2
+ * Math namespace
3
+ * Mirrors PineScript's math.* functions for mathematical operations and calculations.
4
+ *
5
+ * @remarks
6
+ * All math functions in this namespace follow PineScript v6 API specifications.
7
+ * Functions include basic arithmetic, algebraic operations, trigonometry, and combinatorics.
8
+ *
9
+ * @version 6
10
+ */
11
+ import type { float, int, simple_int, series_float } from '../types/index.js';
12
+ import { Series } from '../runtime/series.js';
13
+ /**
14
+ * Returns the absolute value of a number.
15
+ *
16
+ * @param value - The number or Series
17
+ * @returns The absolute value (always non-negative)
18
+ *
19
+ * @remarks
20
+ * - Returns the distance from zero on the number line
21
+ * - |x| = x if x ≥ 0, -x if x < 0
22
+ * - If value is a Series, returns a Series; if value is a number, returns a number
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * math.abs(5) // Returns: 5
27
+ * math.abs(-5) // Returns: 5
28
+ * math.abs(0) // Returns: 0
29
+ * ```
30
+ */
31
+ export declare function abs(value: Series): Series;
32
+ export declare function abs(value: float): float;
33
+ /**
34
+ * Returns the smallest integer greater than or equal to a given number (rounds up).
35
+ *
36
+ * @param value - The number to round up or Series
37
+ * @returns The ceiling value (smallest integer ≥ value)
38
+ *
39
+ * @remarks
40
+ * - Always rounds towards positive infinity
41
+ * - For positive numbers, rounds away from zero
42
+ * - For negative numbers, rounds towards zero
43
+ * - If value is a Series, returns a Series; if value is a number, returns a number
44
+ *
45
+ * @example
46
+ * ```typescript
47
+ * math.ceil(4.2) // Returns: 5
48
+ * math.ceil(4.8) // Returns: 5
49
+ * math.ceil(-4.2) // Returns: -4
50
+ * math.ceil(5) // Returns: 5
51
+ * ```
52
+ */
53
+ export declare function ceil(value: Series): Series;
54
+ export declare function ceil(value: float): int;
55
+ /**
56
+ * Returns the largest integer less than or equal to a given number (rounds down).
57
+ *
58
+ * @param value - The number to round down or Series
59
+ * @returns The floor value (largest integer ≤ value)
60
+ *
61
+ * @remarks
62
+ * - Always rounds towards negative infinity
63
+ * - For positive numbers, rounds towards zero
64
+ * - For negative numbers, rounds away from zero
65
+ * - If value is a Series, returns a Series; if value is a number, returns a number
66
+ *
67
+ * @example
68
+ * ```typescript
69
+ * math.floor(4.2) // Returns: 4
70
+ * math.floor(4.8) // Returns: 4
71
+ * math.floor(-4.2) // Returns: -5
72
+ * math.floor(5) // Returns: 5
73
+ * ```
74
+ */
75
+ export declare function floor(value: Series): Series;
76
+ export declare function floor(value: float): int;
77
+ /**
78
+ * Returns the value rounded to the nearest integer or to a specified precision.
79
+ *
80
+ * @param value - The number to round or Series
81
+ * @param precision - Optional number of decimal places (default: 0)
82
+ * @returns The rounded value
83
+ *
84
+ * @remarks
85
+ * - Rounds to nearest integer by default
86
+ * - With precision, rounds to that many decimal places
87
+ * - Uses "round half up" strategy (0.5 rounds to 1)
88
+ * - If value is a Series, returns a Series; if value is a number, returns a number
89
+ *
90
+ * @example
91
+ * ```typescript
92
+ * math.round(4.2) // Returns: 4
93
+ * math.round(4.5) // Returns: 5
94
+ * math.round(4.8) // Returns: 5
95
+ * math.round(4.567, 2) // Returns: 4.57
96
+ * math.round(4.567, 1) // Returns: 4.6
97
+ * ```
98
+ */
99
+ export declare function round(value: Series, precision?: int): Series;
100
+ export declare function round(value: float, precision?: int): float;
101
+ /**
102
+ * Returns the maximum value from the arguments.
103
+ *
104
+ * @param values - Variable number of values to compare (numbers or Series)
105
+ * @returns The largest value
106
+ *
107
+ * @remarks
108
+ * - Accepts any number of arguments
109
+ * - Returns -Infinity if no arguments provided
110
+ * - Returns NaN if any argument is NaN
111
+ * - If any argument is a Series, returns a Series; otherwise returns a number
112
+ *
113
+ * @example
114
+ * ```typescript
115
+ * math.max(1, 2, 3) // Returns: 3
116
+ * math.max(-1, -5, -2) // Returns: -1
117
+ * math.max(10) // Returns: 10
118
+ * math.max(5, 10, 3, 8) // Returns: 10
119
+ * ```
120
+ */
121
+ export declare function max(...values: (float | Series)[]): float | Series;
122
+ /**
123
+ * Returns the minimum value from the arguments.
124
+ *
125
+ * @param values - Variable number of values to compare (numbers or Series)
126
+ * @returns The smallest value
127
+ *
128
+ * @remarks
129
+ * - Accepts any number of arguments
130
+ * - Returns Infinity if no arguments provided
131
+ * - Returns NaN if any argument is NaN
132
+ * - If any argument is a Series, returns a Series; otherwise returns a number
133
+ *
134
+ * @example
135
+ * ```typescript
136
+ * math.min(1, 2, 3) // Returns: 1
137
+ * math.min(-1, -5, -2) // Returns: -5
138
+ * math.min(10) // Returns: 10
139
+ * math.min(5, 10, 3, 8) // Returns: 3
140
+ * ```
141
+ */
142
+ export declare function min(...values: (float | Series)[]): float | Series;
143
+ /**
144
+ * Returns the average (arithmetic mean) of the arguments.
145
+ *
146
+ * @param values - Variable number of values (numbers or Series)
147
+ * @returns The arithmetic mean
148
+ *
149
+ * @remarks
150
+ * - Calculates sum of all values divided by count
151
+ * - Returns NaN if no arguments provided (division by zero)
152
+ * - If any argument is a Series, returns a Series; otherwise returns a number
153
+ *
154
+ * @example
155
+ * ```typescript
156
+ * math.avg(1, 2, 3) // Returns: 2
157
+ * math.avg(10, 20) // Returns: 15
158
+ * math.avg(5) // Returns: 5
159
+ * math.avg(1, 2, 3, 4, 5) // Returns: 3
160
+ * ```
161
+ */
162
+ export declare function avg(...values: (float | Series)[]): float | Series;
163
+ /**
164
+ * Returns the sum of values over a sliding window.
165
+ *
166
+ * @param source - Series of values or array
167
+ * @param length - Window length for summation
168
+ * @returns Series or array with rolling sum values
169
+ *
170
+ * @remarks
171
+ * - Calculates the sum of the last `length` non-`na` values at each point; an `na` value (also +/-Infinity) is
172
+ * skipped and the bar keeps the previous result (as in PineScript)
173
+ * - Returns NaN until `length` non-`na` values are available
174
+ * - A compensated running sum, as in PineScript, so the result can differ from the exact window sum in the last
175
+ * bits (bit for bit with PineScript)
176
+ * - When passed a Series, returns a Series; when passed an array, returns an array
177
+ *
178
+ * @example
179
+ * ```typescript
180
+ * math.sum([1, 2, 3, 4, 5], 3) // Returns: [NaN, NaN, 6, 9, 12]
181
+ * // Explanation: [NaN, NaN, 1+2+3, 2+3+4, 3+4+5]
182
+ * ```
183
+ */
184
+ export declare function sum(source: Series, length: simple_int): Series;
185
+ export declare function sum(source: series_float, length: simple_int): series_float;
186
+ /**
187
+ * Returns the square root of a number.
188
+ *
189
+ * @param value - The number (must be non-negative) or Series
190
+ * @returns The square root (√value)
191
+ *
192
+ * @remarks
193
+ * - Returns NaN for negative numbers
194
+ * - √x × √x = x (for non-negative x)
195
+ * - If value is a Series, returns a Series; if value is a number, returns a number
196
+ *
197
+ * @example
198
+ * ```typescript
199
+ * math.sqrt(9) // Returns: 3
200
+ * math.sqrt(16) // Returns: 4
201
+ * math.sqrt(2) // Returns: 1.414...
202
+ * math.sqrt(0) // Returns: 0
203
+ * ```
204
+ */
205
+ export declare function sqrt(value: Series): Series;
206
+ export declare function sqrt(value: float): float;
207
+ /**
208
+ * Returns base raised to the power of exponent.
209
+ *
210
+ * @param base - The base number or Series
211
+ * @param exponent - The exponent (power) or Series
212
+ * @returns base^exponent
213
+ *
214
+ * @remarks
215
+ * - 0^0 returns 1
216
+ * - Negative base with fractional exponent returns NaN
217
+ * - Any number to the power of 0 equals 1
218
+ * - If any argument is a Series, returns a Series; if all are numbers, returns a number
219
+ *
220
+ * @example
221
+ * ```typescript
222
+ * math.pow(2, 3) // Returns: 8 (2³)
223
+ * math.pow(10, 2) // Returns: 100
224
+ * math.pow(5, 0) // Returns: 1
225
+ * math.pow(2, -1) // Returns: 0.5
226
+ * ```
227
+ */
228
+ export declare function pow(base: Series, exponent: float): Series;
229
+ export declare function pow(base: float, exponent: Series): Series;
230
+ export declare function pow(base: Series, exponent: Series): Series;
231
+ export declare function pow(base: float, exponent: float): float;
232
+ /**
233
+ * Returns e (Euler's number) raised to the power of value.
234
+ *
235
+ * @param value - The exponent or Series
236
+ * @returns e^value (where e ≈ 2.71828)
237
+ *
238
+ * @remarks
239
+ * - e^0 = 1
240
+ * - e^1 = e ≈ 2.71828
241
+ * - Inverse of ln(x)
242
+ * - If value is a Series, returns a Series; if value is a number, returns a number
243
+ *
244
+ * @example
245
+ * ```typescript
246
+ * math.exp(0) // Returns: 1
247
+ * math.exp(1) // Returns: 2.71828... (e)
248
+ * math.exp(2) // Returns: 7.389...
249
+ * math.exp(-1) // Returns: 0.3678...
250
+ * ```
251
+ */
252
+ export declare function exp(value: Series): Series;
253
+ export declare function exp(value: float): float;
254
+ /**
255
+ * Returns the natural logarithm (base e) of a number.
256
+ *
257
+ * @param value - The number (must be positive) or Series
258
+ * @returns ln(value)
259
+ *
260
+ * @remarks
261
+ * - Returns NaN for negative numbers
262
+ * - Returns -Infinity for 0
263
+ * - ln(e) = 1
264
+ * - ln(1) = 0
265
+ * - Inverse of exp(x)
266
+ * - If value is a Series, returns a Series; if value is a number, returns a number
267
+ *
268
+ * @example
269
+ * ```typescript
270
+ * math.log(1) // Returns: 0
271
+ * math.log(Math.E) // Returns: 1
272
+ * math.log(10) // Returns: 2.302...
273
+ * math.log(100) // Returns: 4.605...
274
+ * ```
275
+ */
276
+ export declare function log(value: Series): Series;
277
+ export declare function log(value: float): float;
278
+ /**
279
+ * Returns the base-10 logarithm of a number.
280
+ *
281
+ * @param value - The number (must be positive) or Series
282
+ * @returns log₁₀(value)
283
+ *
284
+ * @remarks
285
+ * - Returns NaN for negative numbers
286
+ * - Returns -Infinity for 0
287
+ * - log₁₀(10) = 1
288
+ * - log₁₀(100) = 2
289
+ * - If value is a Series, returns a Series; if value is a number, returns a number
290
+ *
291
+ * @example
292
+ * ```typescript
293
+ * math.log10(10) // Returns: 1
294
+ * math.log10(100) // Returns: 2
295
+ * math.log10(1000) // Returns: 3
296
+ * math.log10(1) // Returns: 0
297
+ * ```
298
+ */
299
+ export declare function log10(value: Series): Series;
300
+ export declare function log10(value: float): float;
301
+ /**
302
+ * Returns the sine of an angle in radians.
303
+ *
304
+ * @param value - The angle in radians or Series
305
+ * @returns The sine value (range: [-1, 1])
306
+ *
307
+ * @remarks
308
+ * - Input is in radians, not degrees
309
+ * - sin(0) = 0
310
+ * - sin(π/2) = 1
311
+ * - Periodic with period 2π
312
+ * - If value is a Series, returns a Series; if value is a number, returns a number
313
+ *
314
+ * @example
315
+ * ```typescript
316
+ * math.sin(0) // Returns: 0
317
+ * math.sin(Math.PI / 2) // Returns: 1
318
+ * math.sin(Math.PI) // Returns: 0 (approximately)
319
+ * math.sin(Math.PI / 6) // Returns: 0.5
320
+ * ```
321
+ */
322
+ export declare function sin(value: Series): Series;
323
+ export declare function sin(value: float): float;
324
+ /**
325
+ * Returns the cosine of an angle in radians.
326
+ *
327
+ * @param value - The angle in radians or Series
328
+ * @returns The cosine value (range: [-1, 1])
329
+ *
330
+ * @remarks
331
+ * - Input is in radians, not degrees
332
+ * - cos(0) = 1
333
+ * - cos(π/2) = 0
334
+ * - Periodic with period 2π
335
+ * - If value is a Series, returns a Series; if value is a number, returns a number
336
+ *
337
+ * @example
338
+ * ```typescript
339
+ * math.cos(0) // Returns: 1
340
+ * math.cos(Math.PI / 2) // Returns: 0 (approximately)
341
+ * math.cos(Math.PI) // Returns: -1
342
+ * math.cos(Math.PI / 3) // Returns: 0.5
343
+ * ```
344
+ */
345
+ export declare function cos(value: Series): Series;
346
+ export declare function cos(value: float): float;
347
+ /**
348
+ * Returns the tangent of an angle in radians.
349
+ *
350
+ * @param value - The angle in radians or Series
351
+ * @returns The tangent value
352
+ *
353
+ * @remarks
354
+ * - Input is in radians, not degrees
355
+ * - tan(x) = sin(x) / cos(x)
356
+ * - Undefined at π/2, 3π/2, etc. (returns very large numbers)
357
+ * - Periodic with period π
358
+ * - If value is a Series, returns a Series; if value is a number, returns a number
359
+ *
360
+ * @example
361
+ * ```typescript
362
+ * math.tan(0) // Returns: 0
363
+ * math.tan(Math.PI / 4) // Returns: 1
364
+ * math.tan(Math.PI / 6) // Returns: 0.577... (1/√3)
365
+ * ```
366
+ */
367
+ export declare function tan(value: Series): Series;
368
+ export declare function tan(value: float): float;
369
+ /**
370
+ * Returns the arcsine (inverse sine) of a number.
371
+ *
372
+ * @param value - The value (must be in range [-1, 1]) or Series
373
+ * @returns The angle in radians (range: [-π/2, π/2])
374
+ *
375
+ * @remarks
376
+ * - Returns NaN for values outside [-1, 1]
377
+ * - asin(sin(x)) = x for x in [-π/2, π/2]
378
+ * - asin(0) = 0
379
+ * - asin(1) = π/2
380
+ * - If value is a Series, returns a Series; if value is a number, returns a number
381
+ *
382
+ * @example
383
+ * ```typescript
384
+ * math.asin(0) // Returns: 0
385
+ * math.asin(1) // Returns: 1.5707... (π/2)
386
+ * math.asin(0.5) // Returns: 0.5235... (π/6)
387
+ * math.asin(-1) // Returns: -1.5707... (-π/2)
388
+ * ```
389
+ */
390
+ export declare function asin(value: Series): Series;
391
+ export declare function asin(value: float): float;
392
+ /**
393
+ * Returns the arccosine (inverse cosine) of a number.
394
+ *
395
+ * @param value - The value (must be in range [-1, 1]) or Series
396
+ * @returns The angle in radians (range: [0, π])
397
+ *
398
+ * @remarks
399
+ * - Returns NaN for values outside [-1, 1]
400
+ * - acos(cos(x)) = x for x in [0, π]
401
+ * - acos(1) = 0
402
+ * - acos(0) = π/2
403
+ * - If value is a Series, returns a Series; if value is a number, returns a number
404
+ *
405
+ * @example
406
+ * ```typescript
407
+ * math.acos(1) // Returns: 0
408
+ * math.acos(0) // Returns: 1.5707... (π/2)
409
+ * math.acos(0.5) // Returns: 1.0471... (π/3)
410
+ * math.acos(-1) // Returns: 3.1415... (π)
411
+ * ```
412
+ */
413
+ export declare function acos(value: Series): Series;
414
+ export declare function acos(value: float): float;
415
+ /**
416
+ * Returns the arctangent (inverse tangent) of a number.
417
+ *
418
+ * @param value - The value or Series
419
+ * @returns The angle in radians (range: [-π/2, π/2])
420
+ *
421
+ * @remarks
422
+ * - Accepts any number as input
423
+ * - atan(tan(x)) = x for x in [-π/2, π/2]
424
+ * - atan(0) = 0
425
+ * - atan(1) = π/4
426
+ * - If value is a Series, returns a Series; if value is a number, returns a number
427
+ *
428
+ * @example
429
+ * ```typescript
430
+ * math.atan(0) // Returns: 0
431
+ * math.atan(1) // Returns: 0.7853... (π/4)
432
+ * math.atan(-1) // Returns: -0.7853... (-π/4)
433
+ * math.atan(Infinity) // Returns: 1.5707... (π/2)
434
+ * ```
435
+ */
436
+ export declare function atan(value: Series): Series;
437
+ export declare function atan(value: float): float;
438
+ /**
439
+ * Converts an angle from degrees to radians.
440
+ *
441
+ * @param degrees - The angle in degrees or Series
442
+ * @returns The angle in radians
443
+ *
444
+ * @remarks
445
+ * - Radians = Degrees × (π / 180)
446
+ * - One full rotation: 360° = 2π radians
447
+ * - Common conversions: 90° = π/2, 180° = π, 270° = 3π/2
448
+ * - If degrees is a Series, returns a Series; if degrees is a number, returns a number
449
+ *
450
+ * @example
451
+ * ```typescript
452
+ * math.toradians(0) // Returns: 0
453
+ * math.toradians(90) // Returns: 1.5707... (π/2)
454
+ * math.toradians(180) // Returns: 3.1415... (π)
455
+ * math.toradians(360) // Returns: 6.2831... (2π)
456
+ * ```
457
+ */
458
+ export declare function toradians(degrees: Series): Series;
459
+ export declare function toradians(degrees: float): float;
460
+ /**
461
+ * Converts an angle from radians to degrees.
462
+ *
463
+ * @param radians - The angle in radians or Series
464
+ * @returns The angle in degrees
465
+ *
466
+ * @remarks
467
+ * - Degrees = Radians × (180 / π)
468
+ * - One full rotation: 2π radians = 360°
469
+ * - Common conversions: π/2 = 90°, π = 180°, 3π/2 = 270°
470
+ * - If radians is a Series, returns a Series; if radians is a number, returns a number
471
+ *
472
+ * @example
473
+ * ```typescript
474
+ * math.todegrees(0) // Returns: 0
475
+ * math.todegrees(Math.PI / 2) // Returns: 90
476
+ * math.todegrees(Math.PI) // Returns: 180
477
+ * math.todegrees(2 * Math.PI) // Returns: 360
478
+ * ```
479
+ */
480
+ export declare function todegrees(radians: Series): Series;
481
+ export declare function todegrees(radians: float): float;
482
+ /**
483
+ * Returns a pseudo-random number.
484
+ *
485
+ * @param min - Optional minimum value (inclusive)
486
+ * @param max - Optional maximum value (exclusive)
487
+ * @param seed - Optional seed for deterministic random
488
+ * @returns A random number in the specified range, or [0, 1) if no range specified
489
+ *
490
+ * @remarks
491
+ * - Without arguments: returns value in [0, 1)
492
+ * - With min and max: returns value in [min, max)
493
+ * - **WARNING**: The seed parameter is accepted for API compatibility but NOT currently implemented
494
+ * - This implementation always generates non-deterministic random values
495
+ * - PineScript's version supports deterministic seeding for repeatable sequences
496
+ *
497
+ * @example
498
+ * ```typescript
499
+ * math.random() // Returns: value between 0 and 1 (e.g., 0.234...)
500
+ * math.random(0, 10) // Returns: value between 0 and 10 (e.g., 7.45...)
501
+ * math.random(5, 15) // Returns: value between 5 and 15 (e.g., 11.82...)
502
+ * ```
503
+ */
504
+ export declare function random(min?: float, max?: float, _seed?: int): float;
505
+ /**
506
+ * Returns the sign of a number.
507
+ *
508
+ * @param value - The number to check or Series
509
+ * @returns 1 for positive, -1 for negative, 0 for zero
510
+ *
511
+ * @remarks
512
+ * - Returns 1 if value > 0
513
+ * - Returns -1 if value < 0
514
+ * - Returns 0 if value = 0
515
+ * - Useful for determining direction or polarity
516
+ * - If value is a Series, returns a Series; if value is a number, returns a number
517
+ *
518
+ * @example
519
+ * ```typescript
520
+ * math.sign(5) // Returns: 1
521
+ * math.sign(-3) // Returns: -1
522
+ * math.sign(0) // Returns: 0
523
+ * math.sign(0.001) // Returns: 1
524
+ * ```
525
+ */
526
+ export declare function sign(value: Series): Series;
527
+ export declare function sign(value: float): int;
528
+ /**
529
+ * Rounds a value to the nearest mintick.
530
+ *
531
+ * @param number - The number to round or Series
532
+ * @param mintick - Optional mintick value (defaults to requiring syminfo context)
533
+ * @returns The number rounded to tick precision
534
+ *
535
+ * @remarks
536
+ * - **PineScript v6 signature**: `math.round_to_mintick(number)` - uses implicit syminfo.mintick
537
+ * - **JavaScript signature**: Requires explicit `mintick` OR use `createContext()` with syminfo
538
+ * - Rounds to the nearest value divisible by mintick
539
+ * - Returns NaN for NaN input
540
+ * - Ties round up (0.5 -> 1)
541
+ * - If number is a Series, returns a Series; if number is a float, returns a float
542
+ *
543
+ * @example
544
+ * ```typescript
545
+ * // Direct call with explicit mintick
546
+ * const rounded = math.round_to_mintick(1.2345, 0.01); // Returns: 1.23
547
+ * const rounded2 = math.round_to_mintick(1.2367, 0.01); // Returns: 1.24
548
+ *
549
+ * // Or use context API for cleaner syntax
550
+ * const { math } = createContext({ syminfo: { mintick: 0.01 } });
551
+ * const rounded = math.round_to_mintick(1.2345); // Returns: 1.23
552
+ * ```
553
+ */
554
+ export declare function round_to_mintick(number: Series, mintick?: float): Series;
555
+ export declare function round_to_mintick(number: float, mintick?: float): float;
556
+ export declare const pi: number;
557
+ export declare const e: number;
558
+ export declare const phi = 1.618033988749895;
559
+ export declare const rphi = 0.618033988749895;
560
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/math/index.ts"],"names":[],"mappings":"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"}