@league-of-foundry-developers/foundry-vtt-types 12.331.3-beta → 12.331.5

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 (559) hide show
  1. package/README.md +17 -18
  2. package/package.json +91 -32
  3. package/src/configuration/configuration.d.mts +316 -0
  4. package/src/configuration/documents.d.mts +295 -0
  5. package/src/configuration/globals.d.mts +357 -0
  6. package/src/configuration/index.d.mts +5 -0
  7. package/src/foundry/client/apps/app.d.mts +129 -122
  8. package/src/foundry/client/apps/av/av-config.d.mts +12 -7
  9. package/src/foundry/client/apps/av/cameras.d.mts +12 -7
  10. package/src/foundry/client/apps/dice/dice-config.d.mts +59 -0
  11. package/src/foundry/client/apps/dice/index.d.mts +1 -0
  12. package/src/foundry/client/apps/form.d.mts +114 -86
  13. package/src/foundry/client/apps/forms/actor.d.mts +21 -11
  14. package/src/foundry/client/apps/forms/adventure-exporter.d.mts +12 -7
  15. package/src/foundry/client/apps/forms/adventure-importer.d.mts +14 -6
  16. package/src/foundry/client/apps/forms/base-sheet.d.mts +16 -8
  17. package/src/foundry/client/apps/forms/card-config.d.mts +16 -8
  18. package/src/foundry/client/apps/forms/cards-config.d.mts +15 -14
  19. package/src/foundry/client/apps/forms/combat-config.d.mts +7 -7
  20. package/src/foundry/client/apps/forms/combatant-config.d.mts +3 -3
  21. package/src/foundry/client/apps/forms/default-sheets-config.d.mts +1 -1
  22. package/src/foundry/client/apps/forms/effect-config.d.mts +7 -7
  23. package/src/foundry/client/apps/forms/folder-config.d.mts +10 -5
  24. package/src/foundry/client/apps/forms/fonts.d.mts +42 -35
  25. package/src/foundry/client/apps/forms/grid-config.d.mts +12 -13
  26. package/src/foundry/client/apps/forms/image-popout.d.mts +29 -23
  27. package/src/foundry/client/apps/forms/item.d.mts +9 -9
  28. package/src/foundry/client/apps/forms/journal-page-sheet.d.mts +16 -14
  29. package/src/foundry/client/apps/forms/journal-sheet.d.mts +48 -38
  30. package/src/foundry/client/apps/forms/macro-config.d.mts +7 -7
  31. package/src/foundry/client/apps/forms/measure-template.d.mts +10 -12
  32. package/src/foundry/client/apps/forms/ownership.d.mts +5 -5
  33. package/src/foundry/client/apps/forms/playlist-config.d.mts +8 -10
  34. package/src/foundry/client/apps/forms/playlist-sound-config.d.mts +7 -7
  35. package/src/foundry/client/apps/forms/roll-table-config.d.mts +11 -10
  36. package/src/foundry/client/apps/forms/scene-config.d.mts +40 -41
  37. package/src/foundry/client/apps/forms/sheet-config.d.mts +9 -21
  38. package/src/foundry/client/apps/forms/user-config.d.mts +13 -12
  39. package/src/foundry/client/apps/hud/chatbubble.d.mts +18 -6
  40. package/src/foundry/client/apps/hud/container.d.mts +4 -4
  41. package/src/foundry/client/apps/hud/controls.d.mts +126 -81
  42. package/src/foundry/client/apps/hud/hotbar.d.mts +17 -12
  43. package/src/foundry/client/apps/hud/hud.d.mts +5 -5
  44. package/src/foundry/client/apps/hud/menu.d.mts +10 -3
  45. package/src/foundry/client/apps/hud/navigation.d.mts +14 -9
  46. package/src/foundry/client/apps/hud/pause.d.mts +9 -4
  47. package/src/foundry/client/apps/hud/players.d.mts +14 -9
  48. package/src/foundry/client/apps/i18n.d.mts +31 -27
  49. package/src/foundry/client/apps/index.d.mts +1 -0
  50. package/src/foundry/client/apps/placeables/drawing-config.d.mts +41 -33
  51. package/src/foundry/client/apps/placeables/drawing-hud.d.mts +5 -5
  52. package/src/foundry/client/apps/placeables/index.d.mts +0 -2
  53. package/src/foundry/client/apps/placeables/note-config.d.mts +28 -18
  54. package/src/foundry/client/apps/placeables/tile-config.d.mts +23 -10
  55. package/src/foundry/client/apps/placeables/tile-hud.d.mts +10 -5
  56. package/src/foundry/client/apps/placeables/token-config.d.mts +91 -58
  57. package/src/foundry/client/apps/placeables/token-hud.d.mts +12 -7
  58. package/src/foundry/client/apps/placeables/wall-config.d.mts +21 -17
  59. package/src/foundry/client/apps/sidebar/apps/chat-popout.d.mts +5 -5
  60. package/src/foundry/client/apps/sidebar/apps/client-settings.d.mts +3 -3
  61. package/src/foundry/client/apps/sidebar/apps/compendium.d.mts +15 -13
  62. package/src/foundry/client/apps/sidebar/apps/invitation-links.d.mts +3 -3
  63. package/src/foundry/client/apps/sidebar/apps/keybindings-config.d.mts +3 -2
  64. package/src/foundry/client/apps/sidebar/apps/module-management.d.mts +6 -6
  65. package/src/foundry/client/apps/sidebar/apps/permission-config.d.mts +6 -6
  66. package/src/foundry/client/apps/sidebar/apps/support-details.d.mts +34 -29
  67. package/src/foundry/client/apps/sidebar/apps/tours-management.d.mts +2 -2
  68. package/src/foundry/client/apps/sidebar/apps/world-config.d.mts +13 -10
  69. package/src/foundry/client/apps/sidebar/directory-tab-mixin.d.mts +50 -35
  70. package/src/foundry/client/apps/sidebar/document-directory.d.mts +52 -38
  71. package/src/foundry/client/apps/sidebar/package-configuration.d.mts +4 -4
  72. package/src/foundry/client/apps/sidebar/sidebar-tab.d.mts +3 -3
  73. package/src/foundry/client/apps/sidebar/sidebar.d.mts +9 -4
  74. package/src/foundry/client/apps/sidebar/tabs/actors-directory.d.mts +11 -2
  75. package/src/foundry/client/apps/sidebar/tabs/cards-directory.d.mts +11 -2
  76. package/src/foundry/client/apps/sidebar/tabs/chat-log.d.mts +39 -27
  77. package/src/foundry/client/apps/sidebar/tabs/combat-tracker.d.mts +21 -12
  78. package/src/foundry/client/apps/sidebar/tabs/compendium-directory.d.mts +30 -15
  79. package/src/foundry/client/apps/sidebar/tabs/items-directory.d.mts +11 -2
  80. package/src/foundry/client/apps/sidebar/tabs/journal-directory.d.mts +11 -2
  81. package/src/foundry/client/apps/sidebar/tabs/macros-directory.d.mts +14 -5
  82. package/src/foundry/client/apps/sidebar/tabs/playlists-directory.d.mts +30 -22
  83. package/src/foundry/client/apps/sidebar/tabs/roll-table-directory.d.mts +11 -2
  84. package/src/foundry/client/apps/sidebar/tabs/scenes-directory.d.mts +14 -5
  85. package/src/foundry/client/apps/sidebar/tabs/settings.d.mts +23 -5
  86. package/src/foundry/client/apps/templates.d.mts +1 -1
  87. package/src/foundry/client/av/client.d.mts +1 -1
  88. package/src/foundry/client/av/clients/simplepeer.d.mts +11 -1
  89. package/src/foundry/client/av/master.d.mts +2 -2
  90. package/src/foundry/client/av/settings.d.mts +17 -15
  91. package/src/foundry/client/config.d.mts +444 -312
  92. package/src/foundry/client/core/document-index.d.mts +11 -3
  93. package/src/foundry/client/core/hooks.d.mts +2 -4
  94. package/src/foundry/client/core/image.d.mts +14 -13
  95. package/src/foundry/client/core/issues.d.mts +9 -4
  96. package/src/foundry/client/core/keybindings.d.mts +5 -5
  97. package/src/foundry/client/core/nue.d.mts +1 -1
  98. package/src/foundry/client/core/packages.d.mts +400 -62
  99. package/src/foundry/client/core/settings.d.mts +62 -38
  100. package/src/foundry/client/core/socket.d.mts +2 -2
  101. package/src/foundry/client/core/sorting.d.mts +6 -6
  102. package/src/foundry/client/core/time.d.mts +6 -3
  103. package/src/foundry/client/core/tooltip.d.mts +2 -2
  104. package/src/foundry/client/core/tour.d.mts +59 -50
  105. package/src/foundry/client/core/tours.d.mts +1 -1
  106. package/src/foundry/client/core/utils.d.mts +33 -10
  107. package/src/foundry/client/core/video.d.mts +1 -1
  108. package/src/foundry/client/core/workers.d.mts +24 -17
  109. package/src/foundry/client/data/abstract/canvas-document.d.mts +22 -28
  110. package/src/foundry/client/data/abstract/client-document.d.mts +238 -206
  111. package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +24 -40
  112. package/src/foundry/client/data/abstract/document-collection.d.mts +96 -68
  113. package/src/foundry/client/data/abstract/world-collection.d.mts +53 -54
  114. package/src/foundry/client/data/collections/actors.d.mts +30 -28
  115. package/src/foundry/client/data/collections/cards.d.mts +16 -3
  116. package/src/foundry/client/data/collections/combats.d.mts +18 -5
  117. package/src/foundry/client/data/collections/compendium-collection.d.mts +84 -101
  118. package/src/foundry/client/data/collections/compendium-folders.d.mts +6 -6
  119. package/src/foundry/client/data/collections/compendium-packs.d.mts +5 -5
  120. package/src/foundry/client/data/collections/fog.d.mts +16 -3
  121. package/src/foundry/client/data/collections/folder.d.mts +20 -6
  122. package/src/foundry/client/data/collections/items.d.mts +17 -4
  123. package/src/foundry/client/data/collections/journal.d.mts +22 -7
  124. package/src/foundry/client/data/collections/macros.d.mts +21 -19
  125. package/src/foundry/client/data/collections/messages.d.mts +19 -6
  126. package/src/foundry/client/data/collections/playlists.d.mts +17 -5
  127. package/src/foundry/client/data/collections/scenes.d.mts +24 -27
  128. package/src/foundry/client/data/collections/settings.d.mts +16 -3
  129. package/src/foundry/client/data/collections/tables.d.mts +18 -5
  130. package/src/foundry/client/data/collections/users.d.mts +22 -10
  131. package/src/foundry/client/data/documents/active-effect.d.mts +780 -112
  132. package/src/foundry/client/data/documents/actor-delta.d.mts +705 -31
  133. package/src/foundry/client/data/documents/actor.d.mts +806 -98
  134. package/src/foundry/client/data/documents/adventure.d.mts +522 -59
  135. package/src/foundry/client/data/documents/ambient-light.d.mts +427 -20
  136. package/src/foundry/client/data/documents/ambient-sound.d.mts +478 -14
  137. package/src/foundry/client/data/documents/card.d.mts +598 -44
  138. package/src/foundry/client/data/documents/cards.d.mts +862 -169
  139. package/src/foundry/client/data/documents/chat-message.d.mts +668 -77
  140. package/src/foundry/client/data/documents/combat.d.mts +757 -107
  141. package/src/foundry/client/data/documents/combatant.d.mts +545 -32
  142. package/src/foundry/client/data/documents/drawing.d.mts +545 -14
  143. package/src/foundry/client/data/documents/fog-exploration.d.mts +465 -30
  144. package/src/foundry/client/data/documents/folder.d.mts +567 -51
  145. package/src/foundry/client/data/documents/index.d.mts +2 -0
  146. package/src/foundry/client/data/documents/item.d.mts +691 -24
  147. package/src/foundry/client/data/documents/journal-entry-page.d.mts +654 -55
  148. package/src/foundry/client/data/documents/journal-entry.d.mts +631 -35
  149. package/src/foundry/client/data/documents/macro.d.mts +560 -31
  150. package/src/foundry/client/data/documents/measured-template.d.mts +484 -15
  151. package/src/foundry/client/data/documents/note.d.mts +498 -15
  152. package/src/foundry/client/data/documents/playlist-sound.d.mts +443 -45
  153. package/src/foundry/client/data/documents/playlist.d.mts +710 -99
  154. package/src/foundry/client/data/documents/region-behavior.d.mts +516 -0
  155. package/src/foundry/client/data/documents/region.d.mts +789 -0
  156. package/src/foundry/client/data/documents/scene.d.mts +1216 -159
  157. package/src/foundry/client/data/documents/setting.d.mts +406 -23
  158. package/src/foundry/client/data/documents/table-result.d.mts +488 -14
  159. package/src/foundry/client/data/documents/table.d.mts +667 -78
  160. package/src/foundry/client/data/documents/tile.d.mts +505 -14
  161. package/src/foundry/client/data/documents/token.d.mts +1191 -143
  162. package/src/foundry/client/data/documents/user.d.mts +613 -57
  163. package/src/foundry/client/data/documents/wall.d.mts +555 -14
  164. package/src/foundry/client/game.d.mts +60 -92
  165. package/src/foundry/client/head.d.mts +9 -9
  166. package/src/foundry/client/hooks.d.mts +259 -248
  167. package/src/foundry/client/pixi/board.d.mts +107 -94
  168. package/src/foundry/client/pixi/core/containers/base-canvas-group.d.mts +97 -25
  169. package/src/foundry/client/pixi/core/containers/cached-container.d.mts +37 -19
  170. package/src/foundry/client/pixi/core/containers/full-canvas-container.d.mts +7 -10
  171. package/src/foundry/client/pixi/core/containers/point-source-mesh.d.mts +25 -15
  172. package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +16 -6
  173. package/src/foundry/client/pixi/core/containers/quadtree.d.mts +113 -54
  174. package/src/foundry/client/pixi/core/containers/sprite-mesh.d.mts +69 -26
  175. package/src/foundry/client/pixi/core/containers/unbound-container.d.mts +20 -2
  176. package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +164 -99
  177. package/src/foundry/client/pixi/core/interaction/control-icon.d.mts +61 -22
  178. package/src/foundry/client/pixi/core/interaction/mouse-handler.d.mts +120 -53
  179. package/src/foundry/client/pixi/core/interaction/ping.d.mts +62 -31
  180. package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +23 -10
  181. package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +91 -34
  182. package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +69 -30
  183. package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +35 -5
  184. package/src/foundry/client/pixi/core/interaction/targets.d.mts +21 -18
  185. package/src/foundry/client/pixi/core/loader.d.mts +86 -76
  186. package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +42 -17
  187. package/src/foundry/client/pixi/core/shapes/polygon-mesher.d.mts +92 -64
  188. package/src/foundry/client/pixi/core/shapes/precise-text.d.mts +28 -10
  189. package/src/foundry/client/pixi/core/shapes/ray.d.mts +47 -23
  190. package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +170 -75
  191. package/src/foundry/client/pixi/extensions/circle.d.mts +128 -125
  192. package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
  193. package/src/foundry/client/pixi/extensions/observable-transform.d.mts +5 -4
  194. package/src/foundry/client/pixi/extensions/polygon.d.mts +154 -134
  195. package/src/foundry/client/pixi/extensions/rectangle.d.mts +242 -259
  196. package/src/foundry/client/pixi/groups/effects.d.mts +75 -24
  197. package/src/foundry/client/pixi/groups/environment.d.mts +68 -19
  198. package/src/foundry/client/pixi/groups/hidden.d.mts +27 -11
  199. package/src/foundry/client/pixi/groups/interface.d.mts +62 -38
  200. package/src/foundry/client/pixi/groups/overlay.d.mts +19 -7
  201. package/src/foundry/client/pixi/groups/primary.d.mts +66 -44
  202. package/src/foundry/client/pixi/groups/rendered.d.mts +19 -7
  203. package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +11 -15
  204. package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +29 -28
  205. package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +306 -272
  206. package/src/foundry/client/pixi/layers/controls/cursor.d.mts +18 -9
  207. package/src/foundry/client/pixi/layers/controls/door.d.mts +32 -11
  208. package/src/foundry/client/pixi/layers/controls/layer.d.mts +89 -77
  209. package/src/foundry/client/pixi/layers/controls/ruler.d.mts +121 -96
  210. package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +9 -12
  211. package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +9 -10
  212. package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +8 -8
  213. package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +22 -22
  214. package/src/foundry/client/pixi/layers/effects/visibility.d.mts +106 -86
  215. package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +14 -5
  216. package/src/foundry/client/pixi/layers/effects/weather/particles/leaves.d.mts +31 -2
  217. package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +137 -65
  218. package/src/foundry/client/pixi/layers/grid/highlight.d.mts +14 -4
  219. package/src/foundry/client/pixi/layers/grid/layer.d.mts +92 -92
  220. package/src/foundry/client/pixi/layers/grid/mesh.d.mts +37 -16
  221. package/src/foundry/client/pixi/layers/masks/depth.d.mts +12 -7
  222. package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +19 -12
  223. package/src/foundry/client/pixi/layers/masks/vision.d.mts +104 -18
  224. package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +16 -15
  225. package/src/foundry/client/pixi/layers/placeables/index.d.mts +1 -0
  226. package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +12 -14
  227. package/src/foundry/client/pixi/layers/placeables/notes.d.mts +49 -32
  228. package/src/foundry/client/pixi/layers/placeables/regions.d.mts +113 -0
  229. package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +81 -67
  230. package/src/foundry/client/pixi/layers/placeables/templates.d.mts +11 -15
  231. package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +30 -21
  232. package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +66 -52
  233. package/src/foundry/client/pixi/layers/placeables/walls.d.mts +54 -57
  234. package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +62 -27
  235. package/src/foundry/client/pixi/perception/detection-mode.d.mts +121 -47
  236. package/src/foundry/client/pixi/perception/fog.d.mts +38 -15
  237. package/src/foundry/client/pixi/perception/perception-manager.d.mts +136 -136
  238. package/src/foundry/client/pixi/perception/vision-mode.d.mts +91 -64
  239. package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +44 -16
  240. package/src/foundry/client/pixi/placeable.d.mts +239 -137
  241. package/src/foundry/client/pixi/placeables/drawing.d.mts +255 -133
  242. package/src/foundry/client/pixi/placeables/index.d.mts +1 -0
  243. package/src/foundry/client/pixi/placeables/light.d.mts +193 -64
  244. package/src/foundry/client/pixi/placeables/note.d.mts +145 -54
  245. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +30 -8
  246. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-graphics.d.mts +41 -11
  247. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.d.mts +59 -18
  248. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.mts +120 -37
  249. package/src/foundry/client/pixi/placeables/region.d.mts +280 -0
  250. package/src/foundry/client/pixi/placeables/sound.d.mts +205 -66
  251. package/src/foundry/client/pixi/placeables/template.d.mts +181 -100
  252. package/src/foundry/client/pixi/placeables/tile.d.mts +206 -140
  253. package/src/foundry/client/pixi/placeables/token.d.mts +916 -449
  254. package/src/foundry/client/pixi/placeables/wall.d.mts +249 -129
  255. package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +72 -33
  256. package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +10 -9
  257. package/src/foundry/client/pixi/webgl/helpers/{framebugger-snapshot.d.mts → framebuffer-snapshot.d.mts} +10 -9
  258. package/src/foundry/client/pixi/webgl/helpers/index.d.mts +1 -1
  259. package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +38 -23
  260. package/src/foundry/client/pixi/webgl/helpers/texture-extractor.d.mts +82 -53
  261. package/src/foundry/client/pixi/webgl/shaders/base-shader-mixin.d.mts +12 -12
  262. package/src/foundry/client/pixi/webgl/shaders/base-shader.d.mts +45 -28
  263. package/src/foundry/client/pixi/webgl/shaders/filters/base-filter.d.mts +12 -11
  264. package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +12 -10
  265. package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +22 -20
  266. package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +36 -32
  267. package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +10 -9
  268. package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +12 -11
  269. package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +10 -9
  270. package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +12 -11
  271. package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +67 -60
  272. package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +24 -17
  273. package/src/foundry/client/pixi/webgl/shaders/filters/vision-mask-filter.d.mts +13 -10
  274. package/src/foundry/client/pixi/webgl/shaders/filters/void.d.mts +10 -9
  275. package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +11 -10
  276. package/src/foundry/client/pixi/webgl/shaders/fragment-channel-mixin.d.mts +20 -14
  277. package/src/foundry/client/pixi/webgl/shaders/grid/grid.d.mts +12 -11
  278. package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +10 -9
  279. package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +33 -33
  280. package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +10 -9
  281. package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +10 -9
  282. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +19 -17
  283. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +10 -9
  284. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +10 -9
  285. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +10 -9
  286. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +10 -9
  287. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +19 -17
  288. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +19 -17
  289. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +10 -9
  290. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +10 -8
  291. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +19 -17
  292. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +10 -9
  293. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +10 -9
  294. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +10 -9
  295. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +19 -17
  296. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +10 -9
  297. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +10 -9
  298. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +10 -9
  299. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +19 -17
  300. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +20 -17
  301. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +10 -9
  302. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +19 -17
  303. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +10 -9
  304. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +19 -17
  305. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +19 -17
  306. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +19 -17
  307. package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +10 -9
  308. package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +71 -29
  309. package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +54 -10
  310. package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +69 -9
  311. package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +24 -25
  312. package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +10 -9
  313. package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +38 -29
  314. package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +21 -17
  315. package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +10 -9
  316. package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +20 -18
  317. package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +11 -2
  318. package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +28 -2
  319. package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +10 -9
  320. package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +11 -9
  321. package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +10 -9
  322. package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +10 -9
  323. package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +19 -17
  324. package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +10 -9
  325. package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +40 -36
  326. package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +27 -33
  327. package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +17 -16
  328. package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +19 -18
  329. package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +15 -14
  330. package/src/foundry/client/pixi/workers/texture-worker.d.mts +33 -53
  331. package/src/foundry/client/tours/setup-tour.d.mts +15 -10
  332. package/src/foundry/client/ui/context.d.mts +48 -40
  333. package/src/foundry/client/ui/dialog.d.mts +137 -126
  334. package/src/foundry/client/ui/drag.d.mts +1 -1
  335. package/src/foundry/client/ui/dragdrop.d.mts +34 -28
  336. package/src/foundry/client/ui/editor.d.mts +29 -21
  337. package/src/foundry/client/ui/filepicker.d.mts +43 -38
  338. package/src/foundry/client/ui/filter.d.mts +62 -50
  339. package/src/foundry/client/ui/forms.d.mts +22 -22
  340. package/src/foundry/client/ui/notifications.d.mts +10 -3
  341. package/src/foundry/client/ui/prosemirror.d.mts +15 -7
  342. package/src/foundry/client/ui/secrets.d.mts +42 -27
  343. package/src/foundry/client/ui/tabs.d.mts +40 -33
  344. package/src/foundry/client-esm/applications/_module.d.mts +3 -3
  345. package/src/foundry/client-esm/applications/_types.d.mts +0 -2
  346. package/src/foundry/client-esm/applications/api/_module.d.mts +2 -2
  347. package/src/foundry/client-esm/applications/api/application.d.mts +28 -19
  348. package/src/foundry/client-esm/applications/api/dialog.d.mts +20 -22
  349. package/src/foundry/client-esm/applications/api/document-sheet.d.mts +26 -12
  350. package/src/foundry/client-esm/applications/api/handlebars-application.d.mts +142 -126
  351. package/src/foundry/client-esm/applications/apps/_module.d.mts +2 -2
  352. package/src/foundry/client-esm/applications/apps/compendium-art-config.d.mts +10 -10
  353. package/src/foundry/client-esm/applications/apps/permission-config.d.mts +3 -3
  354. package/src/foundry/client-esm/applications/dice/_module.d.mts +2 -2
  355. package/src/foundry/client-esm/applications/dice/roll-resolver.d.mts +14 -2
  356. package/src/foundry/client-esm/applications/elements/_module.d.mts +2 -2
  357. package/src/foundry/client-esm/applications/elements/document-tags.d.mts +2 -0
  358. package/src/foundry/client-esm/applications/elements/file-picker.d.mts +1 -1
  359. package/src/foundry/client-esm/applications/elements/multi-select.d.mts +15 -5
  360. package/src/foundry/client-esm/applications/elements/string-tags.d.mts +1 -1
  361. package/src/foundry/client-esm/applications/forms/fields.d.mts +1 -1
  362. package/src/foundry/client-esm/applications/sheets/_module.d.mts +2 -2
  363. package/src/foundry/client-esm/applications/sheets/actor-sheet.d.mts +3 -3
  364. package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +10 -8
  365. package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +9 -7
  366. package/src/foundry/client-esm/applications/sheets/item-sheet.d.mts +3 -3
  367. package/src/foundry/client-esm/applications/sheets/region-behavior-config.d.mts +30 -5
  368. package/src/foundry/client-esm/applications/sheets/region-config.d.mts +36 -5
  369. package/src/foundry/client-esm/applications/sheets/user-config.d.mts +8 -7
  370. package/src/foundry/client-esm/applications/ui/_module.d.mts +2 -2
  371. package/src/foundry/client-esm/applications/ui/region-legend.d.mts +45 -3
  372. package/src/foundry/client-esm/audio/_module.d.mts +2 -3
  373. package/src/foundry/client-esm/audio/_types.d.mts +2 -0
  374. package/src/foundry/client-esm/audio/biquad.d.mts +76 -26
  375. package/src/foundry/client-esm/audio/cache.d.mts +31 -20
  376. package/src/foundry/client-esm/audio/convolver.d.mts +47 -25
  377. package/src/foundry/client-esm/audio/helper.d.mts +124 -80
  378. package/src/foundry/client-esm/audio/sound.d.mts +230 -126
  379. package/src/foundry/client-esm/audio/timeout.d.mts +28 -12
  380. package/src/foundry/client-esm/canvas/_module.d.mts +2 -2
  381. package/src/foundry/client-esm/canvas/edges/_module.d.mts +2 -2
  382. package/src/foundry/client-esm/canvas/edges/collision.d.mts +69 -18
  383. package/src/foundry/client-esm/canvas/edges/edge.d.mts +110 -41
  384. package/src/foundry/client-esm/canvas/edges/edges.d.mts +10 -0
  385. package/src/foundry/client-esm/canvas/edges/vertex.d.mts +56 -26
  386. package/src/foundry/client-esm/canvas/regions/_module.d.mts +6 -11
  387. package/src/foundry/client-esm/canvas/regions/geometry.d.mts +38 -0
  388. package/src/foundry/client-esm/canvas/regions/mesh.d.mts +72 -0
  389. package/src/foundry/client-esm/canvas/regions/polygon-tree.d.mts +130 -0
  390. package/src/foundry/client-esm/canvas/regions/shape.d.mts +129 -0
  391. package/src/foundry/client-esm/canvas/scene-manager.d.mts +13 -3
  392. package/src/foundry/client-esm/canvas/smaa/blend.d.mts +14 -3
  393. package/src/foundry/client-esm/canvas/smaa/edges.d.mts +25 -3
  394. package/src/foundry/client-esm/canvas/smaa/smaa.d.mts +121 -23
  395. package/src/foundry/client-esm/canvas/smaa/weights.d.mts +26 -3
  396. package/src/foundry/client-esm/canvas/sources/_module.d.mts +2 -2
  397. package/src/foundry/client-esm/canvas/sources/base-effect-source.d.mts +84 -40
  398. package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +103 -39
  399. package/src/foundry/client-esm/canvas/sources/global-light-source.d.mts +89 -15
  400. package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +71 -27
  401. package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +49 -20
  402. package/src/foundry/client-esm/canvas/sources/point-light-source.d.mts +57 -16
  403. package/src/foundry/client-esm/canvas/sources/point-movement-source.d.mts +31 -4
  404. package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +45 -12
  405. package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +98 -52
  406. package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +180 -69
  407. package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -3
  408. package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +175 -2
  409. package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +142 -2
  410. package/src/foundry/client-esm/canvas/tokens/ring.d.mts +284 -2
  411. package/src/foundry/client-esm/client.d.mts +47 -54
  412. package/src/foundry/client-esm/data/_module.d.mts +2 -2
  413. package/src/foundry/client-esm/data/client-backend.d.mts +22 -23
  414. package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +11 -14
  415. package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +56 -0
  416. package/src/foundry/client-esm/data/region-behaviors/base.d.mts +59 -0
  417. package/src/foundry/client-esm/data/region-behaviors/display-scrolling-text.d.mts +64 -0
  418. package/src/foundry/client-esm/data/region-behaviors/execute-macro.d.mts +27 -0
  419. package/src/foundry/client-esm/data/region-behaviors/execute-script.d.mts +23 -0
  420. package/src/foundry/client-esm/data/region-behaviors/pause-game.d.mts +23 -0
  421. package/src/foundry/client-esm/data/region-behaviors/suppress-weather.d.mts +17 -0
  422. package/src/foundry/client-esm/data/region-behaviors/teleport-token.d.mts +32 -0
  423. package/src/foundry/client-esm/data/region-behaviors/toggle-behavior.d.mts +31 -0
  424. package/src/foundry/client-esm/dice/_module.d.mts +2 -3
  425. package/src/foundry/client-esm/dice/parser.d.mts +11 -25
  426. package/src/foundry/client-esm/dice/roll.d.mts +112 -89
  427. package/src/foundry/client-esm/dice/terms/_module.d.mts +2 -3
  428. package/src/foundry/client-esm/dice/terms/coin.d.mts +8 -5
  429. package/src/foundry/client-esm/dice/terms/dice.d.mts +93 -63
  430. package/src/foundry/client-esm/dice/terms/die.d.mts +11 -4
  431. package/src/foundry/client-esm/dice/terms/fate.d.mts +9 -2
  432. package/src/foundry/client-esm/dice/terms/function.d.mts +18 -18
  433. package/src/foundry/client-esm/dice/terms/numeric.d.mts +3 -5
  434. package/src/foundry/client-esm/dice/terms/operator.d.mts +2 -2
  435. package/src/foundry/client-esm/dice/terms/parenthetical.d.mts +9 -10
  436. package/src/foundry/client-esm/dice/terms/pool.d.mts +25 -31
  437. package/src/foundry/client-esm/dice/terms/string.d.mts +4 -4
  438. package/src/foundry/client-esm/dice/terms/term.d.mts +18 -4
  439. package/src/foundry/client-esm/dice/twister.d.mts +3 -3
  440. package/src/foundry/client-esm/helpers/_module.d.mts +2 -2
  441. package/src/foundry/client-esm/helpers/_types.d.mts +12 -46
  442. package/src/foundry/client-esm/helpers/compendium-art.d.mts +56 -4
  443. package/src/foundry/common/abstract/_types.d.mts +60 -54
  444. package/src/foundry/common/abstract/backend.d.mts +51 -45
  445. package/src/foundry/common/abstract/data.d.mts +265 -236
  446. package/src/foundry/common/abstract/document.d.mts +1449 -464
  447. package/src/foundry/common/abstract/embedded-collection-delta.d.mts +1 -1
  448. package/src/foundry/common/abstract/embedded-collection.d.mts +37 -7
  449. package/src/foundry/common/abstract/module.d.mts +3 -2
  450. package/src/foundry/common/abstract/singleton-collection.d.mts +1 -1
  451. package/src/foundry/common/abstract/socket.d.mts +1 -1
  452. package/src/foundry/common/abstract/type-data.d.mts +61 -55
  453. package/src/foundry/common/config.d.mts +11 -3
  454. package/src/foundry/common/constants.d.mts +261 -231
  455. package/src/foundry/common/data/data.d.mts +238 -102
  456. package/src/foundry/common/data/fields.d.mts +1334 -874
  457. package/src/foundry/common/data/module.d.mts +2 -2
  458. package/src/foundry/common/data/validation-failure.d.mts +12 -9
  459. package/src/foundry/common/documents/_module.d.mts +4 -2
  460. package/src/foundry/common/documents/_types.d.mts +22 -56
  461. package/src/foundry/common/documents/active-effect.d.mts +358 -194
  462. package/src/foundry/common/documents/actor-delta.d.mts +403 -73
  463. package/src/foundry/common/documents/actor.d.mts +359 -117
  464. package/src/foundry/common/documents/adventure.d.mts +312 -142
  465. package/src/foundry/common/documents/ambient-light.d.mts +296 -75
  466. package/src/foundry/common/documents/ambient-sound.d.mts +296 -109
  467. package/src/foundry/common/documents/card.d.mts +321 -187
  468. package/src/foundry/common/documents/cards.d.mts +353 -125
  469. package/src/foundry/common/documents/chat-message.d.mts +338 -167
  470. package/src/foundry/common/documents/combat.d.mts +358 -94
  471. package/src/foundry/common/documents/combatant.d.mts +323 -92
  472. package/src/foundry/common/documents/drawing.d.mts +327 -206
  473. package/src/foundry/common/documents/fog-exploration.d.mts +303 -69
  474. package/src/foundry/common/documents/folder.d.mts +307 -82
  475. package/src/foundry/common/documents/item.d.mts +377 -100
  476. package/src/foundry/common/documents/journal-entry-page.d.mts +327 -187
  477. package/src/foundry/common/documents/journal-entry.d.mts +345 -68
  478. package/src/foundry/common/documents/macro.d.mts +325 -139
  479. package/src/foundry/common/documents/measured-template.d.mts +328 -138
  480. package/src/foundry/common/documents/note.d.mts +312 -151
  481. package/src/foundry/common/documents/playlist-sound.d.mts +309 -102
  482. package/src/foundry/common/documents/playlist.d.mts +341 -131
  483. package/src/foundry/common/documents/region-behavior.d.mts +360 -0
  484. package/src/foundry/common/documents/region.d.mts +355 -0
  485. package/src/foundry/common/documents/roll-table.d.mts +320 -102
  486. package/src/foundry/common/documents/scene.d.mts +437 -350
  487. package/src/foundry/common/documents/setting.d.mts +285 -54
  488. package/src/foundry/common/documents/table-result.d.mts +326 -103
  489. package/src/foundry/common/documents/tile.d.mts +337 -172
  490. package/src/foundry/common/documents/token.d.mts +396 -447
  491. package/src/foundry/common/documents/user.d.mts +296 -173
  492. package/src/foundry/common/documents/wall.d.mts +303 -156
  493. package/src/foundry/common/grid/_module.d.mts +3 -3
  494. package/src/foundry/common/grid/base.d.mts +66 -49
  495. package/src/foundry/common/grid/gridless.d.mts +2 -2
  496. package/src/foundry/common/grid/hexagonal.d.mts +35 -28
  497. package/src/foundry/common/grid/square.d.mts +3 -3
  498. package/src/foundry/common/packages/base-module.d.mts +6 -24
  499. package/src/foundry/common/packages/base-package.d.mts +56 -31
  500. package/src/foundry/common/packages/base-system.d.mts +45 -63
  501. package/src/foundry/common/packages/base-world.d.mts +15 -61
  502. package/src/foundry/common/packages/module.d.mts +7 -7
  503. package/src/foundry/common/packages/sub-types.d.mts +4 -6
  504. package/src/foundry/common/primitives/array.d.mts +4 -4
  505. package/src/foundry/common/primitives/math.d.mts +7 -1
  506. package/src/foundry/common/primitives/number.d.mts +2 -2
  507. package/src/foundry/common/primitives/set.d.mts +17 -14
  508. package/src/foundry/common/primitives/string.d.mts +1 -1
  509. package/src/foundry/common/prosemirror/_module.d.mts +15 -15
  510. package/src/foundry/common/prosemirror/dirty-plugin.d.mts +1 -1
  511. package/src/foundry/common/prosemirror/dom-parser.d.mts +2 -1
  512. package/src/foundry/common/prosemirror/dropdown.d.mts +1 -1
  513. package/src/foundry/common/prosemirror/highlight-matches-plugin.d.mts +2 -2
  514. package/src/foundry/common/prosemirror/image-plugin.d.mts +1 -1
  515. package/src/foundry/common/prosemirror/menu.d.mts +3 -3
  516. package/src/foundry/common/prosemirror/paste-transformer.d.mts +1 -1
  517. package/src/foundry/common/prosemirror/plugin.d.mts +2 -2
  518. package/src/foundry/common/prosemirror/schema/index.d.mts +0 -1
  519. package/src/foundry/common/prosemirror/schema/lists.d.mts +2 -0
  520. package/src/foundry/common/prosemirror/util.d.mts +1 -1
  521. package/src/foundry/common/types.d.mts +3 -3
  522. package/src/foundry/common/utils/bitmask.d.mts +23 -11
  523. package/src/foundry/common/utils/collection.d.mts +61 -38
  524. package/src/foundry/common/utils/color.d.mts +20 -2
  525. package/src/foundry/common/utils/event-emitter.d.mts +32 -17
  526. package/src/foundry/common/utils/helpers.d.mts +36 -26
  527. package/src/foundry/common/utils/http.d.mts +2 -2
  528. package/src/foundry/common/utils/module.d.mts +2 -2
  529. package/src/foundry/common/utils/string-tree.d.mts +45 -39
  530. package/src/foundry/common/utils/word-tree.d.mts +10 -23
  531. package/src/foundry/index.d.mts +0 -1
  532. package/src/foundry/{clipper → public/scripts/clipper}/clipper.d.mts +58 -16
  533. package/src/foundry/public/scripts/index.d.mts +1 -0
  534. package/src/foundry/public/scripts/workers/image-compressor.d.mts +23 -0
  535. package/src/foundry/public/scripts/workers/index.d.mts +1 -0
  536. package/{index-lenient.d.mts → src/index-lenient.d.mts} +2 -0
  537. package/src/index.d.mts +6 -0
  538. package/src/tsconfig.json +15 -0
  539. package/src/types/augments/particles.d.mts +29 -0
  540. package/src/types/augments/pixi.d.mts +1024 -21
  541. package/src/types/augments/smooth.d.mts +31 -0
  542. package/src/types/augments/tinyMCE.d.mts +1 -1
  543. package/src/types/config.d.mts +18 -313
  544. package/src/types/documentConfiguration.d.mts +286 -542
  545. package/src/types/index.d.mts +1 -1
  546. package/src/types/lib.d.mts +12 -0
  547. package/src/types/workers/image-compressor.d.mts +176 -0
  548. package/src/utils/index.d.mts +1279 -0
  549. package/tsconfig.json +29 -0
  550. package/tsconfig.main.json +8 -0
  551. package/tsconfig.miscellaneous.json +16 -0
  552. package/index.d.mts +0 -5
  553. package/src/foundry/client/apps/placeables/light-config.d.mts +0 -100
  554. package/src/foundry/client/apps/placeables/sound-config.d.mts +0 -43
  555. package/src/foundry/common/documents/module.d.mts +0 -35
  556. package/src/foundry/common/primitives/regex.d.mts +0 -12
  557. package/src/types/helperTypes.d.mts +0 -583
  558. package/src/types/utils.d.mts +0 -539
  559. /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,4 +1,4 @@
1
- import type { InexactPartial } from "../../../../types/utils.d.mts";
1
+ import type { NullishProps, IntentionalPartial, AnyObject, Identity } from "#utils";
2
2
 
3
3
  /**
4
4
  * TODO - Re-document after ESM refactor.
@@ -14,50 +14,56 @@ import type { InexactPartial } from "../../../../types/utils.d.mts";
14
14
  * ```
15
15
  * @privateRemarks The TODO is foundry's
16
16
  */
17
- declare class BaseEffectSource<
18
- SourceData extends BaseEffectSource.BaseEffectSourceData,
17
+ declare abstract class BaseEffectSource<
18
+ SourceData extends BaseEffectSource.SourceData,
19
19
  SourceShape extends PIXI.Polygon,
20
20
  > {
21
21
  /**
22
22
  * An effect source is constructed by providing configuration options.
23
23
  * @param options - Options which modify the base effect source instance
24
+ * @remarks Passing a PlaceableObject is deprecated, and will be removed in v13
24
25
  */
25
- constructor(options?: BaseEffectSource.BaseEffectSourceOptions);
26
+ // not null (property access)
27
+ constructor(options?: BaseEffectSource.ConstructorOptions | PlaceableObject);
26
28
 
27
29
  /**
28
30
  * The type of source represented by this data structure.
29
31
  * Each subclass must implement this attribute.
32
+ * @remarks Effectively abstract, must be defined by subclasses; `undefined` in `BaseEffectSource`
30
33
  */
31
- static sourceType: string;
34
+ static sourceType: string | undefined;
32
35
 
33
36
  /**
34
37
  * The target collection into the effects canvas group.
38
+ * @remarks Foundry marked `@abstract`; Is `undefined` in `BaseEffectSource`
35
39
  */
36
- static effectsCollection: string;
40
+ static effectsCollection: string | undefined;
37
41
 
38
42
  /**
39
43
  * Effect source default data.
40
44
  * @defaultValue
41
45
  * ```js
42
46
  * {
43
- * x: 0,
44
- * y: 0,
45
- * elevation: 0,
46
- * disabled: false
47
+ * x: 0,
48
+ * y: 0,
49
+ * elevation: 0,
50
+ * disabled: false
47
51
  * }
48
52
  * ```
49
53
  */
50
- static defaultData: BaseEffectSource.BaseEffectSourceData;
54
+ static defaultData: BaseEffectSource.SourceData;
51
55
 
52
56
  /**
53
57
  * Some other object which is responsible for this source.
58
+ * @privateRemarks In Foundry practice this appears to only ever be `null`, `Token.Object`, or `EffectsCanvasGroup` in v12
54
59
  */
55
- object: PlaceableObject | null;
60
+ object: PlaceableObject.Any | CanvasGroupMixin.AnyMixed | null;
56
61
 
57
62
  /**
58
63
  * The source id linked to this effect source.
64
+ * @remarks Foundry types this as Readonly<string>, but does nothing to that effect at runtime
59
65
  */
60
- readonly sourceId: string;
66
+ sourceId: string | undefined;
61
67
 
62
68
  /**
63
69
  * The data of this source.
@@ -66,13 +72,15 @@ declare class BaseEffectSource<
66
72
 
67
73
  /**
68
74
  * The geometric shape of the effect source which is generated later.
75
+ * @remarks This only isn't `undefined` in subclasses implementing `_createShapes()`, usually via {@link foundry.canvas.sources.PointEffectSourceMixin | `PointEffectSourceMixin`}
69
76
  */
70
- shape: SourceShape;
77
+ shape: SourceShape | undefined;
71
78
 
72
79
  /**
73
80
  * A collection of boolean flags which control rendering and refresh behavior for the source.
81
+ * @defaultValue `{}`
74
82
  */
75
- protected _flags: Record<string, boolean | number>;
83
+ protected _flags: BaseEffectSource.Flags;
76
84
 
77
85
  /**
78
86
  * The x-coordinate of the point source origin.
@@ -119,6 +127,7 @@ declare class BaseEffectSource<
119
127
  /**
120
128
  * Records of suppression strings with a boolean value.
121
129
  * If any of this record is true, the source is suppressed.
130
+ * @defaultValue `{}`
122
131
  */
123
132
  suppression: Record<string, boolean>;
124
133
 
@@ -128,35 +137,34 @@ declare class BaseEffectSource<
128
137
  * @param options - Additional options which modify source initialization
129
138
  * @returns The initialized source
130
139
  */
131
- initialize(
132
- data?: InexactPartial<SourceData>,
133
- options?: InexactPartial<{
134
- // The type def references a behaviors object that is not even passed into the function
135
- /**
136
- * Should source data be reset to default values before applying changes?
137
- * @defaultValue `false`
138
- */
139
- reset?: boolean;
140
- }>,
141
- ): this;
140
+ // options: not null (destructured)
141
+ initialize(data?: NullishProps<SourceData> | null, options?: BaseEffectSource.InitializeOptions): this;
142
142
 
143
143
  /**
144
144
  * Subclass specific data initialization steps.
145
145
  * @param data - Provided data for configuration
146
+ * @remarks Not actually `abstract`, but a is a no-op in `BaseEffectSource`
146
147
  */
147
- _initialize(data: Partial<SourceData>): void;
148
+ protected _initialize(
149
+ /** @privateRemarks `IntentionalPartial` because `#initialize` has filtered invalid keys and replaced any nullish values before calling this */
150
+ data: IntentionalPartial<SourceData>,
151
+ ): void;
148
152
 
149
- /**
150
- * Create the polygon shape (or shapes) for this source using configured data.
151
- */
152
- protected _createShapes(): void;
153
+ /** Create the polygon shape (or shapes) for this source using configured data. */
154
+ protected abstract _createShapes(): void;
153
155
 
154
156
  /**
155
157
  * Subclass specific configuration steps. Occurs after data initialization and shape computation.
156
158
  * Only called if the source is attached and not disabled.
157
159
  * @param changes - Changes to the source data which were applied
160
+ * @remarks Not actually abstract, but is a no-op in `BaseEffectSource`
161
+ * @privateRemarks This is actually passed *flattened* partial data, and while we were very close to having
162
+ * that be a non-issue, `RenderedEffectSource`'s data's `animation` and `GlobalLightSource`'s `darkness`
163
+ * properties are objects, so this can't just be `IntentionalPartial<SourceData>` until we have a `Flatten<>`
164
+ * type.
158
165
  */
159
- protected _configure(changes: Partial<SourceData>): void;
166
+ // TODO: Flatten<IntentionalPartial<SourceData>>
167
+ protected _configure(changes: AnyObject): void;
160
168
 
161
169
  /**
162
170
  * Refresh the state and uniforms of the source.
@@ -199,7 +207,7 @@ declare class BaseEffectSource<
199
207
  * @deprecated since v12, will be removed in v14
200
208
  * @remarks `"BaseEffectSource#_createShape is deprecated in favor of BaseEffectSource#_createShapes."`
201
209
  */
202
- _createShape(): void;
210
+ protected _createShape(): void;
203
211
 
204
212
  /**
205
213
  * @deprecated since v12, will be removed in v14
@@ -209,42 +217,78 @@ declare class BaseEffectSource<
209
217
  }
210
218
 
211
219
  declare namespace BaseEffectSource {
212
- type AnyConstructor = typeof AnyBaseEffectSource;
220
+ interface Any extends AnyBaseEffectSource {}
221
+ interface AnyConstructor extends Identity<typeof AnyBaseEffectSource> {}
213
222
 
214
- interface BaseEffectSourceOptions {
223
+ /** @internal */
224
+ type _ConstructorOptions = NullishProps<{
215
225
  /**
216
226
  * An optional PlaceableObject which is responsible for this source
227
+ * @remarks Only the global light source is passed the ECG
217
228
  */
218
- object?: PlaceableObject | undefined;
229
+ object: PlaceableObject.Any | EffectsCanvasGroup.Any;
230
+ }>;
231
+
232
+ interface ConstructorOptions extends _ConstructorOptions {
219
233
  /**
220
234
  * A unique ID for this source. This will be set automatically if an
221
235
  * object is provided, otherwise is required.
236
+ * @remarks The above is misleading; sourceId will only be inferred if you pass a `PlaceableObject`
237
+ * _instead_ of an options object to the constructor (which is a deprecated path removed in v13),
238
+ * _not_ if you pass in `{ object: PlaceableObject }`, where you're expected to also pass `sourceId`
239
+ * yourself.
222
240
  */
223
- sourceId?: string | undefined;
241
+ sourceId?: string;
224
242
  }
225
243
 
226
- interface BaseEffectSourceData {
244
+ interface SourceData {
227
245
  /**
228
246
  * The x-coordinate of the source location
247
+ * @defaultValue `0`
229
248
  */
230
249
  x: number;
250
+
231
251
  /**
232
252
  * The y-coordinate of the source location
253
+ * @defaultValue `0`
233
254
  */
234
255
  y: number;
256
+
235
257
  /**
236
258
  * The elevation of the point source
259
+ * @defaultValue `0`
237
260
  */
238
261
  elevation: number;
262
+
239
263
  /**
240
264
  * Whether or not the source is disabled
265
+ * @defaultValue `false`
241
266
  */
242
267
  disabled: boolean;
243
268
  }
269
+
270
+ /** @internal */
271
+ type _InitializeOptions = NullishProps<{
272
+ /**
273
+ * Should source data be reset to default values before applying changes?
274
+ * @defaultValue `false`
275
+ */
276
+ reset: boolean;
277
+ }>;
278
+
279
+ /** @privateRemarks Foundry describes an `options.behaviors` key, but it is neither checked for nor used at runtime */
280
+ interface InitializeOptions extends _InitializeOptions {}
281
+
282
+ /** @privateRemarks The `| number` is from Foundry's typing, but core only uses boolean flags in v12.331 */
283
+ interface Flags extends Record<string, boolean | number | undefined> {
284
+ renderSoftEdges?: boolean;
285
+ initializedMeshes?: boolean;
286
+ hasColor?: boolean;
287
+ }
244
288
  }
245
289
 
246
- declare abstract class AnyBaseEffectSource extends BaseEffectSource<any, any> {
247
- constructor(arg0: never, ...args: never[]);
290
+ declare abstract class AnyBaseEffectSource extends BaseEffectSource<BaseEffectSource.SourceData, PIXI.Polygon> {
291
+ constructor(...args: never);
248
292
  }
249
293
 
250
294
  export default BaseEffectSource;
@@ -1,13 +1,13 @@
1
- import type { InexactPartial } from "../../../../types/utils.d.mts";
1
+ import type { Identity, IntentionalPartial, NullishProps } from "#utils";
2
2
  import type RenderedEffectSource from "./rendered-effect-source.d.mts";
3
3
 
4
4
  /**
5
5
  * A specialized subclass of BaseEffectSource which deals with the rendering of light or darkness.
6
6
  */
7
- declare class BaseLightSource<
8
- SourceData extends BaseLightSource.LightSourceData = BaseLightSource.LightSourceData,
7
+ declare abstract class BaseLightSource<
8
+ SourceData extends BaseLightSource.SourceData = BaseLightSource.SourceData,
9
9
  SourceShape extends PIXI.Polygon = PIXI.Polygon,
10
- RenderingLayers extends Record<string, RenderedEffectSource.RenderedEffectSourceLayer> = RenderedEffectSource.Layers,
10
+ RenderingLayers extends Record<string, RenderedEffectSource.SourceLayer> = RenderedEffectSource.Layers,
11
11
  > extends RenderedEffectSource<SourceData, SourceShape, RenderingLayers> {
12
12
  /** @defaultValue `"light"` */
13
13
  static override sourceType: string;
@@ -20,140 +20,204 @@ declare class BaseLightSource<
20
20
 
21
21
  /**
22
22
  * The corresponding lighting levels for dim light.
23
+ * @defaultValue `foundry.CONST.LIGHTING_LEVELS.DIM`
23
24
  */
24
25
  protected static _dimLightingLevel: foundry.CONST.LIGHTING_LEVELS;
25
26
 
26
27
  /**
27
28
  * The corresponding lighting levels for bright light.
29
+ * @defaultValue `foundry.CONST.LIGHTING_LEVELS.BRIGHT`
28
30
  */
29
31
  protected static _brightLightingLevel: foundry.CONST.LIGHTING_LEVELS;
30
32
 
31
33
  /**
32
34
  * The corresponding animation config.
35
+ * @privateRemarks Only uses {@link CONFIG.Canvas.lightAnimations | `CONFIG.Canvas.lightAnimations`} in
36
+ * {@link foundry.canvas.sources.BaseLightSource | `foundry.canvas.sources.BaseLightSource`}, but
37
+ * {@link foundry.canvas.sources.PointDarknessSource | `foundry.canvas.sources.PointDarknessSource`}
38
+ * overrides to use `.darknessAnimations`, so the union type is necessary
33
39
  */
34
- protected static get ANIMATIONS(): CONFIG.Canvas.LightSourceAnimationConfig;
40
+ protected static get ANIMATIONS(): typeof CONFIG.Canvas.lightAnimations | typeof CONFIG.Canvas.darknessAnimations;
35
41
 
36
42
  /**
37
43
  * @defaultValue
38
44
  * ```js
39
45
  * {
40
- * ...super.defaultData,
41
- * priority: 0,
42
- * alpha: 0.5,
43
- * bright: 0,
44
- * coloration: 1,
45
- * contrast: 0,
46
- * dim: 0,
47
- * attenuation: 0.5,
48
- * luminosity: 0.5,
49
- * saturation: 0,
50
- * shadows: 0,
51
- * vision: false
46
+ * ...super.defaultData,
47
+ * priority: 0,
48
+ * alpha: 0.5,
49
+ * bright: 0,
50
+ * coloration: 1,
51
+ * contrast: 0,
52
+ * dim: 0,
53
+ * attenuation: 0.5,
54
+ * luminosity: 0.5,
55
+ * saturation: 0,
56
+ * shadows: 0,
57
+ * vision: false
52
58
  * }
53
59
  * ```
54
60
  */
55
- static override defaultData: RenderedEffectSource.RenderedEffectSourceData;
61
+ static override defaultData: BaseLightSource.SourceData;
56
62
 
57
63
  /**
58
64
  * A ratio of dim:bright as part of the source radius
59
65
  */
60
66
  ratio: number;
61
67
 
62
- override _initialize(data: Partial<SourceData>): void;
68
+ protected override _initialize(data: IntentionalPartial<SourceData>): void;
63
69
 
64
- override _updateColorationUniforms(): void;
70
+ protected override _updateColorationUniforms(): void;
65
71
 
66
- override _updateIlluminationUniforms(): void;
72
+ protected override _updateIlluminationUniforms(): void;
67
73
 
68
- override _updateBackgroundUniforms(): void;
74
+ protected override _updateBackgroundUniforms(): void;
69
75
 
70
- override _updateCommonUniforms(shader: AbstractBaseShader): void;
76
+ protected override _updateCommonUniforms(shader: AbstractBaseShader): void;
77
+
78
+ /** @remarks Doesn't exist prior to initialization. Ultimately set in `_updateCommonUniforms` */
79
+ cachedAttenuation?: number;
80
+
81
+ /** @remarks Doesn't exist prior to initialization. Ultimately set in `_updateCommonUniforms` */
82
+ computedAttenuation?: number;
71
83
 
72
84
  /**
73
85
  * An animation with flickering ratio and light intensity.
74
86
  * @param dt - Delta time
75
87
  * @param options - Additional options which modify the torch animation
76
88
  */
77
- animateTorch(dt: number, options?: InexactPartial<RenderedEffectSource.AnimationOptions>): void;
89
+ // not null (destructured)
90
+ animateTorch(dt: number, options?: RenderedEffectSource.AnimationFunctionOptions): void;
78
91
 
79
92
  /**
80
93
  * An animation with flickering ratio and light intensity
81
94
  * @param dt - Delta time
82
95
  * @param options - Additional options which modify the flame animation
83
96
  */
84
- animateFlickering(
85
- dt: number,
86
- options?: InexactPartial<
87
- RenderedEffectSource.AnimationOptions & {
88
- /**
89
- * Noise amplification (\>1) or dampening (\<1)
90
- * @defaultValue `1`
91
- */
92
- amplification: number;
93
- }
94
- >,
95
- ): void;
97
+ // not null (destructured)
98
+ animateFlickering(dt: number, options?: BaseLightSource.AnimateFlickeringOptions): void;
99
+
100
+ /**
101
+ * @remarks This property will be generated on any class that is `#animateFlickering`'s `this` when it is called.
102
+ * In Foundry practice this will always be a `BaseLightSource` subclass, so it's defined here. Foundry does not
103
+ * document it.
104
+ */
105
+ _noise?: SmoothNoise;
96
106
 
97
107
  /**
98
108
  * A basic "pulse" animation which expands and contracts.
99
109
  * @param dt - Delta time
100
110
  * @param options - Additional options which modify the pulse animation
101
111
  */
102
- animatePulse(dt: number, options?: InexactPartial<RenderedEffectSource.AnimationOptions>): void;
112
+ // not null (destructured)
113
+ animatePulse(dt: number, options?: RenderedEffectSource.AnimationFunctionOptions): void;
103
114
 
104
115
  /**
105
- * @deprecated since v12
116
+ * @deprecated since v12, until v14
117
+ * @remarks "BaseLightSource#isDarkness is now obsolete. Use DarknessSource instead."
118
+ *
119
+ * Always returns `false`
106
120
  */
107
121
  get isDarkness(): boolean;
108
122
  }
109
123
 
110
124
  declare namespace BaseLightSource {
111
- interface LightSourceData extends RenderedEffectSource.RenderedEffectSourceData {
125
+ interface Any extends AnyBaseLightSource {}
126
+ interface AnyConstructor extends Identity<typeof AnyBaseLightSource> {}
127
+
128
+ type LightAnimationFunction = (
129
+ this: BaseLightSource,
130
+ dt: number,
131
+ options?: RenderedEffectSource.AnimationFunctionOptions,
132
+ ) => void;
133
+
134
+ interface SourceData extends RenderedEffectSource.SourceData {
112
135
  /**
113
136
  * An opacity for the emitted light, if any
137
+ * @defaultValue `0.5`
114
138
  */
115
139
  alpha: number;
140
+
116
141
  /**
117
142
  * The allowed radius of bright vision or illumination
143
+ * @defaultValue `0`
118
144
  */
119
145
  bright: number;
146
+
120
147
  /**
121
148
  * The coloration technique applied in the shader
149
+ * @defaultValue `1`
122
150
  */
123
151
  coloration: number;
152
+
124
153
  /**
125
154
  * The amount of contrast this light applies to the background texture
155
+ * @defaultValue `0`
126
156
  */
127
157
  contrast: number;
158
+
128
159
  /**
129
160
  * The allowed radius of dim vision or illumination
161
+ * @defaultValue `0`
130
162
  */
131
163
  dim: number;
164
+
132
165
  /**
133
166
  * Strength of the attenuation between bright, dim, and dark
167
+ * @defaultValue `0.5`
134
168
  */
135
169
  attenuation: number;
170
+
136
171
  /**
137
172
  * The luminosity applied in the shader
173
+ * @defaultValue `0.5`
138
174
  */
139
175
  luminosity: number;
176
+
140
177
  /**
141
178
  * The amount of color saturation this light applies to the background texture
179
+ * @defaultValue `0`
142
180
  */
143
181
  saturation: number;
182
+
144
183
  /**
145
184
  * The depth of shadows this light applies to the background texture
185
+ * @defaultValue `0`
146
186
  */
147
187
  shadows: number;
188
+
148
189
  /**
149
190
  * Whether or not this source provides a source of vision
191
+ * @defaultValue `false`
150
192
  */
151
193
  vision: boolean;
194
+
152
195
  /**
153
196
  * Strength of this source to beat or not negative/positive sources
197
+ * @defaultValue `0`
154
198
  */
155
199
  priority: number;
156
200
  }
201
+
202
+ /** @internal */
203
+ type _AnimateFlickeringOptions = NullishProps<{
204
+ /**
205
+ * Noise amplification (\>1) or dampening (\<1)
206
+ * @defaultValue `1`
207
+ * @remarks Parameter default only, `null` is only cast to `0`
208
+ */
209
+ amplification: number;
210
+ }>;
211
+
212
+ interface AnimateFlickeringOptions extends RenderedEffectSource.AnimationFunctionOptions, _AnimateFlickeringOptions {}
213
+ }
214
+
215
+ declare abstract class AnyBaseLightSource extends BaseLightSource<
216
+ BaseLightSource.SourceData,
217
+ PIXI.Polygon,
218
+ RenderedEffectSource.Layers
219
+ > {
220
+ constructor(...args: never);
157
221
  }
158
222
 
159
223
  export default BaseLightSource;
@@ -1,9 +1,15 @@
1
+ import type { FixedInstanceType, Identity } from "#utils";
1
2
  import type BaseLightSource from "./base-light-source.d.mts";
3
+ import type RenderedEffectSource from "./rendered-effect-source.d.mts";
2
4
 
3
5
  /**
4
6
  * A specialized subclass of the BaseLightSource which is used to render global light source linked to the scene.
5
7
  */
6
- export default class GlobalLightSource extends BaseLightSource {
8
+ declare class GlobalLightSource<
9
+ SourceData extends GlobalLightSource.SourceData = GlobalLightSource.SourceData,
10
+ SourceShape extends PIXI.Polygon = PIXI.Polygon,
11
+ RenderingLayers extends Record<string, RenderedEffectSource.SourceLayer> = RenderedEffectSource.Layers,
12
+ > extends BaseLightSource<SourceData, SourceShape, RenderingLayers> {
7
13
  /** @defaultValue `"GlobalLight"` */
8
14
  static override sourceType: string;
9
15
 
@@ -14,34 +20,102 @@ export default class GlobalLightSource extends BaseLightSource {
14
20
  * @defaultValue
15
21
  * ```js
16
22
  * {
17
- * ...super.defaultData,
18
- * rotation: 0,
19
- * angle: 360,
20
- * attenuation: 0,
21
- * priority: -Infinity,
22
- * vision: false,
23
- * walls: false,
24
- * elevation: Infinity,
25
- * darkness: {min: 0, max: 0}
23
+ * ...super.defaultData,
24
+ * rotation: 0,
25
+ * angle: 360,
26
+ * attenuation: 0,
27
+ * priority: -Infinity,
28
+ * vision: false,
29
+ * walls: false,
30
+ * elevation: Infinity,
31
+ * darkness: {min: 0, max: 0}
26
32
  * }
27
33
  * ```
28
34
  */
29
- static override defaultData: BaseLightSource.LightSourceData;
35
+ static override defaultData: GlobalLightSource.SourceData;
36
+
37
+ /** @privateRemarks This class implements `#_createShapes`, so it's shape property will 'never' be undefined (after initialization) */
38
+ shape: SourceShape;
30
39
 
31
40
  /**
32
41
  * Name of this global light source.
33
- * @defaultValue GlobalLightSource.sourceType
42
+ * @defaultValue `this.constructor.sourceType` (`"GlobalLight"`)
34
43
  */
35
44
  name: string;
36
45
 
37
46
  /**
38
47
  * A custom polygon placeholder.
48
+ * @defaultValue `null`
49
+ * @remarks This is not set anywhere in Foundry code, so will always be null barring system/module/user action
39
50
  */
40
51
  customPolygon: PIXI.Polygon | number[] | null;
41
52
 
42
- override _createShapes(): void;
53
+ protected override _createShapes(): void;
54
+
55
+ protected override _initializeSoftEdges(): void;
56
+
57
+ protected override _updateGeometry(): void;
58
+
59
+ protected override _updateCommonUniforms(shader: AbstractBaseShader): void;
60
+ }
61
+
62
+ declare namespace GlobalLightSource {
63
+ interface Any extends AnyGlobalLightSource {}
64
+ interface AnyConstructor extends Identity<typeof AnyGlobalLightSource> {}
65
+
66
+ /**
67
+ * @privateRemarks `attenuation`, `priority`, and `elevation` exist in the parent interface,
68
+ * but are here for defaultValue overrides
69
+ */
70
+ interface SourceData extends BaseLightSource.SourceData {
71
+ /** @privateRemarks Type override only, the global light is not going to use a `darknessShader` */
72
+ animation: RenderedEffectSource.StoredLightAnimationConfig;
73
+
74
+ /**
75
+ * @defaultValue `0`
76
+ * @remarks Seemingly unused here, since `GlobalLightSource` does not inherit from `PointEffectSourceMixin`
77
+ */
78
+ rotation: number;
43
79
 
44
- override _initializeSoftEdges(): void;
80
+ /**
81
+ * @defaultValue `360`
82
+ * @remarks Seemingly unused here, since `GlobalLightSource` does not inherit from `PointEffectSourceMixin`
83
+ */
84
+ angle: number;
45
85
 
46
- override _updateGeometry(): void;
86
+ /** @defaultValue `0` */
87
+ attenuation: number;
88
+
89
+ /** @defaultValue `-Infinity` */
90
+ priority: number;
91
+
92
+ // `vision` override omitted as it doesn't change the default
93
+
94
+ /**
95
+ * @defaultValue `false`
96
+ * @remarks Seemingly unused here, since `GlobalLightSource` does not inherit from `PointEffectSourceMixin`
97
+ */
98
+ walls: boolean;
99
+
100
+ /** @defaultValue `Infinity` */
101
+ elevation: number;
102
+
103
+ /** @remarks Threshold values for what darkness level the global light should be enabled for */
104
+ darkness: {
105
+ /** @defaultValue `0` */
106
+ min: number;
107
+
108
+ /** @defaultValue `0` */
109
+ max: number;
110
+ };
111
+ }
112
+
113
+ type ConfiguredClass = CONFIG["Canvas"]["globalLightSourceClass"];
114
+ type ConfiguredInstance = FixedInstanceType<ConfiguredClass>;
47
115
  }
116
+
117
+ declare abstract class AnyGlobalLightSource extends GlobalLightSource {
118
+ constructor(...args: never);
119
+ }
120
+
121
+ export default GlobalLightSource;