@defold-typescript/types 0.37.0 → 0.39.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 (83) hide show
  1. package/api-signatures.json +348 -267
  2. package/examples/translations.json +323 -147
  3. package/generated/b2d_body.d.ts +7 -4
  4. package/generated/buffer.d.ts +16 -4
  5. package/generated/camera.d.ts +1 -0
  6. package/generated/collectionfactory.d.ts +5 -2
  7. package/generated/collectionproxy.d.ts +1 -1
  8. package/generated/factory.d.ts +2 -1
  9. package/generated/go.d.ts +141 -86
  10. package/generated/graphics.d.ts +2 -0
  11. package/generated/gui.d.ts +65 -40
  12. package/generated/html5.d.ts +1 -1
  13. package/generated/http.d.ts +4 -0
  14. package/generated/model.d.ts +9 -4
  15. package/generated/particlefx.d.ts +1 -1
  16. package/generated/physics.d.ts +16 -9
  17. package/generated/profiler.d.ts +9 -2
  18. package/generated/render.d.ts +224 -99
  19. package/generated/resource.d.ts +143 -157
  20. package/generated/socket.d.ts +13 -8
  21. package/generated/sound.d.ts +3 -2
  22. package/generated/sys.d.ts +16 -10
  23. package/generated/tilemap.d.ts +25 -19
  24. package/generated/timer.d.ts +33 -24
  25. package/generated/versions/defold-1.12.4/buffer.d.ts +16 -4
  26. package/generated/versions/defold-1.12.4/camera.d.ts +1 -0
  27. package/generated/versions/defold-1.12.4/collectionfactory.d.ts +5 -2
  28. package/generated/versions/defold-1.12.4/collectionproxy.d.ts +1 -1
  29. package/generated/versions/defold-1.12.4/factory.d.ts +2 -1
  30. package/generated/versions/defold-1.12.4/go.d.ts +141 -86
  31. package/generated/versions/defold-1.12.4/graphics.d.ts +2 -0
  32. package/generated/versions/defold-1.12.4/gui.d.ts +63 -39
  33. package/generated/versions/defold-1.12.4/html5.d.ts +1 -1
  34. package/generated/versions/defold-1.12.4/http.d.ts +4 -0
  35. package/generated/versions/defold-1.12.4/model.d.ts +9 -4
  36. package/generated/versions/defold-1.12.4/particlefx.d.ts +1 -1
  37. package/generated/versions/defold-1.12.4/physics.d.ts +16 -9
  38. package/generated/versions/defold-1.12.4/profiler.d.ts +9 -2
  39. package/generated/versions/defold-1.12.4/render.d.ts +223 -98
  40. package/generated/versions/defold-1.12.4/resource.d.ts +143 -157
  41. package/generated/versions/defold-1.12.4/socket.d.ts +13 -8
  42. package/generated/versions/defold-1.12.4/sound.d.ts +3 -2
  43. package/generated/versions/defold-1.12.4/sys.d.ts +16 -10
  44. package/generated/versions/defold-1.12.4/tilemap.d.ts +25 -19
  45. package/generated/versions/defold-1.12.4/timer.d.ts +33 -24
  46. package/generated/versions/defold-1.12.4/vmath.d.ts +13 -5
  47. package/generated/versions/defold-1.12.4/window.d.ts +5 -3
  48. package/generated/versions/defold-1.13.0/b2d_body.d.ts +7 -4
  49. package/generated/versions/defold-1.13.0/buffer.d.ts +16 -4
  50. package/generated/versions/defold-1.13.0/camera.d.ts +1 -0
  51. package/generated/versions/defold-1.13.0/collectionfactory.d.ts +5 -2
  52. package/generated/versions/defold-1.13.0/collectionproxy.d.ts +1 -1
  53. package/generated/versions/defold-1.13.0/factory.d.ts +2 -1
  54. package/generated/versions/defold-1.13.0/go.d.ts +141 -86
  55. package/generated/versions/defold-1.13.0/graphics.d.ts +2 -0
  56. package/generated/versions/defold-1.13.0/gui.d.ts +63 -39
  57. package/generated/versions/defold-1.13.0/html5.d.ts +1 -1
  58. package/generated/versions/defold-1.13.0/http.d.ts +4 -0
  59. package/generated/versions/defold-1.13.0/model.d.ts +9 -4
  60. package/generated/versions/defold-1.13.0/particlefx.d.ts +1 -1
  61. package/generated/versions/defold-1.13.0/physics.d.ts +16 -9
  62. package/generated/versions/defold-1.13.0/profiler.d.ts +9 -2
  63. package/generated/versions/defold-1.13.0/render.d.ts +224 -99
  64. package/generated/versions/defold-1.13.0/resource.d.ts +143 -157
  65. package/generated/versions/defold-1.13.0/socket.d.ts +13 -8
  66. package/generated/versions/defold-1.13.0/sound.d.ts +3 -2
  67. package/generated/versions/defold-1.13.0/sys.d.ts +16 -10
  68. package/generated/versions/defold-1.13.0/tilemap.d.ts +25 -19
  69. package/generated/versions/defold-1.13.0/timer.d.ts +33 -24
  70. package/generated/versions/defold-1.13.0/vmath.d.ts +13 -5
  71. package/generated/versions/defold-1.13.0/window.d.ts +5 -3
  72. package/generated/vmath.d.ts +13 -5
  73. package/generated/window.d.ts +5 -3
  74. package/package.json +2 -1
  75. package/src/api-doc.ts +8 -0
  76. package/src/doc-comment.ts +213 -32
  77. package/src/emit-dts.ts +501 -10
  78. package/src/example-store.ts +26 -0
  79. package/src/index.ts +5 -0
  80. package/src/lifecycle.ts +31 -8
  81. package/src/message-dispatch.d.ts +55 -13
  82. package/src/msg-overloads.d.ts +73 -3
  83. package/src/render-overloads.d.ts +0 -17
@@ -1,5 +1,5 @@
1
1
  /** @noSelfInFile */
2
- import type { Opaque } from "../src/core-types";
2
+ import type { Hash, Opaque } from "../src/core-types";
3
3
 
4
4
  declare global {
5
5
  /**
@@ -7,6 +7,7 @@ declare global {
7
7
  * error handling and debugging.
8
8
  */
9
9
  namespace sys {
10
+ type NetworkConnectivity = typeof sys.NETWORK_DISCONNECTED | typeof sys.NETWORK_CONNECTED_CELLULAR | typeof sys.NETWORK_CONNECTED;
10
11
  /**
11
12
  * network connected through other, non cellular, connection
12
13
  */
@@ -39,6 +40,7 @@ declare global {
39
40
  * @example
40
41
  * ```ts
41
42
  * // Deserialize a table that was previously serialized:
43
+ * const my_table = { score: 100, level: 3 };
42
44
  * const buffer = sys.serialize(my_table);
43
45
  * const table = sys.deserialize(buffer);
44
46
  * ```
@@ -53,6 +55,7 @@ declare global {
53
55
  * @example
54
56
  * ```ts
55
57
  * // Load data but return nil if path didn't exist
58
+ * const path = "/save/game.dat";
56
59
  * if (!sys.exists(path)) {
57
60
  * return undefined;
58
61
  * }
@@ -228,7 +231,7 @@ declare global {
228
231
  * }
229
232
  * ```
230
233
  */
231
- function get_connectivity(): number & { readonly __brand: "sys.NETWORK_DISCONNECTED" } | number & { readonly __brand: "sys.NETWORK_CONNECTED_CELLULAR" } | number & { readonly __brand: "sys.NETWORK_CONNECTED" };
234
+ function get_connectivity(): sys.NetworkConnectivity;
232
235
  /**
233
236
  * Returns a table with engine information.
234
237
  *
@@ -259,6 +262,7 @@ declare global {
259
262
  * @example
260
263
  * ```ts
261
264
  * // Save data on the host
265
+ * const mytable = { score: 100, level: 3 };
262
266
  * const host_path = sys.get_host_path("logs/test.txt");
263
267
  * sys.save(host_path, mytable);
264
268
  *
@@ -443,21 +447,23 @@ declare global {
443
447
  * @example
444
448
  * ```ts
445
449
  * // Load binary data from a custom project resource and update a texture resource:
446
- * function my_callback(self, request_id, result) {
447
- * if (result.status === resource.REQUEST_STATUS_FINISHED) {
448
- * resource.set_texture("/my_texture", {}, result.buf); // texture args
450
+ * function my_callback(self: unknown, request_id: unknown, result: unknown) {
451
+ * const { status, buf } = result as { status: number; buf: Opaque<"buffer"> };
452
+ * if (status === resource.REQUEST_STATUS_FINISHED) {
453
+ * resource.set_texture("/my_texture", {}, buf); // texture args
449
454
  * }
450
455
  * }
451
456
  *
452
457
  * const my_request = sys.load_buffer_async("/assets/my_level_data.bin", my_callback);
453
458
  *
454
459
  * // Load binary data from non-custom resource files on disk:
455
- * function my_callback(self, request_id, result) {
456
- * if (result.status !== sys.REQUEST_STATUS_FINISHED) {
460
+ * function my_callback(self: unknown, request_id: unknown, result: unknown) {
461
+ * const { first_asset, second_asset } = self as { first_asset: Hash; second_asset: Hash };
462
+ * if ((result as { status: number }).status !== sys.REQUEST_STATUS_FINISHED) {
457
463
  * // uh oh! File could not be found, do something graceful
458
- * } else if (request_id === self.first_asset) {
464
+ * } else if (request_id === first_asset) {
459
465
  * // result.buffer contains data from my_level_asset.bin
460
- * } else if (request_id === self.second_asset) {
466
+ * } else if (request_id === second_asset) {
461
467
  * // result.buffer contains data from 'my_level.bin'
462
468
  * }
463
469
  * }
@@ -623,7 +629,7 @@ declare global {
623
629
  * @example
624
630
  * ```ts
625
631
  * // Install error handler that just prints the errors
626
- * function my_error_handler(source, message, traceback) {
632
+ * function my_error_handler(source: unknown, message: unknown, traceback: unknown) {
627
633
  * print(source); //> lua
628
634
  * print(message); //> main/my.script:10: attempt to perform arithmetic on a string value
629
635
  * print(traceback); //> stack traceback:
@@ -55,8 +55,10 @@ declare global {
55
55
  * @returns index of the tile
56
56
  * @example
57
57
  * ```ts
58
- * // get the tile under the player.
59
- * const tileno = tilemap.get_tile("/level#tilemap", "foreground", self.player_x, self.player_y);
58
+ * function tile_under_player(self: { player_x: number; player_y: number }) {
59
+ * // get the tile under the player.
60
+ * const tileno = tilemap.get_tile("/level#tilemap", "foreground", self.player_x, self.player_y);
61
+ * }
60
62
  * ```
61
63
  */
62
64
  function get_tile(url: string | Hash | Url, layer: string | Hash, x: number, y: number): number;
@@ -74,15 +76,17 @@ declare global {
74
76
  * @returns index of the tile
75
77
  * @example
76
78
  * ```ts
77
- * // get the tile under the player.
78
- * const tile_info = tilemap.get_tile_info("/level#tilemap", "foreground", self.player_x, self.player_y);
79
- * pprint(tile_info);
80
- * // {
81
- * // index = 0,
82
- * // h_flip = false,
83
- * // v_flip = true,
84
- * // rotate_90 = false
85
- * // }
79
+ * function tile_info_under_player(self: { player_x: number; player_y: number }) {
80
+ * // get the tile under the player.
81
+ * const tile_info = tilemap.get_tile_info("/level#tilemap", "foreground", self.player_x, self.player_y);
82
+ * pprint(tile_info);
83
+ * // {
84
+ * // index = 0,
85
+ * // h_flip = false,
86
+ * // v_flip = true,
87
+ * // rotate_90 = false
88
+ * // }
89
+ * }
86
90
  * ```
87
91
  */
88
92
  function get_tile_info(url: string | Hash | Url, layer: string | Hash, x: number, y: number): { index: number; h_flip: boolean; v_flip: boolean; rotate_90: boolean };
@@ -103,7 +107,7 @@ declare global {
103
107
  * let count = 0;
104
108
  * for (let row_index = bottom; row_index <= bottom + rows_count - 1; row_index++) {
105
109
  * for (let column_index = left; column_index <= left + columns_count - 1; column_index++) {
106
- * tile = tiles[row_index][column_index];
110
+ * tile = tiles.get(row_index)?.get(column_index) ?? 0;
107
111
  * count = count + 1;
108
112
  * }
109
113
  * }
@@ -155,14 +159,16 @@ declare global {
155
159
  * @param transform_bitmask - optional flip and/or rotation should be applied to the tile
156
160
  * @example
157
161
  * ```ts
158
- * // Clear the tile under the player.
159
- * tilemap.set_tile("/level#tilemap", "foreground", self.player_x, self.player_y, 0);
162
+ * function set_tiles(self: { player_x: number; player_y: number }, x: number, y: number) {
163
+ * // Clear the tile under the player.
164
+ * tilemap.set_tile("/level#tilemap", "foreground", self.player_x, self.player_y, 0);
160
165
  *
161
- * // Set tile with different combination of flip and rotation
162
- * tilemap.set_tile("#tilemap", "layer1", x, y, 0, tilemap.H_FLIP + tilemap.V_FLIP + tilemap.ROTATE_90);
163
- * tilemap.set_tile("#tilemap", "layer1", x, y, 0, tilemap.H_FLIP + tilemap.ROTATE_270);
164
- * tilemap.set_tile("#tilemap", "layer1", x, y, 0, tilemap.V_FLIP + tilemap.H_FLIP);
165
- * tilemap.set_tile("#tilemap", "layer1", x, y, 0, tilemap.ROTATE_180);
166
+ * // Set tile with different combination of flip and rotation
167
+ * tilemap.set_tile("#tilemap", "layer1", x, y, 0, tilemap.H_FLIP + tilemap.V_FLIP + tilemap.ROTATE_90);
168
+ * tilemap.set_tile("#tilemap", "layer1", x, y, 0, tilemap.H_FLIP + tilemap.ROTATE_270);
169
+ * tilemap.set_tile("#tilemap", "layer1", x, y, 0, tilemap.V_FLIP + tilemap.H_FLIP);
170
+ * tilemap.set_tile("#tilemap", "layer1", x, y, 0, tilemap.ROTATE_180);
171
+ * }
166
172
  * ```
167
173
  */
168
174
  function set_tile(url: string | Hash | Url, layer: string | Hash, x: number, y: number, tile: number, transform_bitmask?: number): void;
@@ -20,11 +20,13 @@ declare global {
20
20
  * @returns if the timer was active, false if the timer is already cancelled / complete
21
21
  * @example
22
22
  * ```ts
23
- * self.handle = timer.delay(1, true, () => print("print every second"));
24
- * // ...
25
- * const result = timer.cancel(self.handle);
26
- * if (!result) {
27
- * print("the timer is already cancelled");
23
+ * function cancel_ticking(self: { handle: number }) {
24
+ * self.handle = timer.delay(1, true, () => print("print every second"));
25
+ * // ...
26
+ * const result = timer.cancel(self.handle);
27
+ * if (!result) {
28
+ * print("the timer is already cancelled");
29
+ * }
28
30
  * }
29
31
  * ```
30
32
  */
@@ -54,16 +56,19 @@ declare global {
54
56
  * timer.delay(1, false, () => print("print in one second"));
55
57
  *
56
58
  * // Repetitive timer which canceled after 10 calls
57
- * function call_every_second(self, handle, time_elapsed) {
58
- * self.counter = self.counter + 1;
59
- * print("Call #", self.counter);
60
- * if (self.counter === 10) {
61
- * timer.cancel(handle); // cancel timer after 10 calls
59
+ * function call_every_second(self: unknown, handle: unknown, time_elapsed: unknown) {
60
+ * const state = self as { counter: number };
61
+ * state.counter = state.counter + 1;
62
+ * print("Call #", state.counter);
63
+ * if (state.counter === 10) {
64
+ * timer.cancel(handle as number); // cancel timer after 10 calls
62
65
  * }
63
66
  * }
64
67
  *
65
- * self.counter = 0;
66
- * timer.delay(1, true, call_every_second);
68
+ * function start_counting(self: { counter: number }) {
69
+ * self.counter = 0;
70
+ * timer.delay(1, true, call_every_second);
71
+ * }
67
72
  * ```
68
73
  */
69
74
  function delay(delay: number, repeating: boolean, callback: (self: unknown, handle: unknown, time_elapsed: unknown) => void): number;
@@ -81,13 +86,15 @@ declare global {
81
86
  * boolean true = repeat timer until cancel, false = one-shot timer.
82
87
  * @example
83
88
  * ```ts
84
- * self.handle = timer.delay(1, true, () => print("print every second"));
85
- * // ...
86
- * const result = timer.get_info(self.handle);
87
- * if (!result) {
88
- * print("the timer is already cancelled or complete");
89
- * } else {
90
- * pprint(result); // delay, time_remaining, repeating
89
+ * function report_ticking(self: { handle: number }) {
90
+ * self.handle = timer.delay(1, true, () => print("print every second"));
91
+ * // ...
92
+ * const result = timer.get_info(self.handle);
93
+ * if (!result) {
94
+ * print("the timer is already cancelled or complete");
95
+ * } else {
96
+ * pprint(result); // delay, time_remaining, repeating
97
+ * }
91
98
  * }
92
99
  * ```
93
100
  */
@@ -99,11 +106,13 @@ declare global {
99
106
  * @returns if the timer was active, false if the timer is already cancelled / complete
100
107
  * @example
101
108
  * ```ts
102
- * self.handle = timer.delay(1, true, () => print("print every second or manually by timer.trigger"));
103
- * // ...
104
- * const result = timer.trigger(self.handle);
105
- * if (!result) {
106
- * print("the timer is already cancelled or complete");
109
+ * function trigger_ticking(self: { handle: number }) {
110
+ * self.handle = timer.delay(1, true, () => print("print every second or manually by timer.trigger"));
111
+ * // ...
112
+ * const result = timer.trigger(self.handle);
113
+ * if (!result) {
114
+ * print("the timer is already cancelled or complete");
115
+ * }
107
116
  * }
108
117
  * ```
109
118
  */
@@ -6,6 +6,7 @@ declare global {
6
6
  * Functions for manipulating buffers and streams
7
7
  */
8
8
  namespace buffer {
9
+ type ValueType = typeof buffer.VALUE_TYPE_FLOAT32 | typeof buffer.VALUE_TYPE_INT16 | typeof buffer.VALUE_TYPE_INT32 | typeof buffer.VALUE_TYPE_INT64 | typeof buffer.VALUE_TYPE_INT8 | typeof buffer.VALUE_TYPE_UINT16 | typeof buffer.VALUE_TYPE_UINT32 | typeof buffer.VALUE_TYPE_UINT64 | typeof buffer.VALUE_TYPE_UINT8;
9
10
  /**
10
11
  * Float, single precision, 4 bytes
11
12
  */
@@ -56,11 +57,15 @@ declare global {
56
57
  * @example
57
58
  * ```ts
58
59
  * // How to copy elements (e.g. vertices) from one buffer to another
60
+ * const element_count = 64;
61
+ * const srcbuffer = resource.get_buffer("/src.bufferc");
62
+ * const dstbuffer = resource.get_buffer("/dst.bufferc");
63
+ *
59
64
  * // copy entire buffer
60
- * buffer.copy_buffer(dstbuffer, 0, srcbuffer, 0, srcbuffer.length);
65
+ * buffer.copy_buffer(dstbuffer, 0, srcbuffer, 0, element_count);
61
66
  *
62
67
  * // copy last 10 elements to the front of another buffer
63
- * buffer.copy_buffer(dstbuffer, 0, srcbuffer, srcbuffer.length - 10, 10);
68
+ * buffer.copy_buffer(dstbuffer, 0, srcbuffer, element_count - 10, 10);
64
69
  * ```
65
70
  */
66
71
  function copy_buffer(dst: Opaque<"buffer">, dstoffset: number, src: Opaque<"buffer">, srcoffset: number, count: number): void;
@@ -77,6 +82,9 @@ declare global {
77
82
  * @example
78
83
  * ```ts
79
84
  * // How to update a texture of a sprite:
85
+ * const srcbuffer = resource.get_buffer("/src.bufferc");
86
+ * const dstbuffer = resource.get_buffer("/dst.bufferc");
87
+ *
80
88
  * // copy entire stream
81
89
  * const srcstream = buffer.get_stream(srcbuffer, hash("xyz"));
82
90
  * const dststream = buffer.get_stream(dstbuffer, hash("xyz"));
@@ -137,12 +145,14 @@ declare global {
137
145
  * @example
138
146
  * ```ts
139
147
  * // How to get a metadata entry from a buffer
148
+ * const buf = resource.get_buffer("/my.bufferc");
149
+ *
140
150
  * // retrieve a metadata entry named "somefloats" and its numeric type
141
151
  * const [values, type] = buffer.get_metadata(buf, hash("somefloats"));
142
152
  * if (values) print(`${values.length} values in 'somefloats'`);
143
153
  * ```
144
154
  */
145
- function get_metadata(buf: Opaque<"buffer">, metadata_name: Hash | string): LuaMultiReturn<[number[] | undefined, number & { readonly __brand: "buffer.VALUE_TYPE_FLOAT32" } | number & { readonly __brand: "buffer.VALUE_TYPE_INT16" } | number & { readonly __brand: "buffer.VALUE_TYPE_INT32" } | number & { readonly __brand: "buffer.VALUE_TYPE_INT64" } | number & { readonly __brand: "buffer.VALUE_TYPE_INT8" } | number & { readonly __brand: "buffer.VALUE_TYPE_UINT16" } | number & { readonly __brand: "buffer.VALUE_TYPE_UINT32" } | number & { readonly __brand: "buffer.VALUE_TYPE_UINT64" } | number & { readonly __brand: "buffer.VALUE_TYPE_UINT8" } | undefined]>;
155
+ function get_metadata(buf: Opaque<"buffer">, metadata_name: Hash | string): LuaMultiReturn<[number[] | undefined, buffer.ValueType | undefined]>;
146
156
  /**
147
157
  * Get a specified stream from a buffer.
148
158
  *
@@ -162,6 +172,8 @@ declare global {
162
172
  * @example
163
173
  * ```ts
164
174
  * // How to set a metadata entry on a buffer
175
+ * const buf = resource.get_buffer("/my.bufferc");
176
+ *
165
177
  * // create a new metadata entry with three floats
166
178
  * buffer.set_metadata(buf, hash("somefloats"), [1.5, 3.2, 7.9], buffer.VALUE_TYPE_FLOAT32);
167
179
  * // ...
@@ -169,7 +181,7 @@ declare global {
169
181
  * buffer.set_metadata(buf, hash("somefloats"), [-2.5, 10.0, 32.2], buffer.VALUE_TYPE_FLOAT32);
170
182
  * ```
171
183
  */
172
- function set_metadata(buf: Opaque<"buffer">, metadata_name: Hash | string, values: number[], value_type: number & { readonly __brand: "buffer.VALUE_TYPE_FLOAT32" } | number & { readonly __brand: "buffer.VALUE_TYPE_INT16" } | number & { readonly __brand: "buffer.VALUE_TYPE_INT32" } | number & { readonly __brand: "buffer.VALUE_TYPE_INT64" } | number & { readonly __brand: "buffer.VALUE_TYPE_INT8" } | number & { readonly __brand: "buffer.VALUE_TYPE_UINT16" } | number & { readonly __brand: "buffer.VALUE_TYPE_UINT32" } | number & { readonly __brand: "buffer.VALUE_TYPE_UINT64" } | number & { readonly __brand: "buffer.VALUE_TYPE_UINT8" }): void;
184
+ function set_metadata(buf: Opaque<"buffer">, metadata_name: Hash | string, values: number[], value_type: buffer.ValueType): void;
173
185
  }
174
186
  }
175
187
 
@@ -45,6 +45,7 @@ declare global {
45
45
  * @returns a table with all camera URLs
46
46
  * @example
47
47
  * ```ts
48
+ * const predicate = render.predicate([hash("my_tag")]);
48
49
  * for (const camera_id of camera.get_cameras()) {
49
50
  * render.set_camera(camera_id);
50
51
  * render.draw(predicate);
@@ -7,6 +7,7 @@ declare global {
7
7
  * used to dynamically spawn collections into the runtime.
8
8
  */
9
9
  namespace collectionfactory {
10
+ type Status = typeof collectionfactory.STATUS_UNLOADED | typeof collectionfactory.STATUS_LOADING | typeof collectionfactory.STATUS_LOADED;
10
11
  /**
11
12
  * loaded
12
13
  */
@@ -75,7 +76,9 @@ declare global {
75
76
  * });
76
77
  *
77
78
  * // How to delete a spawned collection:
78
- * go.delete(self.enemy_ids);
79
+ * function delete_enemies(self: { enemy_ids: Hash[] }) {
80
+ * go.delete(self.enemy_ids);
81
+ * }
79
82
  * ```
80
83
  */
81
84
  function create(url: string | Hash | Url, position?: Vector3, rotation?: Quaternion, properties?: Record<string | number, unknown>, scale?: number | Vector3): LuaMap<Hash, Hash>;
@@ -92,7 +95,7 @@ declare global {
92
95
  *
93
96
  * - `collectionfactory.STATUS_LOADED`
94
97
  */
95
- function get_status(url?: string | Hash | Url): number & { readonly __brand: "collectionfactory.STATUS_UNLOADED" } | number & { readonly __brand: "collectionfactory.STATUS_LOADING" } | number & { readonly __brand: "collectionfactory.STATUS_LOADED" };
98
+ function get_status(url?: string | Hash | Url): collectionfactory.Status;
96
99
  /**
97
100
  * Resources loaded are referenced by the collection factory component until the existing (parent) collection is destroyed or collectionfactory.unload is called.
98
101
  * Calling this function when the factory is not marked as dynamic loading does nothing.
@@ -32,7 +32,7 @@ declare global {
32
32
  * collection was not excluded.
33
33
  * @example
34
34
  * ```ts
35
- * function print_resources(self, cproxy) {
35
+ * function print_resources(self: unknown, cproxy: Url) {
36
36
  * const resources = collectionproxy.get_resources(cproxy);
37
37
  * for (const v of resources) {
38
38
  * print(`Resource: ${v}`);
@@ -7,6 +7,7 @@ declare global {
7
7
  * dynamically spawn game objects into the runtime.
8
8
  */
9
9
  namespace factory {
10
+ type Status = typeof factory.STATUS_UNLOADED | typeof factory.STATUS_LOADING | typeof factory.STATUS_LOADED;
10
11
  /**
11
12
  * loaded
12
13
  */
@@ -71,7 +72,7 @@ declare global {
71
72
  *
72
73
  * - `factory.STATUS_LOADED`
73
74
  */
74
- function get_status(url?: string | Hash | Url): number & { readonly __brand: "factory.STATUS_UNLOADED" } | number & { readonly __brand: "factory.STATUS_LOADING" } | number & { readonly __brand: "factory.STATUS_LOADED" };
75
+ function get_status(url?: string | Hash | Url): factory.Status;
75
76
  /**
76
77
  * Resources are referenced by the factory component until the existing (parent) collection is destroyed or factory.unload is called.
77
78
  * Calling this function when the factory is not marked as dynamic loading does nothing.