@vpmedia/phaser 1.103.0 → 1.105.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 (298) hide show
  1. package/dist/index.js +997 -403
  2. package/dist/index.js.map +1 -1
  3. package/dist/phaser/core/animation.d.ts +35 -11
  4. package/dist/phaser/core/animation.d.ts.map +1 -1
  5. package/dist/phaser/core/animation_manager.d.ts +20 -10
  6. package/dist/phaser/core/animation_manager.d.ts.map +1 -1
  7. package/dist/phaser/core/animation_parser.d.ts +2 -2
  8. package/dist/phaser/core/animation_parser.d.ts.map +1 -1
  9. package/dist/phaser/core/array_set.d.ts +3 -3
  10. package/dist/phaser/core/array_set.d.ts.map +1 -1
  11. package/dist/phaser/core/cache.d.ts +68 -60
  12. package/dist/phaser/core/cache.d.ts.map +1 -1
  13. package/dist/phaser/core/device.d.ts +23 -0
  14. package/dist/phaser/core/device.d.ts.map +1 -1
  15. package/dist/phaser/core/device_util.d.ts +10 -10
  16. package/dist/phaser/core/device_util.d.ts.map +1 -1
  17. package/dist/phaser/core/dom.d.ts +6 -5
  18. package/dist/phaser/core/dom.d.ts.map +1 -1
  19. package/dist/phaser/core/event_manager.d.ts +49 -158
  20. package/dist/phaser/core/event_manager.d.ts.map +1 -1
  21. package/dist/phaser/core/factory.d.ts +8 -7
  22. package/dist/phaser/core/factory.d.ts.map +1 -1
  23. package/dist/phaser/core/frame.d.ts +27 -48
  24. package/dist/phaser/core/frame.d.ts.map +1 -1
  25. package/dist/phaser/core/frame_data.d.ts +11 -58
  26. package/dist/phaser/core/frame_data.d.ts.map +1 -1
  27. package/dist/phaser/core/frame_util.d.ts +4 -14
  28. package/dist/phaser/core/frame_util.d.ts.map +1 -1
  29. package/dist/phaser/core/game.d.ts +50 -3
  30. package/dist/phaser/core/game.d.ts.map +1 -1
  31. package/dist/phaser/core/input.d.ts +66 -13
  32. package/dist/phaser/core/input.d.ts.map +1 -1
  33. package/dist/phaser/core/input_handler.d.ts +64 -20
  34. package/dist/phaser/core/input_handler.d.ts.map +1 -1
  35. package/dist/phaser/core/input_mouse.d.ts +26 -1
  36. package/dist/phaser/core/input_mouse.d.ts.map +1 -1
  37. package/dist/phaser/core/input_mspointer.d.ts +18 -2
  38. package/dist/phaser/core/input_mspointer.d.ts.map +1 -1
  39. package/dist/phaser/core/input_pointer.d.ts +53 -9
  40. package/dist/phaser/core/input_pointer.d.ts.map +1 -1
  41. package/dist/phaser/core/input_touch.d.ts +19 -1
  42. package/dist/phaser/core/input_touch.d.ts.map +1 -1
  43. package/dist/phaser/core/loader.d.ts +56 -28
  44. package/dist/phaser/core/loader.d.ts.map +1 -1
  45. package/dist/phaser/core/loader_parser.d.ts +4 -4
  46. package/dist/phaser/core/loader_parser.d.ts.map +1 -1
  47. package/dist/phaser/core/raf.d.ts +2 -2
  48. package/dist/phaser/core/raf.d.ts.map +1 -1
  49. package/dist/phaser/core/scale_manager.d.ts +77 -17
  50. package/dist/phaser/core/scale_manager.d.ts.map +1 -1
  51. package/dist/phaser/core/scene.d.ts +3 -1
  52. package/dist/phaser/core/scene.d.ts.map +1 -1
  53. package/dist/phaser/core/scene_manager.d.ts +25 -9
  54. package/dist/phaser/core/scene_manager.d.ts.map +1 -1
  55. package/dist/phaser/core/signal.d.ts +9 -8
  56. package/dist/phaser/core/signal.d.ts.map +1 -1
  57. package/dist/phaser/core/signal_binding.d.ts +2 -2
  58. package/dist/phaser/core/signal_binding.d.ts.map +1 -1
  59. package/dist/phaser/core/sound.d.ts +58 -10
  60. package/dist/phaser/core/sound.d.ts.map +1 -1
  61. package/dist/phaser/core/sound_manager.d.ts +28 -9
  62. package/dist/phaser/core/sound_manager.d.ts.map +1 -1
  63. package/dist/phaser/core/sound_sprite.d.ts +10 -4
  64. package/dist/phaser/core/sound_sprite.d.ts.map +1 -1
  65. package/dist/phaser/core/stage.d.ts +7 -3
  66. package/dist/phaser/core/stage.d.ts.map +1 -1
  67. package/dist/phaser/core/time.d.ts +32 -5
  68. package/dist/phaser/core/time.d.ts.map +1 -1
  69. package/dist/phaser/core/timer.d.ts +30 -10
  70. package/dist/phaser/core/timer.d.ts.map +1 -1
  71. package/dist/phaser/core/timer_event.d.ts +11 -12
  72. package/dist/phaser/core/timer_event.d.ts.map +1 -1
  73. package/dist/phaser/core/tween.d.ts +38 -14
  74. package/dist/phaser/core/tween.d.ts.map +1 -1
  75. package/dist/phaser/core/tween_data.d.ts +30 -5
  76. package/dist/phaser/core/tween_data.d.ts.map +1 -1
  77. package/dist/phaser/core/tween_easing.d.ts +31 -31
  78. package/dist/phaser/core/tween_easing.d.ts.map +1 -1
  79. package/dist/phaser/core/tween_manager.d.ts +8 -4
  80. package/dist/phaser/core/tween_manager.d.ts.map +1 -1
  81. package/dist/phaser/core/world.d.ts +1 -1
  82. package/dist/phaser/core/world.d.ts.map +1 -1
  83. package/dist/phaser/display/bitmap_text.d.ts +35 -20
  84. package/dist/phaser/display/bitmap_text.d.ts.map +1 -1
  85. package/dist/phaser/display/button.d.ts +24 -8
  86. package/dist/phaser/display/button.d.ts.map +1 -1
  87. package/dist/phaser/display/canvas/buffer.d.ts +6 -2
  88. package/dist/phaser/display/canvas/buffer.d.ts.map +1 -1
  89. package/dist/phaser/display/canvas/graphics.d.ts +3 -3
  90. package/dist/phaser/display/canvas/graphics.d.ts.map +1 -1
  91. package/dist/phaser/display/canvas/masker.d.ts.map +1 -1
  92. package/dist/phaser/display/canvas/pool.d.ts +2 -2
  93. package/dist/phaser/display/canvas/pool.d.ts.map +1 -1
  94. package/dist/phaser/display/canvas/renderer.d.ts +18 -5
  95. package/dist/phaser/display/canvas/renderer.d.ts.map +1 -1
  96. package/dist/phaser/display/canvas/tinter.d.ts +3 -3
  97. package/dist/phaser/display/canvas/tinter.d.ts.map +1 -1
  98. package/dist/phaser/display/canvas/util.d.ts +9 -9
  99. package/dist/phaser/display/canvas/util.d.ts.map +1 -1
  100. package/dist/phaser/display/display_object.d.ts +82 -23
  101. package/dist/phaser/display/display_object.d.ts.map +1 -1
  102. package/dist/phaser/display/graphics.d.ts +42 -16
  103. package/dist/phaser/display/graphics.d.ts.map +1 -1
  104. package/dist/phaser/display/graphics_data.d.ts +11 -1
  105. package/dist/phaser/display/graphics_data.d.ts.map +1 -1
  106. package/dist/phaser/display/graphics_data_util.d.ts +1 -1
  107. package/dist/phaser/display/graphics_data_util.d.ts.map +1 -1
  108. package/dist/phaser/display/group.d.ts +24 -9
  109. package/dist/phaser/display/group.d.ts.map +1 -1
  110. package/dist/phaser/display/image.d.ts +36 -13
  111. package/dist/phaser/display/image.d.ts.map +1 -1
  112. package/dist/phaser/display/sprite_batch.d.ts +1 -1
  113. package/dist/phaser/display/sprite_batch.d.ts.map +1 -1
  114. package/dist/phaser/display/sprite_util.d.ts +5 -5
  115. package/dist/phaser/display/sprite_util.d.ts.map +1 -1
  116. package/dist/phaser/display/text.d.ts +86 -66
  117. package/dist/phaser/display/text.d.ts.map +1 -1
  118. package/dist/phaser/display/webgl/abstract_filter.d.ts +8 -1
  119. package/dist/phaser/display/webgl/abstract_filter.d.ts.map +1 -1
  120. package/dist/phaser/display/webgl/base_texture.d.ts +14 -2
  121. package/dist/phaser/display/webgl/base_texture.d.ts.map +1 -1
  122. package/dist/phaser/display/webgl/blend_manager.d.ts +5 -2
  123. package/dist/phaser/display/webgl/blend_manager.d.ts.map +1 -1
  124. package/dist/phaser/display/webgl/earcut.d.ts +10 -10
  125. package/dist/phaser/display/webgl/earcut.d.ts.map +1 -1
  126. package/dist/phaser/display/webgl/earcut_node.d.ts +1 -1
  127. package/dist/phaser/display/webgl/earcut_node.d.ts.map +1 -1
  128. package/dist/phaser/display/webgl/fast_sprite_batch.d.ts +17 -1
  129. package/dist/phaser/display/webgl/fast_sprite_batch.d.ts.map +1 -1
  130. package/dist/phaser/display/webgl/filter_manager.d.ts +5 -1
  131. package/dist/phaser/display/webgl/filter_manager.d.ts.map +1 -1
  132. package/dist/phaser/display/webgl/filter_texture.d.ts +7 -2
  133. package/dist/phaser/display/webgl/filter_texture.d.ts.map +1 -1
  134. package/dist/phaser/display/webgl/graphics.d.ts +11 -10
  135. package/dist/phaser/display/webgl/graphics.d.ts.map +1 -1
  136. package/dist/phaser/display/webgl/graphics_data.d.ts +11 -1
  137. package/dist/phaser/display/webgl/graphics_data.d.ts.map +1 -1
  138. package/dist/phaser/display/webgl/mask_manager.d.ts.map +1 -1
  139. package/dist/phaser/display/webgl/render_texture.d.ts +12 -1
  140. package/dist/phaser/display/webgl/render_texture.d.ts.map +1 -1
  141. package/dist/phaser/display/webgl/renderer.d.ts +25 -6
  142. package/dist/phaser/display/webgl/renderer.d.ts.map +1 -1
  143. package/dist/phaser/display/webgl/shader/complex.d.ts +7 -1
  144. package/dist/phaser/display/webgl/shader/complex.d.ts.map +1 -1
  145. package/dist/phaser/display/webgl/shader/fast.d.ts +8 -1
  146. package/dist/phaser/display/webgl/shader/fast.d.ts.map +1 -1
  147. package/dist/phaser/display/webgl/shader/normal.d.ts +11 -0
  148. package/dist/phaser/display/webgl/shader/normal.d.ts.map +1 -1
  149. package/dist/phaser/display/webgl/shader/primitive.d.ts +7 -1
  150. package/dist/phaser/display/webgl/shader/primitive.d.ts.map +1 -1
  151. package/dist/phaser/display/webgl/shader/strip.d.ts +7 -1
  152. package/dist/phaser/display/webgl/shader/strip.d.ts.map +1 -1
  153. package/dist/phaser/display/webgl/shader_manager.d.ts +14 -2
  154. package/dist/phaser/display/webgl/shader_manager.d.ts.map +1 -1
  155. package/dist/phaser/display/webgl/sprite_batch.d.ts +19 -2
  156. package/dist/phaser/display/webgl/sprite_batch.d.ts.map +1 -1
  157. package/dist/phaser/display/webgl/stencil_manager.d.ts +8 -4
  158. package/dist/phaser/display/webgl/stencil_manager.d.ts.map +1 -1
  159. package/dist/phaser/display/webgl/texture.d.ts +35 -2
  160. package/dist/phaser/display/webgl/texture.d.ts.map +1 -1
  161. package/dist/phaser/display/webgl/texture_util.d.ts +2 -2
  162. package/dist/phaser/display/webgl/texture_util.d.ts.map +1 -1
  163. package/dist/phaser/display/webgl/util.d.ts +6 -6
  164. package/dist/phaser/display/webgl/util.d.ts.map +1 -1
  165. package/dist/phaser/geom/circle.d.ts +11 -10
  166. package/dist/phaser/geom/circle.d.ts.map +1 -1
  167. package/dist/phaser/geom/ellipse.d.ts +6 -5
  168. package/dist/phaser/geom/ellipse.d.ts.map +1 -1
  169. package/dist/phaser/geom/line.d.ts +14 -14
  170. package/dist/phaser/geom/line.d.ts.map +1 -1
  171. package/dist/phaser/geom/matrix.d.ts +13 -12
  172. package/dist/phaser/geom/matrix.d.ts.map +1 -1
  173. package/dist/phaser/geom/point.d.ts +19 -19
  174. package/dist/phaser/geom/point.d.ts.map +1 -1
  175. package/dist/phaser/geom/polygon.d.ts +6 -6
  176. package/dist/phaser/geom/polygon.d.ts.map +1 -1
  177. package/dist/phaser/geom/rectangle.d.ts +20 -20
  178. package/dist/phaser/geom/rectangle.d.ts.map +1 -1
  179. package/dist/phaser/geom/rounded_rectangle.d.ts +2 -2
  180. package/dist/phaser/geom/rounded_rectangle.d.ts.map +1 -1
  181. package/dist/phaser/geom/util/circle.d.ts +9 -7
  182. package/dist/phaser/geom/util/circle.d.ts.map +1 -1
  183. package/dist/phaser/geom/util/ellipse.d.ts +1 -1
  184. package/dist/phaser/geom/util/ellipse.d.ts.map +1 -1
  185. package/dist/phaser/geom/util/line.d.ts +5 -3
  186. package/dist/phaser/geom/util/line.d.ts.map +1 -1
  187. package/dist/phaser/geom/util/matrix.d.ts +2 -1
  188. package/dist/phaser/geom/util/matrix.d.ts.map +1 -1
  189. package/dist/phaser/geom/util/point.d.ts +19 -19
  190. package/dist/phaser/geom/util/point.d.ts.map +1 -1
  191. package/dist/phaser/geom/util/polygon.d.ts +2 -1
  192. package/dist/phaser/geom/util/polygon.d.ts.map +1 -1
  193. package/dist/phaser/geom/util/rectangle.d.ts +17 -15
  194. package/dist/phaser/geom/util/rectangle.d.ts.map +1 -1
  195. package/dist/phaser/geom/util/rounded_rectangle.d.ts +2 -1
  196. package/dist/phaser/geom/util/rounded_rectangle.d.ts.map +1 -1
  197. package/dist/phaser/util/math.d.ts +51 -142
  198. package/dist/phaser/util/math.d.ts.map +1 -1
  199. package/package.json +2 -2
  200. package/src/phaser/core/animation.ts +41 -18
  201. package/src/phaser/core/animation_manager.ts +21 -12
  202. package/src/phaser/core/animation_parser.ts +11 -3
  203. package/src/phaser/core/array_set.ts +8 -8
  204. package/src/phaser/core/cache.ts +75 -60
  205. package/src/phaser/core/device.ts +23 -1
  206. package/src/phaser/core/device_util.ts +10 -10
  207. package/src/phaser/core/dom.ts +5 -5
  208. package/src/phaser/core/event_manager.ts +52 -177
  209. package/src/phaser/core/factory.ts +25 -17
  210. package/src/phaser/core/frame.ts +37 -51
  211. package/src/phaser/core/frame_data.ts +29 -74
  212. package/src/phaser/core/frame_util.ts +3 -16
  213. package/src/phaser/core/game.ts +40 -11
  214. package/src/phaser/core/input.ts +68 -17
  215. package/src/phaser/core/input_handler.ts +81 -45
  216. package/src/phaser/core/input_mouse.ts +42 -13
  217. package/src/phaser/core/input_mspointer.ts +24 -9
  218. package/src/phaser/core/input_pointer.ts +55 -12
  219. package/src/phaser/core/input_touch.ts +26 -9
  220. package/src/phaser/core/loader.ts +97 -42
  221. package/src/phaser/core/loader_parser.ts +6 -7
  222. package/src/phaser/core/raf.ts +2 -2
  223. package/src/phaser/core/scale_manager.ts +85 -27
  224. package/src/phaser/core/scene.ts +3 -2
  225. package/src/phaser/core/scene_manager.ts +26 -11
  226. package/src/phaser/core/signal.ts +10 -10
  227. package/src/phaser/core/signal_binding.ts +2 -2
  228. package/src/phaser/core/sound.ts +72 -26
  229. package/src/phaser/core/sound_manager.ts +31 -13
  230. package/src/phaser/core/sound_sprite.ts +10 -5
  231. package/src/phaser/core/stage.ts +8 -4
  232. package/src/phaser/core/time.ts +33 -7
  233. package/src/phaser/core/timer.ts +40 -14
  234. package/src/phaser/core/timer_event.ts +23 -14
  235. package/src/phaser/core/tween.ts +43 -23
  236. package/src/phaser/core/tween_data.ts +31 -7
  237. package/src/phaser/core/tween_easing.ts +31 -31
  238. package/src/phaser/core/tween_manager.ts +10 -7
  239. package/src/phaser/core/world.ts +1 -2
  240. package/src/phaser/display/bitmap_text.ts +41 -18
  241. package/src/phaser/display/button.ts +24 -23
  242. package/src/phaser/display/canvas/buffer.ts +6 -3
  243. package/src/phaser/display/canvas/graphics.ts +3 -4
  244. package/src/phaser/display/canvas/masker.ts +2 -3
  245. package/src/phaser/display/canvas/pool.ts +3 -4
  246. package/src/phaser/display/canvas/renderer.ts +19 -7
  247. package/src/phaser/display/canvas/tinter.ts +4 -5
  248. package/src/phaser/display/canvas/util.ts +9 -9
  249. package/src/phaser/display/display_object.ts +120 -61
  250. package/src/phaser/display/graphics.ts +56 -25
  251. package/src/phaser/display/graphics_data.ts +11 -2
  252. package/src/phaser/display/graphics_data_util.ts +1 -2
  253. package/src/phaser/display/group.ts +32 -14
  254. package/src/phaser/display/image.ts +37 -19
  255. package/src/phaser/display/sprite_batch.ts +1 -2
  256. package/src/phaser/display/sprite_util.ts +5 -6
  257. package/src/phaser/display/text.ts +82 -56
  258. package/src/phaser/display/webgl/abstract_filter.ts +8 -2
  259. package/src/phaser/display/webgl/base_texture.ts +14 -3
  260. package/src/phaser/display/webgl/blend_manager.ts +5 -3
  261. package/src/phaser/display/webgl/earcut.ts +27 -27
  262. package/src/phaser/display/webgl/earcut_node.ts +1 -1
  263. package/src/phaser/display/webgl/fast_sprite_batch.ts +19 -4
  264. package/src/phaser/display/webgl/filter_manager.ts +5 -2
  265. package/src/phaser/display/webgl/filter_texture.ts +7 -3
  266. package/src/phaser/display/webgl/graphics.ts +10 -11
  267. package/src/phaser/display/webgl/graphics_data.ts +11 -2
  268. package/src/phaser/display/webgl/mask_manager.ts +2 -3
  269. package/src/phaser/display/webgl/render_texture.ts +12 -2
  270. package/src/phaser/display/webgl/renderer.ts +24 -7
  271. package/src/phaser/display/webgl/shader/complex.ts +7 -2
  272. package/src/phaser/display/webgl/shader/fast.ts +8 -2
  273. package/src/phaser/display/webgl/shader/normal.ts +12 -2
  274. package/src/phaser/display/webgl/shader/primitive.ts +7 -2
  275. package/src/phaser/display/webgl/shader/strip.ts +7 -2
  276. package/src/phaser/display/webgl/shader_manager.ts +13 -3
  277. package/src/phaser/display/webgl/sprite_batch.ts +20 -4
  278. package/src/phaser/display/webgl/stencil_manager.ts +8 -5
  279. package/src/phaser/display/webgl/texture.ts +35 -4
  280. package/src/phaser/display/webgl/texture_util.ts +2 -3
  281. package/src/phaser/display/webgl/util.ts +6 -6
  282. package/src/phaser/geom/circle.ts +10 -10
  283. package/src/phaser/geom/ellipse.ts +6 -6
  284. package/src/phaser/geom/line.ts +14 -14
  285. package/src/phaser/geom/matrix.ts +12 -12
  286. package/src/phaser/geom/point.ts +19 -19
  287. package/src/phaser/geom/polygon.ts +5 -5
  288. package/src/phaser/geom/rectangle.ts +21 -21
  289. package/src/phaser/geom/rounded_rectangle.ts +2 -2
  290. package/src/phaser/geom/util/circle.ts +7 -7
  291. package/src/phaser/geom/util/ellipse.ts +1 -1
  292. package/src/phaser/geom/util/line.ts +5 -5
  293. package/src/phaser/geom/util/matrix.ts +1 -1
  294. package/src/phaser/geom/util/point.ts +20 -20
  295. package/src/phaser/geom/util/polygon.ts +1 -1
  296. package/src/phaser/geom/util/rectangle.ts +15 -15
  297. package/src/phaser/geom/util/rounded_rectangle.ts +1 -1
  298. package/src/phaser/util/math.ts +65 -151
@@ -1,15 +1,20 @@
1
- // @ts-nocheck
2
1
  import { v4 as uuidv4 } from 'uuid';
3
2
  import { compileProgram } from '../util.js';
4
3
 
5
4
  // the next one is used for rendering primitives
6
5
 
7
6
  export class PrimitiveShader {
7
+ [key: string]: any;
8
+ gl!: any;
9
+ _UID!: any;
10
+ program!: any;
11
+ fragmentSrc!: any;
12
+ vertexSrc!: any;
8
13
  /**
9
14
  * Creates a new PrimitiveShader instance.
10
15
  * @param {WebGLRenderingContext} gl - The WebGL rendering context.
11
16
  */
12
- constructor(gl) {
17
+ constructor(gl: WebGLRenderingContext) {
13
18
  this.gl = gl;
14
19
  this._UID = uuidv4();
15
20
  /** @type {WebGLProgram} */
@@ -1,15 +1,20 @@
1
- // @ts-nocheck
2
1
  import { v4 as uuidv4 } from 'uuid';
3
2
  import { compileProgram } from '../util.js';
4
3
 
5
4
  // the next one is used for rendering triangle strips
6
5
 
7
6
  export class StripShader {
7
+ [key: string]: any;
8
+ gl!: any;
9
+ _UID!: any;
10
+ program!: any;
11
+ fragmentSrc!: any;
12
+ vertexSrc!: any;
8
13
  /**
9
14
  * Creates a new StripShader instance.
10
15
  * @param {WebGLRenderingContext} gl - The WebGL rendering context.
11
16
  */
12
- constructor(gl) {
17
+ constructor(gl: WebGLRenderingContext) {
13
18
  this.gl = gl;
14
19
  this._UID = uuidv4();
15
20
  /** @type {WebGLProgram} */
@@ -1,4 +1,3 @@
1
- // @ts-nocheck
2
1
  import { ComplexPrimitiveShader } from './shader/complex.js';
3
2
  import { FastShader } from './shader/fast.js';
4
3
  import { NormalShader } from './shader/normal.js';
@@ -6,6 +5,17 @@ import { PrimitiveShader } from './shader/primitive.js';
6
5
  import { StripShader } from './shader/strip.js';
7
6
 
8
7
  export class WebGLShaderManager {
8
+ [key: string]: any;
9
+ gl!: any;
10
+ primitiveShader!: any;
11
+ complexPrimitiveShader!: any;
12
+ defaultShader!: any;
13
+ fastShader!: any;
14
+ stripShader!: any;
15
+ maxAttibs!: any;
16
+ attribState!: any;
17
+ tempAttribState!: any;
18
+ stack!: any;
9
19
  /**
10
20
  * Initializes the shader manager with a WebGL context.
11
21
  */
@@ -43,7 +53,7 @@ export class WebGLShaderManager {
43
53
  * Sets up the shader manager for WebGL rendering.
44
54
  * @param {number[]} attribs - The attribute locations to set up.
45
55
  */
46
- setAttribs(attribs) {
56
+ setAttribs(attribs: number[]) {
47
57
  // reset temp state
48
58
  let i;
49
59
  for (i = 0; i < this.tempAttribState.length; i += 1) {
@@ -72,7 +82,7 @@ export class WebGLShaderManager {
72
82
  * @param {NormalShader} shader - The shader to set up.
73
83
  * @returns {boolean} Whether the shader setup was successful.
74
84
  */
75
- setShader(shader) {
85
+ setShader(shader: NormalShader) {
76
86
  if (this._currentId === shader._UID) {
77
87
  return false;
78
88
  }
@@ -1,8 +1,24 @@
1
- // @ts-nocheck
2
1
  import { AbstractFilter } from './abstract_filter.js';
3
2
  import { NormalShader } from './shader/normal.js';
4
3
 
5
4
  export class WebGLSpriteBatch {
5
+ [key: string]: any;
6
+ vertSize!: any;
7
+ size!: any;
8
+ vertices!: any;
9
+ positions!: any;
10
+ colors!: any;
11
+ indices!: any;
12
+ lastIndexCount!: any;
13
+ drawing!: any;
14
+ currentBatchSize!: any;
15
+ currentBaseTexture!: any;
16
+ dirty!: any;
17
+ textures!: any;
18
+ blendModes!: any;
19
+ shaders!: any;
20
+ sprites!: any;
21
+ defaultShader!: any;
6
22
  /**
7
23
  * Creates a new SpriteBatch instance.
8
24
  */
@@ -72,7 +88,7 @@ export class WebGLSpriteBatch {
72
88
  * Renders the sprite batch using WebGL.
73
89
  * @param {object} renderSession - The render session to use.
74
90
  */
75
- begin(renderSession) {
91
+ begin(renderSession: any) {
76
92
  this.renderSession = renderSession;
77
93
  this.shader = this.renderSession.shaderManager.defaultShader;
78
94
  this.start();
@@ -90,7 +106,7 @@ export class WebGLSpriteBatch {
90
106
  * @param {import('../../display/image.js').Image} sprite - The sprite to render.
91
107
  * @param {import('../../geom/matrix.js').Matrix} matrix - The transformation matrix.
92
108
  */
93
- render(sprite, matrix) {
109
+ render(sprite: import('../../display/image.js').Image, matrix: import('../../geom/matrix.js').Matrix) {
94
110
  const texture = sprite.texture;
95
111
  // They provided an alternative rendering matrix, so use it
96
112
  let wt = sprite.worldTransform;
@@ -299,7 +315,7 @@ export class WebGLSpriteBatch {
299
315
  * @param {number} size - The size of the batch.
300
316
  * @param {number} startIndex - The start index in the batch.
301
317
  */
302
- renderBatch(texture, size, startIndex) {
318
+ renderBatch(texture: import('./base_texture.js').BaseTexture, size: number, startIndex: number) {
303
319
  if (size === 0) {
304
320
  return;
305
321
  }
@@ -1,7 +1,10 @@
1
- // @ts-nocheck
2
1
  import { hex2rgb } from '../../util/math.js';
3
2
 
4
3
  export class WebGLStencilManager {
4
+ [key: string]: any;
5
+ stencilStack!: any;
6
+ reverse!: any;
7
+ count!: any;
5
8
  /**
6
9
  * Initializes the stencil manager.
7
10
  */
@@ -15,7 +18,7 @@ export class WebGLStencilManager {
15
18
  * Binds the stencil buffer for rendering.
16
19
  * @param {WebGLRenderingContext} gl - The WebGL rendering context.
17
20
  */
18
- setContext(gl) {
21
+ setContext(gl: WebGLRenderingContext) {
19
22
  this.gl = gl;
20
23
  }
21
24
 
@@ -33,7 +36,7 @@ export class WebGLStencilManager {
33
36
  * @param {import('./graphics_data.js').GraphicsData} webGLData - The WebGL graphics data.
34
37
  * @param {object} renderSession - The rendering session.
35
38
  */
36
- pushStencil(graphics, webGLData, renderSession) {
39
+ pushStencil(graphics: import('../graphics.js').Graphics, webGLData: import('./graphics_data.js').GraphicsData, renderSession: any) {
37
40
  const gl = renderSession.gl;
38
41
  this.bindGraphics(graphics, webGLData, renderSession);
39
42
  if (this.stencilStack.length === 0) {
@@ -91,7 +94,7 @@ export class WebGLStencilManager {
91
94
  * @param {import('./graphics_data.js').GraphicsData} webGLData - The WebGL graphics data.
92
95
  * @param {object} renderSession - The rendering session.
93
96
  */
94
- bindGraphics(graphics, webGLData, renderSession) {
97
+ bindGraphics(graphics: import('../graphics.js').Graphics, webGLData: import('./graphics_data.js').GraphicsData, renderSession: any) {
95
98
  // if(this._currentGraphics === graphics)return;
96
99
  // this._currentGraphics = graphics;
97
100
  const gl = renderSession.gl;
@@ -138,7 +141,7 @@ export class WebGLStencilManager {
138
141
  * @param {import('./graphics_data.js').GraphicsData} webGLData - The WebGL graphics data.
139
142
  * @param {object} renderSession - The rendering session.
140
143
  */
141
- popStencil(graphics, webGLData, renderSession) {
144
+ popStencil(graphics: import('../graphics.js').Graphics, webGLData: import('./graphics_data.js').GraphicsData, renderSession: any) {
142
145
  const gl = renderSession.gl;
143
146
  this.stencilStack.pop();
144
147
  this.count -= 1;
@@ -1,7 +1,26 @@
1
- // @ts-nocheck
2
1
  import { Rectangle } from '../../geom/rectangle.js';
3
2
 
4
3
  export class TextureUvs {
4
+ noFrame!: any;
5
+ baseTexture!: any;
6
+ frame!: any;
7
+ trim!: any;
8
+ valid!: any;
9
+ isTiling!: any;
10
+ requiresUpdate!: any;
11
+ requiresReTint!: any;
12
+ _uvs!: any;
13
+ width!: any;
14
+ height!: any;
15
+ crop!: any;
16
+ x0!: any;
17
+ y0!: any;
18
+ x1!: any;
19
+ y1!: any;
20
+ x2!: any;
21
+ y2!: any;
22
+ x3!: any;
23
+ y3!: any;
5
24
  /**
6
25
  * Creates a new Texture instance.
7
26
  */
@@ -18,6 +37,18 @@ export class TextureUvs {
18
37
  }
19
38
 
20
39
  export class Texture {
40
+ noFrame!: any;
41
+ baseTexture!: any;
42
+ frame!: any;
43
+ trim!: any;
44
+ valid!: any;
45
+ isTiling!: any;
46
+ requiresUpdate!: any;
47
+ requiresReTint!: any;
48
+ _uvs!: any;
49
+ width!: any;
50
+ height!: any;
51
+ crop!: any;
21
52
  /**
22
53
  * Creates a new Texture instance.
23
54
  * @param {import('./base_texture.js').BaseTexture} baseTexture - The base texture to use.
@@ -25,7 +56,7 @@ export class Texture {
25
56
  * @param {Rectangle | null | undefined} crop - The crop rectangle.
26
57
  * @param {Rectangle | null | undefined} trim - The trim rectangle.
27
58
  */
28
- constructor(baseTexture, frame = null, crop = null, trim = null) {
59
+ constructor(baseTexture: import('./base_texture.js').BaseTexture, frame: Rectangle | null | undefined = null, crop: Rectangle | null | undefined = null, trim: Rectangle | null | undefined = null) {
29
60
  this.noFrame = false;
30
61
  if (!frame) {
31
62
  this.noFrame = true;
@@ -77,7 +108,7 @@ export class Texture {
77
108
  * Destroys this texture and cleans up resources.
78
109
  * @param {boolean} destroyBase - Whether to destroy the base texture as well.
79
110
  */
80
- destroy(destroyBase = false) {
111
+ destroy(destroyBase: boolean = false) {
81
112
  if (destroyBase) {
82
113
  this.baseTexture.destroy();
83
114
  }
@@ -89,7 +120,7 @@ export class Texture {
89
120
  * @param {Rectangle} frame - The new frame rectangle.
90
121
  * @throws {Error} If the operation fails.
91
122
  */
92
- setFrame(frame) {
123
+ setFrame(frame: Rectangle) {
93
124
  this.noFrame = false;
94
125
  this.frame = frame;
95
126
  this.width = frame.width;
@@ -1,4 +1,3 @@
1
- // @ts-nocheck
2
1
  import { BaseTexture } from './base_texture.js';
3
2
  import { Texture } from './texture.js';
4
3
 
@@ -8,7 +7,7 @@ import { Texture } from './texture.js';
8
7
  * @param {number} [scaleMode] - The scale mode to use for the texture.
9
8
  * @returns {BaseTexture} The newly created BaseTexture instance.
10
9
  */
11
- export const baseTextureFromCanvas = (canvas, scaleMode) => {
10
+ export const baseTextureFromCanvas = (canvas: HTMLCanvasElement, scaleMode: number) => {
12
11
  if (canvas.width === 0) {
13
12
  canvas.width = 1;
14
13
  }
@@ -24,6 +23,6 @@ export const baseTextureFromCanvas = (canvas, scaleMode) => {
24
23
  * @param {number} [scaleMode] - The scale mode to use for the texture.
25
24
  * @returns {Texture} The newly created Texture instance.
26
25
  */
27
- export const textureFromCanvas = (canvas, scaleMode) => {
26
+ export const textureFromCanvas = (canvas: HTMLCanvasElement, scaleMode?: any) => {
28
27
  return new Texture(baseTextureFromCanvas(canvas, scaleMode));
29
28
  };
@@ -18,7 +18,7 @@ export const CONTEXT_LOST_WEBGL = 0x9242;
18
18
  * @param {WebGLRenderingContext} gl - The WebGL rendering context.
19
19
  * @returns {number} The error code from the WebGL context.
20
20
  */
21
- export const getWebGLContextErrorCode = (gl) => {
21
+ export const getWebGLContextErrorCode = (gl: WebGLRenderingContext) => {
22
22
  return gl?.getError() ?? 0;
23
23
  };
24
24
 
@@ -27,7 +27,7 @@ export const getWebGLContextErrorCode = (gl) => {
27
27
  * @param {number} errorCode - The error code to look up.
28
28
  * @returns {string} The name of the WebGL error.
29
29
  */
30
- export const getWebGLContextErrorName = (errorCode) => {
30
+ export const getWebGLContextErrorName = (errorCode: number) => {
31
31
  switch (errorCode) {
32
32
  case NO_ERROR:
33
33
  return 'NO_ERROR';
@@ -60,7 +60,7 @@ export const initDefaultShaders = () => {};
60
60
  * @param {object} shaderType - The type of shader to compile.
61
61
  * @returns {WebGLShader} The compiled WebGL shader or null if compilation failed.
62
62
  */
63
- export const compileShader = (gl, shaderSrc, shaderType) => {
63
+ export const compileShader = (gl: WebGLRenderingContext, shaderSrc: string[]|string, shaderType: any) => {
64
64
  const src = Array.isArray(shaderSrc) ? shaderSrc.join('\n') : shaderSrc;
65
65
  const shader = gl.createShader(shaderType);
66
66
  gl.shaderSource(shader, src);
@@ -81,7 +81,7 @@ export const compileShader = (gl, shaderSrc, shaderType) => {
81
81
  * @param {string[]|string} shaderSrc - The vertex shader source code.
82
82
  * @returns {WebGLShader} The compiled WebGL vertex shader or null if compilation failed.
83
83
  */
84
- export const compileVertexShader = (gl, shaderSrc) => {
84
+ export const compileVertexShader = (gl: WebGLRenderingContext, shaderSrc: string[]|string) => {
85
85
  return compileShader(gl, shaderSrc, gl.VERTEX_SHADER);
86
86
  };
87
87
 
@@ -91,7 +91,7 @@ export const compileVertexShader = (gl, shaderSrc) => {
91
91
  * @param {string[]|string} shaderSrc - The fragment shader source code.
92
92
  * @returns {WebGLShader} The compiled WebGL fragment shader or null if compilation failed.
93
93
  */
94
- export const compileFragmentShader = (gl, shaderSrc) => {
94
+ export const compileFragmentShader = (gl: WebGLRenderingContext, shaderSrc: string[]|string) => {
95
95
  return compileShader(gl, shaderSrc, gl.FRAGMENT_SHADER);
96
96
  };
97
97
 
@@ -102,7 +102,7 @@ export const compileFragmentShader = (gl, shaderSrc) => {
102
102
  * @param {string[]|string} fragmentSrc - The fragment shader source code.
103
103
  * @returns {WebGLProgram} The compiled WebGL shader program or null if compilation failed.
104
104
  */
105
- export const compileProgram = (gl, vertexSrc, fragmentSrc) => {
105
+ export const compileProgram = (gl: WebGLRenderingContext, vertexSrc: string[]|string, fragmentSrc: string[]|string) => {
106
106
  const fragmentShader = compileFragmentShader(gl, fragmentSrc);
107
107
  const vertexShader = compileVertexShader(gl, vertexSrc);
108
108
 
@@ -17,7 +17,7 @@ export class Circle {
17
17
  * @param {number} y - The y coordinate of the center point (default: 0).
18
18
  * @param {number} diameter - The diameter of the circle (default: 0).
19
19
  */
20
- constructor(x = 0, y = 0, diameter = 0) {
20
+ constructor(x: number = 0, y: number = 0, diameter: number = 0) {
21
21
  /** @type {number} */
22
22
  this.x = x;
23
23
  /** @type {number} */
@@ -46,7 +46,7 @@ export class Circle {
46
46
  * @param {Point} output - The point to store the result in (optional).
47
47
  * @returns {Point} A random point within this circle.
48
48
  */
49
- random(output = null) {
49
+ random(output: Point = null) {
50
50
  const result = output || new Point();
51
51
  const t = 2 * Math.PI * Math.random();
52
52
  const u = Math.random() + Math.random();
@@ -73,7 +73,7 @@ export class Circle {
73
73
  * @param {number} diameter - The new diameter of the circle.
74
74
  * @returns {Circle} This circle instance for chaining.
75
75
  */
76
- setTo(x, y, diameter) {
76
+ setTo(x: number, y: number, diameter: number) {
77
77
  this.x = x;
78
78
  this.y = y;
79
79
  this._diameter = diameter;
@@ -86,7 +86,7 @@ export class Circle {
86
86
  * @param {Circle} source - The circle to copy values from.
87
87
  * @returns {Circle} This circle instance for chaining.
88
88
  */
89
- copyFrom(source) {
89
+ copyFrom(source: Circle) {
90
90
  return this.setTo(source.x, source.y, source.diameter);
91
91
  }
92
92
 
@@ -95,7 +95,7 @@ export class Circle {
95
95
  * @param {Circle} dest - The circle to copy values to.
96
96
  * @returns {Circle} The destination circle.
97
97
  */
98
- copyTo(dest) {
98
+ copyTo(dest: Circle) {
99
99
  dest.x = this.x;
100
100
  dest.y = this.y;
101
101
  dest.diameter = this._diameter;
@@ -108,7 +108,7 @@ export class Circle {
108
108
  * @param {boolean} round - Whether to round the result (default: false).
109
109
  * @returns {number} The distance between the circles.
110
110
  */
111
- distance(dest, round = false) {
111
+ distance(dest: Circle, round: boolean = false) {
112
112
  const d = distance(this.x, this.y, dest.x, dest.y);
113
113
  return round ? Math.round(d) : d;
114
114
  }
@@ -127,7 +127,7 @@ export class Circle {
127
127
  * @param {number} y - The y coordinate of the point to check.
128
128
  * @returns {boolean} True if the point is contained within this circle, false otherwise.
129
129
  */
130
- contains(x, y) {
130
+ contains(x: number, y: number) {
131
131
  return contains(this, x, y);
132
132
  }
133
133
 
@@ -138,7 +138,7 @@ export class Circle {
138
138
  * @param {Point} out - The point to store the result in (optional).
139
139
  * @returns {Point} A point at the specified angle on the circumference of this circle.
140
140
  */
141
- circumferencePoint(angle, asDegrees?, out?) {
141
+ circumferencePoint(angle: number, asDegrees?: boolean, out?: Point) {
142
142
  return circumferencePoint(this, angle, asDegrees, out);
143
143
  }
144
144
 
@@ -148,7 +148,7 @@ export class Circle {
148
148
  * @param {number} dy - The amount to offset the y coordinate by.
149
149
  * @returns {Circle} This circle instance for chaining.
150
150
  */
151
- offset(dx, dy) {
151
+ offset(dx: number, dy: number) {
152
152
  this.x += dx;
153
153
  this.y += dy;
154
154
  return this;
@@ -159,7 +159,7 @@ export class Circle {
159
159
  * @param {Point} point - The point to offset the circle by.
160
160
  * @returns {Circle} This circle instance for chaining.
161
161
  */
162
- offsetPoint(point) {
162
+ offsetPoint(point: Point) {
163
163
  return this.offset(point.x, point.y);
164
164
  }
165
165
 
@@ -17,7 +17,7 @@ export class Ellipse {
17
17
  * @param {number} width - The width of the ellipse (default: 0).
18
18
  * @param {number} height - The height of the ellipse (default: 0).
19
19
  */
20
- constructor(x = 0, y = 0, width = 0, height = 0) {
20
+ constructor(x: number = 0, y: number = 0, width: number = 0, height: number = 0) {
21
21
  /** @type {number} */
22
22
  this.x = x;
23
23
  /** @type {number} */
@@ -38,7 +38,7 @@ export class Ellipse {
38
38
  * @param {number} height - The new height of the ellipse.
39
39
  * @returns {Ellipse} This ellipse instance for chaining.
40
40
  */
41
- setTo(x, y, width, height) {
41
+ setTo(x: number, y: number, width: number, height: number) {
42
42
  this.x = x;
43
43
  this.y = y;
44
44
  this.width = width;
@@ -59,7 +59,7 @@ export class Ellipse {
59
59
  * @param {Ellipse} source - The ellipse to copy values from.
60
60
  * @returns {Ellipse} This ellipse instance for chaining.
61
61
  */
62
- copyFrom(source) {
62
+ copyFrom(source: Ellipse) {
63
63
  return this.setTo(source.x, source.y, source.width, source.height);
64
64
  }
65
65
 
@@ -68,7 +68,7 @@ export class Ellipse {
68
68
  * @param {Ellipse} dest - The ellipse to copy values to.
69
69
  * @returns {Ellipse} The destination ellipse.
70
70
  */
71
- copyTo(dest) {
71
+ copyTo(dest: Ellipse) {
72
72
  dest.x = this.x;
73
73
  dest.y = this.y;
74
74
  dest.width = this.width;
@@ -82,7 +82,7 @@ export class Ellipse {
82
82
  * @param {number} y - The y coordinate of the point to check.
83
83
  * @returns {boolean} True if the point is contained within this ellipse, false otherwise.
84
84
  */
85
- contains(x, y) {
85
+ contains(x: number, y: number) {
86
86
  return contains(this, x, y);
87
87
  }
88
88
 
@@ -91,7 +91,7 @@ export class Ellipse {
91
91
  * @param {Point} output - The point to store the result in (optional).
92
92
  * @returns {Point} A random point within this ellipse.
93
93
  */
94
- random(output = null) {
94
+ random(output: Point = null) {
95
95
  const result = output || new Point();
96
96
  const p = Math.random() * Math.PI * 2;
97
97
  const r = Math.random();
@@ -15,7 +15,7 @@ export class Line {
15
15
  * @param {number} x2 - The x coordinate of the end point (default: 0).
16
16
  * @param {number} y2 - The y coordinate of the end point (default: 0).
17
17
  */
18
- constructor(x1 = 0, y1 = 0, x2 = 0, y2 = 0) {
18
+ constructor(x1: number = 0, y1: number = 0, x2: number = 0, y2: number = 0) {
19
19
  /** @type {Point} */
20
20
  this.start = new Point(x1, y1);
21
21
  /** @type {Point} */
@@ -32,7 +32,7 @@ export class Line {
32
32
  * @param {number} y2 - The new y coordinate of the end point.
33
33
  * @returns {Line} This line instance for chaining.
34
34
  */
35
- setTo(x1, y1, x2, y2) {
35
+ setTo(x1: number, y1: number, x2: number, y2: number) {
36
36
  this.start.setTo(x1, y1);
37
37
  this.end.setTo(x2, y2);
38
38
  return this;
@@ -45,7 +45,7 @@ export class Line {
45
45
  * @param {boolean} useCenter - Whether to use the center of the sprites (default: false).
46
46
  * @returns {Line} This line instance for chaining.
47
47
  */
48
- fromSprite(startSprite, endSprite, useCenter = false) {
48
+ fromSprite(startSprite: any, endSprite: any, useCenter: boolean = false) {
49
49
  if (useCenter) {
50
50
  return this.setTo(startSprite.center.x, startSprite.center.y, endSprite.center.x, endSprite.center.y);
51
51
  }
@@ -60,7 +60,7 @@ export class Line {
60
60
  * @param {number} length - The length of the line.
61
61
  * @returns {Line} This line instance for chaining.
62
62
  */
63
- fromAngle(x, y, angle, length) {
63
+ fromAngle(x: number, y: number, angle: number, length: number) {
64
64
  this.start.setTo(x, y);
65
65
  this.end.setTo(x + Math.cos(angle) * length, y + Math.sin(angle) * length);
66
66
  return this;
@@ -72,7 +72,7 @@ export class Line {
72
72
  * @param {boolean} asDegrees - Whether the angle is provided in degrees (default: false).
73
73
  * @returns {Line} This line instance for chaining.
74
74
  */
75
- rotate(angle, asDegrees = false) {
75
+ rotate(angle: number, asDegrees: boolean = false) {
76
76
  const cx = (this.start.x + this.end.x) / 2;
77
77
  const cy = (this.start.y + this.end.y) / 2;
78
78
  this.start.rotate(cx, cy, angle, asDegrees);
@@ -88,7 +88,7 @@ export class Line {
88
88
  * @param {boolean} asDegrees - Whether the angle is provided in degrees (default: false).
89
89
  * @returns {Line} This line instance for chaining.
90
90
  */
91
- rotateAround(x, y, angle, asDegrees = false) {
91
+ rotateAround(x: number, y: number, angle: number, asDegrees: boolean = false) {
92
92
  this.start.rotate(x, y, angle, asDegrees);
93
93
  this.end.rotate(x, y, angle, asDegrees);
94
94
  return this;
@@ -101,7 +101,7 @@ export class Line {
101
101
  * @param {Point} result - The point to store the intersection in (optional).
102
102
  * @returns {Point} The intersection point, or null if no intersection occurs.
103
103
  */
104
- intersects(line, asSegment, result) {
104
+ intersects(line: Line, asSegment: boolean, result: Point) {
105
105
  return intersectsPoints(this.start, this.end, line.start, line.end, asSegment, result);
106
106
  }
107
107
 
@@ -110,7 +110,7 @@ export class Line {
110
110
  * @param {Line} line - The line to reflect off.
111
111
  * @returns {number} The angle of reflection in radians.
112
112
  */
113
- reflect(line) {
113
+ reflect(line: Line) {
114
114
  return reflect(this, line);
115
115
  }
116
116
 
@@ -119,7 +119,7 @@ export class Line {
119
119
  * @param {Point} output - The point to store the result in (optional).
120
120
  * @returns {Point} The midpoint of this line.
121
121
  */
122
- midPoint(output = null) {
122
+ midPoint(output: Point = null) {
123
123
  const result = output || new Point();
124
124
  result.x = (this.start.x + this.end.x) / 2;
125
125
  result.y = (this.start.y + this.end.y) / 2;
@@ -131,7 +131,7 @@ export class Line {
131
131
  * @param {number} x - The x coordinate to center the line on.
132
132
  * @param {number} y - The y coordinate to center the line on.
133
133
  */
134
- centerOn(x, y) {
134
+ centerOn(x: number, y: number) {
135
135
  const cx = (this.start.x + this.end.x) / 2;
136
136
  const cy = (this.start.y + this.end.y) / 2;
137
137
  const tx = x - cx;
@@ -146,7 +146,7 @@ export class Line {
146
146
  * @param {number} y - The y coordinate of the point to check.
147
147
  * @returns {boolean} True if the point lies on this line, false otherwise.
148
148
  */
149
- pointOnLine(x, y) {
149
+ pointOnLine(x: number, y: number) {
150
150
  return (x - this.start.x) * (this.end.y - this.start.y) === (this.end.x - this.start.x) * (y - this.start.y);
151
151
  }
152
152
 
@@ -156,7 +156,7 @@ export class Line {
156
156
  * @param {number} y - The y coordinate of the point to check.
157
157
  * @returns {boolean} True if the point lies on this line segment, false otherwise.
158
158
  */
159
- pointOnSegment(x, y) {
159
+ pointOnSegment(x: number, y: number) {
160
160
  const xMin = Math.min(this.start.x, this.end.x);
161
161
  const xMax = Math.max(this.start.x, this.end.x);
162
162
  const yMin = Math.min(this.start.y, this.end.y);
@@ -169,7 +169,7 @@ export class Line {
169
169
  * @param {Point} output - The point to store the result in (optional).
170
170
  * @returns {Point} A random point on this line.
171
171
  */
172
- random(output = null) {
172
+ random(output: Point = null) {
173
173
  const result = output || new Point();
174
174
  const t = Math.random();
175
175
  result.x = this.start.x + t * (this.end.x - this.start.x);
@@ -183,7 +183,7 @@ export class Line {
183
183
  * @param {number[][]} results - The array to store the results in (optional).
184
184
  * @returns {number[][]} An array of coordinate pairs representing points along this line.
185
185
  */
186
- coordinatesOnLine(stepRate = 1, results = []) {
186
+ coordinatesOnLine(stepRate: number = 1, results: number[][] = []) {
187
187
  let x1 = Math.round(this.start.x);
188
188
  let y1 = Math.round(this.start.y);
189
189
  const x2 = Math.round(this.end.x);