@league-of-foundry-developers/foundry-vtt-types 0.8.9-7 → 9.238.1

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