@cimplify/sdk 0.108.0 → 0.110.2

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 (608) hide show
  1. package/LICENSE +21 -0
  2. package/dist/advanced.d.mts +4 -3
  3. package/dist/advanced.d.ts +4 -3
  4. package/dist/advanced.js +24 -24
  5. package/dist/advanced.mjs +5 -5
  6. package/dist/animation-4EXBXRVX.js +27 -0
  7. package/dist/animation-6DICNWUP.mjs +6 -0
  8. package/dist/audio-DhvyjqdA.d.mts +249 -0
  9. package/dist/audio-m0w8cnxq.d.ts +249 -0
  10. package/dist/avatars.d.mts +110 -0
  11. package/dist/avatars.d.ts +110 -0
  12. package/dist/avatars.js +82 -0
  13. package/dist/avatars.mjs +5 -0
  14. package/dist/backend-gUCzs5Kg.d.mts +3866 -0
  15. package/dist/backend-gUCzs5Kg.d.ts +3866 -0
  16. package/dist/{catalogue-B4eLL8Mi.d.ts → catalogue-CPTMyBUz.d.mts} +109 -221
  17. package/dist/catalogue-DzrTXP3v.d.mts +541 -0
  18. package/dist/catalogue-DzrTXP3v.d.ts +541 -0
  19. package/dist/{catalogue-OT89_Ifs.d.mts → catalogue-OTuS5zp-.d.ts} +109 -221
  20. package/dist/chunk-22BD3RHN.mjs +1809 -0
  21. package/dist/chunk-25T4JHEA.mjs +21 -0
  22. package/dist/chunk-2AQ237Y4.js +508 -0
  23. package/dist/chunk-2IC4H6OV.mjs +48 -0
  24. package/dist/chunk-2LHLG4OB.mjs +71 -0
  25. package/dist/chunk-2O2CG465.js +1709 -0
  26. package/dist/chunk-2Q4DTHXK.js +316 -0
  27. package/dist/chunk-2QTQ6BUH.mjs +46 -0
  28. package/dist/chunk-2UN4SFLR.mjs +100 -0
  29. package/dist/chunk-2V75I7K3.js +454 -0
  30. package/dist/chunk-2V7IL4HC.js +10 -0
  31. package/dist/chunk-34XBXUMW.js +296 -0
  32. package/dist/chunk-3C4C654I.js +71 -0
  33. package/dist/chunk-3DAD2LDF.mjs +72 -0
  34. package/dist/chunk-3GXH2NFD.mjs +4 -0
  35. package/dist/chunk-3O47ZFW3.js +961 -0
  36. package/dist/chunk-3OY3VYNF.mjs +11 -0
  37. package/dist/chunk-3S6WPBZL.js +2936 -0
  38. package/dist/chunk-3TUOUP5T.js +399 -0
  39. package/dist/chunk-3VEH23I5.mjs +1380 -0
  40. package/dist/chunk-3ZYSAW2T.mjs +263 -0
  41. package/dist/chunk-4ANVF274.js +103 -0
  42. package/dist/chunk-4C7I3ELN.js +388 -0
  43. package/dist/chunk-4DYKAYFO.mjs +8 -0
  44. package/dist/chunk-4ZDR72SG.js +329 -0
  45. package/dist/chunk-52YS45RR.js +1066 -0
  46. package/dist/chunk-5325XSCH.js +107 -0
  47. package/dist/chunk-5AD5X6AV.js +13 -0
  48. package/dist/chunk-5BYDGGWO.mjs +197 -0
  49. package/dist/chunk-5C3C7VDM.mjs +55 -0
  50. package/dist/chunk-5HFMY3D7.js +660 -0
  51. package/dist/chunk-5LH2QN3T.js +1862 -0
  52. package/dist/chunk-5PJEXSOW.js +44 -0
  53. package/dist/chunk-5SXDH3Y7.js +90 -0
  54. package/dist/chunk-5YFBGGCK.mjs +502 -0
  55. package/dist/chunk-5YWN6H5Q.mjs +133 -0
  56. package/dist/chunk-66QP3SMN.js +402 -0
  57. package/dist/chunk-6DAEZKIG.mjs +385 -0
  58. package/dist/chunk-6DATW7TB.mjs +420 -0
  59. package/dist/{chunk-JRGK3NXR.mjs → chunk-6ETDAU62.mjs} +72 -212
  60. package/dist/chunk-6H254EVP.mjs +178 -0
  61. package/dist/chunk-6PFNJPBJ.mjs +820 -0
  62. package/dist/chunk-6PJWXIFX.mjs +357 -0
  63. package/dist/chunk-6SWKWCMS.js +80 -0
  64. package/dist/chunk-6VVXXX7S.js +808 -0
  65. package/dist/chunk-6WUBSMTX.js +1403 -0
  66. package/dist/chunk-73SGZLAQ.mjs +35 -0
  67. package/dist/chunk-76L2V6KD.mjs +4 -0
  68. package/dist/chunk-7AAIAVAA.js +1531 -0
  69. package/dist/chunk-7ARSJPV3.mjs +93 -0
  70. package/dist/chunk-7BHW5GTC.mjs +1234 -0
  71. package/dist/chunk-7DQSDKDU.js +6 -0
  72. package/dist/chunk-7IQQQENP.mjs +401 -0
  73. package/dist/chunk-7KFTYENS.js +11357 -0
  74. package/dist/chunk-7SM6XSPZ.js +3171 -0
  75. package/dist/chunk-7SXOHAIR.mjs +28 -0
  76. package/dist/chunk-A2MAX6S4.js +90 -0
  77. package/dist/chunk-A33OORT7.mjs +1530 -0
  78. package/dist/{chunk-U6ACF76H.mjs → chunk-A36JRXXH.mjs} +1075 -1845
  79. package/dist/chunk-A7BU3BK4.js +52 -0
  80. package/dist/chunk-A7MQSN2V.mjs +77 -0
  81. package/dist/chunk-A7V4L2IT.mjs +416 -0
  82. package/dist/chunk-AABEK6XU.js +226 -0
  83. package/dist/chunk-AGV33FWC.mjs +5005 -0
  84. package/dist/chunk-AHNR3BXI.js +108 -0
  85. package/dist/chunk-AQ5RLBU2.mjs +286 -0
  86. package/dist/chunk-AQOE6WCG.js +1270 -0
  87. package/dist/chunk-ATAWRACV.mjs +62 -0
  88. package/dist/chunk-ATCURNUV.js +14 -0
  89. package/dist/chunk-AWPV33OO.js +6 -0
  90. package/dist/chunk-AYJPHKYV.js +337 -0
  91. package/dist/chunk-AZ5BGWHB.js +162 -0
  92. package/dist/chunk-AZAXD44P.js +1373 -0
  93. package/dist/chunk-BBGKQIJJ.mjs +406 -0
  94. package/dist/chunk-BP4JLSUA.js +1453 -0
  95. package/dist/{chunk-SUCE7FWA.mjs → chunk-BTUSVHIE.mjs} +539 -978
  96. package/dist/chunk-BU6OK542.mjs +818 -0
  97. package/dist/chunk-CVSRWM6W.js +418 -0
  98. package/dist/chunk-CYBMFMJD.mjs +247 -0
  99. package/dist/chunk-DDJLDOUX.mjs +217 -0
  100. package/dist/{chunk-V32BCG7M.js → chunk-DFZWHNRG.js} +75 -215
  101. package/dist/chunk-DJ2C7AVG.js +644 -0
  102. package/dist/chunk-DS2VU4WW.mjs +102 -0
  103. package/dist/chunk-DSAG7T5P.js +7290 -0
  104. package/dist/chunk-E2QPPH7I.js +327 -0
  105. package/dist/chunk-E65WCTIG.mjs +1187 -0
  106. package/dist/{chunk-33VCYWVL.mjs → chunk-E6QQKDNE.mjs} +30 -42
  107. package/dist/chunk-ECDK6QBF.mjs +981 -0
  108. package/dist/chunk-EIB4OWVQ.mjs +620 -0
  109. package/dist/chunk-EQUZYCGO.js +250 -0
  110. package/dist/chunk-F3UJ6ZRM.mjs +313 -0
  111. package/dist/chunk-F63N2ZTQ.js +7023 -0
  112. package/dist/chunk-F6XRYEM3.mjs +26 -0
  113. package/dist/chunk-FE6VCE4K.js +5030 -0
  114. package/dist/chunk-FLWD6GRR.js +1372 -0
  115. package/dist/chunk-FQBFWJBS.mjs +110 -0
  116. package/dist/chunk-FXVJ2HFU.js +26 -0
  117. package/dist/chunk-FZMQMQBW.js +312 -0
  118. package/dist/chunk-G3EEC44R.js +53 -0
  119. package/dist/{chunk-KG3WT4PR.mjs → chunk-GCKWKLZF.mjs} +73 -104
  120. package/dist/chunk-GCX7TY4D.mjs +6826 -0
  121. package/dist/chunk-GDB6TCSD.js +450 -0
  122. package/dist/chunk-GDCV4IWO.mjs +21 -0
  123. package/dist/chunk-GDZT5LZ5.js +170 -0
  124. package/dist/chunk-GHPUYD4I.mjs +213 -0
  125. package/dist/chunk-GHS6MIL6.mjs +1432 -0
  126. package/dist/chunk-GPS2THCL.mjs +11 -0
  127. package/dist/{chunk-EV2EVOYS.js → chunk-GTJWQAGU.js} +31 -42
  128. package/dist/chunk-GVTI6UJQ.mjs +130 -0
  129. package/dist/chunk-GXKI64OT.mjs +1138 -0
  130. package/dist/chunk-GYDYF2WX.js +275 -0
  131. package/dist/chunk-GYLP6UG4.mjs +705 -0
  132. package/dist/chunk-H3OQKK6X.js +1158 -0
  133. package/dist/chunk-H5DFSCJ6.js +40 -0
  134. package/dist/chunk-HAGEIC2L.mjs +186 -0
  135. package/dist/chunk-HAJ4JRFO.js +293 -0
  136. package/dist/chunk-HDR72GB6.js +188 -0
  137. package/dist/chunk-HF5HPS4T.mjs +40 -0
  138. package/dist/chunk-HK6LOFDS.js +218 -0
  139. package/dist/chunk-HMWYTXCY.mjs +143 -0
  140. package/dist/chunk-HPCSRCMA.js +89 -0
  141. package/dist/chunk-HSEO6TPU.js +247 -0
  142. package/dist/chunk-I5FOHCLH.js +132 -0
  143. package/dist/chunk-IDLW4NWA.mjs +85 -0
  144. package/dist/chunk-IIDZ5WUX.js +61 -0
  145. package/dist/chunk-IR74FJHU.js +2332 -0
  146. package/dist/chunk-IRVFYAKP.mjs +100 -0
  147. package/dist/{chunk-XBL3TMPC.mjs → chunk-IZDWAL53.mjs} +1795 -3287
  148. package/dist/chunk-J2KZXIU3.js +51 -0
  149. package/dist/chunk-J2U6PJSO.js +91 -0
  150. package/dist/chunk-J5AJNY2N.js +283 -0
  151. package/dist/chunk-J6KQZ4FO.mjs +821 -0
  152. package/dist/{chunk-OWW5GUSB.js → chunk-JGBCIKJV.js} +7 -6
  153. package/dist/chunk-JKGTBMU7.mjs +25 -0
  154. package/dist/chunk-JR3TNEQC.js +422 -0
  155. package/dist/chunk-JURRXY2J.mjs +29 -0
  156. package/dist/chunk-K3HW5I2A.mjs +317 -0
  157. package/dist/chunk-K46SMZ66.mjs +103 -0
  158. package/dist/chunk-K4UDGE3Z.mjs +6 -0
  159. package/dist/chunk-KDQOR4QQ.mjs +350 -0
  160. package/dist/chunk-KDTVOLHI.mjs +288 -0
  161. package/dist/chunk-KGHJH5KJ.mjs +35 -0
  162. package/dist/chunk-KIZOA5LX.mjs +140 -0
  163. package/dist/chunk-KK6HYVBI.mjs +242 -0
  164. package/dist/chunk-KMKWGXMK.js +856 -0
  165. package/dist/chunk-KPA6K5IB.js +80 -0
  166. package/dist/chunk-KU7O4IXU.mjs +260 -0
  167. package/dist/chunk-KVFNRJOR.mjs +11142 -0
  168. package/dist/chunk-KZJRSXHK.js +2432 -0
  169. package/dist/chunk-LHWPRUJL.js +79 -0
  170. package/dist/chunk-LIV3KXJG.mjs +369 -0
  171. package/dist/chunk-LKV4LACG.js +21 -0
  172. package/dist/chunk-LUY45X3U.mjs +263 -0
  173. package/dist/chunk-LYEZZEEF.mjs +17 -0
  174. package/dist/chunk-M5EXQZYY.mjs +1519 -0
  175. package/dist/chunk-ME6HGG4I.mjs +1338 -0
  176. package/dist/chunk-MEXP6DA6.js +31 -0
  177. package/dist/chunk-MG52AW3H.js +902 -0
  178. package/dist/chunk-MIPO6F72.js +334 -0
  179. package/dist/{chunk-5QW7CQBA.js → chunk-MKIJQL5Q.js} +211 -321
  180. package/dist/chunk-MN3YETVN.mjs +17 -0
  181. package/dist/chunk-MOBSBXVE.mjs +2391 -0
  182. package/dist/chunk-MOMOZEUM.mjs +88 -0
  183. package/dist/chunk-MRFUNRAP.js +62 -0
  184. package/dist/chunk-MTIHEW2M.js +433 -0
  185. package/dist/chunk-N4RGGDEL.mjs +73 -0
  186. package/dist/chunk-NH654HAT.js +10 -0
  187. package/dist/chunk-NHJUGZUR.mjs +253 -0
  188. package/dist/chunk-NMQT4HG3.mjs +757 -0
  189. package/dist/chunk-NPSYB6DC.mjs +906 -0
  190. package/dist/chunk-NW2GPMSO.js +857 -0
  191. package/dist/chunk-NXKQOQ6L.js +76 -0
  192. package/dist/chunk-NXLAZIJZ.js +309 -0
  193. package/dist/chunk-NYWNA5CF.js +148 -0
  194. package/dist/chunk-NZTKLY2W.js +1442 -0
  195. package/dist/chunk-O2ICABUD.js +36 -0
  196. package/dist/chunk-OIVVQQ22.js +862 -0
  197. package/dist/chunk-OKC2B4O3.mjs +312 -0
  198. package/dist/chunk-OLWFPDBK.js +2220 -0
  199. package/dist/chunk-OMTVH334.js +3779 -0
  200. package/dist/chunk-OQRVEM56.mjs +362 -0
  201. package/dist/chunk-OXMIBOD4.js +337 -0
  202. package/dist/chunk-PBL6YL5L.mjs +288 -0
  203. package/dist/chunk-PDOELNNQ.js +97 -0
  204. package/dist/chunk-PDQJY2GZ.js +136 -0
  205. package/dist/chunk-PKOZXD2Q.js +1274 -0
  206. package/dist/chunk-PPF2BYFL.mjs +2191 -0
  207. package/dist/chunk-PQTQKNKD.js +539 -0
  208. package/dist/chunk-PRSR4FAV.mjs +81 -0
  209. package/dist/chunk-PTRNO5UD.js +95 -0
  210. package/dist/chunk-Q2Y3VMKH.js +2000 -0
  211. package/dist/chunk-QCZOE65N.js +96 -0
  212. package/dist/chunk-QDYFLATW.mjs +52 -0
  213. package/dist/chunk-QQABGCMM.js +22 -0
  214. package/dist/chunk-QS6TRHMR.js +345 -0
  215. package/dist/chunk-R56P64LB.mjs +208 -0
  216. package/dist/chunk-RCQ2MPBV.js +428 -0
  217. package/dist/chunk-RFVRPYR2.mjs +856 -0
  218. package/dist/chunk-RKBLPGPV.js +11521 -0
  219. package/dist/chunk-RM2V4IND.mjs +327 -0
  220. package/dist/chunk-RQXN5A34.mjs +613 -0
  221. package/dist/chunk-RUVGVNOF.mjs +2687 -0
  222. package/dist/chunk-SAFJIGYB.mjs +165 -0
  223. package/dist/chunk-SKQFLBDD.js +263 -0
  224. package/dist/chunk-SMK6JU2F.mjs +2092 -0
  225. package/dist/{chunk-UVRPC2P7.js → chunk-SNNEOS5Z.js} +1984 -3476
  226. package/dist/chunk-SPCRQ6NO.mjs +1246 -0
  227. package/dist/chunk-SWX4SALA.mjs +19 -0
  228. package/dist/{chunk-JVODCGFP.mjs → chunk-SYEO2WV4.mjs} +128 -238
  229. package/dist/chunk-T2QQMX2N.js +10 -0
  230. package/dist/chunk-T3AFF3L7.mjs +57 -0
  231. package/dist/chunk-T6Z2EXYL.js +712 -0
  232. package/dist/chunk-T7LOXGYX.js +118 -0
  233. package/dist/chunk-TJCAE7RC.mjs +1315 -0
  234. package/dist/chunk-TJI3K6RP.js +137 -0
  235. package/dist/chunk-TL2SVO4P.mjs +55 -0
  236. package/dist/chunk-TM63CYGN.mjs +399 -0
  237. package/dist/chunk-TU5RYTYU.mjs +13 -0
  238. package/dist/chunk-TVJZ4GPS.js +1553 -0
  239. package/dist/chunk-TWM6DLYF.js +371 -0
  240. package/dist/chunk-U63OC4TQ.js +30 -0
  241. package/dist/{chunk-L5GKVQVJ.js → chunk-U6BVSJZ6.js} +25 -57
  242. package/dist/chunk-U6UVWEAK.mjs +792 -0
  243. package/dist/chunk-UCEPNO6N.mjs +11048 -0
  244. package/dist/{chunk-ANT574FD.js → chunk-UCR5HRYM.js} +74 -105
  245. package/dist/chunk-UG5BTOTF.mjs +334 -0
  246. package/dist/chunk-UGH37BQW.mjs +157 -0
  247. package/dist/chunk-V7ZRH3PY.mjs +271 -0
  248. package/dist/chunk-VBGHBL3E.mjs +1394 -0
  249. package/dist/chunk-VRBDAS5I.js +920 -0
  250. package/dist/chunk-VVE3Y76O.js +230 -0
  251. package/dist/chunk-W65JIRI4.mjs +1182 -0
  252. package/dist/chunk-WHYKAT7G.js +62 -0
  253. package/dist/{chunk-YOIVZ6OA.mjs → chunk-WIZRUIZB.mjs} +25 -57
  254. package/dist/chunk-WKWTDZS7.js +385 -0
  255. package/dist/chunk-WLMINRC4.mjs +78 -0
  256. package/dist/chunk-WOF3AD3J.js +22 -0
  257. package/dist/chunk-WWKMOA76.js +1262 -0
  258. package/dist/chunk-X5A5FOWW.js +615 -0
  259. package/dist/chunk-X6CN6KQF.mjs +192 -0
  260. package/dist/chunk-XD2PMH46.mjs +517 -0
  261. package/dist/chunk-XJA2NGTI.mjs +88 -0
  262. package/dist/chunk-XJIHN3BY.mjs +8 -0
  263. package/dist/chunk-XK6UDWJS.js +203 -0
  264. package/dist/chunk-XPG3N5CF.mjs +415 -0
  265. package/dist/chunk-XVZ2NKSU.mjs +74 -0
  266. package/dist/chunk-XYP45OLE.js +117 -0
  267. package/dist/chunk-XZSDGZX6.mjs +301 -0
  268. package/dist/chunk-Y2EMGN4T.mjs +120 -0
  269. package/dist/chunk-Y3XWP5XW.mjs +298 -0
  270. package/dist/chunk-Y4K22JL6.js +228 -0
  271. package/dist/chunk-Y65LXQGA.mjs +3164 -0
  272. package/dist/chunk-Y66WVMO5.mjs +87 -0
  273. package/dist/chunk-Y7JWLB25.mjs +7280 -0
  274. package/dist/chunk-YCDXAJKU.js +175 -0
  275. package/dist/chunk-YRDQCCIS.js +152 -0
  276. package/dist/chunk-YV52DGSA.js +111 -0
  277. package/dist/chunk-YXGZQPUD.js +94 -0
  278. package/dist/chunk-Z3A3AFVU.mjs +102 -0
  279. package/dist/chunk-ZCY6YKKP.mjs +475 -0
  280. package/dist/chunk-ZEQHXVU5.js +215 -0
  281. package/dist/chunk-ZF7JCXCI.js +284 -0
  282. package/dist/chunk-ZJBRUH6V.js +29 -0
  283. package/dist/chunk-ZMIL4ZOA.js +365 -0
  284. package/dist/chunk-ZR5ULMN2.mjs +337 -0
  285. package/dist/chunk-ZXREOYOW.js +87 -0
  286. package/dist/{client-BSP9U1O1.d.mts → client-CX_WR0-J.d.mts} +2 -2
  287. package/dist/client-Dytx_ZTC.d.ts +230 -0
  288. package/dist/{client-B878xeAP.d.ts → client-dqOhP9Nc.d.ts} +2 -2
  289. package/dist/client-hTKbCuhG.d.mts +230 -0
  290. package/dist/clock-B-UAjkKa.d.mts +5 -0
  291. package/dist/clock-B-UAjkKa.d.ts +5 -0
  292. package/dist/config-BlXQluJR.d.mts +36 -0
  293. package/dist/config-BlXQluJR.d.ts +36 -0
  294. package/dist/courier-Cnn-edJ4.d.ts +95 -0
  295. package/dist/courier-FmGfkvIN.d.mts +95 -0
  296. package/dist/crowd-DdHFbqKK.d.ts +186 -0
  297. package/dist/crowd-hOVSAmA3.d.mts +186 -0
  298. package/dist/danfo-BEBapFlX.d.mts +146 -0
  299. package/dist/danfo-UQ_PTIIx.d.ts +146 -0
  300. package/dist/{elements-Bty6Qs_N.d.mts → elements-DdsRig-2.d.mts} +1548 -257
  301. package/dist/{elements-Bty6Qs_N.d.ts → elements-DdsRig-2.d.ts} +1548 -257
  302. package/dist/engines/godot.d.mts +56 -0
  303. package/dist/engines/godot.d.ts +56 -0
  304. package/dist/engines/godot.js +28 -0
  305. package/dist/engines/godot.mjs +3 -0
  306. package/dist/engines/wasm.d.mts +11 -0
  307. package/dist/engines/wasm.d.ts +11 -0
  308. package/dist/engines/wasm.js +178 -0
  309. package/dist/engines/wasm.mjs +176 -0
  310. package/dist/fallback-CrG_lTFk.d.mts +270 -0
  311. package/dist/fallback-CrG_lTFk.d.ts +270 -0
  312. package/dist/fallback-KDB4Y2CE.mjs +6 -0
  313. package/dist/fallback-Y26TQENE.js +19 -0
  314. package/dist/features-CZB4rmcD.d.mts +118 -0
  315. package/dist/features-CZB4rmcD.d.ts +118 -0
  316. package/dist/fit-BWiE7rgA.d.mts +44 -0
  317. package/dist/fit-DK0oT7zO.d.ts +44 -0
  318. package/dist/five-a-side-Bv1AOUy3.d.mts +115 -0
  319. package/dist/five-a-side-EC51SJY1.d.ts +115 -0
  320. package/dist/fluid-ARr0qUIL.d.ts +939 -0
  321. package/dist/fluid-DLlEj2cs.d.mts +939 -0
  322. package/dist/game/conformance.d.mts +84 -0
  323. package/dist/game/conformance.d.ts +84 -0
  324. package/dist/game/conformance.js +1025 -0
  325. package/dist/game/conformance.mjs +994 -0
  326. package/dist/game/heap.d.mts +40 -0
  327. package/dist/game/heap.d.ts +40 -0
  328. package/dist/game/heap.js +48 -0
  329. package/dist/game/heap.mjs +7 -0
  330. package/dist/game/kit/canvas.d.mts +240 -0
  331. package/dist/game/kit/canvas.d.ts +240 -0
  332. package/dist/game/kit/canvas.js +3566 -0
  333. package/dist/game/kit/canvas.mjs +1039 -0
  334. package/dist/game/kit/courier.d.mts +17 -0
  335. package/dist/game/kit/courier.d.ts +17 -0
  336. package/dist/game/kit/courier.js +66 -0
  337. package/dist/game/kit/courier.mjs +49 -0
  338. package/dist/game/kit/danfo.d.mts +11 -0
  339. package/dist/game/kit/danfo.d.ts +11 -0
  340. package/dist/game/kit/danfo.js +109 -0
  341. package/dist/game/kit/danfo.mjs +44 -0
  342. package/dist/game/kit/engine.d.mts +29 -0
  343. package/dist/game/kit/engine.d.ts +29 -0
  344. package/dist/game/kit/engine.js +183 -0
  345. package/dist/game/kit/engine.mjs +30 -0
  346. package/dist/game/kit/five-a-side.d.mts +11 -0
  347. package/dist/game/kit/five-a-side.d.ts +11 -0
  348. package/dist/game/kit/five-a-side.js +86 -0
  349. package/dist/game/kit/five-a-side.mjs +41 -0
  350. package/dist/game/kit/frontier.d.mts +344 -0
  351. package/dist/game/kit/frontier.d.ts +344 -0
  352. package/dist/game/kit/frontier.js +435 -0
  353. package/dist/game/kit/frontier.mjs +14 -0
  354. package/dist/game/kit/genesis.d.mts +752 -0
  355. package/dist/game/kit/genesis.d.ts +752 -0
  356. package/dist/game/kit/genesis.js +380 -0
  357. package/dist/game/kit/genesis.mjs +15 -0
  358. package/dist/game/kit/ludo.d.mts +15 -0
  359. package/dist/game/kit/ludo.d.ts +15 -0
  360. package/dist/game/kit/ludo.js +87 -0
  361. package/dist/game/kit/ludo.mjs +42 -0
  362. package/dist/game/kit/runner.d.mts +12 -0
  363. package/dist/game/kit/runner.d.ts +12 -0
  364. package/dist/game/kit/runner.js +83 -0
  365. package/dist/game/kit/runner.mjs +46 -0
  366. package/dist/game/kit/shootout.d.mts +13 -0
  367. package/dist/game/kit/shootout.d.ts +13 -0
  368. package/dist/game/kit/shootout.js +122 -0
  369. package/dist/game/kit/shootout.mjs +57 -0
  370. package/dist/game/kit/slots.d.mts +392 -0
  371. package/dist/game/kit/slots.d.ts +392 -0
  372. package/dist/game/kit/slots.js +215 -0
  373. package/dist/game/kit/slots.mjs +6 -0
  374. package/dist/game/kit/tycoon.d.mts +16 -0
  375. package/dist/game/kit/tycoon.d.ts +16 -0
  376. package/dist/game/kit/tycoon.js +145 -0
  377. package/dist/game/kit/tycoon.mjs +44 -0
  378. package/dist/game/kit/word.d.mts +11 -0
  379. package/dist/game/kit/word.d.ts +11 -0
  380. package/dist/game/kit/word.js +78 -0
  381. package/dist/game/kit/word.mjs +41 -0
  382. package/dist/game/kit/worlds.d.mts +18 -0
  383. package/dist/game/kit/worlds.d.ts +18 -0
  384. package/dist/game/kit/worlds.js +74 -0
  385. package/dist/game/kit/worlds.mjs +49 -0
  386. package/dist/game/kit.d.mts +53 -0
  387. package/dist/game/kit.d.ts +53 -0
  388. package/dist/game/kit.js +2610 -0
  389. package/dist/game/kit.mjs +101 -0
  390. package/dist/game/prepared.d.mts +14 -0
  391. package/dist/game/prepared.d.ts +14 -0
  392. package/dist/game/prepared.js +81 -0
  393. package/dist/game/prepared.mjs +32 -0
  394. package/dist/game-Bx8onkhX.d.mts +1451 -0
  395. package/dist/game-fgQy2YIm.d.ts +1451 -0
  396. package/dist/game-theme-CBTw1b_d.d.mts +35 -0
  397. package/dist/game-theme-Dg-ict5A.d.ts +35 -0
  398. package/dist/game.d.mts +3546 -0
  399. package/dist/game.d.ts +3546 -0
  400. package/dist/game.js +4455 -0
  401. package/dist/game.mjs +50 -0
  402. package/dist/graphics-C6YjWYvP.d.ts +5 -0
  403. package/dist/graphics-Dk2yQnYN.d.mts +5 -0
  404. package/dist/guest-DrsA00XD.d.mts +732 -0
  405. package/dist/guest-wIdfoT05.d.ts +732 -0
  406. package/dist/hit-stop-BKkVwTq7.d.mts +43 -0
  407. package/dist/hit-stop-D-8pPYnM.d.ts +43 -0
  408. package/dist/hot-Crn9XpHJ.d.ts +29 -0
  409. package/dist/hot-DH3nOhQD.d.mts +29 -0
  410. package/dist/{index-CQStGb3B.d.mts → index-6gkHMGAq.d.mts} +2 -2
  411. package/dist/index-B8ybCKJI.d.ts +41 -0
  412. package/dist/{index-DJwXmoaP.d.ts → index-B98Xac8e.d.ts} +2 -2
  413. package/dist/{index-B7oA_1XI.d.ts → index-B_ByTtIT.d.ts} +2 -2
  414. package/dist/index-DHjNHb1c.d.mts +41 -0
  415. package/dist/{index-DhUSTAhT.d.mts → index-DbAN_VQE.d.mts} +2 -2
  416. package/dist/index.d.mts +134 -24
  417. package/dist/index.d.ts +134 -24
  418. package/dist/index.js +407 -248
  419. package/dist/index.mjs +184 -58
  420. package/dist/interactives-authoring.d.mts +231 -0
  421. package/dist/interactives-authoring.d.ts +231 -0
  422. package/dist/interactives-authoring.js +1743 -0
  423. package/dist/interactives-authoring.mjs +1704 -0
  424. package/dist/interactives-canvas.global.js +148 -0
  425. package/dist/interactives-guest.d.mts +20 -0
  426. package/dist/interactives-guest.d.ts +20 -0
  427. package/dist/interactives-guest.js +63 -0
  428. package/dist/interactives-guest.json +1 -0
  429. package/dist/interactives-guest.mjs +61 -0
  430. package/dist/interactives-jsc.global.js +9357 -0
  431. package/dist/interactives-meters.d.mts +93 -0
  432. package/dist/interactives-meters.d.ts +93 -0
  433. package/dist/interactives-meters.js +252 -0
  434. package/dist/interactives-meters.mjs +68 -0
  435. package/dist/interactives-production.d.mts +430 -0
  436. package/dist/interactives-production.d.ts +430 -0
  437. package/dist/interactives-production.js +1231 -0
  438. package/dist/interactives-production.mjs +1170 -0
  439. package/dist/interactives-record.d.mts +112 -0
  440. package/dist/interactives-record.d.ts +112 -0
  441. package/dist/interactives-record.js +302 -0
  442. package/dist/interactives-record.mjs +295 -0
  443. package/dist/interactives-runtime.d.mts +61 -0
  444. package/dist/interactives-runtime.d.ts +61 -0
  445. package/dist/interactives-runtime.js +442 -0
  446. package/dist/interactives-runtime.mjs +25 -0
  447. package/dist/interactives-studio-kernel.global.js +1 -0
  448. package/dist/interactives-studio.d.mts +806 -0
  449. package/dist/interactives-studio.d.ts +806 -0
  450. package/dist/interactives-studio.js +5741 -0
  451. package/dist/interactives-studio.mjs +5651 -0
  452. package/dist/interactives-tick.d.mts +90 -0
  453. package/dist/interactives-tick.d.ts +90 -0
  454. package/dist/interactives-tick.js +203 -0
  455. package/dist/interactives-tick.mjs +6 -0
  456. package/dist/interactives-web.d.mts +762 -0
  457. package/dist/interactives-web.d.ts +762 -0
  458. package/dist/interactives-web.js +5000 -0
  459. package/dist/interactives-web.mjs +4628 -0
  460. package/dist/interactives.d.mts +2430 -0
  461. package/dist/interactives.d.ts +2430 -0
  462. package/dist/interactives.js +5723 -0
  463. package/dist/interactives.mjs +4333 -0
  464. package/dist/juice-CoHxlpKA.d.ts +42 -0
  465. package/dist/juice-DQztFS43.d.mts +42 -0
  466. package/dist/launch-T2f4_Di4.d.mts +151 -0
  467. package/dist/launch-d6oreMzR.d.ts +151 -0
  468. package/dist/library-DXYaMFhi.d.mts +69 -0
  469. package/dist/library-DXYaMFhi.d.ts +69 -0
  470. package/dist/link-BUTqGmyi.d.mts +38 -0
  471. package/dist/link-BUTqGmyi.d.ts +38 -0
  472. package/dist/lint.js +104 -204
  473. package/dist/lint.mjs +103 -203
  474. package/dist/local-D8_I6UeL.d.mts +6967 -0
  475. package/dist/local-VZkqsCzR.d.ts +6967 -0
  476. package/dist/lockstep-BLf6dglI.d.mts +321 -0
  477. package/dist/lockstep-D50Ia0JW.d.ts +321 -0
  478. package/dist/ludo-B8ClkDqr.d.ts +205 -0
  479. package/dist/ludo-BOuohQ-M.d.mts +205 -0
  480. package/dist/mock/cli.mjs +200 -56
  481. package/dist/mock/library.js +200 -56
  482. package/dist/mock/library.mjs +200 -56
  483. package/dist/mock/msw.js +200 -56
  484. package/dist/mock/msw.mjs +200 -56
  485. package/dist/native-BodxSh03.d.mts +16 -0
  486. package/dist/native-DUHMT8gA.d.ts +16 -0
  487. package/dist/network-ZXLD7l1b.d.mts +19 -0
  488. package/dist/network-ZXLD7l1b.d.ts +19 -0
  489. package/dist/online-XeymeM9s.d.ts +381 -0
  490. package/dist/online-d7W_Al9a.d.mts +381 -0
  491. package/dist/params-DxFb5G_U.d.mts +155 -0
  492. package/dist/params-DxFb5G_U.d.ts +155 -0
  493. package/dist/play-BRRlfLhX.d.ts +940 -0
  494. package/dist/play-ClrMd_e8.d.mts +940 -0
  495. package/dist/policy-CCw8tXLm.d.mts +3078 -0
  496. package/dist/policy-CMqOSQIu.d.ts +3078 -0
  497. package/dist/ports-B_0v_P3A.d.mts +13 -0
  498. package/dist/ports-CGU_3e_0.d.ts +13 -0
  499. package/dist/prefetch-BHnicOQj.d.ts +117 -0
  500. package/dist/prefetch-CBXgYacv.d.mts +117 -0
  501. package/dist/{price-CSztR02F.d.mts → price-BOzexBww.d.mts} +1 -1
  502. package/dist/{price-C_vasx9A.d.ts → price-C1h9sPxE.d.ts} +1 -1
  503. package/dist/protocol-C8qbpUbT.d.mts +242 -0
  504. package/dist/protocol-C8qbpUbT.d.ts +242 -0
  505. package/dist/rapier-AZHT4YI7.js +7886 -0
  506. package/dist/rapier-ODEPCQA6.mjs +7792 -0
  507. package/dist/react.d.mts +157 -15
  508. package/dist/react.d.ts +157 -15
  509. package/dist/react.js +5564 -5904
  510. package/dist/react.mjs +5451 -5808
  511. package/dist/runner-CQcLL7By.d.ts +189 -0
  512. package/dist/runner-D46Yj-wE.d.mts +189 -0
  513. package/dist/runtime-BRWfkf_q.d.mts +51 -0
  514. package/dist/runtime-DyuBMkKM.d.ts +51 -0
  515. package/dist/scheduling-D2ajXpMC.d.ts +224 -0
  516. package/dist/scheduling-DSRbbaZb.d.mts +224 -0
  517. package/dist/schema-BrWxzKp6.d.mts +63 -0
  518. package/dist/schema-BrWxzKp6.d.ts +63 -0
  519. package/dist/server/evict.js +34 -37
  520. package/dist/server/evict.mjs +34 -37
  521. package/dist/server/tanstack.d.mts +49 -3
  522. package/dist/server/tanstack.d.ts +49 -3
  523. package/dist/server/tanstack.js +169 -117
  524. package/dist/server/tanstack.mjs +166 -118
  525. package/dist/{server-Dckg4Vdr.d.ts → server-D29IIuDV.d.ts} +136 -130
  526. package/dist/{server-B6dW7-Lj.d.mts → server-DQMWPnc8.d.mts} +136 -130
  527. package/dist/server.d.mts +45 -5
  528. package/dist/server.d.ts +45 -5
  529. package/dist/server.js +171 -227
  530. package/dist/server.mjs +165 -225
  531. package/dist/session-grant-CJ27DwrT.d.mts +19 -0
  532. package/dist/session-grant-CJ27DwrT.d.ts +19 -0
  533. package/dist/shootout-BJZeX6FG.d.ts +140 -0
  534. package/dist/shootout-tcZd1Rxt.d.mts +140 -0
  535. package/dist/state-replica-stMtdkVD.d.mts +42 -0
  536. package/dist/state-replica-stMtdkVD.d.ts +42 -0
  537. package/dist/studio-CowqWqez.d.mts +14 -0
  538. package/dist/studio-CowqWqez.d.ts +14 -0
  539. package/dist/styles.css +1 -1
  540. package/dist/template-AhCdB1kW.d.mts +190 -0
  541. package/dist/template-BkEGVTQj.d.ts +190 -0
  542. package/dist/terrain-BMxEc6Oc.d.ts +429 -0
  543. package/dist/terrain-C-XC1Oui.d.mts +429 -0
  544. package/dist/testing/msw.d.mts +28 -4
  545. package/dist/testing/msw.d.ts +28 -4
  546. package/dist/testing/msw.js +15 -21
  547. package/dist/testing/msw.mjs +15 -21
  548. package/dist/testing/suite.d.mts +6 -5
  549. package/dist/testing/suite.d.ts +6 -5
  550. package/dist/testing/suite.js +89 -124
  551. package/dist/testing/suite.mjs +81 -116
  552. package/dist/testing.d.mts +27 -1227
  553. package/dist/testing.d.ts +27 -1227
  554. package/dist/testing.js +127 -131
  555. package/dist/testing.mjs +19 -23
  556. package/dist/tick-transport-C8QEh8Uw.d.mts +50 -0
  557. package/dist/tick-transport-UjHY3xK1.d.ts +50 -0
  558. package/dist/timeline-protocol-hp6e8zFB.d.mts +47 -0
  559. package/dist/timeline-protocol-hp6e8zFB.d.ts +47 -0
  560. package/dist/tokens-DhanQRQS.d.mts +21 -0
  561. package/dist/tokens-K8yxwd6G.d.ts +21 -0
  562. package/dist/tree-C-Io2Hbx.d.mts +35 -0
  563. package/dist/tree-CP_qSW4H.d.ts +35 -0
  564. package/dist/tycoon-B5KHk2Xx.d.mts +255 -0
  565. package/dist/tycoon-hmHo-3HX.d.ts +255 -0
  566. package/dist/types-BQkxPwZP.d.mts +219 -0
  567. package/dist/types-D_f6UUxM.d.ts +219 -0
  568. package/dist/ui-DwHicuFv.d.mts +563 -0
  569. package/dist/ui-hi7S2YcH.d.ts +563 -0
  570. package/dist/{sign-in-DQlIdqsi.d.mts → url-52ndUruG.d.mts} +15 -1
  571. package/dist/{sign-in-DQlIdqsi.d.ts → url-52ndUruG.d.ts} +15 -1
  572. package/dist/utils.d.mts +3 -3
  573. package/dist/utils.d.ts +3 -3
  574. package/dist/utils.js +37 -37
  575. package/dist/utils.mjs +4 -4
  576. package/dist/vars-Dc_PrhBK.d.mts +511 -0
  577. package/dist/vars-Dc_PrhBK.d.ts +511 -0
  578. package/dist/vm-IUARFFAI.mjs +63 -0
  579. package/dist/vm-N7L6MGGH.js +65 -0
  580. package/dist/weave-delivery-CW-Kstut.d.mts +360 -0
  581. package/dist/weave-delivery-CW-Kstut.d.ts +360 -0
  582. package/dist/web-Dss74a7v.d.ts +883 -0
  583. package/dist/web-f9ZQPoyw.d.mts +883 -0
  584. package/dist/web-transport-C7MkBL0a.d.ts +19 -0
  585. package/dist/web-transport-aYEqXMd9.d.mts +19 -0
  586. package/dist/weight-CPGjsgjV.d.ts +92 -0
  587. package/dist/weight-tF1ODR1p.d.mts +92 -0
  588. package/dist/word-BcX9Jcmv.d.mts +70 -0
  589. package/dist/word-C7sVPLHm.d.ts +70 -0
  590. package/dist/world-PvILHDR1.d.ts +2285 -0
  591. package/dist/world-qekkXjJv.d.mts +2285 -0
  592. package/dist/worlds-Br2Pb0Cs.d.ts +109 -0
  593. package/dist/worlds-D5ydYr7d.d.mts +109 -0
  594. package/engines/c/cimplify.h +108 -0
  595. package/engines/c/cimplify.lib.js +11 -0
  596. package/engines/godot/addons/cimplify/cimplify.gd +97 -0
  597. package/engines/rust/interactives-ctx/Cargo.toml +9 -0
  598. package/engines/rust/interactives-ctx/src/lib.rs +189 -0
  599. package/package.json +189 -3
  600. package/vendor/rapier3d-compat/LICENSE +201 -0
  601. package/vendor/rapier3d-compat/PATCHES.md +61 -0
  602. package/dist/chunk-2P4KXFB6.js +0 -274
  603. package/dist/chunk-3G6RQLXK.mjs +0 -21
  604. package/dist/chunk-3V4DVXV3.mjs +0 -254
  605. package/dist/chunk-EDK3LNM6.js +0 -2436
  606. package/dist/chunk-F7J3HK27.js +0 -4549
  607. package/dist/chunk-U4MW6PYU.mjs +0 -23
  608. package/dist/chunk-XREIZ56K.js +0 -26
@@ -0,0 +1,762 @@
1
+ import { S as HostBridge, ab as MessageListener } from './guest-wIdfoT05.js';
2
+ export { i as CHUNK_FAILED_BYTES, k as CHUNK_RELEASE_ENTRY_BYTES, l as CHUNK_REQUESTS_VERSION, m as CHUNK_REQUEST_ENTRY_BYTES, s as ChunkBatch, t as ChunkFailure, a as ChunkFailureName, b as ChunkPriority, bd as ClipError, be as ClipFailureCode, J as FrameMark, F as FrameTouch, c as FrameTouchKind, T as HotRequest, U as HotSwapReport, V as HotSwapResult, a3 as LifecycleCode, a4 as LifecycleName, ac as MessageTag, aK as UiCommand, aX as forEachChunkEntry, b1 as readChunkFailed, bb as writeChunkFailed } from './guest-wIdfoT05.js';
3
+ export { S as STUDIO_MESSAGE_MAX_BYTES, a as StudioMessage, b as StudioOutgoing } from './studio-CowqWqez.js';
4
+ export { C as CANNOT_REWIND, N as NOT_RECORDING, T as TIMELINE_PREFIX, a as TIMELINE_REPORT, b as TIMELINE_TOPIC, c as TimelineMoment, d as TimelineProof, e as TimelineRefused, f as TimelineState } from './timeline-protocol-hp6e8zFB.js';
5
+ import { Z as ZoneSpans, O as GuestEngineFactory, T as CtxTransport, V as SessionHello } from './web-Dss74a7v.js';
6
+ export { W as ALTERNATIVE_RUNTIMES, X as AdCreative, Y as AdDecisionBody, _ as AdFormat, $ as AdOutcome, B as BatchPackage, a0 as BlockPlan, a1 as CLIP_CAMERA, a2 as CONSENT_KINDS, a3 as ChromeSheet, a4 as ClipArm, a5 as ClipChoice, a6 as ClipConsent, a7 as ClipMediaKind, a8 as ClipOutcome, a9 as ClipRelay, aa as ClipReply, ab as ClipUpload, ac as Completion, ad as ConsentState, ae as ConsentStore, af as DEFAULT_CLIP_ARM, ag as DEFAULT_HOST_LIMITS, ah as DEFAULT_WARM_BOOT_MS, ai as ENGINE_GROUP_PREFIX, aj as ENGINE_HEAP_CEILING_BYTES, ak as ENGINE_HEAP_HEADROOM, al as EngineHeapDeclaration, am as EngineHeapTier, an as GPU_REQUIREMENT_NAMES, ao as GpuLimits, ap as GpuRequirementName, aq as GpuRequirements, ar as GuestClips, as as GuestEngine, at as GuestPool, au as HostCallOperation, av as HostChromeController, aw as HostChromeOptions, ax as HostClips, ay as HostFault, az as HostFaultError, aA as HostLimits, aB as HostMediator, aC as HostPhase, aD as KeyValueStore, aE as MediatorOutlet, aF as OpenedReplay, a as PackageChannel, b as PackageChunkRef, aG as PackageIndexRef, aH as PackageRef, aI as PlacementCompletion, aJ as PlacementState, aK as REPLAY_MEDIA_TYPE, R as RegistryClient, aL as RegistryError, aM as RepairDecoder, aN as RepairFileRef, aO as RepairMember, aP as RepairOutcome, aQ as RepairSource, aR as ReportFiling, aS as RuntimeImage, aT as RuntimePool, aU as RuntimeTag, aV as SavedClip, aW as ServedAd, aX as SessionClose, aY as SessionConsent, aZ as SpendConfirmation, a_ as SpendDecision, a$ as SpendPrompt, b0 as SwapBuild, b1 as TrackingConsent, b2 as TreeStore, b3 as WarmGuest, b4 as WebHost, b5 as WebHostClipOptions, b6 as WebHostOptions, b7 as ZoneChunkRef, b8 as ZoneFileRef, b9 as ZoneSpan, ba as browserStore, bb as cdnRepairs, bc as chunksForHost, bd as completeZone, be as declareEngineHeap, bf as deviceGpuLimits, bg as engineHeapFor, bh as hostThreads, bi as httpRegistry, bj as manifestGpuRequirements, bk as memoryStore, bl as planZone, bm as rangedChunks, bn as repairDecoder, bo as runtimeImage, bp as swapInPlace, bq as swappable, br as unmetGpuRequirement, bs as workerEngines } from './web-Dss74a7v.js';
7
+ import { C as ChunkSource, P as PartStoreBackend, a as PartStoreSnapshot, b as PartStoreOptions, S as SharedPartStore, c as PartStoreDisk } from './weave-delivery-CW-Kstut.js';
8
+ export { D as DEFAULT_DISK_RESERVE_BYTES, d as DEFAULT_KEPT_BUDGET_BYTES, e as DEFAULT_PART_STORE_BUDGET_BYTES, f as DEFAULT_PART_ZONE, E as EvictionListener, g as EvictionReason, G as GamePart, I as InstallOptions, K as KEEP_REASONS, h as KeepReason, M as MemoryPartBackend, i as PartEviction, j as PartSession, k as PartStoreStats, l as PartVerifyError, m as localFirstChunks } from './weave-delivery-CW-Kstut.js';
9
+ import { T as TransportKind, R as RoomDialer, a as Lane } from './link-BUTqGmyi.js';
10
+ import { b as EngineSessionGrant } from './session-grant-CJ27DwrT.js';
11
+ export { E as EngineSessionAudience, a as EngineSessionError } from './session-grant-CJ27DwrT.js';
12
+ import { I as IdentityBase } from './params-DxFb5G_U.js';
13
+ import { a as IdentityFitter } from './fit-DK0oT7zO.js';
14
+ import { X as DeclaredAgeRange, Y as HostResponse, Z as CtxError, _ as RenderingProfile, $ as Persona, a0 as RequestEnvelope, Q as Family, w as ProgramInfo } from './local-VZkqsCzR.js';
15
+ export { C as ChunkCache, a as ChunkOrigin, F as FEED_DWELL_MS, b as FEED_SESSION_BYTES, c as FeedPrefetchOptions, d as FeedPrefetchState, e as FeedTimers, I as IDLE_SCHEDULER, M as MILESTONE_MARK_PREFIX, P as PREFETCH_BATCH, f as PackagePrefetcher, g as PrefetchScheduler, h as feedChunks, m as milestoneMarks } from './prefetch-BHnicOQj.js';
16
+ import './network-ZXLD7l1b.js';
17
+ import './backend-gUCzs5Kg.js';
18
+ import './world-PvILHDR1.js';
19
+ import './library-DXYaMFhi.js';
20
+ import './game-fgQy2YIm.js';
21
+ import './audio-m0w8cnxq.js';
22
+ import './client-Dytx_ZTC.js';
23
+ import './fluid-ARr0qUIL.js';
24
+ import './tree-CP_qSW4H.js';
25
+ import './schema-BrWxzKp6.js';
26
+ import './ui-hi7S2YcH.js';
27
+ import './vars-Dc_PrhBK.js';
28
+
29
+ declare const CONTENT_BLOCKED_ERROR = "INTERACTIVES_CONTENT_BLOCKED";
30
+ declare const CONTENT_BLOCKED_CLOSE = "content_blocked";
31
+ declare const CONTENT_BLOCKED_STATUS = 451;
32
+ type CreditAi = "assisted" | "generated";
33
+ interface HostCredit {
34
+ readonly title: string;
35
+ readonly authors: readonly string[];
36
+ readonly licence: string;
37
+ readonly licenceUrl: string | null;
38
+ readonly sourceUrl: string | null;
39
+ readonly modified: boolean;
40
+ readonly item: string | null;
41
+ readonly ai: CreditAi | string | null;
42
+ }
43
+ declare function manifestCredits(manifest: Uint8Array): readonly HostCredit[];
44
+ declare function blockedItems(detail: string | null): readonly string[];
45
+
46
+ declare function probeHostWebGpu(): Promise<boolean>;
47
+ declare function hostWebGpu(): boolean;
48
+ declare function forgetHostWebGpu(): void;
49
+
50
+ declare const DEFAULT_LAZY_BUDGET_BYTES: number;
51
+ declare const DEFAULT_LAZY_CONCURRENCY = 4;
52
+ interface LazyChunkRef {
53
+ readonly digest: string;
54
+ readonly lazy?: boolean;
55
+ readonly size?: number;
56
+ }
57
+ interface LazyChunkOptions {
58
+ readonly source: ChunkSource;
59
+ readonly budget_bytes?: number;
60
+ readonly concurrency?: number;
61
+ readonly spans?: ZoneSpans;
62
+ readonly run_bytes?: number;
63
+ }
64
+ interface LazyChunkSink {
65
+ deliver(digest: string, body: Uint8Array): void;
66
+ send(bytes: Uint8Array, length: number): void;
67
+ }
68
+ declare class LazyChunkServer {
69
+ private readonly options;
70
+ private sink;
71
+ private readonly known;
72
+ private readonly queues;
73
+ private readonly queued;
74
+ private readonly flying;
75
+ private readonly held;
76
+ private readonly partials;
77
+ private readonly failure;
78
+ private readonly budget;
79
+ private readonly concurrency;
80
+ private readonly prefetchSlots;
81
+ private heldBytes;
82
+ private generation;
83
+ private preemptions;
84
+ private runs;
85
+ constructor(refs: readonly LazyChunkRef[], options: LazyChunkOptions, sink?: LazyChunkSink | null);
86
+ get bytesHeld(): number;
87
+ get pending(): number;
88
+ get preempted(): number;
89
+ get ranged(): number;
90
+ priorityOf(digest: string): number | null;
91
+ attach(sink: LazyChunkSink | null): void;
92
+ request(bytes: Uint8Array): void;
93
+ requestOne(digest: string, priority: number): void;
94
+ requestMany(entries: readonly (readonly [digest: string, priority: number])[]): void;
95
+ private enqueue;
96
+ private unqueue;
97
+ release(bytes: Uint8Array): void;
98
+ private top;
99
+ private preempt;
100
+ private next;
101
+ private requestsFlying;
102
+ private prefetchFlying;
103
+ private pump;
104
+ private gather;
105
+ private serveRun;
106
+ private fits;
107
+ private serve;
108
+ private fail;
109
+ }
110
+
111
+ declare const PART_STORE_NAME = "cimplify-parts";
112
+ declare const WEB_DISK_RESERVE_BYTES: number;
113
+ declare class IndexedDbPartBackend implements PartStoreBackend {
114
+ private readonly db;
115
+ private constructor();
116
+ static open(factory: IDBFactory, name?: string): Promise<IndexedDbPartBackend>;
117
+ read(digest: string): Promise<Uint8Array | null>;
118
+ write(digest: string, bytes: Uint8Array): Promise<void>;
119
+ remove(digest: string): Promise<void>;
120
+ load(): Promise<PartStoreSnapshot | null>;
121
+ save(snapshot: PartStoreSnapshot): Promise<void>;
122
+ }
123
+ declare class CacheStoragePartBackend implements PartStoreBackend {
124
+ private readonly cache;
125
+ private constructor();
126
+ static open(storage: CacheStorage, name?: string): Promise<CacheStoragePartBackend>;
127
+ read(digest: string): Promise<Uint8Array | null>;
128
+ write(digest: string, bytes: Uint8Array): Promise<void>;
129
+ remove(digest: string): Promise<void>;
130
+ load(): Promise<PartStoreSnapshot | null>;
131
+ save(snapshot: PartStoreSnapshot): Promise<void>;
132
+ }
133
+ declare function webStorageDisk(storage?: StorageManager | undefined): PartStoreDisk | undefined;
134
+ declare function openWebPartStore(options?: PartStoreOptions): Promise<SharedPartStore>;
135
+
136
+ interface RelayPort {
137
+ readonly out: Uint8Array;
138
+ reserve(length: number): number;
139
+ commitFrame(): void;
140
+ commitTask(): void;
141
+ }
142
+
143
+ type FallbackFontSource = (codepoint: number) => Promise<Uint8Array | null>;
144
+
145
+ interface MessagePortLike {
146
+ postMessage(message: ArrayBuffer, transfer: Transferable[]): void;
147
+ addEventListener(type: "message", listener: (event: MessageEvent<ArrayBuffer>) => void): void;
148
+ start?(): void;
149
+ }
150
+ interface FlushScheduler {
151
+ task(flush: () => void): void;
152
+ frame(flush: () => void): void;
153
+ }
154
+ interface FrameScope {
155
+ requestAnimationFrame?: (callback: (time: number) => void) => number;
156
+ }
157
+ declare function animationFrameScheduler(scope?: FrameScope): FlushScheduler;
158
+ interface PortBridgeStats {
159
+ readonly allocated: number;
160
+ readonly batches: number;
161
+ readonly records: number;
162
+ }
163
+ declare class PortBridge implements HostBridge {
164
+ private readonly port;
165
+ private readonly scheduler;
166
+ private readonly free;
167
+ private readonly transfer;
168
+ private listener;
169
+ private buffer;
170
+ private bytes;
171
+ private view;
172
+ private used;
173
+ private taskPending;
174
+ private framePending;
175
+ private allocatedCount;
176
+ private batchCount;
177
+ private recordCount;
178
+ constructor(port: MessagePortLike, scheduler: FlushScheduler);
179
+ get stats(): PortBridgeStats;
180
+ get pooled(): number;
181
+ on_message(listener: MessageListener): void;
182
+ send(bytes: Uint8Array, length: number): void;
183
+ sendFrame(bytes: Uint8Array, length: number): void;
184
+ private write;
185
+ reserve(length: number): number;
186
+ get out(): Uint8Array;
187
+ commitFrame(): void;
188
+ commitTask(): void;
189
+ private dedicated;
190
+ private open;
191
+ private scheduleTask;
192
+ private scheduleFrame;
193
+ private readonly flushTask;
194
+ private readonly flushFrame;
195
+ flush(): void;
196
+ private post;
197
+ private receive;
198
+ }
199
+
200
+ type CanvasEngineChoice = "core" | "prepared";
201
+ interface CanvasBoot {
202
+ readonly engine: CanvasEngineChoice;
203
+ readonly heartbeat?: SharedArrayBuffer | null;
204
+ readonly game_ui_accessibility?: boolean;
205
+ readonly engine_session?: EngineSessionGrant | null;
206
+ }
207
+
208
+ declare const HOST_PAGE_ISOLATION_HEADERS: Readonly<Record<string, string>>;
209
+ interface ContentOrigin {
210
+ readonly scheme: "https:" | "http:";
211
+ readonly host: string;
212
+ readonly port: string;
213
+ }
214
+ declare function parseContentOrigin(value: string): ContentOrigin | null;
215
+ declare function interactiveLabel(interactiveId: string): string;
216
+ declare function guestOrigin(origin: ContentOrigin, interactiveId: string): string;
217
+ declare function servesContent(origin: ContentOrigin, host: string): boolean;
218
+ declare function sha256Hex(bytes: Uint8Array): string;
219
+
220
+ interface FaceLandmarkerPart {
221
+ readonly sha256: string;
222
+ readonly bytes: number;
223
+ readonly type: string;
224
+ readonly upstream: string;
225
+ }
226
+ declare const FACE_LANDMARKER: {
227
+ readonly runtime: "@mediapipe/tasks-vision";
228
+ readonly runtime_version: "1.0.1";
229
+ readonly model: "face_landmarker/float16/1";
230
+ readonly licence: "Apache-2.0";
231
+ readonly points: 478;
232
+ readonly parts: {
233
+ readonly bundle: {
234
+ readonly sha256: "d885630c297c0b20b1fe86096cb06291c4c8080876f27852e724f24ac603713f";
235
+ readonly bytes: 155439;
236
+ readonly type: "text/javascript";
237
+ readonly upstream: "https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@1.0.1/vision_bundle.mjs";
238
+ };
239
+ readonly loader: {
240
+ readonly sha256: "e170ee67dd4e16c1a6fcd8840a206687e5a59b22c20e4a902bc445b095454d73";
241
+ readonly bytes: 323377;
242
+ readonly type: "text/javascript";
243
+ readonly upstream: "https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@1.0.1/wasm/vision_wasm_internal.js";
244
+ };
245
+ readonly wasm: {
246
+ readonly sha256: "8da277a733926eacd0474b8704b36742d6ec3231c57a860c5b889dff8f1df886";
247
+ readonly bytes: 11756954;
248
+ readonly type: "application/wasm";
249
+ readonly upstream: "https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@1.0.1/wasm/vision_wasm_internal.wasm";
250
+ };
251
+ readonly model: {
252
+ readonly sha256: "64184e229b263107bc2b804c6625db1341ff2bb731874b0bcc2fe6544e0bc9ff";
253
+ readonly bytes: 3758596;
254
+ readonly type: "application/octet-stream";
255
+ readonly upstream: "https://storage.googleapis.com/mediapipe-models/face_landmarker/face_landmarker/float16/1/face_landmarker.task";
256
+ };
257
+ };
258
+ };
259
+ type FaceVideo = HTMLVideoElement;
260
+ interface FaceLandmarkRunner {
261
+ detect(video: FaceVideo, timestamp_ms: number, out: Float32Array): number;
262
+ weigh?(out: Float32Array): boolean;
263
+ close(): void;
264
+ }
265
+ type FaceRunnerFactory = () => Promise<FaceLandmarkRunner>;
266
+ interface FaceRunnerScope {
267
+ readonly URL: Pick<typeof URL, "createObjectURL" | "revokeObjectURL">;
268
+ readonly Blob: typeof Blob;
269
+ import(url: string): Promise<unknown>;
270
+ }
271
+ declare function mediaPipeFaceRunner(source: ChunkSource, store?: SharedPartStore | null, scope?: FaceRunnerScope): FaceRunnerFactory;
272
+
273
+ declare const IdentityCopy: {
274
+ readonly title: "Make your character from your face";
275
+ readonly consent: "Use your own face only, never anyone else's. The camera picture stays on this device. The game gets only your character's shape and colours.";
276
+ readonly decline: "Not now";
277
+ readonly agree: "This is me, continue";
278
+ readonly capture: "Capture";
279
+ readonly close: "Close";
280
+ readonly ready: "Your character is ready";
281
+ readonly save: "Also save as my avatar";
282
+ readonly use: "Use in game";
283
+ readonly retake: "Try again";
284
+ readonly preview: "Your camera, shown only here on this device";
285
+ };
286
+ declare const IdentityGuidance: {
287
+ readonly starting: "Starting the camera";
288
+ readonly find_face: "Look at the camera";
289
+ readonly face_camera: "Face the camera straight on";
290
+ readonly move_closer: "Move a little closer";
291
+ readonly hold_still: "Hold still";
292
+ };
293
+ type IdentityGuidanceKey = keyof typeof IdentityGuidance;
294
+ interface IdentitySheetEvents {
295
+ agree(): void;
296
+ decline(): void;
297
+ capture(): void;
298
+ retake(): void;
299
+ use(save: boolean): void;
300
+ close(): void;
301
+ }
302
+ interface IdentitySheet {
303
+ consent(): void;
304
+ framing(stream: MediaStream): void;
305
+ guide(guidance: IdentityGuidanceKey): void;
306
+ result(offerSave: boolean): void;
307
+ close(): void;
308
+ }
309
+ type IdentitySheetFactory = (events: IdentitySheetEvents) => IdentitySheet;
310
+ interface IdentityCaptureOptions {
311
+ readonly base: () => Promise<IdentityBase | IdentityFitter>;
312
+ readonly age_range: () => DeclaredAgeRange | Promise<DeclaredAgeRange>;
313
+ readonly sheet?: IdentitySheetFactory;
314
+ readonly save_avatar?: (identity: Uint8Array) => Promise<void>;
315
+ }
316
+ declare function domIdentitySheet(container: HTMLElement | null): IdentitySheetFactory;
317
+
318
+ declare const CAMERA_ON_COPY = "Your camera is on. It stays on this device.";
319
+ type CameraAnswer = "age_undeclared";
320
+ declare class CameraGrants {
321
+ private readonly revoked;
322
+ private readonly pending;
323
+ private readonly granted;
324
+ constructor(revoked?: (grant: string) => void);
325
+ observeRequest(bytes: Uint8Array): void;
326
+ observeResponse(bytes: Uint8Array): CameraAnswer | null;
327
+ allows(grant: string, purpose: string): boolean;
328
+ allowsFaceTracking(grant: string): boolean;
329
+ allowsPreview(grant: string): boolean;
330
+ revokeAll(): void;
331
+ }
332
+ interface CameraViewRect {
333
+ readonly x: number;
334
+ readonly y: number;
335
+ readonly width: number;
336
+ readonly height: number;
337
+ readonly mirror: boolean;
338
+ readonly over: boolean;
339
+ }
340
+ interface SurfaceOrigin {
341
+ readonly left: number;
342
+ readonly top: number;
343
+ }
344
+ declare function cameraViewStyle(rect: CameraViewRect | null, origin?: SurfaceOrigin): string;
345
+ declare function readViewRect(bytes: Uint8Array): CameraViewRect | null;
346
+ interface CameraMedia {
347
+ getUserMedia(constraints: MediaStreamConstraints): Promise<MediaStream>;
348
+ }
349
+ interface CameraVideo {
350
+ readonly video: HTMLVideoElement;
351
+ place(rect: CameraViewRect | null): void;
352
+ release(): void;
353
+ }
354
+ type CameraVideoFactory = (stream: MediaStream) => Promise<CameraVideo>;
355
+ interface FaceCameraOptions {
356
+ readonly runner: FaceRunnerFactory;
357
+ readonly media?: CameraMedia;
358
+ readonly video?: CameraVideoFactory;
359
+ readonly container?: HTMLElement | null;
360
+ readonly surface?: () => SurfaceOrigin;
361
+ readonly now?: () => number;
362
+ readonly on_age_needed?: () => void;
363
+ readonly on_live?: (live: boolean) => void;
364
+ readonly on_under?: (under: boolean) => void;
365
+ readonly on_error?: (error: unknown) => void;
366
+ readonly identity?: IdentityCaptureOptions;
367
+ }
368
+ declare function insetVideo(container: HTMLElement | null, surface?: () => SurfaceOrigin): CameraVideoFactory;
369
+ declare class FaceCameraRelay {
370
+ private readonly port;
371
+ private readonly options;
372
+ private readonly grants;
373
+ private readonly solver;
374
+ private readonly solved;
375
+ private readonly staging;
376
+ private readonly stagingBytes;
377
+ private readonly stagingWords;
378
+ private readonly floats;
379
+ private readonly expressions;
380
+ private readonly arkit;
381
+ private readonly pose;
382
+ private readonly points;
383
+ private readonly paints;
384
+ private session;
385
+ private attempt;
386
+ private runner;
387
+ private loading;
388
+ private visible;
389
+ private frameHandle;
390
+ private frameScheduled;
391
+ private nextHandle;
392
+ private placements;
393
+ private under;
394
+ private closed;
395
+ private readonly media;
396
+ private readonly videoFactory;
397
+ private readonly now;
398
+ private readonly step;
399
+ constructor(port: RelayPort, options: FaceCameraOptions | null);
400
+ get live(): boolean;
401
+ observeRequest(bytes: Uint8Array): void;
402
+ observeResponse(bytes: Uint8Array): void;
403
+ observeLifecycle(code: number): void;
404
+ handle(bytes: Uint8Array): boolean;
405
+ setVisible(visible: boolean): void;
406
+ shutdown(): void;
407
+ private releaseAll;
408
+ private open;
409
+ private acquireOrRefuse;
410
+ private acquire;
411
+ private start;
412
+ private stopMedia;
413
+ private end;
414
+ private consumer;
415
+ private close;
416
+ private drop;
417
+ private revoke;
418
+ private wanted;
419
+ private frame;
420
+ private identify;
421
+ private capture;
422
+ private openFor;
423
+ private identified;
424
+ private tracked;
425
+ private track;
426
+ private untrack;
427
+ private place;
428
+ private restyle;
429
+ private setUnder;
430
+ private colours;
431
+ private paint;
432
+ private answerPaints;
433
+ private loadRunner;
434
+ private schedule;
435
+ private cancelFrame;
436
+ private derive;
437
+ private publish;
438
+ private opened;
439
+ private coloured;
440
+ }
441
+
442
+ declare const CANVAS_SANDBOX = "allow-scripts";
443
+ declare const CANVAS_PERMISSIONS = "cross-origin-isolated; autoplay; gamepad; fullscreen; accelerometer; gyroscope";
444
+ type RoomDialerFactory = (transport: TransportKind, url: string) => RoomDialer | null;
445
+ declare const NETWORK_DIALERS: RoomDialerFactory;
446
+ interface CanvasHostOptions {
447
+ readonly container: HTMLElement;
448
+ readonly runtime: string;
449
+ readonly engine?: CanvasEngineChoice;
450
+ readonly dialers?: RoomDialerFactory;
451
+ readonly scheduler?: FlushScheduler;
452
+ readonly content?: ContentOrigin | null;
453
+ readonly game_ui_accessibility?: boolean;
454
+ readonly engine_session?: EngineSessionGrant | null;
455
+ readonly camera?: FaceCameraOptions | null;
456
+ /** Fetches fallback faces for letters no face covers; without one, `asset_cdn_base` serves the Noto set. */
457
+ readonly fallback_fonts?: FallbackFontSource | null;
458
+ /** The host's asset CDN base: the Noto fallback set is read from `notoFallbackBase(asset_cdn_base)`. */
459
+ readonly asset_cdn_base?: string | null;
460
+ }
461
+ declare function canvasPolicy(scriptHash: string): string;
462
+ declare function canvasDocument(runtime: string): string;
463
+ declare class RoomRelay {
464
+ private readonly port;
465
+ private readonly dialers;
466
+ private readonly links;
467
+ private readonly handlers;
468
+ private readonly scratch;
469
+ private readonly allowed;
470
+ private readonly pending;
471
+ private next;
472
+ constructor(port: RelayPort, dialers: RoomDialerFactory);
473
+ observeRequest(bytes: Uint8Array): void;
474
+ observeResponse(bytes: Uint8Array): void;
475
+ handle(bytes: Uint8Array): boolean;
476
+ private dial;
477
+ private settle;
478
+ private dialed;
479
+ private outbound;
480
+ inbound(id: number, lane: Lane, bytes: Uint8Array): void;
481
+ lost(id: number): void;
482
+ private close;
483
+ closeAll(): void;
484
+ }
485
+ declare function iframeEngines(options: CanvasHostOptions): GuestEngineFactory;
486
+
487
+ interface ContentStore {
488
+ chunk(digest: string): Promise<Uint8Array | null>;
489
+ runtime(digest: string): Promise<Uint8Array | null>;
490
+ /** The brotli of a wasm chunk's payload (`{digest}.wasm.br` beside the chunk), or null when there is none. */
491
+ wasmTwin?(digest: string): Promise<Uint8Array | null>;
492
+ }
493
+ interface EdgePolicy {
494
+ readonly frame_ancestors: readonly string[];
495
+ }
496
+ declare const ISOLATION_HEADERS: Readonly<Record<string, string>>;
497
+ declare function serveContent(request: Request, store: ContentStore, policy: EdgePolicy): Promise<Response>;
498
+
499
+ interface SocketLike {
500
+ binaryType: string;
501
+ readonly readyState: number;
502
+ onmessage: ((event: {
503
+ data: unknown;
504
+ }) => void) | null;
505
+ onclose: ((event: {
506
+ code: number;
507
+ reason: string;
508
+ }) => void) | null;
509
+ onerror: ((event: unknown) => void) | null;
510
+ send(data: Uint8Array): void;
511
+ close(code?: number, reason?: string): void;
512
+ }
513
+ type SocketFactory = (url: string) => SocketLike;
514
+ interface SessionTarget {
515
+ readonly base_url: string;
516
+ readonly interactive_id: string;
517
+ readonly revision: string;
518
+ readonly channel?: "live" | "test";
519
+ }
520
+ declare function sessionUrl(target: SessionTarget): string;
521
+ interface OpenedSession {
522
+ readonly transport: CtxTransport;
523
+ readonly hello: SessionHello;
524
+ }
525
+ declare function openSession(target: SessionTarget, connect: SocketFactory): Promise<OpenedSession>;
526
+ declare function httpChunks(base: string, fetcher?: typeof fetch): ChunkSource;
527
+
528
+ /** The largest message a Shoal session sends or accepts (cimplify_delivery.h CIMPLIFY_SHOAL_MAX_MESSAGE_BYTES). */
529
+ declare const SHOAL_MAX_MESSAGE_BYTES = 65536;
530
+ declare const CLOSE_REASONS: readonly ["mismatch", "hostile", "peer", "finished"];
531
+ type ShoalCloseReason = (typeof CLOSE_REASONS)[number];
532
+ type ShoalEvent = {
533
+ readonly kind: "reconciled";
534
+ readonly zone: number;
535
+ readonly wanted: number;
536
+ } | {
537
+ readonly kind: "unreconciled";
538
+ readonly zone: number;
539
+ } | {
540
+ readonly kind: "admitted";
541
+ readonly zone: number;
542
+ readonly index: number;
543
+ readonly body: Uint8Array;
544
+ } | {
545
+ readonly kind: "rejected" | "missing";
546
+ readonly zone: number;
547
+ readonly index: number;
548
+ } | {
549
+ readonly kind: "closed";
550
+ readonly reason: ShoalCloseReason;
551
+ };
552
+ interface ShoalPartRef {
553
+ readonly digest: string;
554
+ readonly size: number;
555
+ }
556
+ interface ShoalHoldingsOptions {
557
+ /** The game and the signed manifest root, 32 bytes each as hex. */
558
+ readonly game: string;
559
+ readonly root: string;
560
+ /** The manifest's zones, each its parts in play order. */
561
+ readonly zones: readonly (readonly ShoalPartRef[])[];
562
+ readonly holds: (digest: string) => boolean;
563
+ }
564
+ interface ShoalExports {
565
+ readonly memory: WebAssembly.Memory;
566
+ cimplify_spindrift_alloc(bytes: number): number;
567
+ cimplify_spindrift_free(pointer: number, bytes: number): void;
568
+ cimplify_shoal_holdings_open(open: number): number;
569
+ cimplify_shoal_holdings_set_held(holdings: number, zone: number, index: number, held: number): number;
570
+ cimplify_shoal_holdings_free(holdings: number): void;
571
+ cimplify_shoal_open(open: number): number;
572
+ cimplify_shoal_receive(session: number, message: number, len: number): number;
573
+ cimplify_shoal_transmit(session: number, out: number, capacity: number): number;
574
+ cimplify_shoal_event(session: number, out: number): number;
575
+ cimplify_shoal_need(session: number, zone: number, index: number): number;
576
+ cimplify_shoal_provide(session: number, zone: number, index: number, body: number, len: number): number;
577
+ cimplify_shoal_admitted(session: number, out: number): number;
578
+ cimplify_shoal_closed(session: number): number;
579
+ cimplify_shoal_free(session: number): void;
580
+ }
581
+ /**
582
+ * One game's holdings in the delivery WebAssembly module: what this store holds and its Shoal sketch, kept for as
583
+ * long as the store keeps the game. Mark parts that arrive or leave by any route with `setHeld`; sessions borrow it.
584
+ */
585
+ declare class ShoalHoldings {
586
+ private readonly exports;
587
+ private handle;
588
+ private sessions;
589
+ constructor(exports: ShoalExports, handle: number);
590
+ setHeld(zone: number, index: number, held: boolean): void;
591
+ /** A session over these holdings, asking for `order`'s zones in turn. Free it before the holdings. */
592
+ session(order: readonly number[]): ShoalSession;
593
+ /** Frees the holdings; every session over them must be freed first. */
594
+ free(): void;
595
+ }
596
+ /** One peer session in the delivery WebAssembly module, the same Rust session native hosts run. */
597
+ declare class ShoalSession {
598
+ private readonly exports;
599
+ private readonly holdings;
600
+ private readonly released;
601
+ private session;
602
+ private readonly message;
603
+ private readonly scratch;
604
+ private staging;
605
+ private stagingBytes;
606
+ constructor(exports: ShoalExports, session: number, holdings: ShoalHoldings, released: () => void);
607
+ private get bytes();
608
+ private get view();
609
+ /** Hands the session one received message and returns the events it raised. */
610
+ receive(message: Uint8Array): ShoalEvent[];
611
+ /** The next message to send, or null when there is nothing to send now. */
612
+ transmit(): Uint8Array | null;
613
+ events(): ShoalEvent[];
614
+ private admitted;
615
+ /** The held part the peer asked for whose bytes the session is waiting on. */
616
+ need(): {
617
+ readonly zone: number;
618
+ readonly index: number;
619
+ } | null;
620
+ provide(zone: number, index: number, body: Uint8Array): boolean;
621
+ /** Marks a part held or not in the holdings this session borrows. */
622
+ setHeld(zone: number, index: number, held: boolean): void;
623
+ closed(): ShoalCloseReason | null;
624
+ free(): void;
625
+ }
626
+ interface ShoalModule {
627
+ /** Opens a game's holdings: build once per kept game, not per session. */
628
+ holdings(options: ShoalHoldingsOptions): ShoalHoldings;
629
+ }
630
+ /**
631
+ * Peer sharing ships dark: it runs only when the server lists `peer_sharing` among the session program's `features`
632
+ * (ProgramInfo.features, filled by the registry's session host, never by a game).
633
+ */
634
+ declare const PEER_SHARING_FEATURE = "peer_sharing";
635
+ declare function peerSharingEnabled(features: readonly string[]): boolean;
636
+ /** The peer session module for a session whose program carries `features`, or null, without calling `load`, while off. */
637
+ declare function openPeerSharing(features: readonly string[], load: () => Promise<BufferSource | WebAssembly.Module>): Promise<ShoalModule | null>;
638
+ /** Loads the delivery module (the Spindrift decoder's module) for peer sessions. */
639
+ declare function shoalModule(wasm: BufferSource | WebAssembly.Module): Promise<ShoalModule>;
640
+ /** The part store a peer session admits into and serves from. `SharedPartStore` is one. */
641
+ interface PeerPartStore {
642
+ read(digest: string): Promise<Uint8Array | null>;
643
+ admit(digest: string, body: Uint8Array): Promise<void>;
644
+ }
645
+ /** The slice of RTCDataChannel a session drives, so tests can hand it a fake. */
646
+ interface PeerChannel {
647
+ binaryType: string;
648
+ readonly readyState: string;
649
+ readonly bufferedAmount: number;
650
+ bufferedAmountLowThreshold: number;
651
+ onopen: ((event: Event) => void) | null;
652
+ onmessage: ((event: MessageEvent) => void) | null;
653
+ onbufferedamountlow: ((event: Event) => void) | null;
654
+ onclose: ((event: Event) => void) | null;
655
+ send(data: Uint8Array): void;
656
+ close(): void;
657
+ }
658
+ interface PeerOutcome {
659
+ readonly reason: ShoalCloseReason;
660
+ readonly admitted: number;
661
+ readonly rejected: number;
662
+ readonly reconciled: readonly number[];
663
+ readonly unreconciled: readonly number[];
664
+ }
665
+ /**
666
+ * Runs `session` over a data channel until it closes: received messages go to the session, admitted bodies to
667
+ * `store`, the parts the peer asks for are read from `store` and staged, and sends respect the channel's buffer.
668
+ */
669
+ declare function runOverChannel(session: ShoalSession, channel: PeerChannel, store: PeerPartStore, zones: readonly (readonly ShoalPartRef[])[]): Promise<PeerOutcome>;
670
+
671
+ interface LocalSessionOptions {
672
+ readonly interactive_id: string;
673
+ readonly profile: RenderingProfile;
674
+ readonly persona: Persona;
675
+ readonly now?: () => number;
676
+ readonly answer?: (request: RequestEnvelope["call"]) => HostResponse["result"] | undefined;
677
+ readonly answerAsync?: (request: RequestEnvelope["call"]) => Promise<LocalAnswer> | undefined;
678
+ }
679
+ type LocalAnswer = {
680
+ readonly result: HostResponse["result"];
681
+ } | {
682
+ readonly error: CtxError;
683
+ };
684
+ declare function familyOf(operation: string): Family | null;
685
+ declare function localProgram(options: LocalSessionOptions): ProgramInfo;
686
+ declare function localSession(options: LocalSessionOptions): {
687
+ transport: CtxTransport;
688
+ hello: SessionHello;
689
+ };
690
+
691
+ interface EncodedSample {
692
+ readonly byteLength: number;
693
+ copyTo(destination: Uint8Array): void;
694
+ }
695
+ interface EncodedRingOptions {
696
+ readonly capacity_bytes: number;
697
+ readonly max_samples: number;
698
+ readonly page_bytes?: number;
699
+ }
700
+ declare class EncodedRing {
701
+ readonly arena: Uint8Array;
702
+ readonly pageBytes: number;
703
+ private readonly pages;
704
+ private readonly starts;
705
+ private readonly lengths;
706
+ private readonly times;
707
+ private readonly durations;
708
+ private readonly keys;
709
+ private readonly maxSamples;
710
+ private head;
711
+ private size;
712
+ private writePage;
713
+ dropped: number;
714
+ constructor(options: EncodedRingOptions);
715
+ get count(): number;
716
+ get pageCount(): number;
717
+ private slot;
718
+ push(sample: EncodedSample, time_us: number, duration_us: number, key: boolean): boolean;
719
+ private evict;
720
+ retain(window_us: number): void;
721
+ private nextKey;
722
+ endUs(): number;
723
+ startFor(keep_us: number): number;
724
+ firstAtOrAfter(time_us: number): number;
725
+ offset(index: number): number;
726
+ length(index: number): number;
727
+ time(index: number): number;
728
+ duration(index: number): number;
729
+ key(index: number): boolean;
730
+ clear(): void;
731
+ }
732
+
733
+ declare const CLIP_MP4_TYPE = "video/mp4";
734
+ interface ClipVideoTrack {
735
+ readonly width: number;
736
+ readonly height: number;
737
+ readonly description: Uint8Array;
738
+ }
739
+ interface ClipAudioTrack {
740
+ readonly codec: "mp4a" | "opus";
741
+ readonly sample_rate: number;
742
+ readonly channels: number;
743
+ readonly description: Uint8Array | null;
744
+ }
745
+ interface ClipRange {
746
+ readonly ring: EncodedRing;
747
+ readonly from: number;
748
+ readonly to: number;
749
+ }
750
+ interface ClipPlan {
751
+ readonly video: {
752
+ readonly track: ClipVideoTrack;
753
+ readonly range: ClipRange;
754
+ };
755
+ readonly audio: {
756
+ readonly track: ClipAudioTrack;
757
+ readonly range: ClipRange;
758
+ } | null;
759
+ }
760
+ declare function muxMp4(plan: ClipPlan): Uint8Array;
761
+
762
+ export { CAMERA_ON_COPY, CANVAS_PERMISSIONS, CANVAS_SANDBOX, CLIP_MP4_TYPE, CONTENT_BLOCKED_CLOSE, CONTENT_BLOCKED_ERROR, CONTENT_BLOCKED_STATUS, CacheStoragePartBackend, type CameraAnswer, CameraGrants, type CameraMedia, type CameraVideo, type CameraVideoFactory, type CameraViewRect, type CanvasBoot, type CanvasEngineChoice, type CanvasHostOptions, ChunkSource, type ClipPlan, type ContentOrigin, type ContentStore, type CreditAi, CtxTransport, DEFAULT_LAZY_BUDGET_BYTES, DEFAULT_LAZY_CONCURRENCY, type EdgePolicy, EncodedRing, EngineSessionGrant, FACE_LANDMARKER, type FaceCameraOptions, FaceCameraRelay, type FaceLandmarkRunner, type FaceLandmarkerPart, type FaceRunnerFactory, type FaceRunnerScope, type FlushScheduler, GuestEngineFactory, HOST_PAGE_ISOLATION_HEADERS, type HostCredit, ISOLATION_HEADERS, type IdentityCaptureOptions, IdentityCopy, IdentityGuidance, type IdentityGuidanceKey, type IdentitySheet, type IdentitySheetEvents, type IdentitySheetFactory, IndexedDbPartBackend, type LazyChunkOptions, type LazyChunkRef, LazyChunkServer, type LazyChunkSink, type LocalAnswer, type LocalSessionOptions, NETWORK_DIALERS, type OpenedSession, PART_STORE_NAME, PEER_SHARING_FEATURE, PartStoreBackend, PartStoreDisk, PartStoreOptions, PartStoreSnapshot, type PeerChannel, type PeerOutcome, type PeerPartStore, PortBridge, type PortBridgeStats, type RoomDialerFactory, RoomRelay, SHOAL_MAX_MESSAGE_BYTES, SessionHello, type SessionTarget, SharedPartStore, type ShoalCloseReason, type ShoalEvent, ShoalHoldings, type ShoalHoldingsOptions, type ShoalModule, type ShoalPartRef, ShoalSession, type SocketFactory, type SocketLike, type SurfaceOrigin, WEB_DISK_RESERVE_BYTES, ZoneSpans, animationFrameScheduler, blockedItems, cameraViewStyle, canvasDocument, canvasPolicy, domIdentitySheet, familyOf, forgetHostWebGpu, guestOrigin, hostWebGpu, httpChunks, iframeEngines, insetVideo, interactiveLabel, localProgram, localSession, manifestCredits, mediaPipeFaceRunner, muxMp4, openPeerSharing, openSession, openWebPartStore, parseContentOrigin, peerSharingEnabled, probeHostWebGpu, readViewRect, runOverChannel, serveContent, servesContent, sessionUrl, sha256Hex, shoalModule, webStorageDisk };