@vpmedia/phaser 1.95.0 → 1.96.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 (167) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/package.json +9 -9
  3. package/src/phaser/core/animation.js +61 -56
  4. package/src/phaser/core/animation_manager.js +55 -55
  5. package/src/phaser/core/cache.js +154 -154
  6. package/src/phaser/core/device.js +2 -1
  7. package/src/phaser/core/device_util.js +27 -27
  8. package/src/phaser/core/dom.js +43 -43
  9. package/src/phaser/core/event_manager.js +63 -63
  10. package/src/phaser/core/factory.js +47 -47
  11. package/src/phaser/core/frame.js +30 -30
  12. package/src/phaser/core/frame_data.js +30 -28
  13. package/src/phaser/core/frame_util.js +8 -8
  14. package/src/phaser/core/game.js +34 -18
  15. package/src/phaser/core/loader.js +170 -170
  16. package/src/phaser/core/loader_parser.js +22 -22
  17. package/src/phaser/core/raf.js +1 -1
  18. package/src/phaser/core/scene.js +16 -10
  19. package/src/phaser/core/scene_manager.js +51 -43
  20. package/src/phaser/core/signal.js +56 -52
  21. package/src/phaser/core/sound.js +54 -54
  22. package/src/phaser/core/sound_manager.js +49 -49
  23. package/src/phaser/core/stage.js +16 -16
  24. package/src/phaser/core/time.js +30 -30
  25. package/src/phaser/core/timer.js +64 -64
  26. package/src/phaser/core/timer_event.js +9 -9
  27. package/src/phaser/core/tween.js +90 -90
  28. package/src/phaser/core/tween_data.js +30 -30
  29. package/src/phaser/core/tween_manager.js +29 -24
  30. package/src/phaser/core/world.js +4 -3
  31. package/src/phaser/display/bitmap_text.js +61 -54
  32. package/src/phaser/display/button.js +48 -47
  33. package/src/phaser/display/canvas/buffer.js +8 -8
  34. package/src/phaser/display/canvas/graphics.js +8 -8
  35. package/src/phaser/display/canvas/masker.js +5 -5
  36. package/src/phaser/display/canvas/pool.js +18 -18
  37. package/src/phaser/display/canvas/renderer.js +16 -16
  38. package/src/phaser/display/canvas/tinter.js +22 -22
  39. package/src/phaser/display/canvas/util.js +42 -42
  40. package/src/phaser/display/display_object.js +119 -108
  41. package/src/phaser/display/graphics.js +112 -112
  42. package/src/phaser/display/graphics_data.js +10 -10
  43. package/src/phaser/display/graphics_data_util.js +3 -3
  44. package/src/phaser/display/group.js +50 -50
  45. package/src/phaser/display/image.js +54 -50
  46. package/src/phaser/display/sprite_batch.js +2 -2
  47. package/src/phaser/display/sprite_util.js +19 -19
  48. package/src/phaser/display/text.js +212 -187
  49. package/src/phaser/display/webgl/abstract_filter.js +4 -4
  50. package/src/phaser/display/webgl/base_texture.js +9 -9
  51. package/src/phaser/display/webgl/blend_manager.js +7 -7
  52. package/src/phaser/display/webgl/earcut.js +95 -95
  53. package/src/phaser/display/webgl/earcut_node.js +4 -4
  54. package/src/phaser/display/webgl/fast_sprite_batch.js +15 -15
  55. package/src/phaser/display/webgl/filter_manager.js +9 -9
  56. package/src/phaser/display/webgl/filter_texture.js +10 -10
  57. package/src/phaser/display/webgl/graphics.js +37 -37
  58. package/src/phaser/display/webgl/graphics_data.js +4 -4
  59. package/src/phaser/display/webgl/mask_manager.js +6 -6
  60. package/src/phaser/display/webgl/render_texture.js +16 -16
  61. package/src/phaser/display/webgl/renderer.js +20 -20
  62. package/src/phaser/display/webgl/shader/complex.js +4 -4
  63. package/src/phaser/display/webgl/shader/fast.js +4 -4
  64. package/src/phaser/display/webgl/shader/normal.js +8 -8
  65. package/src/phaser/display/webgl/shader/primitive.js +4 -4
  66. package/src/phaser/display/webgl/shader/strip.js +4 -4
  67. package/src/phaser/display/webgl/shader_manager.js +9 -9
  68. package/src/phaser/display/webgl/sprite_batch.js +18 -18
  69. package/src/phaser/display/webgl/stencil_manager.js +16 -16
  70. package/src/phaser/display/webgl/texture.js +13 -13
  71. package/src/phaser/display/webgl/texture_util.js +8 -8
  72. package/src/phaser/display/webgl/util.js +25 -25
  73. package/src/phaser/geom/circle.js +69 -69
  74. package/src/phaser/geom/ellipse.js +28 -28
  75. package/src/phaser/geom/line.js +93 -93
  76. package/src/phaser/geom/matrix.js +54 -54
  77. package/src/phaser/geom/point.js +96 -96
  78. package/src/phaser/geom/polygon.js +22 -22
  79. package/src/phaser/geom/rectangle.js +132 -132
  80. package/src/phaser/geom/rounded_rectangle.js +12 -12
  81. package/src/phaser/geom/util/circle.js +33 -33
  82. package/src/phaser/geom/util/ellipse.js +5 -5
  83. package/src/phaser/geom/util/line.js +26 -26
  84. package/src/phaser/geom/util/matrix.js +8 -8
  85. package/src/phaser/geom/util/point.js +97 -97
  86. package/src/phaser/geom/util/polygon.js +4 -4
  87. package/src/phaser/geom/util/rectangle.js +74 -74
  88. package/src/phaser/geom/util/rounded_rectangle.js +4 -4
  89. package/src/phaser/util/math.js +81 -81
  90. package/types/phaser/core/animation.d.ts +61 -56
  91. package/types/phaser/core/animation.d.ts.map +1 -1
  92. package/types/phaser/core/animation_manager.d.ts +55 -55
  93. package/types/phaser/core/cache.d.ts +154 -154
  94. package/types/phaser/core/device.d.ts.map +1 -1
  95. package/types/phaser/core/dom.d.ts +43 -43
  96. package/types/phaser/core/event_manager.d.ts +63 -63
  97. package/types/phaser/core/factory.d.ts +47 -47
  98. package/types/phaser/core/frame.d.ts +30 -30
  99. package/types/phaser/core/frame_data.d.ts +28 -27
  100. package/types/phaser/core/frame_data.d.ts.map +1 -1
  101. package/types/phaser/core/game.d.ts +52 -19
  102. package/types/phaser/core/game.d.ts.map +1 -1
  103. package/types/phaser/core/loader.d.ts +170 -170
  104. package/types/phaser/core/loader_parser.d.ts.map +1 -1
  105. package/types/phaser/core/raf.d.ts +1 -1
  106. package/types/phaser/core/scene.d.ts +15 -9
  107. package/types/phaser/core/scene.d.ts.map +1 -1
  108. package/types/phaser/core/scene_manager.d.ts +51 -43
  109. package/types/phaser/core/scene_manager.d.ts.map +1 -1
  110. package/types/phaser/core/signal.d.ts +54 -51
  111. package/types/phaser/core/signal.d.ts.map +1 -1
  112. package/types/phaser/core/sound.d.ts +54 -54
  113. package/types/phaser/core/sound_manager.d.ts +49 -49
  114. package/types/phaser/core/stage.d.ts +10 -10
  115. package/types/phaser/core/time.d.ts +30 -30
  116. package/types/phaser/core/timer.d.ts +64 -64
  117. package/types/phaser/core/timer_event.d.ts +9 -9
  118. package/types/phaser/core/tween.d.ts +90 -90
  119. package/types/phaser/core/tween_data.d.ts +30 -30
  120. package/types/phaser/core/tween_manager.d.ts +29 -24
  121. package/types/phaser/core/tween_manager.d.ts.map +1 -1
  122. package/types/phaser/core/world.d.ts +4 -3
  123. package/types/phaser/core/world.d.ts.map +1 -1
  124. package/types/phaser/display/bitmap_text.d.ts +59 -52
  125. package/types/phaser/display/bitmap_text.d.ts.map +1 -1
  126. package/types/phaser/display/button.d.ts +47 -46
  127. package/types/phaser/display/button.d.ts.map +1 -1
  128. package/types/phaser/display/canvas/buffer.d.ts +8 -8
  129. package/types/phaser/display/canvas/renderer.d.ts +16 -16
  130. package/types/phaser/display/display_object.d.ts +119 -108
  131. package/types/phaser/display/display_object.d.ts.map +1 -1
  132. package/types/phaser/display/graphics.d.ts +101 -101
  133. package/types/phaser/display/graphics_data.d.ts +10 -10
  134. package/types/phaser/display/group.d.ts +47 -47
  135. package/types/phaser/display/image.d.ts +42 -40
  136. package/types/phaser/display/image.d.ts.map +1 -1
  137. package/types/phaser/display/text.d.ts +207 -184
  138. package/types/phaser/display/text.d.ts.map +1 -1
  139. package/types/phaser/display/webgl/abstract_filter.d.ts +4 -4
  140. package/types/phaser/display/webgl/base_texture.d.ts +9 -9
  141. package/types/phaser/display/webgl/blend_manager.d.ts +6 -6
  142. package/types/phaser/display/webgl/earcut.d.ts +95 -95
  143. package/types/phaser/display/webgl/earcut_node.d.ts +4 -4
  144. package/types/phaser/display/webgl/fast_sprite_batch.d.ts +15 -15
  145. package/types/phaser/display/webgl/filter_manager.d.ts +8 -8
  146. package/types/phaser/display/webgl/filter_texture.d.ts +10 -10
  147. package/types/phaser/display/webgl/graphics_data.d.ts +4 -4
  148. package/types/phaser/display/webgl/render_texture.d.ts +16 -16
  149. package/types/phaser/display/webgl/renderer.d.ts +20 -20
  150. package/types/phaser/display/webgl/shader/complex.d.ts +4 -4
  151. package/types/phaser/display/webgl/shader/fast.d.ts +4 -4
  152. package/types/phaser/display/webgl/shader/normal.d.ts +8 -8
  153. package/types/phaser/display/webgl/shader/primitive.d.ts +4 -4
  154. package/types/phaser/display/webgl/shader/strip.d.ts +4 -4
  155. package/types/phaser/display/webgl/shader_manager.d.ts +8 -8
  156. package/types/phaser/display/webgl/sprite_batch.d.ts +17 -17
  157. package/types/phaser/display/webgl/stencil_manager.d.ts +15 -15
  158. package/types/phaser/display/webgl/texture.d.ts +12 -12
  159. package/types/phaser/geom/circle.d.ts +69 -69
  160. package/types/phaser/geom/ellipse.d.ts +28 -28
  161. package/types/phaser/geom/line.d.ts +93 -93
  162. package/types/phaser/geom/matrix.d.ts +54 -54
  163. package/types/phaser/geom/point.d.ts +96 -96
  164. package/types/phaser/geom/polygon.d.ts +22 -22
  165. package/types/phaser/geom/rectangle.d.ts +132 -132
  166. package/types/phaser/geom/rounded_rectangle.d.ts +12 -12
  167. package/pnpm-workspace.yaml +0 -4
@@ -1,7 +1,7 @@
1
1
  export class SoundManager {
2
2
  /**
3
- * TBD.
4
- * @param {import('./game.js').Game} game - TBD.
3
+ * Creates a new SoundManager instance.
4
+ * @param {import('./game.js').Game} game - Reference to the Phaser Game instance.
5
5
  */
6
6
  constructor(game: import("./game.js").Game);
7
7
  game: import("./game.js").Game;
@@ -24,127 +24,127 @@ export class SoundManager {
24
24
  _watchCallback: Function;
25
25
  _watchContext: any;
26
26
  /**
27
- * TBD.
27
+ * Initializes the sound manager and sets up audio context.
28
28
  */
29
29
  boot(): void;
30
30
  masterGain: any;
31
31
  /**
32
- * TBD.
32
+ * Handles page lifecycle changes for audio management.
33
33
  */
34
34
  onPageLifecycleChange: () => void;
35
35
  /**
36
- * TBD.
36
+ * Handles audio context state changes.
37
37
  */
38
38
  onContextStateChange: () => void;
39
39
  /**
40
- * TBD.
40
+ * Checks if audio unlock handlers need to be added or removed.
41
41
  */
42
42
  checkUnlockHandlers: () => void;
43
43
  /**
44
- * TBD.
44
+ * Adds event listeners to unlock audio context.
45
45
  */
46
46
  addUnlockHandlers: () => void;
47
47
  /**
48
- * TBD.
48
+ * Removes event listeners that unlock audio context.
49
49
  */
50
50
  removeUnlockHandlers: () => void;
51
51
  /**
52
- * TBD.
53
- * @param {Event} event - TBD.
52
+ * Handles unlock events to resume audio context.
53
+ * @param {Event} event - The DOM event that triggered the unlock.
54
54
  */
55
55
  onUnlockEvent: (event: Event) => void;
56
56
  /**
57
- * TBD.
57
+ * Stops all sounds in the manager.
58
58
  */
59
59
  stopAll(): void;
60
60
  /**
61
- * TBD.
61
+ * Pauses all sounds in the manager.
62
62
  */
63
63
  pauseAll(): void;
64
64
  /**
65
- * TBD.
65
+ * Resumes all sounds in the manager.
66
66
  */
67
67
  resumeAll(): void;
68
68
  /**
69
- * TBD.
70
- * @param {string} key - TBD.
69
+ * Decodes an audio file for playback.
70
+ * @param {string} key - The key of the sound to decode.
71
71
  */
72
72
  decode(key: string): void;
73
73
  /**
74
- * TBD.
75
- * @param {Sound[]|string[]} files - TBD.
76
- * @param {Function} callback - TBD.
77
- * @param {object} callbackContext - TBD.
74
+ * Sets up a callback to be called when audio files are decoded.
75
+ * @param {Sound[]|string[]} files - The sound files or keys to wait for.
76
+ * @param {Function} callback - The callback function to call when all files are decoded.
77
+ * @param {object} callbackContext - The context in which to call the callback.
78
78
  */
79
79
  setDecodedCallback(files: Sound[] | string[], callback: Function, callbackContext: object): void;
80
80
  /**
81
- * TBD.
81
+ * Updates the sound manager state.
82
82
  */
83
83
  update(): void;
84
84
  /**
85
- * TBD.
86
- * @param {string} key - TBD.
87
- * @param {number} volume - TBD.
88
- * @param {boolean} loop - TBD.
89
- * @param {boolean} connect - TBD.
90
- * @returns {Sound} TBD.
85
+ * Adds a new sound to the manager.
86
+ * @param {string} key - The key of the sound to add.
87
+ * @param {number} volume - The initial volume level (0.0 to 1.0).
88
+ * @param {boolean} loop - Whether the sound should loop.
89
+ * @param {boolean} connect - Whether to connect to the master gain node.
90
+ * @returns {Sound} The created Sound object.
91
91
  */
92
92
  add(key: string, volume?: number, loop?: boolean, connect?: boolean): Sound;
93
93
  /**
94
- * TBD.
95
- * @param {string} key - TBD.
96
- * @returns {SoundSprite} TBD.
94
+ * Adds a new sound sprite to the manager.
95
+ * @param {string} key - The key of the sound sprite to add.
96
+ * @returns {SoundSprite} The created SoundSprite object.
97
97
  */
98
98
  addSprite(key: string): SoundSprite;
99
99
  /**
100
- * TBD.
101
- * @param {Sound | null | undefined} sound - TBD.
102
- * @returns {boolean} TBD.
100
+ * Removes a sound from the manager.
101
+ * @param {Sound | null | undefined} sound - The sound object to remove.
102
+ * @returns {boolean} True if the sound was removed, false otherwise.
103
103
  */
104
104
  remove(sound: Sound | null | undefined): boolean;
105
105
  /**
106
- * TBD.
107
- * @param {string} key - TBD.
108
- * @returns {number} TBD.
106
+ * Removes all sounds with a specific key from the manager.
107
+ * @param {string} key - The key of sounds to remove.
108
+ * @returns {number} The number of sounds removed.
109
109
  */
110
110
  removeByKey(key: string): number;
111
111
  /**
112
- * TBD.
113
- * @param {string} key - TBD.
114
- * @param {number} volume - TBD.
115
- * @param {boolean} loop - TBD.
116
- * @returns {Sound} TBD.
112
+ * Plays a sound by key.
113
+ * @param {string} key - The key of the sound to play.
114
+ * @param {number} volume - The volume level (0.0 to 1.0).
115
+ * @param {boolean} loop - Whether the sound should loop.
116
+ * @returns {Sound} The created Sound object, or null if audio is disabled.
117
117
  */
118
118
  play(key: string, volume?: number, loop?: boolean): Sound;
119
119
  /**
120
- * TBD.
120
+ * Mutes all sounds in the manager.
121
121
  */
122
122
  setMute(): void;
123
123
  _muteVolume: any;
124
124
  /**
125
- * TBD.
125
+ * Unmutes all sounds in the manager.
126
126
  */
127
127
  unsetMute(): void;
128
128
  /**
129
- * TBD.
129
+ * Destroys the sound manager and cleans up resources.
130
130
  */
131
131
  destroy(): void;
132
132
  /**
133
- * TBD.
133
+ * Sets the muted state of the sound manager.
134
134
  */
135
135
  set mute(value: boolean);
136
136
  /**
137
- * TBD.
138
- * @returns {boolean} TBD.
137
+ * Gets the muted state of the sound manager.
138
+ * @returns {boolean} True if the manager is muted, false otherwise.
139
139
  */
140
140
  get mute(): boolean;
141
141
  /**
142
- * TBD.
142
+ * Sets the volume level of the sound manager.
143
143
  */
144
144
  set volume(value: number);
145
145
  /**
146
- * TBD.
147
- * @returns {number} TBD.
146
+ * Gets the volume level of the sound manager.
147
+ * @returns {number} The volume level (0.0 to 1.0).
148
148
  */
149
149
  get volume(): number;
150
150
  }
@@ -9,34 +9,34 @@ export class Stage extends DisplayObject {
9
9
  rgba: string;
10
10
  };
11
11
  /**
12
- * TBD.
13
- * @param {number} color - TBD.
12
+ * Sets the background color of the stage.
13
+ * @param {number} color - The color to set as the background.
14
14
  */
15
15
  setBackgroundColor(color: number): void;
16
16
  /**
17
- * TBD.
17
+ * Initializes the stage after game creation.
18
18
  */
19
19
  boot(): void;
20
20
  /**
21
- * TBD.
21
+ * Updates the stage's transformation matrix.
22
22
  */
23
23
  updateTransform(): void;
24
24
  /**
25
- * TBD.
25
+ * Sets the background color of the stage.
26
26
  */
27
27
  set backgroundColor(value: number);
28
28
  /**
29
- * TBD.
30
- * @returns {number} TBD.
29
+ * Gets the background color of the stage.
30
+ * @returns {number} The background color.
31
31
  */
32
32
  get backgroundColor(): number;
33
33
  /**
34
- * TBD.
34
+ * Sets whether texture smoothing is enabled.
35
35
  */
36
36
  set smoothed(value: boolean);
37
37
  /**
38
- * TBD.
39
- * @returns {boolean} TBD.
38
+ * Gets whether texture smoothing is enabled.
39
+ * @returns {boolean} True if texture smoothing is enabled, false otherwise.
40
40
  */
41
41
  get smoothed(): boolean;
42
42
  }
@@ -1,7 +1,7 @@
1
1
  export class Time {
2
2
  /**
3
- * TBD.
4
- * @param {import('./game.js').Game} game - TBD.
3
+ * Creates a new Time instance.
4
+ * @param {import('./game.js').Game} game - Reference to the Phaser Game instance.
5
5
  */
6
6
  constructor(game: import("./game.js").Game);
7
7
  game: import("./game.js").Game;
@@ -57,82 +57,82 @@ export class Time {
57
57
  /** @type {Timer[]} */
58
58
  _timers: Timer[];
59
59
  /**
60
- * TBD.
60
+ * Initializes the time manager and starts tracking time.
61
61
  */
62
62
  boot(): void;
63
63
  /**
64
- * TBD.
65
- * @param {Timer} timer - TBD.
66
- * @returns {Timer} TBD.
64
+ * Adds a Timer to the Time manager.
65
+ * @param {Timer} timer - The Timer to add.
66
+ * @returns {Timer} The added Timer object.
67
67
  */
68
68
  add(timer: Timer): Timer;
69
69
  /**
70
- * TBD.
71
- * @param {boolean} autoDestroy - TBD.
72
- * @returns {Timer} TBD.
70
+ * Creates a new Timer and adds it to the Time manager.
71
+ * @param {boolean} autoDestroy - Whether the timer should be automatically destroyed when it completes.
72
+ * @returns {Timer} The created Timer object.
73
73
  */
74
74
  create(autoDestroy?: boolean): Timer;
75
75
  /**
76
- * TBD.
76
+ * Removes all timers from the Time manager.
77
77
  */
78
78
  removeAll(): void;
79
79
  /**
80
- * TBD.
80
+ * Refreshes the time tracking values.
81
81
  */
82
82
  refresh(): void;
83
83
  /**
84
- * TBD.
85
- * @param {number} time - TBD.
84
+ * Updates the Time manager with a new timestamp.
85
+ * @param {number} time - The new timestamp to use for updating.
86
86
  */
87
87
  update(time: number): void;
88
88
  /**
89
- * TBD.
89
+ * Updates all timers managed by the Time manager.
90
90
  */
91
91
  updateTimers(): void;
92
92
  /**
93
- * TBD.
93
+ * Updates the advanced timing values.
94
94
  */
95
95
  updateAdvancedTiming(): void;
96
96
  /**
97
- * TBD.
97
+ * Handles game pause event.
98
98
  */
99
99
  gamePaused(): void;
100
100
  /**
101
- * TBD.
101
+ * Handles game resume event.
102
102
  */
103
103
  gameResumed(): void;
104
104
  /**
105
- * TBD.
106
- * @returns {number} TBD.
105
+ * Gets the total elapsed time in seconds since the game started.
106
+ * @returns {number} The total elapsed time in seconds.
107
107
  */
108
108
  totalElapsedSeconds(): number;
109
109
  /**
110
- * TBD.
111
- * @param {number} since - TBD.
112
- * @returns {number} TBD.
110
+ * Gets the elapsed time in milliseconds since a given timestamp.
111
+ * @param {number} since - The timestamp to calculate elapsed time from.
112
+ * @returns {number} The elapsed time in milliseconds.
113
113
  */
114
114
  elapsedSince(since: number): number;
115
115
  /**
116
- * TBD.
117
- * @param {number} since - TBD.
118
- * @returns {number} TBD.
116
+ * Gets the elapsed time in seconds since a given timestamp.
117
+ * @param {number} since - The timestamp to calculate elapsed time from.
118
+ * @returns {number} The elapsed time in seconds.
119
119
  */
120
120
  elapsedSecondsSince(since: number): number;
121
121
  /**
122
- * TBD.
122
+ * Resets the time tracking values.
123
123
  */
124
124
  reset(): void;
125
125
  /**
126
- * TBD.
126
+ * Destroys the Time manager and cleans up resources.
127
127
  */
128
128
  destroy(): void;
129
129
  /**
130
- * TBD.
130
+ * Sets the desired frames per second.
131
131
  */
132
132
  set desiredFps(value: number);
133
133
  /**
134
- * TBD.
135
- * @returns {number} TBD.
134
+ * Gets the desired frames per second.
135
+ * @returns {number} The desired frames per second.
136
136
  */
137
137
  get desiredFps(): number;
138
138
  }
@@ -1,8 +1,8 @@
1
1
  export class Timer {
2
2
  /**
3
- * TBD.
4
- * @param {import('./game.js').Game} game - TBD.
5
- * @param {boolean} autoDestroy - TBD.
3
+ * Creates a new Timer instance.
4
+ * @param {import('./game.js').Game} game - The game instance.
5
+ * @param {boolean} autoDestroy - Whether to automatically destroy the timer when it completes.
6
6
  */
7
7
  constructor(game: import("./game.js").Game, autoDestroy?: boolean);
8
8
  game: import("./game.js").Game;
@@ -45,133 +45,133 @@ export class Timer {
45
45
  /** @type {number} */
46
46
  _newTick: number;
47
47
  /**
48
- * TBD.
49
- * @param {number} delay - TBD.
50
- * @param {boolean} loop - TBD.
51
- * @param {number} repeatCount - TBD.
52
- * @param {Function} callback - TBD.
53
- * @param {object} callbackContext - TBD.
54
- * @param {...any} args - TBD.
55
- * @returns {TimerEvent} TBD.
48
+ * Creates a new TimerEvent.
49
+ * @param {number} delay - The delay in milliseconds before the event fires.
50
+ * @param {boolean} loop - Whether the event should loop indefinitely.
51
+ * @param {number} repeatCount - The number of times to repeat the event (0 = infinite).
52
+ * @param {Function} callback - The function to call when the event fires.
53
+ * @param {object} callbackContext - The context in which to call the callback.
54
+ * @param {...any} args - Arguments to pass to the callback function.
55
+ * @returns {TimerEvent} The created TimerEvent.
56
56
  */
57
57
  create(delay: number, loop: boolean, repeatCount: number, callback: Function, callbackContext: object, args: any[]): TimerEvent;
58
58
  /**
59
- * TBD.
60
- * @param {number} delay - TBD.
61
- * @param {Function} callback - TBD.
62
- * @param {object} callbackContext - TBD.
63
- * @param {...any} args - TBD.
64
- * @returns {TimerEvent} TBD.
59
+ * Creates a new TimerEvent that runs once.
60
+ * @param {number} delay - The delay in milliseconds before the event fires.
61
+ * @param {Function} callback - The function to call when the event fires.
62
+ * @param {object} callbackContext - The context in which to call the callback.
63
+ * @param {...any} args - Arguments to pass to the callback function.
64
+ * @returns {TimerEvent} The created TimerEvent.
65
65
  */
66
66
  add(delay: number, callback: Function, callbackContext?: object, ...args: any[]): TimerEvent;
67
67
  /**
68
- * TBD.
69
- * @param {number} delay - TBD.
70
- * @param {number} repeatCount - TBD.
71
- * @param {Function} callback - TBD.
72
- * @param {object} callbackContext - TBD.
73
- * @param {...any} args - TBD.
74
- * @returns {TimerEvent} TBD.
68
+ * Creates a new TimerEvent that repeats a specified number of times.
69
+ * @param {number} delay - The delay in milliseconds before the event fires.
70
+ * @param {number} repeatCount - The number of times to repeat the event (0 = infinite).
71
+ * @param {Function} callback - The function to call when the event fires.
72
+ * @param {object} callbackContext - The context in which to call the callback.
73
+ * @param {...any} args - Arguments to pass to the callback function.
74
+ * @returns {TimerEvent} The created TimerEvent.
75
75
  */
76
76
  repeat(delay: number, repeatCount: number, callback: Function, callbackContext?: object, ...args: any[]): TimerEvent;
77
77
  /**
78
- * TBD.
79
- * @param {number} delay - TBD.
80
- * @param {Function} callback - TBD.
81
- * @param {object} callbackContext - TBD.
82
- * @param {...any} args - TBD.
83
- * @returns {TimerEvent} TBD.
78
+ * Creates a new TimerEvent that loops indefinitely.
79
+ * @param {number} delay - The delay in milliseconds before the event fires.
80
+ * @param {Function} callback - The function to call when the event fires.
81
+ * @param {object} callbackContext - The context in which to call the callback.
82
+ * @param {...any} args - Arguments to pass to the callback function.
83
+ * @returns {TimerEvent} The created TimerEvent.
84
84
  */
85
85
  loop(delay: number, callback: Function, callbackContext?: object, ...args: any[]): TimerEvent;
86
86
  /**
87
- * TBD.
88
- * @param {number} delay - TBD.
87
+ * Starts the timer.
88
+ * @param {number} delay - The delay in milliseconds before starting (optional).
89
89
  */
90
90
  start(delay?: number): void;
91
91
  /**
92
- * TBD.
93
- * @param {boolean} clearEvents - TBD.
92
+ * Stops the timer.
93
+ * @param {boolean} clearEvents - Whether to clear all events (default: true).
94
94
  */
95
95
  stop(clearEvents?: boolean): void;
96
96
  /**
97
- * TBD.
98
- * @param {TimerEvent | null | undefined} event - TBD.
99
- * @returns {boolean} TBD.
97
+ * Removes a TimerEvent from the timer.
98
+ * @param {TimerEvent | null | undefined} event - The TimerEvent to remove.
99
+ * @returns {boolean} True if the event was removed, false otherwise.
100
100
  */
101
101
  remove(event: TimerEvent | null | undefined): boolean;
102
102
  /**
103
- * TBD.
103
+ * Orders the timer events by their next tick time.
104
104
  */
105
105
  order(): void;
106
106
  /**
107
- * TBD.
108
- * @param {TimerEvent} a - TBD.
109
- * @param {TimerEvent} b - TBD.
110
- * @returns {number} TBD.
107
+ * Sorts TimerEvents by their tick time.
108
+ * @param {TimerEvent} a - First TimerEvent to compare.
109
+ * @param {TimerEvent} b - Second TimerEvent to compare.
110
+ * @returns {number} Comparison result (-1, 0, or 1).
111
111
  */
112
112
  sortHandler(a: TimerEvent, b: TimerEvent): number;
113
113
  /**
114
- * TBD.
114
+ * Clears pending events from the timer.
115
115
  */
116
116
  clearPendingEvents(): void;
117
117
  /**
118
- * TBD.
119
- * @param {number} time - TBD.
120
- * @returns {boolean} TBD.
118
+ * Updates the timer state at a given time.
119
+ * @param {number} time - The current time in milliseconds.
120
+ * @returns {boolean} True if the timer should continue running, false if it should be destroyed.
121
121
  */
122
122
  update(time: number): boolean;
123
123
  /**
124
- * TBD.
124
+ * Pauses the timer.
125
125
  */
126
126
  pause(): void;
127
127
  /**
128
- * TBD.
128
+ * Internal pause method for the timer.
129
129
  */
130
130
  _pause(): void;
131
131
  /**
132
- * TBD.
133
- * @param {number} baseTime - TBD.
132
+ * Adjusts timer events when time has jumped (e.g., when tab is switched).
133
+ * @param {number} baseTime - The time to adjust from.
134
134
  */
135
135
  adjustEvents(baseTime: number): void;
136
136
  /**
137
- * TBD.
137
+ * Resumes the timer.
138
138
  */
139
139
  resume(): void;
140
140
  /**
141
- * TBD.
141
+ * Internal resume method for the timer.
142
142
  */
143
143
  _resume(): void;
144
144
  /**
145
- * TBD.
145
+ * Removes all events from the timer.
146
146
  */
147
147
  removeAll(): void;
148
148
  /**
149
- * TBD.
149
+ * Destroys the timer and cleans up resources.
150
150
  */
151
151
  destroy(): void;
152
152
  /**
153
- * TBD.
154
- * @returns {number} TBD.
153
+ * Gets the next tick time for the timer.
154
+ * @returns {number} The next tick time in milliseconds.
155
155
  */
156
156
  get next(): number;
157
157
  /**
158
- * TBD.
159
- * @returns {number} TBD.
158
+ * Gets the duration until the next event.
159
+ * @returns {number} The duration in milliseconds.
160
160
  */
161
161
  get duration(): number;
162
162
  /**
163
- * TBD.
164
- * @returns {number} TBD.
163
+ * Gets the number of active events in the timer.
164
+ * @returns {number} The number of events.
165
165
  */
166
166
  get length(): number;
167
167
  /**
168
- * TBD.
169
- * @returns {number} TBD.
168
+ * Gets the elapsed time since the timer started.
169
+ * @returns {number} The elapsed time in milliseconds.
170
170
  */
171
171
  get ms(): number;
172
172
  /**
173
- * TBD.
174
- * @returns {number} TBD.
173
+ * Gets the elapsed time in seconds since the timer started.
174
+ * @returns {number} The elapsed time in seconds.
175
175
  */
176
176
  get seconds(): number;
177
177
  }
@@ -1,14 +1,14 @@
1
1
  export class TimerEvent {
2
2
  /**
3
- * TBD.
4
- * @param {import('./timer.js').Timer} timer - TBD.
5
- * @param {number} delay - TBD.
6
- * @param {number} tick - TBD.
7
- * @param {number} repeatCount - TBD.
8
- * @param {boolean} loop - TBD.
9
- * @param {Function} callback - TBD.
10
- * @param {object} callbackContext - TBD.
11
- * @param {...any} args - TBD.
3
+ * Creates a new TimerEvent instance.
4
+ * @param {import('./timer.js').Timer} timer - Reference to the parent Timer.
5
+ * @param {number} delay - The delay (in milliseconds) before the event should occur.
6
+ * @param {number} tick - The tick (in milliseconds) at which the event should occur.
7
+ * @param {number} repeatCount - The number of times the event should repeat.
8
+ * @param {boolean} loop - Whether the event should loop.
9
+ * @param {Function} callback - The function to call when the event occurs.
10
+ * @param {object} callbackContext - The context in which to call the callback function.
11
+ * @param {...any} args - Arguments to pass to the callback function.
12
12
  */
13
13
  constructor(timer: import("./timer.js").Timer, delay: number, tick: number, repeatCount: number, loop: boolean, callback: Function, callbackContext: object, args: any[]);
14
14
  timer: import("./timer.js").Timer;