@defold-typescript/types 0.39.0 → 0.41.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 (227) hide show
  1. package/api-availability.json +4024 -716
  2. package/api-migrations.json +27 -0
  3. package/api-signatures.json +18118 -10264
  4. package/api-targets.json +448 -11
  5. package/examples/translations.json +619 -148
  6. package/fixtures/messages_doc.json +96 -0
  7. package/generated/b2d.d.ts +680 -4
  8. package/generated/b2d_body.d.ts +29 -103
  9. package/generated/b2d_chain.d.ts +5 -6
  10. package/generated/b2d_fixture.d.ts +34 -38
  11. package/generated/b2d_joint.d.ts +503 -25
  12. package/generated/b2d_shape.d.ts +199 -14
  13. package/generated/b2d_world.d.ts +57 -63
  14. package/generated/buffer.d.ts +33 -29
  15. package/generated/builtin-messages.d.ts +7 -1
  16. package/generated/bullet3d.d.ts +91 -0
  17. package/generated/bullet3d_collision_object.d.ts +433 -0
  18. package/generated/bullet3d_constraint.d.ts +818 -0
  19. package/generated/bullet3d_rigid_body.d.ts +429 -0
  20. package/generated/bullet3d_shape.d.ts +123 -0
  21. package/generated/bullet3d_world.d.ts +492 -0
  22. package/generated/camera.d.ts +31 -34
  23. package/generated/collectionfactory.d.ts +26 -27
  24. package/generated/collectionproxy.d.ts +22 -6
  25. package/generated/compute.d.ts +12 -238
  26. package/generated/crash.d.ts +24 -10
  27. package/generated/editor-vm/http.d.ts +90 -7
  28. package/generated/editor-vm/image.d.ts +7 -7
  29. package/generated/editor-vm/json.d.ts +11 -0
  30. package/generated/editor-vm/localization.d.ts +7 -7
  31. package/generated/editor-vm/tilemap_tiles.d.ts +56 -10
  32. package/generated/editor-vm/zip.d.ts +28 -0
  33. package/generated/editor.d.ts +1496 -430
  34. package/generated/factory.d.ts +21 -25
  35. package/generated/font.d.ts +64 -22
  36. package/generated/go.d.ts +243 -186
  37. package/generated/graphics.d.ts +374 -84
  38. package/generated/gui.d.ts +282 -492
  39. package/generated/html5.d.ts +5 -3
  40. package/generated/http.d.ts +31 -36
  41. package/generated/image.d.ts +127 -85
  42. package/generated/json.d.ts +34 -16
  43. package/generated/kinds/gui-script.d.ts +8 -0
  44. package/generated/kinds/render-script.d.ts +8 -0
  45. package/generated/kinds/script.d.ts +8 -0
  46. package/generated/label.d.ts +77 -7
  47. package/generated/liveupdate.d.ts +13 -10
  48. package/generated/material.d.ts +312 -360
  49. package/generated/model.d.ts +72 -42
  50. package/generated/particlefx.d.ts +19 -28
  51. package/generated/physics.d.ts +378 -144
  52. package/generated/profiler.d.ts +14 -24
  53. package/generated/render.d.ts +294 -297
  54. package/generated/resource.d.ts +753 -641
  55. package/generated/socket.d.ts +131 -134
  56. package/generated/sound.d.ts +65 -34
  57. package/generated/sprite.d.ts +39 -17
  58. package/generated/sys.d.ts +237 -182
  59. package/generated/tilemap.d.ts +21 -16
  60. package/generated/timer.d.ts +34 -21
  61. package/generated/versions/defold-1.12.4/b2d_body.d.ts +0 -7
  62. package/generated/versions/defold-1.12.4/buffer.d.ts +18 -17
  63. package/generated/versions/defold-1.12.4/camera.d.ts +23 -23
  64. package/generated/versions/defold-1.12.4/collectionfactory.d.ts +21 -19
  65. package/generated/versions/defold-1.12.4/collectionproxy.d.ts +2 -2
  66. package/generated/versions/defold-1.12.4/crash.d.ts +2 -2
  67. package/generated/versions/defold-1.12.4/factory.d.ts +15 -16
  68. package/generated/versions/defold-1.12.4/go.d.ts +15 -17
  69. package/generated/versions/defold-1.12.4/gui.d.ts +111 -193
  70. package/generated/versions/defold-1.12.4/html5.d.ts +4 -2
  71. package/generated/versions/defold-1.12.4/http.d.ts +4 -15
  72. package/generated/versions/defold-1.12.4/image.d.ts +38 -46
  73. package/generated/versions/defold-1.12.4/index.d.ts +2 -0
  74. package/generated/versions/defold-1.12.4/json.d.ts +10 -6
  75. package/generated/versions/defold-1.12.4/label.d.ts +2 -3
  76. package/generated/versions/defold-1.12.4/liveupdate.d.ts +5 -3
  77. package/generated/versions/defold-1.12.4/model.d.ts +34 -13
  78. package/generated/versions/defold-1.12.4/particlefx.d.ts +2 -5
  79. package/generated/versions/defold-1.12.4/physics.d.ts +82 -78
  80. package/generated/versions/defold-1.12.4/profiler.d.ts +3 -6
  81. package/generated/versions/defold-1.12.4/render.d.ts +160 -132
  82. package/generated/versions/defold-1.12.4/resource.d.ts +212 -209
  83. package/generated/versions/defold-1.12.4/socket.d.ts +45 -61
  84. package/generated/versions/defold-1.12.4/sound.d.ts +11 -11
  85. package/generated/versions/defold-1.12.4/sprite.d.ts +24 -6
  86. package/generated/versions/defold-1.12.4/sys.d.ts +45 -68
  87. package/generated/versions/defold-1.12.4/tilemap.d.ts +18 -11
  88. package/generated/versions/defold-1.12.4/timer.d.ts +5 -3
  89. package/generated/versions/defold-1.12.4/vmath.d.ts +5 -26
  90. package/generated/versions/defold-1.12.4/window.d.ts +1 -16
  91. package/generated/versions/defold-1.13.0/b2d_body.d.ts +10 -55
  92. package/generated/versions/defold-1.13.0/b2d_fixture.d.ts +25 -25
  93. package/generated/versions/defold-1.13.0/b2d_shape.d.ts +188 -5
  94. package/generated/versions/defold-1.13.0/b2d_world.d.ts +16 -10
  95. package/generated/versions/defold-1.13.0/buffer.d.ts +18 -17
  96. package/generated/versions/defold-1.13.0/camera.d.ts +27 -27
  97. package/generated/versions/defold-1.13.0/collectionfactory.d.ts +21 -19
  98. package/generated/versions/defold-1.13.0/collectionproxy.d.ts +2 -2
  99. package/generated/versions/defold-1.13.0/compute.d.ts +1 -70
  100. package/generated/versions/defold-1.13.0/crash.d.ts +2 -2
  101. package/generated/versions/defold-1.13.0/editor-vm/tilemap_tiles.d.ts +3 -3
  102. package/generated/versions/defold-1.13.0/editor.d.ts +34 -24
  103. package/generated/versions/defold-1.13.0/factory.d.ts +15 -16
  104. package/generated/versions/defold-1.13.0/go.d.ts +15 -17
  105. package/generated/versions/defold-1.13.0/graphics.d.ts +121 -37
  106. package/generated/versions/defold-1.13.0/gui.d.ts +111 -193
  107. package/generated/versions/defold-1.13.0/html5.d.ts +4 -2
  108. package/generated/versions/defold-1.13.0/http.d.ts +4 -15
  109. package/generated/versions/defold-1.13.0/image.d.ts +38 -46
  110. package/generated/versions/defold-1.13.0/index.d.ts +2 -0
  111. package/generated/versions/defold-1.13.0/json.d.ts +10 -6
  112. package/generated/versions/defold-1.13.0/label.d.ts +2 -3
  113. package/generated/versions/defold-1.13.0/liveupdate.d.ts +7 -5
  114. package/generated/versions/defold-1.13.0/material.d.ts +69 -107
  115. package/generated/versions/defold-1.13.0/model.d.ts +34 -13
  116. package/generated/versions/defold-1.13.0/particlefx.d.ts +2 -5
  117. package/generated/versions/defold-1.13.0/physics.d.ts +82 -78
  118. package/generated/versions/defold-1.13.0/profiler.d.ts +3 -6
  119. package/generated/versions/defold-1.13.0/render.d.ts +160 -132
  120. package/generated/versions/defold-1.13.0/resource.d.ts +217 -210
  121. package/generated/versions/defold-1.13.0/socket.d.ts +45 -61
  122. package/generated/versions/defold-1.13.0/sound.d.ts +11 -11
  123. package/generated/versions/defold-1.13.0/sprite.d.ts +24 -6
  124. package/generated/versions/defold-1.13.0/sys.d.ts +45 -68
  125. package/generated/versions/defold-1.13.0/tilemap.d.ts +18 -11
  126. package/generated/versions/defold-1.13.0/timer.d.ts +5 -3
  127. package/generated/versions/defold-1.13.0/vmath.d.ts +5 -26
  128. package/generated/versions/defold-1.13.0/window.d.ts +1 -16
  129. package/generated/versions/defold-1.13.1/b2d.d.ts +33 -0
  130. package/generated/versions/defold-1.13.1/b2d_body.d.ts +636 -0
  131. package/generated/versions/defold-1.13.1/b2d_chain.d.ts +106 -0
  132. package/generated/versions/defold-1.13.1/b2d_fixture.d.ts +157 -0
  133. package/generated/versions/defold-1.13.1/b2d_joint.d.ts +823 -0
  134. package/generated/versions/defold-1.13.1/b2d_shape.d.ts +400 -0
  135. package/generated/versions/defold-1.13.1/b2d_world.d.ts +320 -0
  136. package/generated/versions/defold-1.13.1/buffer.d.ts +189 -0
  137. package/generated/versions/defold-1.13.1/camera.d.ts +303 -0
  138. package/generated/versions/defold-1.13.1/collectionfactory.d.ts +151 -0
  139. package/generated/versions/defold-1.13.1/collectionproxy.d.ts +93 -0
  140. package/generated/versions/defold-1.13.1/compute.d.ts +237 -0
  141. package/generated/versions/defold-1.13.1/crash.d.ts +143 -0
  142. package/generated/versions/defold-1.13.1/editor-vm/http.d.ts +56 -0
  143. package/generated/versions/defold-1.13.1/editor-vm/image.d.ts +48 -0
  144. package/generated/versions/defold-1.13.1/editor-vm/json.d.ts +10 -0
  145. package/generated/versions/defold-1.13.1/editor-vm/localization.d.ts +42 -0
  146. package/generated/versions/defold-1.13.1/editor-vm/tilemap_tiles.d.ts +80 -0
  147. package/generated/versions/defold-1.13.1/editor-vm/zip.d.ts +10 -0
  148. package/generated/versions/defold-1.13.1/editor-vm/zlib.d.ts +24 -0
  149. package/generated/versions/defold-1.13.1/editor.d.ts +1121 -0
  150. package/generated/versions/defold-1.13.1/factory.d.ts +124 -0
  151. package/generated/versions/defold-1.13.1/font.d.ts +81 -0
  152. package/generated/versions/defold-1.13.1/go.d.ts +1107 -0
  153. package/generated/versions/defold-1.13.1/graphics.d.ts +411 -0
  154. package/generated/versions/defold-1.13.1/gui.d.ts +2353 -0
  155. package/generated/versions/defold-1.13.1/html5.d.ts +55 -0
  156. package/generated/versions/defold-1.13.1/http.d.ts +77 -0
  157. package/generated/versions/defold-1.13.1/image.d.ts +131 -0
  158. package/generated/versions/defold-1.13.1/index.d.ts +57 -0
  159. package/generated/versions/defold-1.13.1/json.d.ts +80 -0
  160. package/generated/versions/defold-1.13.1/kinds/editor-script.d.ts +14 -0
  161. package/generated/versions/defold-1.13.1/label.d.ts +93 -0
  162. package/generated/versions/defold-1.13.1/liveupdate.d.ts +142 -0
  163. package/generated/versions/defold-1.13.1/material.d.ts +408 -0
  164. package/generated/versions/defold-1.13.1/model.d.ts +272 -0
  165. package/generated/versions/defold-1.13.1/msg.d.ts +10 -0
  166. package/generated/versions/defold-1.13.1/particlefx.d.ts +163 -0
  167. package/generated/versions/defold-1.13.1/physics.d.ts +559 -0
  168. package/generated/versions/defold-1.13.1/profiler.d.ts +235 -0
  169. package/generated/versions/defold-1.13.1/render.d.ts +1190 -0
  170. package/generated/versions/defold-1.13.1/resource.d.ts +1523 -0
  171. package/generated/versions/defold-1.13.1/socket.d.ts +784 -0
  172. package/generated/versions/defold-1.13.1/sound.d.ts +292 -0
  173. package/generated/versions/defold-1.13.1/sprite.d.ts +175 -0
  174. package/generated/versions/defold-1.13.1/sys.d.ts +678 -0
  175. package/generated/versions/defold-1.13.1/tilemap.d.ts +208 -0
  176. package/generated/versions/defold-1.13.1/timer.d.ts +125 -0
  177. package/generated/versions/defold-1.13.1/types.d.ts +61 -0
  178. package/generated/versions/defold-1.13.1/vmath.d.ts +774 -0
  179. package/generated/versions/defold-1.13.1/window.d.ts +183 -0
  180. package/generated/versions/defold-1.13.1/zlib.d.ts +41 -0
  181. package/generated/vmath.d.ts +6 -26
  182. package/generated/window.d.ts +71 -71
  183. package/identity-vocabulary.json +561 -0
  184. package/index.d.ts +8 -0
  185. package/package.json +13 -2
  186. package/scripts/example-store-io.ts +12 -1
  187. package/scripts/extension-goldens.ts +1 -0
  188. package/scripts/fidelity-baseline.json +146 -46
  189. package/scripts/generate-api-availability.ts +90 -12
  190. package/scripts/generate-api-signatures.ts +14 -3
  191. package/scripts/import-defold-release.ts +85 -24
  192. package/scripts/prose-constants.ts +157 -0
  193. package/scripts/regen.ts +396 -78
  194. package/scripts/shared-handle-methods.ts +53 -0
  195. package/scripts/signature-store-fs.ts +1 -0
  196. package/scripts/sync-api-docs.ts +16 -5
  197. package/src/api-availability.ts +0 -0
  198. package/src/api-doc.ts +201 -3
  199. package/src/api-identity.ts +252 -0
  200. package/src/component-properties.d.ts +33 -0
  201. package/src/core-types.ts +28 -3
  202. package/src/correction-pins.ts +49 -0
  203. package/src/custom-messages.d.ts +4 -3
  204. package/src/doc-comment.ts +139 -23
  205. package/src/doc-corrections.ts +108 -0
  206. package/src/editor-vm-globals.d.ts +5 -2
  207. package/src/emit-dts.ts +2474 -281
  208. package/src/emit-messages.ts +52 -0
  209. package/src/engine-globals.d.ts +2 -2
  210. package/src/example-store.ts +125 -14
  211. package/src/field-correction-coverage.ts +204 -0
  212. package/src/fnv1a.ts +16 -0
  213. package/src/go-overloads.d.ts +33 -13
  214. package/src/index-base-table.ts +145 -0
  215. package/src/index-slot-classifications.ts +588 -0
  216. package/src/index.ts +39 -2
  217. package/src/library-index-slot-classifications.ts +332 -0
  218. package/src/lifecycle.ts +61 -199
  219. package/src/luals-type-expr.ts +354 -0
  220. package/src/msg-overloads.d.ts +0 -1
  221. package/src/param-correction-provenance.ts +64 -0
  222. package/src/return-correction-provenance.ts +58 -16
  223. package/src/script-api.ts +3 -1
  224. package/src/sys-overloads.d.ts +48 -0
  225. package/src/vmath-overloads.d.ts +27 -1
  226. package/src/window-event-guard.d.ts +6 -9
  227. package/url-parameters.json +1 -2
@@ -34,6 +34,11 @@ declare global {
34
34
  * the bounds are calculated as if all layers were collapsed into one.
35
35
  *
36
36
  * @param url - the tile map
37
+ * @returns `[x, y, w, h]`:
38
+ * - `x` — x coordinate of the bottom left corner. **⚠️ 1-based; passed to Defold unchanged.**
39
+ * - `y` — y coordinate of the bottom left corner. **⚠️ 1-based; passed to Defold unchanged.**
40
+ * - `w` — number of columns (width) in the tile map
41
+ * - `h` — number of rows (height) in the tile map
37
42
  * @example
38
43
  * ```ts
39
44
  * // get the level bounds.
@@ -50,8 +55,8 @@ declare global {
50
55
  *
51
56
  * @param url - the tile map
52
57
  * @param layer - name of the layer for the tile
53
- * @param x - x-coordinate of the tile
54
- * @param y - y-coordinate of the tile
58
+ * @param x - x-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
59
+ * @param y - y-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
55
60
  * @returns index of the tile
56
61
  * @example
57
62
  * ```ts
@@ -71,8 +76,8 @@ declare global {
71
76
  *
72
77
  * @param url - the tile map
73
78
  * @param layer - name of the layer for the tile
74
- * @param x - x-coordinate of the tile
75
- * @param y - y-coordinate of the tile
79
+ * @param x - x-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
80
+ * @param y - y-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
76
81
  * @returns index of the tile
77
82
  * @example
78
83
  * ```ts
@@ -134,15 +139,17 @@ declare global {
134
139
  * above and to the right of origin has coordinates 1,1.
135
140
  * Tiles to the left of and below origin are indexed 0, -1, -2 and so forth.
136
141
  *
142
+ * ```text
137
143
  * +-------+-------+------+------+
138
- * | 0,3 | 1,3 | 2,3 | 3,3 |
144
+ * | 0,3 | 1,3 | 2,3 | 3,3 |
139
145
  * +-------+-------+------+------+
140
- * | 0,2 | 1,2 | 2,2 | 3,2 |
146
+ * | 0,2 | 1,2 | 2,2 | 3,2 |
141
147
  * +-------+-------+------+------+
142
- * | 0,1 | 1,1 | 2,1 | 3,1 |
148
+ * | 0,1 | 1,1 | 2,1 | 3,1 |
143
149
  * +-------O-------+------+------+
144
- * | 0,0 | 1,0 | 2,0 | 3,0 |
150
+ * | 0,0 | 1,0 | 2,0 | 3,0 |
145
151
  * +-------+-------+------+------+
152
+ * ```
146
153
  *
147
154
  * The coordinates must be within the bounds of the tile map as it were created.
148
155
  * That is, it is not possible to extend the size of a tile map by setting tiles outside the edges.
@@ -153,8 +160,8 @@ declare global {
153
160
  *
154
161
  * @param url - the tile map
155
162
  * @param layer - name of the layer for the tile
156
- * @param x - x-coordinate of the tile
157
- * @param y - y-coordinate of the tile
163
+ * @param x - x-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
164
+ * @param y - y-coordinate of the tile. **⚠️ 1-based; passed to Defold unchanged.**
158
165
  * @param tile - index of new tile to set. 0 resets the cell
159
166
  * @param transform_bitmask - optional flip and/or rotation should be applied to the tile
160
167
  * @example
@@ -171,7 +178,7 @@ declare global {
171
178
  * }
172
179
  * ```
173
180
  */
174
- function set_tile(url: string | Hash | Url, layer: string | Hash, x: number, y: number, tile: number, transform_bitmask?: number): void;
181
+ function set_tile(url: string | Hash | Url, layer: string | Hash, x: number, y: number, tile: number, transform_bitmask?: number): boolean;
175
182
  /**
176
183
  * Sets the visibility of the tilemap layer
177
184
  *
@@ -51,11 +51,13 @@ declare global {
51
51
  * number The elapsed time - on first trigger it is time since timer.delay call, otherwise time since last trigger
52
52
  * @returns identifier for the create timer, returns timer.INVALID_TIMER_HANDLE if the timer can not be created
53
53
  * @example
54
+ * A simple one-shot timer
54
55
  * ```ts
55
- * // A simple one-shot timer
56
56
  * timer.delay(1, false, () => print("print in one second"));
57
- *
58
- * // Repetitive timer which canceled after 10 calls
57
+ * ```
58
+ * @example
59
+ * Repetitive timer which canceled after 10 calls
60
+ * ```ts
59
61
  * function call_every_second(self: unknown, handle: unknown, time_elapsed: unknown) {
60
62
  * const state = self as { counter: number };
61
63
  * state.counter = state.counter + 1;
@@ -49,7 +49,7 @@ declare global {
49
49
  function conj(q1: Quaternion): Quaternion;
50
50
  /**
51
51
  * Given two linearly independent vectors P and Q, the cross product,
52
- * P × Q, is a vector that is perpendicular to both P and Q and
52
+ * P × Q, is a vector that is perpendicular to both P and Q and
53
53
  * therefore normal to the plane containing them.
54
54
  * If the two vectors have the same direction (or have the exact
55
55
  * opposite direction from one another, i.e. are not linearly independent)
@@ -70,13 +70,11 @@ declare global {
70
70
  function cross(v1: Vector3, v2: Vector3): Vector3;
71
71
  /**
72
72
  * The returned value is a scalar defined as:
73
- * `P ⋅ Q = |P| |Q| cos θ`
74
- * where θ is the angle between the vectors P and Q.
73
+ * `P ⋅ Q = |P| |Q| cos θ`
74
+ * where θ is the angle between the vectors P and Q.
75
75
  *
76
76
  * - If the dot product is positive then the angle between the vectors is below 90 degrees.
77
- *
78
77
  * - If the dot product is zero the vectors are perpendicular (at right-angles to each other).
79
- *
80
78
  * - If the dot product is negative then the angle between the vectors is more than 90 degrees.
81
79
  *
82
80
  * @param v1 - first vector
@@ -437,8 +435,8 @@ declare global {
437
435
  /**
438
436
  * Calculates the extent the projection of the first vector onto the second.
439
437
  * The returned value is a scalar p defined as:
440
- * `p = |P| cos θ / |Q|`
441
- * where θ is the angle between the vectors P and Q.
438
+ * `p = |P| cos θ / |Q|`
439
+ * where θ is the angle between the vectors P and Q.
442
440
  *
443
441
  * @param v1 - vector to be projected on the second
444
442
  * @param v2 - vector onto which the first will be projected, must not have zero length
@@ -643,25 +641,6 @@ declare global {
643
641
  * ```
644
642
  */
645
643
  function rotate(q: Quaternion, v1: Vector3): Vector3;
646
- /**
647
- * Creates a vector of arbitrary size. The vector is initialized
648
- * with numeric values from a table.
649
- * The table values are converted to floating point
650
- * values. If a value cannot be converted, a 0 is stored in that
651
- * value position in the vector.
652
- *
653
- * @param t - table of numbers
654
- * @returns new vector
655
- * @example
656
- * ```ts
657
- * // How to create a vector with custom data to be used for animation easing:
658
- * const values = [0, 0.5, 0];
659
- * const vec = vmath.vector(values);
660
- * print(vec); // => vmath.vector (size: 3)
661
- * print(vec[2]); // => 0.5
662
- * ```
663
- */
664
- function vector(t: number[]): Vector;
665
644
  /**
666
645
  * Creates a new zero vector with all components set to 0.
667
646
  *
@@ -53,9 +53,7 @@ declare global {
53
53
  * @returns The mode for screen dimming
54
54
  *
55
55
  * - `window.DIMMING_UNKNOWN`
56
- *
57
56
  * - `window.DIMMING_ON`
58
- *
59
57
  * - `window.DIMMING_OFF`
60
58
  */
61
59
  function get_dim_mode(): window.DimModeState;
@@ -82,19 +80,12 @@ declare global {
82
80
  * table table containing these keys:
83
81
  *
84
82
  * - number `x`
85
- *
86
83
  * - number `y`
87
- *
88
84
  * - number `width`
89
- *
90
85
  * - number `height`
91
- *
92
86
  * - number `inset_left`
93
- *
94
87
  * - number `inset_top`
95
- *
96
88
  * - number `inset_right`
97
- *
98
89
  * - number `inset_bottom`
99
90
  */
100
91
  function get_safe_area(): { x: number; y: number; width: number; height: number; inset_left: number; inset_top: number; inset_right: number; inset_bottom: number };
@@ -110,7 +101,6 @@ declare global {
110
101
  * @param mode - The mode for screen dimming
111
102
  *
112
103
  * - `window.DIMMING_ON`
113
- *
114
104
  * - `window.DIMMING_OFF`
115
105
  */
116
106
  function set_dim_mode(mode: window.DimModeStateSettable): void;
@@ -125,20 +115,15 @@ declare global {
125
115
  * constant The type of event. Can be one of these:
126
116
  *
127
117
  * - `window.WINDOW_EVENT_FOCUS_LOST`
128
- *
129
118
  * - `window.WINDOW_EVENT_FOCUS_GAINED`
130
- *
131
119
  * - `window.WINDOW_EVENT_RESIZED`
132
- *
133
120
  * - `window.WINDOW_EVENT_ICONIFIED`
134
- *
135
121
  * - `window.WINDOW_EVENT_DEICONIFIED`
136
122
  *
137
123
  * `data`
138
124
  * table The callback value `data` is a table which currently holds these values
139
125
  *
140
126
  * - number `width`: The width of a resize event. nil otherwise.
141
- *
142
127
  * - number `height`: The height of a resize event. nil otherwise.
143
128
  * @example
144
129
  * ```ts
@@ -163,7 +148,7 @@ declare global {
163
148
  * });
164
149
  * ```
165
150
  */
166
- function set_listener(callback?: (self: unknown, event: typeof WINDOW_EVENT_FOCUS_LOST | typeof WINDOW_EVENT_FOCUS_GAINED | typeof WINDOW_EVENT_RESIZED | typeof WINDOW_EVENT_ICONFIED | typeof WINDOW_EVENT_DEICONIFIED, data: Record<string | number, unknown>) => void): void;
151
+ function set_listener(callback: ((self: unknown, event: (typeof window)[Extract<keyof typeof window, `WINDOW_EVENT_${string}`>], data: Record<string | number, unknown>) => void) | undefined): void;
167
152
  /**
168
153
  * Set the locking state for current mouse cursor on a PC platform.
169
154
  * This function locks or unlocks the mouse cursor to the center point of the window. While the cursor is locked,
@@ -0,0 +1,33 @@
1
+ /** @noSelfInFile */
2
+ import type { Hash, Opaque, Url } from "../../../src/core-types";
3
+
4
+ declare global {
5
+ /**
6
+ * Functions for interacting with Box2D.
7
+ */
8
+ namespace b2d {
9
+ type b2Body = Opaque<"b2Body">;
10
+ type b2World = Opaque<"b2World">;
11
+ /**
12
+ * Get the Box2D body from a collision object
13
+ *
14
+ * @param url - the url to the game object collision component
15
+ * @returns the body if successful. Otherwise `nil`.
16
+ */
17
+ function get_body(url: string | Hash | Url): Opaque<"b2Body"> | undefined;
18
+ /**
19
+ * Get the Box2D version information for the active backend.
20
+ *
21
+ * @returns version info with fields `version`, `major`, `middle`, and `minor`
22
+ */
23
+ function get_version(): { version: number; major: number; middle: number; minor: number };
24
+ /**
25
+ * Get the Box2D world from the current collection
26
+ *
27
+ * @returns the world if successful. Otherwise `nil`.
28
+ */
29
+ function get_world(): Opaque<"b2World">;
30
+ }
31
+ }
32
+
33
+ export {};