@league-of-foundry-developers/foundry-vtt-types 0.8.9-9 → 9.238.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 (178) hide show
  1. package/README.md +44 -27
  2. package/index.d.ts +2 -2
  3. package/package.json +34 -15
  4. package/src/foundry/common/abstract/document.mjs.d.ts +24 -10
  5. package/src/foundry/common/config.mjs/index.d.ts +1 -0
  6. package/src/foundry/common/config.mjs/releaseData.d.ts +98 -0
  7. package/src/foundry/common/constants.mjs.d.ts +402 -213
  8. package/src/foundry/common/data/data.mjs/activeEffectData.d.ts +36 -29
  9. package/src/foundry/common/data/data.mjs/actorData.d.ts +32 -21
  10. package/src/foundry/common/data/data.mjs/adventureData.d.ts +165 -0
  11. package/src/foundry/common/data/data.mjs/ambientLightData.d.ts +45 -124
  12. package/src/foundry/common/data/data.mjs/ambientSoundData.d.ts +49 -77
  13. package/src/foundry/common/data/data.mjs/animationData.d.ts +17 -9
  14. package/src/foundry/common/data/data.mjs/cardData.d.ts +265 -0
  15. package/src/foundry/common/data/data.mjs/cardFaceData.d.ts +66 -0
  16. package/src/foundry/common/data/data.mjs/cardsData.d.ts +238 -0
  17. package/src/foundry/common/data/data.mjs/chatMessageData.d.ts +51 -39
  18. package/src/foundry/common/data/data.mjs/chatSpeakerData.d.ts +18 -11
  19. package/src/foundry/common/data/data.mjs/combatData.d.ts +51 -25
  20. package/src/foundry/common/data/data.mjs/combatantData.d.ts +48 -30
  21. package/src/foundry/common/data/data.mjs/darknessActivation.d.ts +8 -7
  22. package/src/foundry/common/data/data.mjs/drawingData.d.ts +68 -67
  23. package/src/foundry/common/data/data.mjs/effectChangeData.d.ts +21 -25
  24. package/src/foundry/common/data/data.mjs/effectDurationData.d.ts +24 -23
  25. package/src/foundry/common/data/data.mjs/fogExplorationData.d.ts +23 -16
  26. package/src/foundry/common/data/data.mjs/folderData.d.ts +28 -25
  27. package/src/foundry/common/data/data.mjs/index.d.ts +5 -0
  28. package/src/foundry/common/data/data.mjs/itemData.d.ts +26 -18
  29. package/src/foundry/common/data/data.mjs/journalEntryData.d.ts +21 -20
  30. package/src/foundry/common/data/data.mjs/lightData.d.ts +228 -0
  31. package/src/foundry/common/data/data.mjs/macroData.d.ts +52 -35
  32. package/src/foundry/common/data/data.mjs/measuredTemplateData.d.ts +41 -38
  33. package/src/foundry/common/data/data.mjs/noteData.d.ts +47 -37
  34. package/src/foundry/common/data/data.mjs/playlistData.d.ts +55 -26
  35. package/src/foundry/common/data/data.mjs/playlistSoundData.d.ts +32 -16
  36. package/src/foundry/common/data/data.mjs/prototypeTokenData.d.ts +7 -11
  37. package/src/foundry/common/data/data.mjs/rollTableData.d.ts +30 -24
  38. package/src/foundry/common/data/data.mjs/sceneData.d.ts +132 -111
  39. package/src/foundry/common/data/data.mjs/settingData.d.ts +11 -8
  40. package/src/foundry/common/data/data.mjs/tableResultData.d.ts +30 -26
  41. package/src/foundry/common/data/data.mjs/tileData.d.ts +43 -36
  42. package/src/foundry/common/data/data.mjs/tileOcclusion.d.ts +10 -9
  43. package/src/foundry/common/data/data.mjs/tokenBarData.d.ts +6 -3
  44. package/src/foundry/common/data/data.mjs/tokenData.d.ts +105 -157
  45. package/src/foundry/common/data/data.mjs/userData.d.ts +111 -33
  46. package/src/foundry/common/data/data.mjs/videoData.d.ts +9 -8
  47. package/src/foundry/common/data/data.mjs/wallData.d.ts +67 -39
  48. package/src/foundry/common/data/fields.mjs.d.ts +180 -83
  49. package/src/foundry/common/documents.mjs/baseActiveEffect.d.ts +9 -3
  50. package/src/foundry/common/documents.mjs/baseActor.d.ts +17 -45
  51. package/src/foundry/common/documents.mjs/baseAdventure.d.ts +38 -0
  52. package/src/foundry/common/documents.mjs/baseAmbientLight.d.ts +3 -0
  53. package/src/foundry/common/documents.mjs/baseAmbientSound.d.ts +3 -1
  54. package/src/foundry/common/documents.mjs/baseCard.d.ts +62 -0
  55. package/src/foundry/common/documents.mjs/baseCards.d.ts +39 -0
  56. package/src/foundry/common/documents.mjs/baseChatMessage.d.ts +3 -0
  57. package/src/foundry/common/documents.mjs/baseCombat.d.ts +5 -2
  58. package/src/foundry/common/documents.mjs/baseCombatant.d.ts +10 -1
  59. package/src/foundry/common/documents.mjs/baseDrawing.d.ts +11 -1
  60. package/src/foundry/common/documents.mjs/baseFogExploration.d.ts +4 -3
  61. package/src/foundry/common/documents.mjs/baseFolder.d.ts +10 -1
  62. package/src/foundry/common/documents.mjs/baseItem.d.ts +11 -29
  63. package/src/foundry/common/documents.mjs/baseJournalEntry.d.ts +3 -0
  64. package/src/foundry/common/documents.mjs/baseMacro.d.ts +16 -14
  65. package/src/foundry/common/documents.mjs/baseMeasuredTemplate.d.ts +4 -1
  66. package/src/foundry/common/documents.mjs/baseNote.d.ts +2 -2
  67. package/src/foundry/common/documents.mjs/basePlaylist.d.ts +1 -0
  68. package/src/foundry/common/documents.mjs/basePlaylistSound.d.ts +2 -1
  69. package/src/foundry/common/documents.mjs/baseRollTable.d.ts +3 -0
  70. package/src/foundry/common/documents.mjs/baseScene.d.ts +1 -0
  71. package/src/foundry/common/documents.mjs/baseSetting.d.ts +1 -0
  72. package/src/foundry/common/documents.mjs/baseTableResult.d.ts +10 -3
  73. package/src/foundry/common/documents.mjs/baseTile.d.ts +1 -0
  74. package/src/foundry/common/documents.mjs/baseToken.d.ts +3 -0
  75. package/src/foundry/common/documents.mjs/baseUser.d.ts +7 -1
  76. package/src/foundry/common/documents.mjs/baseWall.d.ts +7 -10
  77. package/src/foundry/common/documents.mjs/index.d.ts +3 -0
  78. package/src/foundry/common/module.mjs.d.ts +3 -0
  79. package/src/foundry/common/packages.mjs/moduleData.d.ts +12 -9
  80. package/src/foundry/common/packages.mjs/packageAuthorData.d.ts +24 -24
  81. package/src/foundry/common/packages.mjs/packageCompendiumData.d.ts +27 -21
  82. package/src/foundry/common/packages.mjs/packageData.d.ts +108 -82
  83. package/src/foundry/common/packages.mjs/packageDependencyData.d.ts +18 -11
  84. package/src/foundry/common/packages.mjs/packageLanguageData.d.ts +16 -15
  85. package/src/foundry/common/packages.mjs/systemData.d.ts +21 -20
  86. package/src/foundry/common/packages.mjs/tagPackageAvailability.d.ts +3 -3
  87. package/src/foundry/common/packages.mjs/worldData.d.ts +29 -18
  88. package/src/foundry/common/types.mjs.d.ts +95 -0
  89. package/src/foundry/common/utils/helpers.mjs.d.ts +27 -2
  90. package/src/foundry/common/utils/primitives.mjs.d.ts +99 -16
  91. package/src/foundry/foundry.js/application.d.ts +2 -2
  92. package/src/foundry/foundry.js/applications/filePicker.d.ts +1 -1
  93. package/src/foundry/foundry.js/applications/formApplication.d.ts +1 -1
  94. package/src/foundry/foundry.js/applications/formApplications/documentSheet.d.ts +1 -1
  95. package/src/foundry/foundry.js/applications/formApplications/documentSheets/activeEffectConfig.d.ts +1 -1
  96. package/src/foundry/foundry.js/applications/formApplications/documentSheets/actorSheet.d.ts +1 -1
  97. package/src/foundry/foundry.js/applications/formApplications/documentSheets/ambientLightConfig.d.ts +104 -0
  98. package/src/foundry/foundry.js/applications/formApplications/documentSheets/ambientSoundConfig.d.ts +1 -1
  99. package/src/foundry/foundry.js/applications/formApplications/documentSheets/folderConfig.d.ts +1 -1
  100. package/src/foundry/foundry.js/applications/formApplications/documentSheets/index.d.ts +1 -0
  101. package/src/foundry/foundry.js/applications/formApplications/documentSheets/lightConfig.d.ts +5 -79
  102. package/src/foundry/foundry.js/applications/formApplications/documentSheets/measuredTemplateConfig.d.ts +1 -1
  103. package/src/foundry/foundry.js/applications/formApplications/documentSheets/noteConfig.d.ts +2 -2
  104. package/src/foundry/foundry.js/applications/formApplications/documentSheets/permissionControl.d.ts +5 -5
  105. package/src/foundry/foundry.js/applications/formApplications/documentSheets/playlistConfig.d.ts +1 -1
  106. package/src/foundry/foundry.js/applications/formApplications/documentSheets/rollTableConfig.d.ts +5 -8
  107. package/src/foundry/foundry.js/applications/formApplications/documentSheets/sceneConfig.d.ts +3 -3
  108. package/src/foundry/foundry.js/applications/formApplications/documentSheets/tileConfig.d.ts +1 -1
  109. package/src/foundry/foundry.js/applications/formApplications/drawingConfig.d.ts +1 -1
  110. package/src/foundry/foundry.js/applications/formApplications/gridConfig.d.ts +1 -1
  111. package/src/foundry/foundry.js/applications/formApplications/imagePopout.d.ts +1 -1
  112. package/src/foundry/foundry.js/applications/formApplications/index.d.ts +1 -0
  113. package/src/foundry/foundry.js/applications/formApplications/keybindingsConfig.d.ts +257 -0
  114. package/src/foundry/foundry.js/applications/formApplications/tokenConfig.d.ts +8 -9
  115. package/src/foundry/foundry.js/applications/formApplications/wallConfig.d.ts +6 -6
  116. package/src/foundry/foundry.js/applications/sidebarTab.d.ts +1 -1
  117. package/src/foundry/foundry.js/applications/sidebarTabs/chatLog.d.ts +7 -6
  118. package/src/foundry/foundry.js/applications/sidebarTabs/compendiumDirectory.d.ts +2 -2
  119. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectories/cardsDirectory.d.ts +7 -0
  120. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectories/index.d.ts +1 -0
  121. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectories/playlistDirectory.d.ts +2 -2
  122. package/src/foundry/foundry.js/applications/sidebarTabs/sidebarDirectory.d.ts +2 -2
  123. package/src/foundry/foundry.js/avSettings.d.ts +7 -7
  124. package/src/foundry/foundry.js/canvas.d.ts +148 -46
  125. package/src/foundry/foundry.js/canvasAnimation.d.ts +1 -1
  126. package/src/foundry/foundry.js/canvasDocumentMixin.d.ts +7 -0
  127. package/src/foundry/foundry.js/clientDocumentMixin.d.ts +45 -91
  128. package/src/foundry/foundry.js/clientDocuments/activeEffect.d.ts +3 -2
  129. package/src/foundry/foundry.js/clientDocuments/actor.d.ts +3 -7
  130. package/src/foundry/foundry.js/clientDocuments/canvasDocuments/ambientSoundDocument.d.ts +1 -6
  131. package/src/foundry/foundry.js/clientDocuments/card.d.ts +133 -0
  132. package/src/foundry/foundry.js/clientDocuments/cards.d.ts +384 -0
  133. package/src/foundry/foundry.js/clientDocuments/chatMessage.d.ts +11 -10
  134. package/src/foundry/foundry.js/clientDocuments/combat.d.ts +4 -8
  135. package/src/foundry/foundry.js/clientDocuments/combatant.d.ts +1 -1
  136. package/src/foundry/foundry.js/clientDocuments/folder.d.ts +4 -6
  137. package/src/foundry/foundry.js/clientDocuments/index.d.ts +2 -0
  138. package/src/foundry/foundry.js/clientDocuments/item.d.ts +3 -4
  139. package/src/foundry/foundry.js/clientDocuments/playlist.d.ts +4 -3
  140. package/src/foundry/foundry.js/clientDocuments/rollTable.d.ts +1 -1
  141. package/src/foundry/foundry.js/clientDocuments/scene.d.ts +30 -23
  142. package/src/foundry/foundry.js/clientKeybindings.d.ts +299 -0
  143. package/src/foundry/foundry.js/clientSettings.d.ts +11 -9
  144. package/src/foundry/foundry.js/collections/documentCollections/compendiumCollection.d.ts +1 -1
  145. package/src/foundry/foundry.js/collections/documentCollections/worldCollections/cardStacks.d.ts +9 -0
  146. package/src/foundry/foundry.js/collections/documentCollections/worldCollections/index.d.ts +1 -0
  147. package/src/foundry/foundry.js/collections/documentCollections/worldCollections/playlists.d.ts +3 -2
  148. package/src/foundry/foundry.js/config.d.ts +465 -887
  149. package/src/foundry/foundry.js/game.d.ts +86 -11
  150. package/src/foundry/foundry.js/gamepadManager.d.ts +41 -0
  151. package/src/foundry/foundry.js/handlebarsHelpers.d.ts +4 -4
  152. package/src/foundry/foundry.js/hooks.d.ts +57 -0
  153. package/src/foundry/foundry.js/keyboardManager.d.ts +165 -213
  154. package/src/foundry/foundry.js/mouseManager.d.ts +18 -0
  155. package/src/foundry/foundry.js/newUserExperience.d.ts +34 -0
  156. package/src/foundry/foundry.js/pixi/containers/cachedContainer.d.ts +8 -0
  157. package/src/foundry/foundry.js/pixi/containers/cachedContainers/index.d.ts +1 -0
  158. package/src/foundry/foundry.js/pixi/containers/cachedContainers/primaryCanvasGroup.d.ts +42 -0
  159. package/src/foundry/foundry.js/pixi/containers/canvasLayers/gridLayer.d.ts +2 -2
  160. package/src/foundry/foundry.js/pixi/containers/canvasLayers/index.d.ts +1 -1
  161. package/src/foundry/foundry.js/pixi/containers/canvasLayers/placeablesLayers/wallsLayer.d.ts +3 -3
  162. package/src/foundry/foundry.js/pixi/containers/canvasLayers/{effectsLayer.d.ts → weatherLayer.d.ts} +7 -7
  163. package/src/foundry/foundry.js/pixi/containers/effectsCanvasGroup.d.ts +29 -0
  164. package/src/foundry/foundry.js/pixi/containers/index.d.ts +3 -0
  165. package/src/foundry/foundry.js/pixi/containers/interfaceCanvasGroup.d.ts +27 -0
  166. package/src/foundry/foundry.js/pixi/containers/placeableObjects/token.d.ts +1 -1
  167. package/src/foundry/foundry.js/pointSource.d.ts +2 -2
  168. package/src/foundry/foundry.js/roll.d.ts +25 -36
  169. package/src/foundry/foundry.js/rollTerm.d.ts +7 -4
  170. package/src/foundry/foundry.js/rollTerms/diceTerm.d.ts +4 -22
  171. package/src/foundry/foundry.js/rollTerms/mathTerm.d.ts +3 -0
  172. package/src/foundry/foundry.js/rollTerms/parentheticalTerm.d.ts +3 -0
  173. package/src/foundry/foundry.js/rollTerms/poolTerm.d.ts +3 -5
  174. package/src/foundry/foundry.js/rollTerms/stringTerm.d.ts +4 -1
  175. package/src/foundry/foundry.js/searchFilter.d.ts +1 -1
  176. package/src/foundry/foundry.js/textEditor.d.ts +1 -1
  177. package/src/foundry/index.d.ts +4 -0
  178. package/src/types/utils.d.ts +11 -3
@@ -150,9 +150,7 @@ declare global {
150
150
  // eslint-disable-next-line @typescript-eslint/no-empty-interface
151
151
  interface DataConfig {}
152
152
 
153
- /**
154
- * @see {@link DataConfig}
155
- */
153
+ /** @see {@link DataConfig} */
156
154
  // eslint-disable-next-line @typescript-eslint/no-empty-interface
157
155
  interface SourceConfig {}
158
156
 
@@ -174,55 +172,38 @@ declare global {
174
172
  * Configure debugging flags to display additional information
175
173
  */
176
174
  debug: {
177
- /**
178
- * @defaultValue `false`
179
- */
175
+ /** @defaultValue `false` */
180
176
  dice: boolean;
181
177
 
182
- /**
183
- * @defaultValue `false`
184
- */
178
+ /** @defaultValue `false` */
185
179
  documents: boolean;
186
180
 
187
- /**
188
- * @defaultValue `false`
189
- */
181
+ /** @defaultValue `false` */
190
182
  fog: boolean;
191
183
 
192
- /**
193
- * @defaultValue `false`
194
- */
184
+ /** @defaultValue `false` */
195
185
  hooks: boolean;
196
186
 
197
- /**
198
- * @defaultValue `false`
199
- */
200
- sight: boolean;
201
-
202
- /**
203
- * @defaultValue `false`
204
- */
205
- sightRays: boolean;
206
-
207
- /**
208
- * @defaultValue `false`
209
- */
187
+ /** @defaultValue `false` */
210
188
  av: boolean;
211
189
 
212
- /**
213
- * @defaultValue `false`
214
- */
190
+ /** @defaultValue `false` */
215
191
  avclient: boolean;
216
192
 
217
- /**
218
- * @defaultValue `false`
219
- */
193
+ /** @defaultValue `false` */
220
194
  mouseInteraction: boolean;
221
195
 
222
- /**
223
- * @defaultValue `false`
224
- */
196
+ /** @defaultValue `false` */
225
197
  time: boolean;
198
+
199
+ /** @defaultValue `false` */
200
+ keybindings: boolean;
201
+
202
+ /** @defaultValue `false` */
203
+ polygons: boolean;
204
+
205
+ /** @defaultValue `false` */
206
+ gamepad: boolean;
226
207
  };
227
208
 
228
209
  /**
@@ -235,58 +216,83 @@ declare global {
235
216
  * Configuration for the Actor document
236
217
  */
237
218
  Actor: {
238
- /**
239
- * @defaultValue `Actor`
240
- */
219
+ /** @defaultValue `Actor` */
241
220
  documentClass: ConfiguredDocumentClassOrDefault<typeof Actor>;
242
221
 
243
- /**
244
- * @defaultValue `Actors`
245
- */
222
+ /** @defaultValue `Actors` */
246
223
  collection: ConstructorOf<Actors>;
247
224
 
248
- /**
249
- * @defaultValue `{}`
250
- */
251
- sheetClasses: CONFIG.SheetClasses;
252
-
253
- /**
254
- * @defaultValue `'fas fa-user'`
255
- */
225
+ /** @defaultValue `'fas fa-user'` */
256
226
  sidebarIcon: string;
257
227
 
258
- /**
259
- * @defaultValue `{}`
260
- */
261
- typeLabels: Partial<Record<string, string>>;
228
+ /** @defaultValue `{}` */
229
+ typeLabels: Record<string, string>;
230
+ };
231
+
232
+ /**
233
+ * Configuration for the Adventure document.
234
+ * Currently for internal use only.
235
+ * @internal
236
+ */
237
+ Adventure: {
238
+ /** @defaultValue `foundry.documents.BaseAdventure` */
239
+ documentClass: ConfiguredDocumentClassOrDefault<typeof foundry.documents.BaseAdventure>;
240
+ };
241
+
242
+ /**
243
+ * Configuration for the Cards primary Document type
244
+ */
245
+ Cards: {
246
+ /** @defaultValue `CardStacks` */
247
+ collection: ConstructorOf<CardStacks>;
248
+
249
+ /** @defaultValue `Cards` */
250
+ documentClass: ConfiguredDocumentClassOrDefault<typeof Cards>;
251
+
252
+ presets: {
253
+ /**
254
+ * @defaultValue
255
+ * ```javascript
256
+ * {
257
+ * type: "deck",
258
+ * label: "CARDS.DeckPresetPokerDark",
259
+ * src: "cards/poker-deck-dark.json"
260
+ * }
261
+ * ```
262
+ */
263
+ pokerDark: CONFIG.Cards.Preset;
264
+
265
+ /**
266
+ * @defaultValue
267
+ * ```javascript
268
+ * {
269
+ * type: "deck",
270
+ * label: "CARDS.DeckPresetPokerLight",
271
+ * src: "cards/poker-deck-light.json"
272
+ * }
273
+ * ```
274
+ */
275
+ pokerLight: CONFIG.Cards.Preset;
276
+ } & Record<string, CONFIG.Cards.Preset>;
262
277
  };
263
278
 
264
279
  /**
265
280
  * Configuration for the ChatMessage document
266
281
  */
267
282
  ChatMessage: {
268
- /**
269
- * @defaultValue `ChatMessage`
270
- */
283
+ /** @defaultValue `ChatMessage` */
271
284
  documentClass: ConfiguredDocumentClassOrDefault<typeof ChatMessage>;
272
- /**
273
- * @defaultValue `Messages`
274
- */
285
+
286
+ /** @defaultValue `Messages` */
275
287
  collection: ConstructorOf<Messages>;
276
288
 
277
- /**
278
- * @defaultValue `'templates/sidebar/chat-message.html'`
279
- */
289
+ /** @defaultValue `'templates/sidebar/chat-message.html'` */
280
290
  template: string;
281
291
 
282
- /**
283
- * @defaultValue `'fas fa-comments'`
284
- */
292
+ /** @defaultValue `'fas fa-comments'` */
285
293
  sidebarIcon: string;
286
294
 
287
- /**
288
- * @defaultValue `100`
289
- */
295
+ /** @defaultValue `100` */
290
296
  batchSize: number;
291
297
  };
292
298
 
@@ -294,35 +300,23 @@ declare global {
294
300
  * Configuration for the Combat document
295
301
  */
296
302
  Combat: {
297
- /**
298
- * @defaultValue `Combat`
299
- */
303
+ /** @defaultValue `Combat` */
300
304
  documentClass: ConfiguredDocumentClassOrDefault<typeof Combat>;
301
305
 
302
- /**
303
- * @defaultValue `CombatEncounters`
304
- */
306
+ /** @defaultValue `CombatEncounters` */
305
307
  collection: ConstructorOf<CombatEncounters>;
306
308
 
307
- /**
308
- * @defaultValue `'dead'`
309
- */
309
+ /** @defaultValue `'dead'` */
310
310
  defeatedStatusId: string;
311
311
 
312
- /**
313
- * @defaultValue `'fas fa-fist-raised'`
314
- */
312
+ /** @defaultValue `'fas fa-fist-raised'` */
315
313
  sidebarIcon: string;
316
314
 
317
315
  initiative: {
318
- /**
319
- * @defaultValue `null`
320
- */
316
+ /** @defaultValue `null` */
321
317
  formula: string | null;
322
318
 
323
- /**
324
- * @defaultValue `2`
325
- */
319
+ /** @defaultValue `2` */
326
320
  decimals: number;
327
321
  };
328
322
  };
@@ -331,36 +325,24 @@ declare global {
331
325
  * Configuration for dice rolling behaviors in the Foundry VTT client
332
326
  */
333
327
  Dice: {
334
- /**
335
- * @defaultValue `[Die, FateDie]`
336
- */
328
+ /** @defaultValue `[Die, FateDie]` */
337
329
  types: Array<ConstructorOf<DiceTerm>>;
338
330
 
339
331
  rollModes: {
340
- /**
341
- * @defaultValue `'CHAT.RollPublic'`
342
- */
332
+ /** @defaultValue `'CHAT.RollPublic'` */
343
333
  roll: string;
344
334
 
345
- /**
346
- * @defaultValue `'CHAT.RollPrivate'`
347
- */
335
+ /** @defaultValue `'CHAT.RollPrivate'` */
348
336
  gmroll: string;
349
337
 
350
- /**
351
- * @defaultValue `CHAT.RollBlind'`
352
- */
338
+ /** @defaultValue `CHAT.RollBlind'` */
353
339
  blindroll: string;
354
340
 
355
- /**
356
- * @defaultValue `'CHAT.RollSelf'`
357
- */
341
+ /** @defaultValue `'CHAT.RollSelf'` */
358
342
  selfroll: string;
359
- } & Partial<Record<string, string>>;
343
+ } & Record<string, string>;
360
344
 
361
- /**
362
- * @defaultValue `[Roll]`
363
- */
345
+ /** @defaultValue `[Roll]` */
364
346
  rolls: Array<ConstructorOf<Roll>>;
365
347
 
366
348
  /**
@@ -383,11 +365,9 @@ declare global {
383
365
  c: typeof Coin;
384
366
  d: typeof Die;
385
367
  f: typeof FateDie;
386
- } & Partial<Record<string, ConstructorOf<DiceTerm>>>;
368
+ } & Record<string, ConstructorOf<DiceTerm>>;
387
369
 
388
- /**
389
- * @defaultValue `MersenneTwister.random`
390
- */
370
+ /** @defaultValue `MersenneTwister.random` */
391
371
  randomUniform: () => number;
392
372
  };
393
373
 
@@ -395,14 +375,10 @@ declare global {
395
375
  * Configuration for the FogExploration document
396
376
  */
397
377
  FogExploration: {
398
- /**
399
- * @defaultValue `FogExploration`
400
- */
378
+ /** @defaultValue `FogExploration` */
401
379
  documentClass: ConfiguredDocumentClassOrDefault<typeof FogExploration>;
402
380
 
403
- /**
404
- * @defaultValue `FogExplorations`
405
- */
381
+ /** @defaultValue `FogExplorations` */
406
382
  collection: ConstructorOf<FogExplorations>;
407
383
  };
408
384
 
@@ -410,210 +386,124 @@ declare global {
410
386
  * Configuration for the Folder entity
411
387
  */
412
388
  Folder: {
413
- /**
414
- * @defaultValue `Folder`
415
- */
389
+ /** @defaultValue `Folder` */
416
390
  documentClass: ConfiguredDocumentClassOrDefault<typeof Folder>;
417
391
 
418
- /**
419
- * @defaultValue `Folders`
420
- */
392
+ /** @defaultValue `Folders` */
421
393
  collection: ConstructorOf<Folders>;
422
-
423
- /**
424
- * @defaultValue `FolderConfig`
425
- */
426
- sheetClass: ConstructorOf<FolderConfig>;
427
394
  };
428
395
 
429
396
  /**
430
397
  * Configuration for the default Item entity class
431
398
  */
432
399
  Item: {
433
- /**
434
- * @defaultValue `Item`
435
- */
400
+ /** @defaultValue `Item` */
436
401
  documentClass: ConfiguredDocumentClassOrDefault<typeof Item>;
437
402
 
438
- /**
439
- * @defaultValue `Items`
440
- */
403
+ /** @defaultValue `Items` */
441
404
  collection: ConstructorOf<Items>;
442
405
 
443
- /**
444
- * @defaultValue `{}`
445
- */
446
- sheetClasses: CONFIG.SheetClasses;
447
-
448
- /**
449
- * @defaultValue `'fas fa-suitcase'`
450
- */
406
+ /** @defaultValue `'fas fa-suitcase'` */
451
407
  sidebarIcon: string;
452
408
 
453
- /**
454
- * defaultValue `{}`
455
- */
456
- typeLabels: Partial<Record<string, string>>;
409
+ /** @defaultValue `{}` */
410
+ typeLabels: Record<string, string>;
457
411
  };
458
412
 
459
413
  /**
460
414
  * Configuration for the JournalEntry entity
461
415
  */
462
416
  JournalEntry: {
463
- /**
464
- * @defaultValue `JournalEntry`
465
- */
417
+ /** @defaultValue `JournalEntry` */
466
418
  documentClass: ConfiguredDocumentClassOrDefault<typeof JournalEntry>;
467
419
 
468
- /**
469
- * @defaultValue `Journal`
470
- */
420
+ /** @defaultValue `Journal` */
471
421
  collection: ConstructorOf<Journal>;
472
422
 
473
- /**
474
- * @defaultValue `JournalSheet`
475
- */
476
- sheetClass: ConstructorOf<JournalSheet>;
477
-
478
423
  noteIcons: {
479
- /**
480
- * @defaultValue `'icons/svg/anchor.svg'`
481
- */
424
+ /** @defaultValue `'icons/svg/anchor.svg'` */
482
425
  Anchor: string;
483
426
 
484
- /**
485
- * @defaultValue `'icons/svg/barrel.svg'`
486
- */
427
+ /** @defaultValue `'icons/svg/barrel.svg'` */
487
428
  Barrel: string;
488
429
 
489
- /**
490
- * @defaultValue `'icons/svg/book.svg'`
491
- */
430
+ /** @defaultValue `'icons/svg/book.svg'` */
492
431
  Book: string;
493
432
 
494
- /**
495
- * @defaultValue `'icons/svg/bridge.svg'`
496
- */
433
+ /** @defaultValue `'icons/svg/bridge.svg'` */
497
434
  Bridge: string;
498
435
 
499
- /**
500
- * @defaultValue `'icons/svg/cave.svg'`
501
- */
436
+ /** @defaultValue `'icons/svg/cave.svg'` */
502
437
  Cave: string;
503
438
 
504
- /**
505
- * @defaultValue `'icons/svg/castle.svg`
506
- */
439
+ /** @defaultValue `'icons/svg/castle.svg` */
507
440
  Castle: string;
508
441
 
509
- /**
510
- * @defaultValue `'icons/svg/chest.svg'`
511
- */
442
+ /** @defaultValue `'icons/svg/chest.svg'` */
512
443
  Chest: string;
513
444
 
514
- /**
515
- * @defaultValue `'icons/svg/city.svg'`
516
- */
445
+ /** @defaultValue `'icons/svg/city.svg'` */
517
446
  City: string;
518
447
 
519
- /**
520
- * @defaultValue `'icons/svg/coins.svg'`
521
- */
448
+ /** @defaultValue `'icons/svg/coins.svg'` */
522
449
  Coins: string;
523
450
 
524
- /**
525
- * @defaultValue `'icons/svg/fire.svg'`
526
- */
451
+ /** @defaultValue `'icons/svg/fire.svg'` */
527
452
  Fire: string;
528
453
 
529
- /**
530
- * @defaultValue `'icons/svg/hanging-sign.svg'`
531
- */
454
+ /** @defaultValue `'icons/svg/hanging-sign.svg'` */
532
455
  'Hanging Sign': string;
533
456
 
534
- /**
535
- * @defaultValue `'icons/svg/house.svg'`
536
- */
457
+ /** @defaultValue `'icons/svg/house.svg'` */
537
458
  House: string;
538
459
 
539
- /**
540
- * @defaultValue `'icons/svg/mountain.svg'`
541
- */
460
+ /** @defaultValue `'icons/svg/mountain.svg'` */
542
461
  Mountain: string;
543
462
 
544
- /**
545
- * @defaultValue `'icons/svg/oak.svg'`
546
- */
463
+ /** @defaultValue `'icons/svg/oak.svg'` */
547
464
  'Oak Tree': string;
548
465
 
549
- /**
550
- * @defaultValue `'icons/svg/obelisk.svg'`
551
- */
466
+ /** @defaultValue `'icons/svg/obelisk.svg'` */
552
467
  Obelisk: string;
553
468
 
554
- /**
555
- * @defaultValue `'icons/svg/pawprint.svg'`
556
- */
469
+ /** @defaultValue `'icons/svg/pawprint.svg'` */
557
470
  Pawprint: string;
558
471
 
559
- /**
560
- * @defaultValue `'icons/svg/ruins.svg'`
561
- */
472
+ /** @defaultValue `'icons/svg/ruins.svg'` */
562
473
  Ruins: string;
563
474
 
564
- /**
565
- * @defaultValue `'icons/svg/tankard.svg'`
566
- */
475
+ /** @defaultValue `'icons/svg/tankard.svg'` */
567
476
  Tankard: string;
568
477
 
569
- /**
570
- * @defaultValue `'icons/svg/temple.svg'`
571
- */
478
+ /** @defaultValue `'icons/svg/temple.svg'` */
572
479
  Temple: string;
573
480
 
574
- /**
575
- * @defaultValue `'icons/svg/tower.svg'`
576
- */
481
+ /** @defaultValue `'icons/svg/tower.svg'` */
577
482
  Tower: string;
578
483
 
579
- /**
580
- * @defaultValue `'icons/svg/trap.svg'`
581
- */
484
+ /** @defaultValue `'icons/svg/trap.svg'` */
582
485
  Trap: string;
583
486
 
584
- /**
585
- * @defaultValue `'icons/svg/skull.svg'`
586
- */
487
+ /** @defaultValue `'icons/svg/skull.svg'` */
587
488
  Skull: string;
588
489
 
589
- /**
590
- * @defaultValue `'icons/svg/statue.svg'`
591
- */
490
+ /** @defaultValue `'icons/svg/statue.svg'` */
592
491
  Statue: string;
593
492
 
594
- /**
595
- * @defaultValue `'icons/svg/sword.svg'`
596
- */
493
+ /** @defaultValue `'icons/svg/sword.svg'` */
597
494
  Sword: string;
598
495
 
599
- /**
600
- * @defaultValue `'icons/svg/village.svg'`
601
- */
496
+ /** @defaultValue `'icons/svg/village.svg'` */
602
497
  Village: string;
603
498
 
604
- /**
605
- * @defaultValue `'icons/svg/waterfall.svg'`
606
- */
499
+ /** @defaultValue `'icons/svg/waterfall.svg'` */
607
500
  Waterfall: string;
608
- /**
609
- * @defaultValue `'icons/svg/windmill.svg'`
610
- */
501
+
502
+ /** @defaultValue `'icons/svg/windmill.svg'` */
611
503
  Windmill: string;
612
- } & Partial<Record<string, string>>;
504
+ } & Record<string, string>;
613
505
 
614
- /**
615
- * @defaultValue `'fas fa-book-open'`
616
- */
506
+ /** @defaultValue `'fas fa-book-open'` */
617
507
  sidebarIcon: string;
618
508
  };
619
509
 
@@ -621,24 +511,13 @@ declare global {
621
511
  * Configuration for the Macro entity
622
512
  */
623
513
  Macro: {
624
- /**
625
- * @defaultValue `Macro`
626
- */
514
+ /** @defaultValue `Macro` */
627
515
  documentClass: ConfiguredDocumentClassOrDefault<typeof Macro>;
628
516
 
629
- /**
630
- * @defaultValue `Macros`
631
- */
517
+ /** @defaultValue `Macros` */
632
518
  collection: ConstructorOf<Macros>;
633
519
 
634
- /**
635
- * @defaultValue `MacroConfig`
636
- */
637
- sheetClass: ConstructorOf<MacroConfig>;
638
-
639
- /**
640
- * @defaultValue `'fas fa-terminal'`
641
- */
520
+ /** @defaultValue `'fas fa-terminal'` */
642
521
  sidebarIcon: string;
643
522
  };
644
523
 
@@ -646,29 +525,16 @@ declare global {
646
525
  * Configuration for the default Playlist entity class
647
526
  */
648
527
  Playlist: {
649
- /**
650
- * @defaultValue `Playlist`
651
- */
528
+ /** @defaultValue `Playlist` */
652
529
  documentClass: ConfiguredDocumentClassOrDefault<typeof Playlist>;
653
530
 
654
- /**
655
- * @defaultValue `Playlists`
656
- */
531
+ /** @defaultValue `Playlists` */
657
532
  collection: ConstructorOf<Playlists>;
658
533
 
659
- /**
660
- * @defaultValue `PlaylistConfig`
661
- */
662
- sheetClass: ConstructorOf<PlaylistConfig>;
663
-
664
- /**
665
- * @defaultValue `'fas fa-music'`
666
- */
534
+ /** @defaultValue `'fas fa-music'` */
667
535
  sidebarIcon: string;
668
536
 
669
- /**
670
- * @defaultValue `20`
671
- */
537
+ /** @defaultValue `20` */
672
538
  autoPreloadSeconds: number;
673
539
  };
674
540
 
@@ -676,34 +542,19 @@ declare global {
676
542
  * Configuration for RollTable random draws
677
543
  */
678
544
  RollTable: {
679
- /**
680
- * @defaultValue `RollTable`
681
- */
545
+ /** @defaultValue `RollTable` */
682
546
  documentClass: ConfiguredDocumentClassOrDefault<typeof RollTable>;
683
547
 
684
- /**
685
- * @defaultValue `RollTables`
686
- */
548
+ /** @defaultValue `RollTables` */
687
549
  collection: ConstructorOf<RollTables>;
688
550
 
689
- /**
690
- * @defaultValue `RollTableConfig`
691
- */
692
- sheetClass: ConstructorOf<RollTableConfig>;
693
-
694
- /**
695
- * @defaultValue `'fas fa-th-list'`
696
- */
551
+ /** @defaultValue `'fas fa-th-list'` */
697
552
  sidebarIcon: string;
698
553
 
699
- /**
700
- * @defaultValue `'icons/svg/d20-black.svg'`
701
- */
554
+ /** @defaultValue `'icons/svg/d20-black.svg'` */
702
555
  resultIcon: string;
703
556
 
704
- /**
705
- * @defaultValue `'templates/dice/table-result.html'`
706
- */
557
+ /** @defaultValue `'templates/dice/table-result.html'` */
707
558
  resultTemplate: string;
708
559
  };
709
560
 
@@ -711,29 +562,21 @@ declare global {
711
562
  * Configuration for the default Scene entity class
712
563
  */
713
564
  Scene: {
714
- /**
715
- * @defaultValue `Scene`
716
- */
565
+ /** @defaultValue `Scene` */
717
566
  documentClass: ConfiguredDocumentClassOrDefault<typeof Scene>;
718
567
 
719
- /**
720
- * @defaultValue `Scenes`
721
- */
568
+ /** @defaultValue `Scenes` */
722
569
  collection: ConstructorOf<Scenes>;
723
570
 
724
- /**
725
- * @defaultValue `SceneConfig`
726
- */
727
- sheetClass: ConstructorOf<SceneConfig>;
728
-
729
- /**
730
- * @defaultValue `'fas fa-map'`
731
- */
571
+ /** @defaultValue `'fas fa-map'` */
732
572
  sidebarIcon: string;
733
573
  };
734
574
 
735
575
  Setting: {
576
+ /** @defaultValue `Setting` */
736
577
  documentClass: ConfiguredDocumentClassOrDefault<typeof Setting>;
578
+
579
+ /** @defaultValue `WorldSettings` */
737
580
  collection: ConstructorOf<WorldSettings>;
738
581
  };
739
582
 
@@ -741,378 +584,312 @@ declare global {
741
584
  * Configuration for the User entity, it's roles, and permissions
742
585
  */
743
586
  User: {
744
- /**
745
- * @defaultValue `User`
746
- */
587
+ /** @defaultValue `User` */
747
588
  documentClass: ConfiguredDocumentClassOrDefault<typeof User>;
748
589
 
749
- /**
750
- * @defaultValue `Users`
751
- */
590
+ /** @defaultValue `Users` */
752
591
  collection: ConstructorOf<Users>;
753
-
754
- /**
755
- * @defaultValue `UserConfig`
756
- */
757
- sheetClass: ConstructorOf<UserConfig>;
758
592
  };
759
593
 
760
594
  /**
761
595
  * Configuration settings for the Canvas and its contained layers and objects
762
596
  */
763
597
  Canvas: {
764
- /**
765
- * @defaultValue `8`
766
- */
598
+ /** @defaultValue `8` */
767
599
  blurStrength: number;
768
600
 
769
- /**
770
- * @defaultValue `0x242448`
771
- */
601
+ /** @defaultValue `ScreenCulling` */
602
+ cullingBackend: unknown; // FIXME: ConstructorOf<typeof ScreenCulling>
603
+
604
+ /** @defaultValue `0x242448` */
772
605
  darknessColor: number;
773
606
 
774
- /**
775
- * @defaultValue `0.4`
776
- */
607
+ /** @defaultValue `0.25` */
777
608
  darknessLightPenalty: number;
778
609
 
779
- /**
780
- * @defaultValue `0xeeeeee`
781
- */
610
+ /** @defaultValue `0xeeeeee` */
782
611
  daylightColor: number;
783
612
 
784
613
  dispositionColors: {
785
- /**
786
- * @defaultValue `0xe72124`
787
- */
614
+ /** @defaultValue `0xe72124` */
788
615
  HOSTILE: number;
789
616
 
790
- /**
791
- * @defaultValue `0xf1d836`
792
- */
617
+ /** @defaultValue `0xf1d836` */
793
618
  NEUTRAL: number;
794
619
 
795
- /**
796
- * @defaultValue `0x43dfdf`
797
- */
620
+ /** @defaultValue `0x43dfdf` */
798
621
  FRIENDLY: number;
799
622
 
800
- /**
801
- * @defaultValue `0x555555`
802
- */
623
+ /** @defaultValue `0x555555` */
803
624
  INACTIVE: number;
804
625
 
805
- /**
806
- * @defaultValue `0x33bc4e`
807
- */
626
+ /** @defaultValue `0x33bc4e` */
808
627
  PARTY: number;
809
628
 
810
- /**
811
- * @defaultValue `0xff9829`
812
- */
629
+ /** @defaultValue `0xff9829` */
813
630
  CONTROLLED: number;
814
631
  };
815
632
 
816
- /**
817
- * @defaultValue `0x7f7f7f`
818
- */
633
+ /** @defaultValue `0x7f7f7f` */
819
634
  exploredColor: number;
820
635
 
821
- /**
822
- * @defaultValue `0x000000`
823
- */
636
+ /** @defaultValue `0x000000` */
824
637
  unexploredColor: number;
825
638
 
639
+ groups: CONFIG.Canvas.Groups;
640
+
826
641
  layers: CONFIG.Canvas.Layers;
827
642
 
828
643
  lightLevels: {
829
- /**
830
- * @defaultValue `0`
831
- */
644
+ /** @defaultValue `0` */
832
645
  dark: number;
833
646
 
834
- /**
835
- * @defaultValue `0.5`
836
- */
647
+ /** @defaultValue `0.25` */
837
648
  dim: number;
838
649
 
839
- /**
840
- * @defaultValue `1.0`
841
- */
650
+ /** @defaultValue `1.0` */
842
651
  bright: number;
843
652
  };
844
653
 
845
- /**
846
- * @defaultValue `0xb86200`
847
- */
654
+ /** @defaultValue `0xb86200` */
848
655
  normalLightColor: number;
849
656
 
850
- /**
851
- * @defaultValue `3.0`
852
- */
657
+ /** @defaultValue `3.0` */
853
658
  maxZoom: number;
854
659
 
855
- /**
856
- * @defaultValue `4`
857
- */
660
+ /** @defaultValue `4` */
858
661
  objectBorderThickness: number;
859
662
 
860
663
  lightAnimations: {
861
664
  torch: {
862
- /**
863
- * @defaultValue `'LIGHT.AnimationTorch'`
864
- */
665
+ /** @defaultValue `'LIGHT.AnimationTorch'` */
865
666
  label: string;
866
667
 
867
- /**
868
- * @defaultValue PointSource.prototype.animateTorch
869
- */
668
+ /** @defaultValue LightSource.prototype.animateTorch */
870
669
  animation: PointSource.AnimationFunction;
871
670
 
872
- /**
873
- * @defaultValue `TorchIlluminationShader`
874
- */
671
+ /** @defaultValue `TorchIlluminationShader` */
875
672
  illuminationShader: ConstructorOf<AbstractBaseShader>;
876
673
 
877
- /**
878
- * @defaultValue `TorchColorationShader`
879
- */
674
+ /** @defaultValue `TorchColorationShader` */
880
675
  colorationShader: ConstructorOf<AbstractBaseShader>;
881
676
  };
882
677
 
883
678
  pulse: {
884
- /**
885
- * @defaultValue `'LIGHT.AnimationPulse'`
886
- */
679
+ /** @defaultValue `'LIGHT.AnimationPulse'` */
887
680
  label: string;
888
681
 
889
- /**
890
- * @defaultValue `PointSource.prototype.animatePulse`
891
- */
682
+ /** @defaultValue `LightSource.prototype.animatePulse` */
892
683
  animation: PointSource.AnimationFunction;
893
684
 
894
- /**
895
- * @defaultValue `PulseIlluminationShader`
896
- */
685
+ /** @defaultValue `PulseIlluminationShader` */
897
686
  illuminationShader: ConstructorOf<AbstractBaseShader>;
898
687
 
899
- /**
900
- * @defaultValue `PulseColorationShader`
901
- */
688
+ /** @defaultValue `PulseColorationShader` */
902
689
  colorationShader: ConstructorOf<AbstractBaseShader>;
903
690
  };
904
691
 
905
692
  chroma: {
906
- /**
907
- * @defaultValue `'LIGHT.AnimationChroma'`
908
- */
693
+ /** @defaultValue `'LIGHT.AnimationChroma'` */
909
694
  label: string;
910
695
 
911
- /**
912
- * @defaultValue `PointSource.prototype.animateTime`
913
- */
696
+ /** @defaultValue `LightSource.prototype.animateTime` */
914
697
  animation: PointSource.AnimationFunction;
915
698
 
916
- /**
917
- * @defaultValue `ChromaColorationShader`
918
- */
699
+ /** @defaultValue `ChromaColorationShader` */
919
700
  colorationShader: ConstructorOf<AbstractBaseShader>;
920
701
  };
921
702
 
922
703
  wave: {
923
- /**
924
- * @defaultValue `'LIGHT.AnimationWave'`
925
- */
704
+ /** @defaultValue `'LIGHT.AnimationWave'` */
926
705
  label: string;
927
706
 
928
- /**
929
- * @defaultValue `PointSource.prototype.animateTime`
930
- */
707
+ /** @defaultValue `LightSource.prototype.animateTime` */
931
708
  animation: PointSource.AnimationFunction;
932
709
 
933
- /**
934
- * @defaultValue `WaveIlluminationShader`
935
- */
710
+ /** @defaultValue `WaveIlluminationShader` */
936
711
  illuminationShader: ConstructorOf<AbstractBaseShader>;
937
712
 
938
- /**
939
- * @defaultValue `WaveColorationShader`
940
- */
713
+ /** @defaultValue `WaveColorationShader` */
941
714
  colorationShader: ConstructorOf<AbstractBaseShader>;
942
715
  };
943
716
 
944
717
  fog: {
945
- /**
946
- * @defaultValue `'LIGHT.AnimationFog'`
947
- */
718
+ /** @defaultValue `'LIGHT.AnimationFog'` */
948
719
  label: string;
949
720
 
950
- /**
951
- * @defaultValue `PointSource.prototype.animateTime`
952
- */
721
+ /** @defaultValue `LightSource.prototype.animateTime` */
953
722
  animation: PointSource.AnimationFunction;
954
723
 
955
- /**
956
- * @defaultValue `FogColorationShader`
957
- */
724
+ /** @defaultValue `FogColorationShader` */
958
725
  colorationShader: ConstructorOf<AbstractBaseShader>;
959
726
  };
960
727
 
961
728
  sunburst: {
962
- /**
963
- * @defaultValue `'LIGHT.AnimationSunburst'`
964
- */
729
+ /** @defaultValue `'LIGHT.AnimationSunburst'` */
965
730
  label: string;
966
731
 
967
- /**
968
- * @defaultValue `PointSource.prototype.animateTime`
969
- */
732
+ /** @defaultValue `LightSource.prototype.animateTime` */
970
733
  animation: PointSource.AnimationFunction;
971
734
 
972
- /**
973
- * @defaultValue `SunburstIlluminationShader`
974
- */
735
+ /** @defaultValue `SunburstIlluminationShader` */
975
736
  illuminationShader: ConstructorOf<AbstractBaseShader>;
976
737
 
977
- /**
978
- * @defaultValue `SunburstColorationShader`
979
- */
738
+ /** @defaultValue `SunburstColorationShader` */
980
739
  colorationShader: ConstructorOf<AbstractBaseShader>;
981
740
  };
982
741
 
983
742
  dome: {
984
- /**
985
- * @defaultValue `'LIGHT.AnimationLightDome'`
986
- */
743
+ /** @defaultValue `'LIGHT.AnimationLightDome'` */
987
744
  label: string;
988
745
 
989
- /**
990
- * @defaultValue `PointSource.prototype.animateTime`
991
- */
746
+ /** @defaultValue `LightSource.prototype.animateTime` */
992
747
  animation: PointSource.AnimationFunction;
993
748
 
994
- /**
995
- * @defaultValue `LightDomeColorationShader`
996
- */
749
+ /** @defaultValue `LightDomeColorationShader` */
997
750
  colorationShader: ConstructorOf<AbstractBaseShader>;
998
751
  };
999
752
 
1000
753
  emanation: {
1001
- /**
1002
- * @defaultValue `'LIGHT.AnimationEmanation'`
1003
- */
754
+ /** @defaultValue `'LIGHT.AnimationEmanation'` */
1004
755
  label: string;
1005
756
 
1006
- /**
1007
- * @defaultValue `PointSource.prototype.animateTime`
1008
- */
757
+ /** @defaultValue `LightSource.prototype.animateTime` */
1009
758
  animation: PointSource.AnimationFunction;
1010
759
 
1011
- /**
1012
- * @defaultValue `EmanationColorationShader`
1013
- */
760
+ /** @defaultValue `EmanationColorationShader` */
1014
761
  colorationShader: ConstructorOf<AbstractBaseShader>;
1015
762
  };
1016
763
 
1017
764
  hexa: {
1018
- /**
1019
- * @defaultValue `'LIGHT.AnimationHexaDome';`
1020
- */
765
+ /** @defaultValue `'LIGHT.AnimationHexaDome';` */
1021
766
  label: string;
1022
767
 
1023
- /**
1024
- * @defaultValue `PointSource.prototype.animateTime`
1025
- */
768
+ /** @defaultValue `LightSource.prototype.animateTime` */
1026
769
  animation: PointSource.AnimationFunction;
1027
770
 
1028
- /**
1029
- * @defaultValue `HexaDomeColorationShader`
1030
- */
771
+ /** @defaultValue `HexaDomeColorationShader` */
1031
772
  colorationShader: ConstructorOf<AbstractBaseShader>;
1032
773
  };
1033
774
 
1034
775
  ghost: {
1035
- /**
1036
- * @defaultValue `'LIGHT.AnimationGhostLight'`
1037
- */
776
+ /** @defaultValue `'LIGHT.AnimationGhostLight'` */
1038
777
  label: string;
1039
778
 
1040
- /**
1041
- * @defaultValue `PointSource.prototype.animateTime`
1042
- */
779
+ /** @defaultValue `LightSource.prototype.animateTime` */
1043
780
  animation: PointSource.AnimationFunction;
1044
781
 
1045
- /**
1046
- * @defaultValue `GhostLightIlluminationShader`
1047
- */
782
+ /** @defaultValue `GhostLightIlluminationShader` */
1048
783
  illuminationShader: ConstructorOf<AbstractBaseShader>;
1049
784
 
1050
- /**
1051
- * @defaultValue `GhostLightColorationShader`
1052
- */
785
+ /** @defaultValue `GhostLightColorationShader` */
1053
786
  colorationShader: ConstructorOf<AbstractBaseShader>;
1054
787
  };
1055
788
 
1056
789
  energy: {
1057
- /**
1058
- * @defaultValue `'LIGHT.AnimationEnergyField'`
1059
- */
790
+ /** @defaultValue `'LIGHT.AnimationEnergyField'` */
1060
791
  label: string;
1061
792
 
1062
- /**
1063
- * @defaultValue `PointSource.prototype.animateTime`
1064
- */
793
+ /** @defaultValue `LightSource.prototype.animateTime` */
1065
794
  animation: PointSource.AnimationFunction;
1066
795
 
1067
- /**
1068
- * @defaultValue `EnergyFieldColorationShader`
1069
- */
796
+ /** @defaultValue `EnergyFieldColorationShader` */
1070
797
  colorationShader: ConstructorOf<AbstractBaseShader>;
1071
798
  };
1072
799
 
1073
800
  roiling: {
1074
- /**
1075
- * @defaultValue `'LIGHT.AnimationRoilingMass'`
1076
- */
801
+ /** @defaultValue `'LIGHT.AnimationRoilingMass'` */
802
+ label: string;
803
+
804
+ /** @defaultValue `LightSource.prototype.animateTime` */
805
+ animation: PointSource.AnimationFunction;
806
+
807
+ /** @defaultValue `RoilingIlluminationShader` */
808
+ illuminationShader: ConstructorOf<AbstractBaseShader>;
809
+ };
810
+
811
+ hole: {
812
+ /** @defaultValue `'LIGHT.AnimationBlackHole'` */
813
+ label: string;
814
+
815
+ /** @defaultValue `LightSource.prototype.animateTime` */
816
+ animation: PointSource.AnimationFunction;
817
+
818
+ /** @defaultValue `BlackHoleIlluminationShader` */
819
+ illuminationShader: ConstructorOf<AbstractBaseShader>;
820
+ };
821
+
822
+ vortex: {
823
+ /** @defaultValue `'LIGHT.AnimationVortex'` */
824
+ label: string;
825
+
826
+ /** @defaultValue `LightSource.prototype.animateTime` */
827
+ animation: PointSource.AnimationFunction;
828
+
829
+ /** @defaultValue `VortexIlluminationShader` */
830
+ illuminationShader: ConstructorOf<AbstractBaseShader>;
831
+
832
+ /** @defaultValue `VortexColorationShader` */
833
+ colorationShader: ConstructorOf<AbstractBaseShader>;
834
+ };
835
+
836
+ witchwave: {
837
+ /** @defaultValue `'LIGHT.AnimationBewitchingWave'` */
1077
838
  label: string;
1078
839
 
1079
- /**
1080
- * @defaultValue `PointSource.prototype.animateTime`
1081
- */
840
+ /** @defaultValue `LightSource.prototype.animateTime` */
1082
841
  animation: PointSource.AnimationFunction;
1083
842
 
1084
- /**
1085
- * @defaultValue `RoilingIlluminationShader`
1086
- */
843
+ /** @defaultValue `BewitchingWaveIlluminationShader` */
1087
844
  illuminationShader: ConstructorOf<AbstractBaseShader>;
845
+
846
+ /** @defaultValue `BewitchingWaveColorationShader` */
847
+ colorationShader: ConstructorOf<AbstractBaseShader>;
848
+ };
849
+
850
+ rainbowswirl: {
851
+ /** @defaultValue `'LIGHT.AnimationSwirlingRainbow'` */
852
+ label: string;
853
+
854
+ /** @defaultValue `LightSource.prototype.animateTime` */
855
+ animation: PointSource.AnimationFunction;
856
+
857
+ /** @defaultValue `SwirlingRainbowColorationShader` */
858
+ colorationShader: ConstructorOf<AbstractBaseShader>;
859
+ };
860
+
861
+ radialrainbow: {
862
+ /** @defaultValue `'LIGHT.AnimationRadialRainbow'` */
863
+ label: string;
864
+
865
+ /** @defaultValue `LightSource.prototype.animateTime` */
866
+ animation: PointSource.AnimationFunction;
867
+
868
+ /** @defaultValue `RadialRainbowColorationShader` */
869
+ colorationShader: ConstructorOf<AbstractBaseShader>;
1088
870
  };
1089
871
 
1090
- hole: {
1091
- /**
1092
- * @defaultValue `'LIGHT.AnimationBlackHole'`
1093
- */
872
+ fairy: {
873
+ /** @defaultValue `'LIGHT.AnimationFairyLight'` */
1094
874
  label: string;
1095
875
 
1096
- /**
1097
- * @defaultValue `PointSource.prototype.animateTime`
1098
- */
876
+ /** @defaultValue `LightSource.prototype.animateTime` */
1099
877
  animation: PointSource.AnimationFunction;
1100
878
 
1101
- /**
1102
- * @defaultValue `BlackHoleIlluminationShader`
1103
- */
879
+ /** @defaultValue `FairyLightIlluminationShader` */
1104
880
  illuminationShader: ConstructorOf<AbstractBaseShader>;
881
+
882
+ /** @defaultValue `FairyLightColorationShader` */
883
+ colorationShader: ConstructorOf<AbstractBaseShader>;
1105
884
  };
1106
- } & Partial<
1107
- Record<
1108
- string,
1109
- {
1110
- label: string;
1111
- animation: PointSource.AnimationFunction;
1112
- illuminationShader?: ConstructorOf<AbstractBaseShader>;
1113
- colorationShader?: ConstructorOf<AbstractBaseShader>;
1114
- }
1115
- >
885
+ } & Record<
886
+ string,
887
+ {
888
+ label: string;
889
+ animation: PointSource.AnimationFunction;
890
+ illuminationShader?: ConstructorOf<AbstractBaseShader>;
891
+ colorationShader?: ConstructorOf<AbstractBaseShader>;
892
+ }
1116
893
  >;
1117
894
  };
1118
895
 
@@ -1143,106 +920,68 @@ declare global {
1143
920
  * Available Weather Effects implementations
1144
921
  */
1145
922
  weatherEffects: {
1146
- /**
1147
- * @defaultValue `AutumnLeavesWeatherEffect`
1148
- */
923
+ /** @defaultValue `AutumnLeavesWeatherEffect` */
1149
924
  leaves: ConstructorOf<SpecialEffect>;
1150
925
 
1151
- /**
1152
- * @defaultValue `RainWeatherEffect`
1153
- */
926
+ /** @defaultValue `RainWeatherEffect` */
1154
927
  rain: ConstructorOf<SpecialEffect>;
1155
928
 
1156
- /**
1157
- * @defaultValue `SnowWeatherEffect`
1158
- */
929
+ /** @defaultValue `SnowWeatherEffect` */
1159
930
  snow: ConstructorOf<SpecialEffect>;
1160
- } & Partial<Record<string, ConstructorOf<SpecialEffect>>>;
931
+ } & Record<string, ConstructorOf<SpecialEffect>>;
1161
932
 
1162
933
  /**
1163
934
  * The control icons used for rendering common HUD operations
1164
935
  */
1165
936
  controlIcons: {
1166
- /**
1167
- * @defaultValue `'icons/svg/combat.svg'`
1168
- */
937
+ /** @defaultValue `'icons/svg/combat.svg'` */
1169
938
  combat: string;
1170
939
 
1171
- /**
1172
- * @defaultValue `'icons/svg/cowled.svg'`
1173
- */
940
+ /** @defaultValue `'icons/svg/cowled.svg'` */
1174
941
  visibility: string;
1175
942
 
1176
- /**
1177
- * @defaultValue `'icons/svg/aura.svg'`
1178
- */
943
+ /** @defaultValue `'icons/svg/aura.svg'` */
1179
944
  effects: string;
1180
945
 
1181
- /**
1182
- * @defaultValue `'icons/svg/padlock.svg'`
1183
- */
946
+ /** @defaultValue `'icons/svg/padlock.svg'` */
1184
947
  lock: string;
1185
948
 
1186
- /**
1187
- * @defaultValue `'icons/svg/up.svg'`
1188
- */
949
+ /** @defaultValue `'icons/svg/up.svg'` */
1189
950
  up: string;
1190
951
 
1191
- /**
1192
- * @defaultValue `'icons/svg/down.svg'`
1193
- */
952
+ /** @defaultValue `'icons/svg/down.svg'` */
1194
953
  down: string;
1195
954
 
1196
- /**
1197
- * @defaultValue `'icons/svg/skull.svg'`
1198
- */
955
+ /** @defaultValue `'icons/svg/skull.svg'` */
1199
956
  defeated: string;
1200
957
 
1201
- /**
1202
- * @defaultValue `'icons/svg/light.svg'`
1203
- */
958
+ /** @defaultValue `'icons/svg/light.svg'` */
1204
959
  light: string;
1205
960
 
1206
- /**
1207
- * @defaultValue `'icons/svg/light-off.svg'`
1208
- */
961
+ /** @defaultValue `'icons/svg/light-off.svg'` */
1209
962
  lightOff: string;
1210
963
 
1211
- /**
1212
- * @defaultValue `'icons/svg/explosion.svg'`
1213
- */
964
+ /** @defaultValue `'icons/svg/explosion.svg'` */
1214
965
  template: string;
1215
966
 
1216
- /**
1217
- * @defaultValue `'icons/svg/sound.svg'`
1218
- */
967
+ /** @defaultValue `'icons/svg/sound.svg'` */
1219
968
  sound: string;
1220
969
 
1221
- /**
1222
- * @defaultValue `'icons/svg/sound-off.svg'`
1223
- */
970
+ /** @defaultValue `'icons/svg/sound-off.svg'` */
1224
971
  soundOff: string;
1225
972
 
1226
- /**
1227
- * @defaultValue `'icons/svg/door-closed-outline.svg'`
1228
- */
973
+ /** @defaultValue `'icons/svg/door-closed-outline.svg'` */
1229
974
  doorClosed: string;
1230
975
 
1231
- /**
1232
- * @defaultValue `'icons/svg/door-open-outline.svg'`
1233
- */
976
+ /** @defaultValue `'icons/svg/door-open-outline.svg'` */
1234
977
  doorOpen: string;
1235
978
 
1236
- /**
1237
- * @defaultValue `'icons/svg/door-secret-outline.svg'`
1238
- */
979
+ /** @defaultValue `'icons/svg/door-secret-outline.svg'` */
1239
980
  doorSecret: string;
1240
981
 
1241
- /**
1242
- * @defaultValue `'icons/svg/door-locked-outline.svg'`
1243
- */
982
+ /** @defaultValue `'icons/svg/door-locked-outline.svg'` */
1244
983
  doorLocked: string;
1245
- } & Partial<Record<string, string>>;
984
+ } & Record<string, string>;
1246
985
 
1247
986
  /**
1248
987
  * Suggested font families that are displayed wherever a choice is presented
@@ -1430,24 +1169,16 @@ declare global {
1430
1169
  * A mapping of core audio effects used which can be replaced by systems or mods
1431
1170
  */
1432
1171
  sounds: {
1433
- /**
1434
- * @defaultValue `'sounds/dice.wav'`
1435
- */
1172
+ /** @defaultValue `'sounds/dice.wav'` */
1436
1173
  dice: string;
1437
1174
 
1438
- /**
1439
- * @defaultValue `'sounds/lock.wav'`
1440
- */
1175
+ /** @defaultValue `'sounds/lock.wav'` */
1441
1176
  lock: string;
1442
1177
 
1443
- /**
1444
- * @defaultValue `'sounds/notify.wav'`
1445
- */
1178
+ /** @defaultValue `'sounds/notify.wav'` */
1446
1179
  notification: string;
1447
1180
 
1448
- /**
1449
- * @defaultValue `'sounds/drums.wav'`
1450
- */
1181
+ /** @defaultValue `'sounds/drums.wav'` */
1451
1182
  combat: string;
1452
1183
  };
1453
1184
 
@@ -1457,20 +1188,16 @@ declare global {
1457
1188
  */
1458
1189
  supportedLanguages: {
1459
1190
  en: string;
1460
- } & Partial<Record<string, string>>;
1191
+ } & Record<string, string>;
1461
1192
 
1462
1193
  /**
1463
1194
  * Configuration for time tracking
1464
1195
  */
1465
1196
  time: {
1466
- /**
1467
- * @defaultValue `0`
1468
- */
1197
+ /** @defaultValue `0` */
1469
1198
  turnTime: number;
1470
1199
 
1471
- /**
1472
- * @defaultValue `0`
1473
- */
1200
+ /** @defaultValue `0` */
1474
1201
  roundTime: number;
1475
1202
  };
1476
1203
 
@@ -1478,24 +1205,23 @@ declare global {
1478
1205
  * Configuration for the ActiveEffect embedded document type
1479
1206
  */
1480
1207
  ActiveEffect: {
1481
- /**
1482
- * @defaultValue `ActiveEffect`
1483
- */
1208
+ /** @defaultValue `ActiveEffect` */
1484
1209
  documentClass: ConfiguredDocumentClassOrDefault<typeof ActiveEffect>;
1210
+ };
1485
1211
 
1486
- /**
1487
- * @defaultValue `ActiveEffectConfig`
1488
- */
1489
- sheetClass: ConstructorOf<ActiveEffectConfig>;
1212
+ /**
1213
+ * Configuration for the Card embedded Document type
1214
+ */
1215
+ Card: {
1216
+ /** @defaultValue `Card` */
1217
+ documentClass: ConfiguredDocumentClassOrDefault<typeof Card>;
1490
1218
  };
1491
1219
 
1492
1220
  /**
1493
1221
  * Configuration for the TableResult embedded document type
1494
1222
  */
1495
1223
  TableResult: {
1496
- /**
1497
- * @defaultValue `TableResult`
1498
- */
1224
+ /** @defaultValue `TableResult` */
1499
1225
  documentClass: ConfiguredDocumentClassOrDefault<typeof TableResult>;
1500
1226
  };
1501
1227
 
@@ -1503,105 +1229,58 @@ declare global {
1503
1229
  * Configuration for the ActiveEffect embedded document type
1504
1230
  */
1505
1231
  PlaylistSound: {
1506
- /**
1507
- * @defaultValue `PlaylistSound`
1508
- */
1232
+ /** @defaultValue `PlaylistSound` */
1509
1233
  documentClass: ConfiguredDocumentClassOrDefault<typeof PlaylistSound>;
1510
-
1511
- /**
1512
- * @defaultValue `PlaylistSoundConfig`
1513
- */
1514
- sheetClass: ConstructorOf<PlaylistSoundConfig>;
1515
1234
  };
1516
1235
 
1517
1236
  /**
1518
1237
  * Configuration for the AmbientLight embedded document type and its representation on the game Canvas
1519
1238
  */
1520
1239
  AmbientLight: {
1521
- /**
1522
- * @defaultValue `AmbientLightDocument`
1523
- */
1240
+ /** @defaultValue `AmbientLightDocument` */
1524
1241
  documentClass: ConfiguredDocumentClassOrDefault<typeof AmbientLightDocument>;
1525
1242
 
1526
- /**
1527
- * @defaultValue `AmbientLightDocument`
1528
- */
1243
+ /** @defaultValue `AmbientLightDocument` */
1529
1244
  objectClass: ConfiguredObjectClassOrDefault<typeof AmbientLight>;
1530
1245
 
1531
- /**
1532
- * @defaultValue `AmbientLightDocument`
1533
- */
1246
+ /** @defaultValue `AmbientLightDocument` */
1534
1247
  layerClass: ConstructorOf<LightingLayer>;
1535
-
1536
- /**
1537
- * @defaultValue `AmbientLightDocument`
1538
- */
1539
- sheetClass: ConstructorOf<LightConfig>;
1540
1248
  };
1541
1249
 
1542
1250
  /**
1543
1251
  * Configuration for the AmbientSound embedded document type and its representation on the game Canvas
1544
1252
  */
1545
1253
  AmbientSound: {
1546
- /**
1547
- * @defaultValue `AmbientSoundDocument`
1548
- */
1254
+ /** @defaultValue `AmbientSoundDocument` */
1549
1255
  documentClass: ConfiguredDocumentClassOrDefault<typeof AmbientSoundDocument>;
1550
1256
 
1551
- /**
1552
- * @defaultValue `AmbientSound`
1553
- */
1257
+ /** @defaultValue `AmbientSound` */
1554
1258
  objectClass: ConfiguredObjectClassOrDefault<typeof AmbientSound>;
1555
1259
 
1556
- /**
1557
- * @defaultValue `SoundsLayer`
1558
- */
1260
+ /** @defaultValue `SoundsLayer` */
1559
1261
  layerClass: ConstructorOf<SoundsLayer>;
1560
-
1561
- /**
1562
- * @defaultValue `AmbientSoundConfig`
1563
- */
1564
- sheetClass: ConstructorOf<AmbientSoundConfig>;
1565
1262
  };
1566
1263
 
1567
1264
  /**
1568
1265
  * Configuration for the Combatant embedded document type within a Combat document
1569
1266
  */
1570
1267
  Combatant: {
1571
- /**
1572
- * @defaultValue `Combatant`
1573
- */
1268
+ /** @defaultValue `Combatant` */
1574
1269
  documentClass: ConfiguredDocumentClassOrDefault<typeof Combatant>;
1575
-
1576
- /**
1577
- * @defaultValue `CombatantConfig`
1578
- */
1579
- sheetClass: ConstructorOf<CombatantConfig>;
1580
1270
  };
1581
1271
 
1582
1272
  /**
1583
1273
  * Configuration for the Drawing embedded document type and its representation on the game Canvas
1584
1274
  */
1585
1275
  Drawing: {
1586
- /**
1587
- * @defaultValue `DrawingDocument`
1588
- */
1276
+ /** @defaultValue `DrawingDocument` */
1589
1277
  documentClass: ConfiguredDocumentClassOrDefault<typeof DrawingDocument>;
1590
1278
 
1591
- /**
1592
- * @defaultValue `Drawing`
1593
- */
1279
+ /** @defaultValue `Drawing` */
1594
1280
  objectClass: ConfiguredObjectClassOrDefault<typeof Drawing>;
1595
1281
 
1596
- /**
1597
- * @defaultValue `DrawingsLayer`
1598
- */
1282
+ /** @defaultValue `DrawingsLayer` */
1599
1283
  layerClass: ConstructorOf<DrawingsLayer>;
1600
-
1601
- /**
1602
- * @defaultValue `DrawingConfig`
1603
- */
1604
- sheetClass: ConstructorOf<DrawingConfig>;
1605
1284
  };
1606
1285
 
1607
1286
  /**
@@ -1609,158 +1288,94 @@ declare global {
1609
1288
  */
1610
1289
  MeasuredTemplate: {
1611
1290
  defaults: {
1612
- /**
1613
- * @defaultValue `53.13`
1614
- */
1291
+ /** @defaultValue `53.13` */
1615
1292
  angle: number;
1616
1293
 
1617
- /**
1618
- * @defaultValue `1`
1619
- */
1294
+ /** @defaultValue `1` */
1620
1295
  width: number;
1621
1296
  };
1622
1297
 
1623
1298
  types: {
1624
- /**
1625
- * @defaultValue `'Circle'`
1626
- */
1299
+ /** @defaultValue `'Circle'` */
1627
1300
  circle: string;
1628
1301
 
1629
- /**
1630
- * @defaultValue `'Cone'`
1631
- */
1302
+ /** @defaultValue `'Cone'` */
1632
1303
  cone: string;
1633
1304
 
1634
- /**
1635
- * @defaultValue `'Rectangle'`
1636
- */
1305
+ /** @defaultValue `'Rectangle'` */
1637
1306
  rect: string;
1638
1307
 
1639
- /**
1640
- * @defaultValue `'Ray'`
1641
- */
1308
+ /** @defaultValue `'Ray'` */
1642
1309
  ray: string;
1643
- } & Partial<Record<string, string>>;
1310
+ };
1644
1311
 
1645
- /**
1646
- * @defaultValue `MeasuredTemplateDocument`
1647
- */
1312
+ /** @defaultValue `MeasuredTemplateDocument` */
1648
1313
  documentClass: ConfiguredDocumentClassOrDefault<typeof MeasuredTemplateDocument>;
1649
1314
 
1650
- /**
1651
- * @defaultValue `MeasuredTemplate`
1652
- */
1315
+ /** @defaultValue `MeasuredTemplate` */
1653
1316
  objectClass: ConfiguredObjectClassOrDefault<typeof MeasuredTemplate>;
1654
1317
 
1655
- /**
1656
- * @defaultValue `TemplateLayer`
1657
- */
1318
+ /** @defaultValue `TemplateLayer` */
1658
1319
  layerClass: ConstructorOf<TemplateLayer>;
1659
-
1660
- /**
1661
- * @defaultValue `MeasuredTemplateConfig`
1662
- */
1663
- sheetClass: ConstructorOf<MeasuredTemplateConfig>;
1664
1320
  };
1665
1321
 
1666
1322
  /**
1667
1323
  * Configuration for the Note embedded document type and its representation on the game Canvas
1668
1324
  */
1669
1325
  Note: {
1670
- /**
1671
- * @defaultValue `NoteDocument`
1672
- */
1326
+ /** @defaultValue `NoteDocument` */
1673
1327
  documentClass: ConfiguredDocumentClassOrDefault<typeof NoteDocument>;
1674
1328
 
1675
- /**
1676
- * @defaultValue `Note`
1677
- */
1329
+ /** @defaultValue `Note` */
1678
1330
  objectClass: ConfiguredObjectClassOrDefault<typeof Note>;
1679
1331
 
1680
- /**
1681
- * @defaultValue `NotesLayer`
1682
- */
1332
+ /** @defaultValue `NotesLayer` */
1683
1333
  layerClass: ConstructorOf<NotesLayer>;
1684
-
1685
- /**
1686
- * @defaultValue `NoteConfig`
1687
- */
1688
- sheetClass: ConstructorOf<NoteConfig>;
1689
1334
  };
1690
1335
 
1691
1336
  /**
1692
1337
  * Configuration for the Tile embedded document type and its representation on the game Canvas
1693
1338
  */
1694
1339
  Tile: {
1695
- /**
1696
- * @defaultValue `TileDocument`
1697
- */
1340
+ /** @defaultValue `TileDocument` */
1698
1341
  documentClass: ConfiguredDocumentClassOrDefault<typeof TileDocument>;
1699
1342
 
1700
- /**
1701
- * @defaultValue `Tile`
1702
- */
1343
+ /** @defaultValue `Tile` */
1703
1344
  objectClass: ConfiguredObjectClassOrDefault<typeof Tile>;
1704
1345
 
1705
- /**
1706
- * @defaultValue `BackgroundLayer`
1707
- */
1346
+ /** @defaultValue `BackgroundLayer` */
1708
1347
  layerClass: ConstructorOf<BackgroundLayer>;
1709
-
1710
- /**
1711
- * @defaultValue `TileConfig`
1712
- */
1713
- sheetClass: ConstructorOf<TileConfig>;
1714
1348
  };
1715
1349
 
1716
1350
  /**
1717
1351
  * Configuration for the Token embedded document type and its representation on the game Canvas
1718
1352
  */
1719
1353
  Token: {
1720
- /**
1721
- * @defaultValue `TokenDocument`
1722
- */
1354
+ /** @defaultValue `TokenDocument` */
1723
1355
  documentClass: ConfiguredDocumentClassOrDefault<typeof TokenDocument>;
1724
1356
 
1725
- /**
1726
- * @defaultValue `Token`
1727
- */
1357
+ /** @defaultValue `Token` */
1728
1358
  objectClass: ConfiguredObjectClassOrDefault<typeof Token>;
1729
1359
 
1730
- /**
1731
- * @defaultValue `TokenLayer`
1732
- */
1360
+ /** @defaultValue `TokenLayer` */
1733
1361
  layerClass: ConstructorOf<TokenLayer>;
1734
1362
 
1735
- /**
1736
- * @defaultValue `TokenConfig`
1737
- */
1738
- sheetClass: ConstructorOf<TokenConfig>;
1363
+ /** @defaultValue `TokenConfig` */
1364
+ prototypeSheetClass: ConstructorOf<TokenConfig>;
1739
1365
  };
1740
1366
 
1741
1367
  /**
1742
1368
  * Configuration for the Wall embedded document type and its representation on the game Canvas
1743
1369
  */
1744
1370
  Wall: {
1745
- /**
1746
- * @defaultValue `WallDocument`
1747
- */
1371
+ /** @defaultValue `WallDocument` */
1748
1372
  documentClass: ConfiguredDocumentClassOrDefault<typeof WallDocument>;
1749
1373
 
1750
- /**
1751
- * @defaultValue `Wall`
1752
- */
1374
+ /** @defaultValue `Wall` */
1753
1375
  objectClass: ConfiguredObjectClassOrDefault<typeof Wall>;
1754
1376
 
1755
- /**
1756
- * @defaultValue `WallsLayer`
1757
- */
1377
+ /** @defaultValue `WallsLayer` */
1758
1378
  layerClass: ConstructorOf<WallsLayer>;
1759
-
1760
- /**
1761
- * @defaultValue `WallConfig`
1762
- */
1763
- sheetClass: ConstructorOf<WallConfig>;
1764
1379
  };
1765
1380
 
1766
1381
  /**
@@ -1772,35 +1387,26 @@ declare global {
1772
1387
  * Configuration for the WebRTC implementation class
1773
1388
  */
1774
1389
  WebRTC: {
1775
- /**
1776
- * @defaultValue `SimplePeerAVClient`
1777
- */
1390
+ /** @defaultValue `SimplePeerAVClient` */
1778
1391
  clientClass: PropertyTypeOrFallback<WebRTCConfig, 'clientClass', typeof AVClient>;
1779
1392
 
1780
- /**
1781
- * @defaultValue `50`
1782
- */
1393
+ /** @defaultValue `50` */
1783
1394
  detectPeerVolumeInterval: number;
1784
1395
 
1785
- /**
1786
- * @defaultValue `20`
1787
- */
1396
+ /** @defaultValue `20` */
1788
1397
  detectSelfVolumeInterval: number;
1789
1398
 
1790
- /**
1791
- * @defaultValue `25`
1792
- */
1399
+ /** @defaultValue `25` */
1793
1400
  emitVolumeInterval: number;
1794
1401
 
1795
- /**
1796
- * @defaultValue `2`
1797
- */
1402
+ /** @defaultValue `2` */
1798
1403
  speakingThresholdEvents: number;
1799
1404
 
1800
- /**
1801
- * @defaultValue `10`
1802
- */
1405
+ /** @defaultValue `10` */
1803
1406
  speakingHistoryLength: number;
1407
+
1408
+ /** @defaultValue `8` */
1409
+ connectedUserPollIntervalS: number;
1804
1410
  };
1805
1411
 
1806
1412
  /**
@@ -1811,187 +1417,159 @@ declare global {
1811
1417
 
1812
1418
  namespace CONFIG {
1813
1419
  interface UI {
1814
- /**
1815
- * @defaultValue `MainMenu`
1816
- */
1420
+ /** @defaultValue `MainMenu` */
1817
1421
  menu: ConstructorOf<MainMenu>;
1818
1422
 
1819
- /**
1820
- * @defaultValue `Sidebar`
1821
- */
1423
+ /** @defaultValue `Sidebar` */
1822
1424
  sidebar: ConstructorOf<Sidebar>;
1823
1425
 
1824
- /**
1825
- * @defaultValue `Pause`
1826
- */
1426
+ /** @defaultValue `Pause` */
1827
1427
  pause: ConstructorOf<Pause>;
1828
1428
 
1829
- /**
1830
- * @defaultValue `SceneNavigation`
1831
- */
1429
+ /** @defaultValue `SceneNavigation` */
1832
1430
  nav: ConstructorOf<SceneNavigation>;
1833
1431
 
1834
- /**
1835
- * @defaultValue `Notifications`
1836
- */
1432
+ /** @defaultValue `Notifications` */
1837
1433
  notifications: ConstructorOf<Notifications>;
1838
1434
 
1839
- /**
1840
- * @defaultValue `ActorDirectory`
1841
- */
1435
+ /** @defaultValue `ActorDirectory` */
1842
1436
  actors: ConstructorOf<ActorDirectory>;
1843
1437
 
1844
- /**
1845
- * @defaultValue `ChatLog`
1846
- */
1438
+ /** @defaultValue `CardsDirectory` */
1439
+ cards: ConstructorOf<CardsDirectory>;
1440
+
1441
+ /** @defaultValue `ChatLog` */
1847
1442
  chat: ConstructorOf<ChatLog>;
1848
1443
 
1849
- /**
1850
- * @defaultValue `CombatTracker`
1851
- */
1444
+ /** @defaultValue `CombatTracker` */
1852
1445
  combat: ConstructorOf<CombatTracker>;
1853
1446
 
1854
- /**
1855
- * @defaultValue `CompendiumDirectory`
1856
- */
1447
+ /** @defaultValue `CompendiumDirectory` */
1857
1448
  compendium: ConstructorOf<CompendiumDirectory>;
1858
1449
 
1859
- /**
1860
- * @defaultValue `SceneControls`
1861
- */
1450
+ /** @defaultValue `SceneControls` */
1862
1451
  controls: ConstructorOf<SceneControls>;
1863
1452
 
1864
- /**
1865
- * @defaultValue `Hotbar`
1866
- */
1453
+ /** @defaultValue `Hotbar` */
1867
1454
  hotbar: ConstructorOf<Hotbar>;
1868
1455
 
1869
- /**
1870
- * @defaultValue `ItemDirectory`
1871
- */
1456
+ /** @defaultValue `ItemDirectory` */
1872
1457
  items: ConstructorOf<ItemDirectory>;
1873
1458
 
1874
- /**
1875
- * @defaultValue `JournalDirectory`
1876
- */
1459
+ /** @defaultValue `JournalDirectory` */
1877
1460
  journal: ConstructorOf<JournalDirectory>;
1878
1461
 
1879
- /**
1880
- * @defaultValue `MacroDirectory`
1881
- */
1462
+ /** @defaultValue `MacroDirectory` */
1882
1463
  macros: ConstructorOf<MacroDirectory>;
1883
1464
 
1884
- /**
1885
- * @defaultValue `PlayerList`
1886
- */
1465
+ /** @defaultValue `PlayerList` */
1887
1466
  players: ConstructorOf<PlayerList>;
1888
1467
 
1889
- /**
1890
- * @defaultValue `PlaylistDirectory`
1891
- */
1468
+ /** @defaultValue `PlaylistDirectory` */
1892
1469
  playlists: ConstructorOf<PlaylistDirectory>;
1893
1470
 
1894
- /**
1895
- * @defaultValue `SceneDirectory`
1896
- */
1471
+ /** @defaultValue `SceneDirectory` */
1897
1472
  scenes: ConstructorOf<SceneDirectory>;
1898
1473
 
1899
- /**
1900
- * @defaultValue `Settings`
1901
- */
1474
+ /** @defaultValue `Settings` */
1902
1475
  settings: ConstructorOf<Settings>;
1903
1476
 
1904
- /**
1905
- * @defaultValue `RollTableDirectory`
1906
- */
1477
+ /** @defaultValue `RollTableDirectory` */
1907
1478
  tables: ConstructorOf<RollTableDirectory>;
1908
1479
 
1909
- /**
1910
- * @defaultValue `CameraViews`
1911
- */
1480
+ /** @defaultValue `CameraViews` */
1912
1481
  webrtc: ConstructorOf<CameraViews>;
1913
1482
  }
1914
1483
 
1915
1484
  namespace Canvas {
1485
+ interface Groups {
1486
+ /** @defaultValue `{ groupClass: PrimaryCanvasGroup }` */
1487
+ primary: CONFIG.Canvas.GroupDefinition<typeof PrimaryCanvasGroup>;
1488
+
1489
+ /** @defaultValue `{ groupClass: EffectsCanvasGroup }` */
1490
+ effects: CONFIG.Canvas.GroupDefinition<typeof EffectsCanvasGroup>;
1491
+
1492
+ /** @defaultValue `{ groupClass: InterfaceCanvasGroup }` */
1493
+ interface: CONFIG.Canvas.GroupDefinition<typeof InterfaceCanvasGroup>;
1494
+
1495
+ [key: string]: CONFIG.Canvas.GroupDefinition;
1496
+ }
1497
+
1916
1498
  interface Layers {
1917
- /**
1918
- * @defaultValue `BackgroundLayer`
1919
- */
1920
- background: ConstructorOf<BackgroundLayer>;
1499
+ /** @defaultValue `{ layerClass: BackgroundLayer, group: "primary" }` */
1500
+ background: LayerDefinition<ConstructorOf<BackgroundLayer>>;
1921
1501
 
1922
- /**
1923
- * @defaultValue `DrawingsLayer`
1924
- */
1925
- drawings: ConstructorOf<DrawingsLayer>;
1502
+ /** @defaultValue `{ layerClass: DrawingsLayer, group: "primary" }` */
1503
+ drawings: LayerDefinition<ConstructorOf<DrawingsLayer>>;
1926
1504
 
1927
- /**
1928
- * @defaultValue `GridLayer`
1929
- */
1930
- grid: ConstructorOf<GridLayer>;
1505
+ /** @defaultValue `{ layerClass: GridLayer, group: "primary" }` */
1506
+ grid: LayerDefinition<ConstructorOf<GridLayer>>;
1931
1507
 
1932
- /**
1933
- * @defaultValue `WallsLayer`
1934
- */
1935
- walls: ConstructorOf<WallsLayer>;
1508
+ /** @defaultValue `{ layerClass: TemplateLayer, group: "primary" }` */
1509
+ templates: LayerDefinition<ConstructorOf<TemplateLayer>>;
1936
1510
 
1937
- /**
1938
- * @defaultValue `TemplateLayer`
1939
- */
1940
- templates: ConstructorOf<TemplateLayer>;
1511
+ /** @defaultValue `{ layerClass: TokenLayer, group: "primary" }` */
1512
+ tokens: LayerDefinition<ConstructorOf<TokenLayer>>;
1941
1513
 
1942
- /**
1943
- * @defaultValue `NotesLayer`
1944
- */
1945
- notes: ConstructorOf<NotesLayer>;
1514
+ /** @defaultValue `{ layerClass: ForegroundLayer, group: "primary" }` */
1515
+ foreground: LayerDefinition<ConstructorOf<ForegroundLayer>>;
1946
1516
 
1947
- /**
1948
- * @defaultValue `TokenLayer`
1949
- */
1950
- tokens: ConstructorOf<TokenLayer>;
1517
+ /** @defaultValue `{ layerClass: WallsLayer, group: "effects" }` */
1518
+ walls: LayerDefinition<ConstructorOf<WallsLayer>>;
1951
1519
 
1952
- /**
1953
- * @defaultValue `ForegroundLayer`
1954
- */
1955
- foreground: ConstructorOf<ForegroundLayer>;
1520
+ /** @defaultValue `{ layerClass: LightingLayer, group: "effects" }` */
1521
+ lighting: LayerDefinition<ConstructorOf<LightingLayer>>;
1956
1522
 
1957
- /**
1958
- * @defaultValue `SoundsLayer`
1959
- */
1960
- sounds: ConstructorOf<SoundsLayer>;
1523
+ /** @defaultValue `{ layerClass: WeatherLayer, group: "effects" }` */
1524
+ weather: LayerDefinition<ConstructorOf<WeatherLayer>>;
1961
1525
 
1962
- /**
1963
- * @defaultValue `LightingLayer`
1964
- */
1965
- lighting: ConstructorOf<LightingLayer>;
1526
+ /** @defaultValue `{ layerClass: SightLayer, group: "effects" }` */
1527
+ sight: LayerDefinition<ConstructorOf<SightLayer>>;
1966
1528
 
1967
- /**
1968
- * @defaultValue `SightLayer`
1969
- */
1970
- sight: ConstructorOf<SightLayer>;
1529
+ /** @defaultValue `{ layerClass: SoundsLayer, group: "interface" }` */
1530
+ sounds: LayerDefinition<ConstructorOf<SoundsLayer>>;
1971
1531
 
1972
- /**
1973
- * @defaultValue `EffectsLayer`
1974
- */
1975
- effects: ConstructorOf<EffectsLayer>;
1532
+ /** @defaultValue `{ layerClass: NotesLayer, group: "interface" }` */
1533
+ notes: LayerDefinition<ConstructorOf<NotesLayer>>;
1976
1534
 
1977
- /**
1978
- * @defaultValue `ControlsLayer`
1979
- */
1980
- controls: ConstructorOf<ControlsLayer>;
1535
+ /** @defaultValue `{ layerClass: ControlsLayer, group: "interface" }` */
1536
+ controls: LayerDefinition<ConstructorOf<ControlsLayer>>;
1981
1537
 
1982
- [key: string]: ConstructorOf<CanvasLayer>;
1538
+ [key: string]: LayerDefinition;
1983
1539
  }
1984
- }
1985
1540
 
1986
- interface SheetClass {
1987
- id: string;
1988
- cls: ConstructorOf<FormApplication>;
1989
- label: string;
1990
- default: boolean;
1541
+ interface GroupDefinition<GroupClass extends CanvasGroupConstructor = CanvasGroupConstructor> {
1542
+ groupClass: GroupClass;
1543
+ }
1544
+
1545
+ interface LayerDefinition<LayerClass extends ConstructorOf<CanvasLayer> = ConstructorOf<CanvasLayer>> {
1546
+ layerClass: LayerClass;
1547
+ group: keyof CONFIG['Canvas']['groups'];
1548
+ }
1991
1549
  }
1992
1550
 
1993
- type SheetClasses = Record<string, Record<string, SheetClass>>;
1551
+ namespace Cards {
1552
+ interface Preset {
1553
+ type: string;
1554
+ label: string;
1555
+ src: string;
1556
+ }
1557
+ }
1994
1558
  }
1995
1559
 
1996
1560
  const CONFIG: CONFIG;
1997
1561
  }
1562
+
1563
+ type PixiContainerConstructor = typeof PIXI.Container;
1564
+ interface CanvasGroup extends PIXI.Container {
1565
+ sortableChildren: boolean;
1566
+ }
1567
+
1568
+ interface CanvasGroupConstructor extends PixiContainerConstructor {
1569
+ new (): CanvasGroup;
1570
+
1571
+ /**
1572
+ * The name of this canvas group
1573
+ */
1574
+ groupName: string;
1575
+ }