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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (690) hide show
  1. package/README.md +13 -17
  2. package/package.json +85 -41
  3. package/src/configuration/configuration.d.mts +315 -0
  4. package/src/configuration/globals.d.mts +349 -0
  5. package/src/configuration/index.d.mts +4 -0
  6. package/src/foundry/client/apps/app.d.mts +10 -5
  7. package/src/foundry/client/apps/av/av-config.d.mts +2 -2
  8. package/src/foundry/client/apps/av/cameras.d.mts +7 -2
  9. package/src/foundry/client/apps/dice/dice-config.d.mts +45 -0
  10. package/src/foundry/client/apps/dice/index.d.mts +1 -0
  11. package/src/foundry/client/apps/form.d.mts +13 -4
  12. package/src/foundry/client/apps/forms/actor.d.mts +4 -4
  13. package/src/foundry/client/apps/forms/adventure-exporter.d.mts +1 -1
  14. package/src/foundry/client/apps/forms/adventure-importer.d.mts +1 -1
  15. package/src/foundry/client/apps/forms/base-sheet.d.mts +7 -6
  16. package/src/foundry/client/apps/forms/card-config.d.mts +8 -8
  17. package/src/foundry/client/apps/forms/cards-config.d.mts +5 -4
  18. package/src/foundry/client/apps/forms/combat-config.d.mts +1 -1
  19. package/src/foundry/client/apps/forms/combatant-config.d.mts +1 -1
  20. package/src/foundry/client/apps/forms/effect-config.d.mts +1 -1
  21. package/src/foundry/client/apps/forms/folder-config.d.mts +1 -1
  22. package/src/foundry/client/apps/forms/fonts.d.mts +1 -1
  23. package/src/foundry/client/apps/forms/grid-config.d.mts +2 -3
  24. package/src/foundry/client/apps/forms/image-popout.d.mts +1 -1
  25. package/src/foundry/client/apps/forms/item.d.mts +8 -8
  26. package/src/foundry/client/apps/forms/journal-page-sheet.d.mts +1 -1
  27. package/src/foundry/client/apps/forms/journal-sheet.d.mts +4 -3
  28. package/src/foundry/client/apps/forms/macro-config.d.mts +2 -2
  29. package/src/foundry/client/apps/forms/measure-template.d.mts +8 -10
  30. package/src/foundry/client/apps/forms/ownership.d.mts +1 -1
  31. package/src/foundry/client/apps/forms/playlist-config.d.mts +1 -1
  32. package/src/foundry/client/apps/forms/playlist-sound-config.d.mts +1 -1
  33. package/src/foundry/client/apps/forms/roll-table-config.d.mts +5 -3
  34. package/src/foundry/client/apps/forms/scene-config.d.mts +5 -6
  35. package/src/foundry/client/apps/forms/sheet-config.d.mts +6 -18
  36. package/src/foundry/client/apps/forms/user-config.d.mts +6 -5
  37. package/src/foundry/client/apps/hud/chatbubble.d.mts +7 -0
  38. package/src/foundry/client/apps/hud/container.d.mts +1 -1
  39. package/src/foundry/client/apps/hud/controls.d.mts +6 -1
  40. package/src/foundry/client/apps/hud/hotbar.d.mts +9 -4
  41. package/src/foundry/client/apps/hud/hud.d.mts +1 -1
  42. package/src/foundry/client/apps/hud/menu.d.mts +8 -1
  43. package/src/foundry/client/apps/hud/navigation.d.mts +8 -3
  44. package/src/foundry/client/apps/hud/pause.d.mts +7 -2
  45. package/src/foundry/client/apps/hud/players.d.mts +8 -3
  46. package/src/foundry/client/apps/i18n.d.mts +2 -2
  47. package/src/foundry/client/apps/index.d.mts +1 -0
  48. package/src/foundry/client/apps/placeables/drawing-config.d.mts +1 -1
  49. package/src/foundry/client/apps/placeables/drawing-hud.d.mts +1 -1
  50. package/src/foundry/client/apps/placeables/light-config.d.mts +4 -4
  51. package/src/foundry/client/apps/placeables/note-config.d.mts +3 -3
  52. package/src/foundry/client/apps/placeables/sound-config.d.mts +4 -3
  53. package/src/foundry/client/apps/placeables/tile-config.d.mts +2 -2
  54. package/src/foundry/client/apps/placeables/tile-hud.d.mts +7 -2
  55. package/src/foundry/client/apps/placeables/token-config.d.mts +16 -4
  56. package/src/foundry/client/apps/placeables/token-hud.d.mts +7 -2
  57. package/src/foundry/client/apps/placeables/wall-config.d.mts +4 -3
  58. package/src/foundry/client/apps/sidebar/apps/client-settings.d.mts +1 -1
  59. package/src/foundry/client/apps/sidebar/apps/compendium.d.mts +6 -7
  60. package/src/foundry/client/apps/sidebar/apps/keybindings-config.d.mts +2 -1
  61. package/src/foundry/client/apps/sidebar/apps/module-management.d.mts +1 -1
  62. package/src/foundry/client/apps/sidebar/apps/permission-config.d.mts +1 -1
  63. package/src/foundry/client/apps/sidebar/apps/support-details.d.mts +1 -1
  64. package/src/foundry/client/apps/sidebar/apps/tours-management.d.mts +1 -1
  65. package/src/foundry/client/apps/sidebar/apps/world-config.d.mts +1 -1
  66. package/src/foundry/client/apps/sidebar/directory-tab-mixin.d.mts +12 -5
  67. package/src/foundry/client/apps/sidebar/document-directory.d.mts +12 -5
  68. package/src/foundry/client/apps/sidebar/package-configuration.d.mts +1 -1
  69. package/src/foundry/client/apps/sidebar/sidebar.d.mts +7 -2
  70. package/src/foundry/client/apps/sidebar/tabs/actors-directory.d.mts +10 -1
  71. package/src/foundry/client/apps/sidebar/tabs/cards-directory.d.mts +10 -1
  72. package/src/foundry/client/apps/sidebar/tabs/chat-log.d.mts +8 -1
  73. package/src/foundry/client/apps/sidebar/tabs/combat-tracker.d.mts +10 -1
  74. package/src/foundry/client/apps/sidebar/tabs/compendium-directory.d.mts +15 -9
  75. package/src/foundry/client/apps/sidebar/tabs/items-directory.d.mts +10 -1
  76. package/src/foundry/client/apps/sidebar/tabs/journal-directory.d.mts +10 -1
  77. package/src/foundry/client/apps/sidebar/tabs/macros-directory.d.mts +9 -0
  78. package/src/foundry/client/apps/sidebar/tabs/playlists-directory.d.mts +16 -8
  79. package/src/foundry/client/apps/sidebar/tabs/roll-table-directory.d.mts +10 -1
  80. package/src/foundry/client/apps/sidebar/tabs/scenes-directory.d.mts +11 -2
  81. package/src/foundry/client/apps/sidebar/tabs/settings.d.mts +19 -1
  82. package/src/foundry/client/av/client.d.mts +1 -1
  83. package/src/foundry/client/av/clients/simplepeer.d.mts +11 -1
  84. package/src/foundry/client/av/master.d.mts +2 -2
  85. package/src/foundry/client/av/settings.d.mts +1 -2
  86. package/src/foundry/client/config.d.mts +201 -196
  87. package/src/foundry/client/core/hooks.d.mts +2 -2
  88. package/src/foundry/client/core/image.d.mts +1 -2
  89. package/src/foundry/client/core/keybindings.d.mts +2 -2
  90. package/src/foundry/client/core/packages.d.mts +9 -2
  91. package/src/foundry/client/core/settings.d.mts +34 -31
  92. package/src/foundry/client/core/socket.d.mts +1 -1
  93. package/src/foundry/client/core/sorting.d.mts +1 -1
  94. package/src/foundry/client/core/tooltip.d.mts +1 -1
  95. package/src/foundry/client/core/tour.d.mts +1 -1
  96. package/src/foundry/client/core/utils.d.mts +33 -10
  97. package/src/foundry/client/core/video.d.mts +1 -1
  98. package/src/foundry/client/core/workers.d.mts +1 -1
  99. package/src/foundry/client/data/abstract/canvas-document.d.mts +25 -14
  100. package/src/foundry/client/data/abstract/client-document.d.mts +47 -38
  101. package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +18 -12
  102. package/src/foundry/client/data/abstract/document-collection.d.mts +8 -8
  103. package/src/foundry/client/data/abstract/world-collection.d.mts +2 -4
  104. package/src/foundry/client/data/collections/actors.d.mts +10 -1
  105. package/src/foundry/client/data/collections/cards.d.mts +9 -0
  106. package/src/foundry/client/data/collections/combats.d.mts +10 -1
  107. package/src/foundry/client/data/collections/compendium-collection.d.mts +3 -34
  108. package/src/foundry/client/data/collections/compendium-packs.d.mts +1 -1
  109. package/src/foundry/client/data/collections/fog.d.mts +9 -0
  110. package/src/foundry/client/data/collections/folder.d.mts +9 -0
  111. package/src/foundry/client/data/collections/items.d.mts +9 -0
  112. package/src/foundry/client/data/collections/journal.d.mts +10 -1
  113. package/src/foundry/client/data/collections/macros.d.mts +10 -1
  114. package/src/foundry/client/data/collections/messages.d.mts +9 -0
  115. package/src/foundry/client/data/collections/playlists.d.mts +10 -1
  116. package/src/foundry/client/data/collections/scenes.d.mts +10 -1
  117. package/src/foundry/client/data/collections/settings.d.mts +9 -0
  118. package/src/foundry/client/data/collections/tables.d.mts +10 -1
  119. package/src/foundry/client/data/collections/users.d.mts +10 -1
  120. package/src/foundry/client/data/documents/active-effect.d.mts +43 -14
  121. package/src/foundry/client/data/documents/actor-delta.d.mts +4 -4
  122. package/src/foundry/client/data/documents/actor.d.mts +4 -10
  123. package/src/foundry/client/data/documents/adventure.d.mts +9 -8
  124. package/src/foundry/client/data/documents/ambient-light.d.mts +3 -2
  125. package/src/foundry/client/data/documents/ambient-sound.d.mts +3 -2
  126. package/src/foundry/client/data/documents/card.d.mts +4 -3
  127. package/src/foundry/client/data/documents/cards.d.mts +12 -19
  128. package/src/foundry/client/data/documents/chat-message.d.mts +4 -3
  129. package/src/foundry/client/data/documents/combat.d.mts +5 -4
  130. package/src/foundry/client/data/documents/combatant.d.mts +5 -4
  131. package/src/foundry/client/data/documents/drawing.d.mts +3 -2
  132. package/src/foundry/client/data/documents/fog-exploration.d.mts +13 -3
  133. package/src/foundry/client/data/documents/folder.d.mts +21 -8
  134. package/src/foundry/client/data/documents/index.d.mts +2 -0
  135. package/src/foundry/client/data/documents/item.d.mts +6 -2
  136. package/src/foundry/client/data/documents/journal-entry-page.d.mts +5 -4
  137. package/src/foundry/client/data/documents/journal-entry.d.mts +5 -4
  138. package/src/foundry/client/data/documents/macro.d.mts +5 -6
  139. package/src/foundry/client/data/documents/measured-template.d.mts +3 -2
  140. package/src/foundry/client/data/documents/note.d.mts +3 -2
  141. package/src/foundry/client/data/documents/playlist-sound.d.mts +4 -3
  142. package/src/foundry/client/data/documents/playlist.d.mts +13 -13
  143. package/src/foundry/client/data/documents/region-behavior.d.mts +78 -0
  144. package/src/foundry/client/data/documents/region.d.mts +160 -0
  145. package/src/foundry/client/data/documents/scene.d.mts +4 -3
  146. package/src/foundry/client/data/documents/setting.d.mts +3 -2
  147. package/src/foundry/client/data/documents/table-result.d.mts +3 -2
  148. package/src/foundry/client/data/documents/table.d.mts +5 -4
  149. package/src/foundry/client/data/documents/tile.d.mts +3 -2
  150. package/src/foundry/client/data/documents/token.d.mts +6 -11
  151. package/src/foundry/client/data/documents/user.d.mts +4 -3
  152. package/src/foundry/client/data/documents/wall.d.mts +3 -2
  153. package/src/foundry/client/game.d.mts +24 -22
  154. package/src/foundry/client/head.d.mts +12 -7
  155. package/src/foundry/client/hooks.d.mts +59 -40
  156. package/src/foundry/client/pixi/board.d.mts +12 -6
  157. package/src/foundry/client/pixi/core/containers/base-canvas-group.d.mts +95 -24
  158. package/src/foundry/client/pixi/core/containers/cached-container.d.mts +36 -18
  159. package/src/foundry/client/pixi/core/containers/full-canvas-container.d.mts +7 -10
  160. package/src/foundry/client/pixi/core/containers/point-source-mesh.d.mts +24 -14
  161. package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +15 -5
  162. package/src/foundry/client/pixi/core/containers/quadtree.d.mts +107 -50
  163. package/src/foundry/client/pixi/core/containers/sprite-mesh.d.mts +66 -23
  164. package/src/foundry/client/pixi/core/containers/unbound-container.d.mts +20 -2
  165. package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +158 -99
  166. package/src/foundry/client/pixi/core/interaction/control-icon.d.mts +61 -22
  167. package/src/foundry/client/pixi/core/interaction/mouse-handler.d.mts +119 -52
  168. package/src/foundry/client/pixi/core/interaction/ping.d.mts +51 -28
  169. package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +16 -8
  170. package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +84 -33
  171. package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +16 -6
  172. package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +35 -5
  173. package/src/foundry/client/pixi/core/interaction/targets.d.mts +19 -16
  174. package/src/foundry/client/pixi/core/loader.d.mts +85 -75
  175. package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +36 -16
  176. package/src/foundry/client/pixi/core/shapes/polygon-mesher.d.mts +92 -64
  177. package/src/foundry/client/pixi/core/shapes/precise-text.d.mts +28 -10
  178. package/src/foundry/client/pixi/core/shapes/ray.d.mts +27 -9
  179. package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +162 -72
  180. package/src/foundry/client/pixi/extensions/circle.d.mts +128 -125
  181. package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
  182. package/src/foundry/client/pixi/extensions/observable-transform.d.mts +3 -2
  183. package/src/foundry/client/pixi/extensions/polygon.d.mts +154 -134
  184. package/src/foundry/client/pixi/extensions/rectangle.d.mts +242 -259
  185. package/src/foundry/client/pixi/groups/effects.d.mts +75 -24
  186. package/src/foundry/client/pixi/groups/environment.d.mts +68 -19
  187. package/src/foundry/client/pixi/groups/hidden.d.mts +27 -11
  188. package/src/foundry/client/pixi/groups/interface.d.mts +62 -38
  189. package/src/foundry/client/pixi/groups/overlay.d.mts +18 -6
  190. package/src/foundry/client/pixi/groups/primary.d.mts +64 -42
  191. package/src/foundry/client/pixi/groups/rendered.d.mts +18 -6
  192. package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +9 -13
  193. package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +18 -17
  194. package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +86 -98
  195. package/src/foundry/client/pixi/layers/controls/cursor.d.mts +1 -1
  196. package/src/foundry/client/pixi/layers/controls/door.d.mts +9 -0
  197. package/src/foundry/client/pixi/layers/controls/layer.d.mts +10 -8
  198. package/src/foundry/client/pixi/layers/controls/ruler.d.mts +1 -1
  199. package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +6 -8
  200. package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +4 -7
  201. package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +3 -6
  202. package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +4 -7
  203. package/src/foundry/client/pixi/layers/effects/visibility.d.mts +11 -8
  204. package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +1 -1
  205. package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +5 -8
  206. package/src/foundry/client/pixi/layers/grid/highlight.d.mts +1 -1
  207. package/src/foundry/client/pixi/layers/grid/layer.d.mts +6 -8
  208. package/src/foundry/client/pixi/layers/grid/mesh.d.mts +1 -1
  209. package/src/foundry/client/pixi/layers/masks/depth.d.mts +11 -6
  210. package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +18 -11
  211. package/src/foundry/client/pixi/layers/masks/vision.d.mts +100 -14
  212. package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +3 -6
  213. package/src/foundry/client/pixi/layers/placeables/index.d.mts +1 -0
  214. package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +4 -7
  215. package/src/foundry/client/pixi/layers/placeables/notes.d.mts +4 -6
  216. package/src/foundry/client/pixi/layers/placeables/regions.d.mts +100 -0
  217. package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +4 -8
  218. package/src/foundry/client/pixi/layers/placeables/templates.d.mts +3 -6
  219. package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +3 -5
  220. package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +6 -10
  221. package/src/foundry/client/pixi/layers/placeables/walls.d.mts +9 -11
  222. package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +53 -24
  223. package/src/foundry/client/pixi/perception/detection-mode.d.mts +4 -2
  224. package/src/foundry/client/pixi/perception/fog.d.mts +9 -0
  225. package/src/foundry/client/pixi/perception/vision-mode.d.mts +7 -4
  226. package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +42 -14
  227. package/src/foundry/client/pixi/placeable.d.mts +15 -7
  228. package/src/foundry/client/pixi/placeables/drawing.d.mts +10 -9
  229. package/src/foundry/client/pixi/placeables/index.d.mts +1 -0
  230. package/src/foundry/client/pixi/placeables/light.d.mts +8 -6
  231. package/src/foundry/client/pixi/placeables/note.d.mts +8 -7
  232. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +29 -8
  233. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-graphics.d.mts +41 -11
  234. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.d.mts +59 -18
  235. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.mts +120 -37
  236. package/src/foundry/client/pixi/placeables/region.d.mts +177 -0
  237. package/src/foundry/client/pixi/placeables/sound.d.mts +7 -6
  238. package/src/foundry/client/pixi/placeables/template.d.mts +10 -10
  239. package/src/foundry/client/pixi/placeables/tile.d.mts +12 -10
  240. package/src/foundry/client/pixi/placeables/token.d.mts +147 -18
  241. package/src/foundry/client/pixi/placeables/wall.d.mts +11 -9
  242. package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +50 -33
  243. package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +9 -8
  244. package/src/foundry/client/pixi/webgl/helpers/{framebugger-snapshot.d.mts → framebuffer-snapshot.d.mts} +9 -8
  245. package/src/foundry/client/pixi/webgl/helpers/index.d.mts +1 -1
  246. package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +30 -23
  247. package/src/foundry/client/pixi/webgl/helpers/texture-extractor.d.mts +82 -53
  248. package/src/foundry/client/pixi/webgl/shaders/base-shader-mixin.d.mts +10 -10
  249. package/src/foundry/client/pixi/webgl/shaders/base-shader.d.mts +45 -28
  250. package/src/foundry/client/pixi/webgl/shaders/filters/base-filter.d.mts +11 -10
  251. package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +11 -9
  252. package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +21 -19
  253. package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +33 -32
  254. package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +9 -8
  255. package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +11 -10
  256. package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +9 -8
  257. package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +11 -10
  258. package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +65 -58
  259. package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +20 -16
  260. package/src/foundry/client/pixi/webgl/shaders/filters/vision-mask-filter.d.mts +13 -10
  261. package/src/foundry/client/pixi/webgl/shaders/filters/void.d.mts +9 -8
  262. package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +9 -8
  263. package/src/foundry/client/pixi/webgl/shaders/fragment-channel-mixin.d.mts +20 -14
  264. package/src/foundry/client/pixi/webgl/shaders/grid/grid.d.mts +11 -10
  265. package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +9 -8
  266. package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +32 -32
  267. package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +9 -8
  268. package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +9 -8
  269. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +18 -16
  270. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +9 -8
  271. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +9 -8
  272. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +9 -8
  273. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +9 -8
  274. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +18 -16
  275. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +18 -16
  276. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +9 -8
  277. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +9 -7
  278. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +18 -16
  279. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +9 -8
  280. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +9 -8
  281. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +9 -8
  282. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +18 -16
  283. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +9 -8
  284. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +9 -8
  285. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +9 -8
  286. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +18 -16
  287. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +19 -17
  288. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +9 -8
  289. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +18 -16
  290. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +9 -9
  291. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +18 -16
  292. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +18 -16
  293. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +18 -16
  294. package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +9 -8
  295. package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +70 -28
  296. package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +52 -8
  297. package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +68 -8
  298. package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +23 -24
  299. package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +9 -8
  300. package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +37 -28
  301. package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +20 -16
  302. package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +9 -8
  303. package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +19 -17
  304. package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +9 -0
  305. package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +29 -1
  306. package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +9 -8
  307. package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +10 -8
  308. package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +9 -8
  309. package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +9 -8
  310. package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +18 -16
  311. package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +9 -8
  312. package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +37 -32
  313. package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +15 -14
  314. package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +16 -15
  315. package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +18 -17
  316. package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +14 -13
  317. package/src/foundry/client/pixi/workers/texture-worker.d.mts +33 -53
  318. package/src/foundry/client/ui/dialog.d.mts +136 -125
  319. package/src/foundry/client/ui/drag.d.mts +1 -1
  320. package/src/foundry/client/ui/dragdrop.d.mts +1 -1
  321. package/src/foundry/client/ui/editor.d.mts +3 -3
  322. package/src/foundry/client/ui/filepicker.d.mts +1 -1
  323. package/src/foundry/client/ui/filter.d.mts +2 -2
  324. package/src/foundry/client/ui/index.d.mts +0 -2
  325. package/src/foundry/client-esm/_module.d.mts +112 -0
  326. package/src/foundry/client-esm/_types.d.mts +8 -0
  327. package/src/foundry/client-esm/applications/_module.d.mts +10 -5
  328. package/src/foundry/client-esm/applications/_types.d.mts +2 -2
  329. package/src/foundry/client-esm/applications/api/_module.d.mts +6 -5
  330. package/src/foundry/client-esm/applications/api/application.d.mts +207 -36
  331. package/src/foundry/client-esm/applications/api/category-browser.d.mts +40 -0
  332. package/src/foundry/client-esm/applications/api/dialog.d.mts +152 -74
  333. package/src/foundry/client-esm/applications/api/document-sheet.d.mts +21 -8
  334. package/src/foundry/client-esm/applications/api/handlebars-application.d.mts +161 -131
  335. package/src/foundry/client-esm/applications/apps/_module.d.mts +9 -2
  336. package/src/foundry/client-esm/applications/apps/av/_module.d.mts +7 -0
  337. package/src/foundry/client-esm/applications/apps/av/camera-popout.d.mts +23 -0
  338. package/src/foundry/client-esm/applications/apps/av/cameras.d.mts +95 -0
  339. package/src/foundry/client-esm/applications/apps/combat-tracker-config.d.mts +21 -0
  340. package/src/foundry/client-esm/applications/apps/compendium-art-config.d.mts +6 -5
  341. package/src/foundry/client-esm/applications/apps/document-ownership.d.mts +21 -0
  342. package/src/foundry/client-esm/applications/apps/document-sheet-config.d.mts +24 -0
  343. package/src/foundry/client-esm/applications/apps/file-picker.d.mts +410 -0
  344. package/src/foundry/client-esm/applications/apps/grid-config.d.mts +25 -0
  345. package/src/foundry/client-esm/applications/apps/image-popout.d.mts +56 -0
  346. package/src/foundry/client-esm/applications/apps/permission-config.d.mts +4 -4
  347. package/src/foundry/client-esm/applications/dice/_module.d.mts +2 -2
  348. package/src/foundry/client-esm/applications/dice/roll-resolver.d.mts +14 -2
  349. package/src/foundry/client-esm/applications/elements/_module.d.mts +5 -2
  350. package/src/foundry/client-esm/applications/elements/codemirror/element.d.mts +16 -0
  351. package/src/foundry/client-esm/applications/elements/codemirror/extensions.d.mts +20 -0
  352. package/src/foundry/client-esm/applications/elements/codemirror/view.d.mts +8 -0
  353. package/src/foundry/client-esm/applications/elements/document-embed.d.mts +14 -0
  354. package/src/foundry/client-esm/applications/elements/document-tags.d.mts +2 -0
  355. package/src/foundry/client-esm/applications/elements/enriched-content.d.mts +29 -0
  356. package/src/foundry/client-esm/applications/elements/multi-select.d.mts +15 -5
  357. package/src/foundry/client-esm/applications/elements/prosemirror-editor.d.mts +1 -1
  358. package/src/foundry/client-esm/applications/elements/secret-block.d.mts +7 -0
  359. package/src/foundry/client-esm/applications/elements/string-tags.d.mts +1 -1
  360. package/src/foundry/client-esm/applications/forms/fields.d.mts +1 -1
  361. package/src/foundry/client-esm/applications/handlebars.d.mts +3 -0
  362. package/src/foundry/client-esm/applications/hud/_module.d.mts +10 -0
  363. package/src/foundry/client-esm/applications/hud/container.d.mts +15 -0
  364. package/src/foundry/client-esm/applications/hud/drawing-hud.d.mts +19 -0
  365. package/src/foundry/client-esm/applications/hud/placeable-hud.d.mts +41 -0
  366. package/src/foundry/client-esm/applications/hud/tile-hud.d.mts +19 -0
  367. package/src/foundry/client-esm/applications/hud/token-hud.d.mts +20 -0
  368. package/src/foundry/client-esm/applications/quickstart.d.mts +20 -0
  369. package/src/foundry/client-esm/applications/settings/_module.d.mts +7 -0
  370. package/src/foundry/client-esm/applications/settings/config.d.mts +21 -0
  371. package/src/foundry/client-esm/applications/settings/dependency-resolution.d.mts +19 -0
  372. package/src/foundry/client-esm/applications/settings/menus/_module.d.mts +11 -0
  373. package/src/foundry/client-esm/applications/settings/menus/av-config.d.mts +27 -0
  374. package/src/foundry/client-esm/applications/settings/menus/default-sheets-config.d.mts +19 -0
  375. package/src/foundry/client-esm/applications/settings/menus/dice-config.d.mts +18 -0
  376. package/src/foundry/client-esm/applications/settings/menus/font-config.d.mts +43 -0
  377. package/src/foundry/client-esm/applications/settings/menus/prototype-overrides.d.mts +21 -0
  378. package/src/foundry/client-esm/applications/settings/menus/ui-config.d.mts +26 -0
  379. package/src/foundry/client-esm/applications/sheets/_module.d.mts +30 -5
  380. package/src/foundry/client-esm/applications/sheets/active-effect-config.d.mts +25 -0
  381. package/src/foundry/client-esm/applications/sheets/actor-sheet.d.mts +1 -1
  382. package/src/foundry/client-esm/applications/sheets/adventure-exporter.d.mts +25 -0
  383. package/src/foundry/client-esm/applications/sheets/adventure-importer.d.mts +25 -0
  384. package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +3 -3
  385. package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +3 -3
  386. package/src/foundry/client-esm/applications/sheets/base-sheet.d.mts +23 -0
  387. package/src/foundry/client-esm/applications/sheets/card-config.d.mts +25 -0
  388. package/src/foundry/client-esm/applications/sheets/cards-config.d.mts +49 -0
  389. package/src/foundry/client-esm/applications/sheets/combatant-config.d.mts +25 -0
  390. package/src/foundry/client-esm/applications/sheets/drawing-config.d.mts +25 -0
  391. package/src/foundry/client-esm/applications/sheets/folder-config.d.mts +25 -0
  392. package/src/foundry/client-esm/applications/sheets/item-sheet.d.mts +1 -1
  393. package/src/foundry/client-esm/applications/sheets/journal/_module.d.mts +16 -0
  394. package/src/foundry/client-esm/applications/sheets/journal/dialog-show.d.mts +19 -0
  395. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-category-config.d.mts +25 -0
  396. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-hbs-sheet.d.mts +19 -0
  397. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-image-sheet.d.mts +18 -0
  398. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-markdown-sheet.d.mts +18 -0
  399. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-pdf-sheet.d.mts +18 -0
  400. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-prose-mirror-sheet.d.mts +18 -0
  401. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-sheet.d.mts +28 -0
  402. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-text-sheet.d.mts +18 -0
  403. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-video-sheet.d.mts +18 -0
  404. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-sheet.d.mts +35 -0
  405. package/src/foundry/client-esm/applications/sheets/macro-config.d.mts +25 -0
  406. package/src/foundry/client-esm/applications/sheets/note-config.d.mts +25 -0
  407. package/src/foundry/client-esm/applications/sheets/playlist-config.d.mts +25 -0
  408. package/src/foundry/client-esm/applications/sheets/playlist-sound-config.d.mts +25 -0
  409. package/src/foundry/client-esm/applications/sheets/region-behavior-config.d.mts +29 -5
  410. package/src/foundry/client-esm/applications/sheets/region-config.d.mts +35 -5
  411. package/src/foundry/client-esm/applications/sheets/roll-table-config.d.mts +25 -0
  412. package/src/foundry/client-esm/applications/sheets/roll-table-sheet.d.mts +25 -0
  413. package/src/foundry/client-esm/applications/sheets/scene-config.d.mts +25 -0
  414. package/src/foundry/client-esm/applications/sheets/table-result-config.d.mts +25 -0
  415. package/src/foundry/client-esm/applications/sheets/template-config.d.mts +25 -0
  416. package/src/foundry/client-esm/applications/sheets/tile-config.d.mts +25 -0
  417. package/src/foundry/client-esm/applications/sheets/token/_module.d.mts +7 -0
  418. package/src/foundry/client-esm/applications/sheets/token/mixin.d.mts +27 -0
  419. package/src/foundry/client-esm/applications/sheets/token/prototype-config.d.mts +18 -0
  420. package/src/foundry/client-esm/applications/sheets/token/token-config.d.mts +25 -0
  421. package/src/foundry/client-esm/applications/sheets/user-config.d.mts +3 -3
  422. package/src/foundry/client-esm/applications/sheets/wall-config.d.mts +25 -0
  423. package/src/foundry/client-esm/applications/sidebar/_module.d.mts +10 -0
  424. package/src/foundry/client-esm/applications/sidebar/apps/_module.d.mts +15 -0
  425. package/src/foundry/client-esm/applications/sidebar/apps/chat-popout.d.mts +22 -0
  426. package/src/foundry/client-esm/applications/sidebar/apps/compendium.d.mts +21 -0
  427. package/src/foundry/client-esm/applications/sidebar/apps/controls-config.d.mts +20 -0
  428. package/src/foundry/client-esm/applications/sidebar/apps/folder-export.d.mts +18 -0
  429. package/src/foundry/client-esm/applications/sidebar/apps/frame-viewer.d.mts +22 -0
  430. package/src/foundry/client-esm/applications/sidebar/apps/invitation-links.d.mts +17 -0
  431. package/src/foundry/client-esm/applications/sidebar/apps/module-management.d.mts +21 -0
  432. package/src/foundry/client-esm/applications/sidebar/apps/support-details.d.mts +17 -0
  433. package/src/foundry/client-esm/applications/sidebar/apps/tours-management.d.mts +20 -0
  434. package/src/foundry/client-esm/applications/sidebar/apps/world-config.d.mts +19 -0
  435. package/src/foundry/client-esm/applications/sidebar/document-directory.d.mts +30 -0
  436. package/src/foundry/client-esm/applications/sidebar/sidebar-tab.d.mts +86 -0
  437. package/src/foundry/client-esm/applications/sidebar/sidebar.d.mts +18 -0
  438. package/src/foundry/client-esm/applications/sidebar/tabs/_module.d.mts +17 -0
  439. package/src/foundry/client-esm/applications/sidebar/tabs/actor-directory.d.mts +20 -0
  440. package/src/foundry/client-esm/applications/sidebar/tabs/cards-directory.d.mts +20 -0
  441. package/src/foundry/client-esm/applications/sidebar/tabs/chat.d.mts +19 -0
  442. package/src/foundry/client-esm/applications/sidebar/tabs/combat-tracker.d.mts +19 -0
  443. package/src/foundry/client-esm/applications/sidebar/tabs/compendium-directory.d.mts +19 -0
  444. package/src/foundry/client-esm/applications/sidebar/tabs/item-directory.d.mts +20 -0
  445. package/src/foundry/client-esm/applications/sidebar/tabs/journal-directory.d.mts +20 -0
  446. package/src/foundry/client-esm/applications/sidebar/tabs/macro-directory.d.mts +20 -0
  447. package/src/foundry/client-esm/applications/sidebar/tabs/playlist-directory.d.mts +20 -0
  448. package/src/foundry/client-esm/applications/sidebar/tabs/roll-table-directory.d.mts +20 -0
  449. package/src/foundry/client-esm/applications/sidebar/tabs/scene-directory.d.mts +20 -0
  450. package/src/foundry/client-esm/applications/sidebar/tabs/settings.d.mts +18 -0
  451. package/src/foundry/client-esm/applications/ui/_module.d.mts +9 -2
  452. package/src/foundry/client-esm/applications/ui/game-pause.d.mts +22 -0
  453. package/src/foundry/client-esm/applications/ui/hotbar.d.mts +29 -0
  454. package/src/foundry/client-esm/applications/ui/main-menu.d.mts +27 -0
  455. package/src/foundry/client-esm/applications/ui/notifications.d.mts +208 -0
  456. package/src/foundry/client-esm/applications/ui/players.d.mts +26 -0
  457. package/src/foundry/client-esm/applications/ui/region-legend.d.mts +48 -3
  458. package/src/foundry/client-esm/applications/ui/scene-controls.d.mts +20 -0
  459. package/src/foundry/client-esm/applications/ui/scene-navigation.d.mts +28 -0
  460. package/src/foundry/client-esm/applications/ux/_module.d.mts +14 -0
  461. package/src/foundry/client-esm/applications/ux/context-menu.d.mts +359 -0
  462. package/src/foundry/client-esm/applications/ux/drag-drop.d.mts +21 -0
  463. package/src/foundry/client-esm/applications/ux/draggable.d.mts +9 -0
  464. package/src/foundry/client-esm/applications/ux/form-data-extended.d.mts +17 -0
  465. package/src/foundry/client-esm/applications/ux/html-secret.d.mts +21 -0
  466. package/src/foundry/client-esm/applications/ux/prosemirror-editor.d.mts +9 -0
  467. package/src/foundry/client-esm/applications/ux/search-filter.d.mts +9 -0
  468. package/src/foundry/client-esm/applications/ux/tabs.d.mts +29 -0
  469. package/src/foundry/client-esm/applications/ux/text-editor.d.mts +9 -0
  470. package/src/foundry/client-esm/appv1/_module.d.mts +7 -0
  471. package/src/foundry/client-esm/appv1/api/_module.d.mts +9 -0
  472. package/src/foundry/client-esm/appv1/api/application-v1.d.mts +5 -0
  473. package/src/foundry/client-esm/appv1/api/dialog-v1.d.mts +5 -0
  474. package/src/foundry/client-esm/appv1/api/document-sheet-v1.d.mts +5 -0
  475. package/src/foundry/client-esm/appv1/api/form-application-v1.d.mts +5 -0
  476. package/src/foundry/client-esm/appv1/sheets/_module.d.mts +10 -0
  477. package/src/foundry/client-esm/appv1/sheets/actor-sheet.d.mts +5 -0
  478. package/src/foundry/client-esm/appv1/sheets/adventure-importer.d.mts +5 -0
  479. package/src/foundry/client-esm/appv1/sheets/item-sheet.d.mts +5 -0
  480. package/src/foundry/client-esm/appv1/sheets/journal-page-sheet.d.mts +7 -0
  481. package/src/foundry/client-esm/appv1/sheets/journal-sheet.d.mts +5 -0
  482. package/src/foundry/client-esm/audio/_module.d.mts +2 -3
  483. package/src/foundry/client-esm/audio/biquad.d.mts +1 -1
  484. package/src/foundry/client-esm/audio/convolver.d.mts +1 -1
  485. package/src/foundry/client-esm/audio/helper.d.mts +1 -1
  486. package/src/foundry/client-esm/audio/sound.d.mts +2 -2
  487. package/src/foundry/client-esm/av/_module.d.mts +10 -0
  488. package/src/foundry/client-esm/av/client.d.mts +18 -0
  489. package/src/foundry/client-esm/av/clients/_module.d.mts +6 -0
  490. package/src/foundry/client-esm/av/clients/simplepeer.d.mts +11 -0
  491. package/src/foundry/client-esm/av/master.d.mts +12 -0
  492. package/src/foundry/client-esm/av/settings.d.mts +30 -0
  493. package/src/foundry/client-esm/canvas/_module.d.mts +2 -2
  494. package/src/foundry/client-esm/canvas/edges/_module.d.mts +2 -2
  495. package/src/foundry/client-esm/canvas/edges/collision.d.mts +61 -18
  496. package/src/foundry/client-esm/canvas/edges/edge.d.mts +106 -42
  497. package/src/foundry/client-esm/canvas/edges/edges.d.mts +9 -0
  498. package/src/foundry/client-esm/canvas/edges/vertex.d.mts +51 -23
  499. package/src/foundry/client-esm/canvas/regions/_module.d.mts +6 -11
  500. package/src/foundry/client-esm/canvas/regions/geometry.d.mts +31 -0
  501. package/src/foundry/client-esm/canvas/regions/mesh.d.mts +61 -0
  502. package/src/foundry/client-esm/canvas/regions/polygon-tree.d.mts +101 -0
  503. package/src/foundry/client-esm/canvas/regions/shape.d.mts +118 -0
  504. package/src/foundry/client-esm/canvas/scene-manager.d.mts +9 -0
  505. package/src/foundry/client-esm/canvas/smaa/smaa.d.mts +2 -3
  506. package/src/foundry/client-esm/canvas/sources/_module.d.mts +2 -2
  507. package/src/foundry/client-esm/canvas/sources/base-effect-source.d.mts +32 -18
  508. package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +53 -15
  509. package/src/foundry/client-esm/canvas/sources/global-light-source.d.mts +18 -3
  510. package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +47 -20
  511. package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +17 -7
  512. package/src/foundry/client-esm/canvas/sources/point-light-source.d.mts +26 -14
  513. package/src/foundry/client-esm/canvas/sources/point-movement-source.d.mts +20 -4
  514. package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +26 -8
  515. package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +26 -25
  516. package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +89 -52
  517. package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -3
  518. package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +113 -2
  519. package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +170 -3
  520. package/src/foundry/client-esm/canvas/tokens/ring.d.mts +189 -2
  521. package/src/foundry/client-esm/client.d.mts +56 -63
  522. package/src/foundry/client-esm/config.d.mts +1 -0
  523. package/src/foundry/client-esm/data/_module.d.mts +8 -3
  524. package/src/foundry/client-esm/data/_types.d.mts +10 -0
  525. package/src/foundry/client-esm/data/calendar.d.mts +213 -0
  526. package/src/foundry/client-esm/data/client-backend.d.mts +17 -18
  527. package/src/foundry/client-esm/data/combat-config.d.mts +53 -0
  528. package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +11 -14
  529. package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +57 -0
  530. package/src/foundry/client-esm/data/region-behaviors/base.d.mts +59 -0
  531. package/src/foundry/client-esm/data/region-behaviors/display-scrolling-text.d.mts +64 -0
  532. package/src/foundry/client-esm/data/region-behaviors/execute-macro.d.mts +27 -0
  533. package/src/foundry/client-esm/data/region-behaviors/execute-script.d.mts +23 -0
  534. package/src/foundry/client-esm/data/region-behaviors/pause-game.d.mts +23 -0
  535. package/src/foundry/client-esm/data/region-behaviors/suppress-weather.d.mts +17 -0
  536. package/src/foundry/client-esm/data/region-behaviors/teleport-token.d.mts +32 -0
  537. package/src/foundry/client-esm/data/region-behaviors/toggle-behavior.d.mts +31 -0
  538. package/src/foundry/client-esm/data/terrain-data.d.mts +22 -0
  539. package/src/foundry/client-esm/dice/_module.d.mts +2 -3
  540. package/src/foundry/client-esm/dice/parser.d.mts +8 -0
  541. package/src/foundry/client-esm/dice/roll.d.mts +64 -30
  542. package/src/foundry/client-esm/dice/terms/_module.d.mts +2 -3
  543. package/src/foundry/client-esm/dice/terms/coin.d.mts +8 -1
  544. package/src/foundry/client-esm/dice/terms/dice.d.mts +11 -2
  545. package/src/foundry/client-esm/dice/terms/die.d.mts +9 -2
  546. package/src/foundry/client-esm/dice/terms/fate.d.mts +9 -2
  547. package/src/foundry/client-esm/dice/terms/function.d.mts +5 -2
  548. package/src/foundry/client-esm/dice/terms/numeric.d.mts +1 -1
  549. package/src/foundry/client-esm/dice/terms/operator.d.mts +1 -1
  550. package/src/foundry/client-esm/dice/terms/parenthetical.d.mts +1 -1
  551. package/src/foundry/client-esm/dice/terms/pool.d.mts +15 -6
  552. package/src/foundry/client-esm/dice/terms/string.d.mts +1 -1
  553. package/src/foundry/client-esm/dice/terms/term.d.mts +12 -3
  554. package/src/foundry/client-esm/documents/_module.d.mts +11 -0
  555. package/src/foundry/client-esm/documents/_types.d.mts +8 -0
  556. package/src/foundry/client-esm/documents/abstract/_module.d.mts +6 -0
  557. package/src/foundry/client-esm/documents/collections/_module.d.mts +6 -0
  558. package/src/foundry/client-esm/game.d.mts +7 -0
  559. package/src/foundry/client-esm/helpers/_module.d.mts +2 -2
  560. package/src/foundry/client-esm/helpers/_types.d.mts +1 -1
  561. package/src/foundry/client-esm/hooks.d.mts +1 -0
  562. package/src/foundry/client-esm/nue/_module.d.mts +9 -0
  563. package/src/foundry/client-esm/nue/nue-manager.d.mts +18 -0
  564. package/src/foundry/client-esm/nue/tour.d.mts +9 -0
  565. package/src/foundry/client-esm/nue/tours/_module.d.mts +8 -0
  566. package/src/foundry/client-esm/nue/tours/canvas-tour.d.mts +12 -0
  567. package/src/foundry/client-esm/nue/tours/setup-tour.d.mts +11 -0
  568. package/src/foundry/client-esm/nue/tours/sidebar-tour.d.mts +11 -0
  569. package/src/foundry/client-esm/nue/tours-collection.d.mts +25 -0
  570. package/src/foundry/client-esm/packages/_module.d.mts +22 -0
  571. package/src/foundry/client-esm/packages/_types.d.mts +11 -0
  572. package/src/foundry/client-esm/packages/client-package.d.mts +11 -0
  573. package/src/foundry/client-esm/packages/module.d.mts +8 -0
  574. package/src/foundry/client-esm/packages/system.d.mts +8 -0
  575. package/src/foundry/client-esm/packages/world.d.mts +8 -0
  576. package/src/foundry/client-esm/ui.d.mts +1 -0
  577. package/src/foundry/client-esm/utils/_module.d.mts +7 -0
  578. package/src/foundry/client-esm/utils/_types.d.mts +2 -0
  579. package/src/foundry/client-esm/utils/helpers.d.mts +6 -0
  580. package/src/foundry/common/{types.d.mts → _types.d.mts} +3 -3
  581. package/src/foundry/common/abstract/{module.d.mts → _module.d.mts} +2 -2
  582. package/src/foundry/common/abstract/backend.d.mts +38 -44
  583. package/src/foundry/common/abstract/data.d.mts +9 -46
  584. package/src/foundry/common/abstract/document.d.mts +214 -139
  585. package/src/foundry/common/abstract/embedded-collection-delta.d.mts +1 -1
  586. package/src/foundry/common/abstract/embedded-collection.d.mts +37 -7
  587. package/src/foundry/common/abstract/socket.d.mts +1 -1
  588. package/src/foundry/common/abstract/type-data.d.mts +36 -25
  589. package/src/foundry/common/config.d.mts +3 -1
  590. package/src/foundry/common/constants.d.mts +234 -205
  591. package/src/foundry/common/data/{module.d.mts → _module.d.mts} +2 -2
  592. package/src/foundry/common/data/_types.d.mts +47 -0
  593. package/src/foundry/common/data/data.d.mts +25 -19
  594. package/src/foundry/common/data/fields.d.mts +366 -425
  595. package/src/foundry/common/data/validation-failure.d.mts +4 -6
  596. package/src/foundry/common/documents/_module.d.mts +4 -2
  597. package/src/foundry/common/documents/_types.d.mts +10 -45
  598. package/src/foundry/common/documents/active-effect.d.mts +5 -4
  599. package/src/foundry/common/documents/actor-delta.d.mts +7 -5
  600. package/src/foundry/common/documents/actor.d.mts +6 -19
  601. package/src/foundry/common/documents/adventure.d.mts +13 -2
  602. package/src/foundry/common/documents/ambient-light.d.mts +3 -1
  603. package/src/foundry/common/documents/ambient-sound.d.mts +3 -1
  604. package/src/foundry/common/documents/card.d.mts +6 -4
  605. package/src/foundry/common/documents/cards.d.mts +3 -1
  606. package/src/foundry/common/documents/chat-message.d.mts +10 -8
  607. package/src/foundry/common/documents/combat.d.mts +3 -1
  608. package/src/foundry/common/documents/combatant.d.mts +4 -12
  609. package/src/foundry/common/documents/drawing.d.mts +6 -4
  610. package/src/foundry/common/documents/fog-exploration.d.mts +3 -1
  611. package/src/foundry/common/documents/folder.d.mts +9 -1
  612. package/src/foundry/common/documents/item.d.mts +5 -3
  613. package/src/foundry/common/documents/journal-entry-page.d.mts +3 -2
  614. package/src/foundry/common/documents/journal-entry.d.mts +3 -1
  615. package/src/foundry/common/documents/macro.d.mts +5 -3
  616. package/src/foundry/common/documents/measured-template.d.mts +6 -8
  617. package/src/foundry/common/documents/module.d.mts +2 -2
  618. package/src/foundry/common/documents/note.d.mts +4 -2
  619. package/src/foundry/common/documents/playlist-sound.d.mts +4 -2
  620. package/src/foundry/common/documents/playlist.d.mts +3 -1
  621. package/src/foundry/common/documents/region-behavior.d.mts +88 -0
  622. package/src/foundry/common/documents/region.d.mts +108 -0
  623. package/src/foundry/common/documents/roll-table.d.mts +3 -1
  624. package/src/foundry/common/documents/scene.d.mts +9 -1
  625. package/src/foundry/common/documents/setting.d.mts +3 -2
  626. package/src/foundry/common/documents/table-result.d.mts +4 -2
  627. package/src/foundry/common/documents/tile.d.mts +3 -1
  628. package/src/foundry/common/documents/token.d.mts +15 -7
  629. package/src/foundry/common/documents/user.d.mts +7 -5
  630. package/src/foundry/common/documents/wall.d.mts +3 -1
  631. package/src/foundry/common/grid/_module.d.mts +3 -3
  632. package/src/foundry/common/grid/_types.d.mts +47 -0
  633. package/src/foundry/common/grid/base.d.mts +10 -14
  634. package/src/foundry/common/grid/gridless.d.mts +2 -2
  635. package/src/foundry/common/grid/hexagonal.d.mts +16 -9
  636. package/src/foundry/common/grid/square.d.mts +2 -2
  637. package/src/foundry/common/packages/{module.d.mts → _module.d.mts} +2 -2
  638. package/src/foundry/common/packages/_types.d.mts +25 -0
  639. package/src/foundry/common/packages/base-package.d.mts +6 -6
  640. package/src/foundry/common/packages/base-system.d.mts +19 -4
  641. package/src/foundry/common/packages/base-world.d.mts +2 -2
  642. package/src/foundry/common/packages/sub-types.d.mts +1 -1
  643. package/src/foundry/common/primitives/array.d.mts +1 -1
  644. package/src/foundry/common/primitives/number.d.mts +1 -1
  645. package/src/foundry/common/primitives/string.d.mts +1 -1
  646. package/src/foundry/common/prosemirror/_module.d.mts +15 -15
  647. package/src/foundry/common/prosemirror/_types.d.mts +29 -0
  648. package/src/foundry/common/prosemirror/dirty-plugin.d.mts +1 -1
  649. package/src/foundry/common/prosemirror/dom-parser.d.mts +2 -1
  650. package/src/foundry/common/prosemirror/highlight-matches-plugin.d.mts +1 -1
  651. package/src/foundry/common/prosemirror/image-plugin.d.mts +1 -1
  652. package/src/foundry/common/prosemirror/paste-transformer.d.mts +1 -1
  653. package/src/foundry/common/prosemirror/plugin.d.mts +1 -1
  654. package/src/foundry/common/prosemirror/schema/index.d.mts +1 -1
  655. package/src/foundry/common/prosemirror/schema/lists.d.mts +2 -0
  656. package/src/foundry/common/utils/{module.d.mts → _module.d.mts} +2 -2
  657. package/src/foundry/common/utils/_types.d.mts +1 -0
  658. package/src/foundry/common/utils/bitmask.d.mts +20 -11
  659. package/src/foundry/common/utils/collection.d.mts +7 -19
  660. package/src/foundry/common/utils/color.d.mts +20 -2
  661. package/src/foundry/common/utils/event-emitter.d.mts +1 -1
  662. package/src/foundry/common/utils/helpers.d.mts +23 -13
  663. package/src/foundry/common/utils/string-tree.d.mts +1 -1
  664. package/src/foundry/common/utils/word-tree.d.mts +1 -1
  665. package/src/foundry/index.d.mts +0 -1
  666. package/src/foundry/{clipper → public/scripts/clipper}/clipper.d.mts +58 -16
  667. package/src/foundry/public/scripts/index.d.mts +1 -0
  668. package/src/foundry/public/scripts/workers/image-compressor.d.mts +23 -0
  669. package/src/foundry/public/scripts/workers/index.d.mts +1 -0
  670. package/{index-lenient.d.mts → src/index-lenient.d.mts} +2 -0
  671. package/src/index.d.mts +6 -0
  672. package/src/tsconfig.json +19 -0
  673. package/src/types/augments/particles.d.mts +29 -0
  674. package/src/types/augments/pixi.d.mts +1013 -10
  675. package/src/types/augments/smooth.d.mts +31 -0
  676. package/src/types/augments/tinyMCE.d.mts +1 -1
  677. package/src/types/config.d.mts +20 -312
  678. package/src/types/documentConfiguration.d.mts +91 -32
  679. package/src/types/index.d.mts +1 -1
  680. package/src/types/lib.d.mts +12 -0
  681. package/src/types/workers/image-compressor.d.mts +176 -0
  682. package/src/utils/index.d.mts +1091 -0
  683. package/index.d.mts +0 -5
  684. package/src/foundry/client/ui/context.d.mts +0 -213
  685. package/src/foundry/client/ui/notifications.d.mts +0 -136
  686. package/src/foundry/common/primitives/regex.d.mts +0 -12
  687. package/src/types/helperTypes.d.mts +0 -583
  688. package/src/types/utils.d.mts +0 -539
  689. /package/src/foundry/common/primitives/{module.d.mts → _module.d.mts} +0 -0
  690. /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,4 +1,4 @@
1
- import type { AnyFunction } from "../../../types/utils.d.mts";
1
+ import type { AnyFunction } from "fvtt-types/utils";
2
2
 
3
3
  export {};
4
4
 
@@ -28,7 +28,7 @@ declare global {
28
28
  options?: Hooks.OnOptions,
29
29
  ): number;
30
30
  static on<H extends Hooks.DynamicCallbacks>(hook: string, fn: H, options?: Hooks.OnOptions): number;
31
- static on<H extends (...args: any) => any>(hook: string, fn: H, options?: Hooks.OnOptions): number;
31
+ static on<H extends AnyFunction>(hook: string, fn: H, options?: Hooks.OnOptions): number;
32
32
 
33
33
  /**
34
34
  * Register a callback handler for an event which is only triggered once the first time the event occurs.
@@ -1,10 +1,9 @@
1
- import type { InexactPartial, NullishProps } from "../../../types/utils.d.mts";
1
+ import type { InexactPartial, NullishProps } from "fvtt-types/utils";
2
2
 
3
3
  declare global {
4
4
  /**
5
5
  * A helper class to provide common functionality for working with Image objects
6
6
  */
7
- // eslint-disable-next-line @typescript-eslint/no-extraneous-class
8
7
  class ImageHelper {
9
8
  /**
10
9
  * Create thumbnail preview for a provided image path.
@@ -1,4 +1,4 @@
1
- import type { ValueOf } from "../../../types/utils.d.mts";
1
+ import type { LazyUnknown, ValueOf } from "fvtt-types/utils";
2
2
 
3
3
  declare global {
4
4
  /**
@@ -287,7 +287,7 @@ declare global {
287
287
  * @internal
288
288
  */
289
289
  protected static _onZoom(
290
- context: KeyboardManager.KeyboardEventContext | unknown,
290
+ context: KeyboardManager.KeyboardEventContext | LazyUnknown,
291
291
  zoomDirection: ClientKeybindings.ZoomDirection,
292
292
  ): boolean;
293
293
 
@@ -1,4 +1,4 @@
1
- import type { InexactPartial, Mixin } from "../../../types/utils.d.mts";
1
+ import type { FixedInstanceType, InexactPartial, Mixin } from "fvtt-types/utils";
2
2
  import type { CONST } from "../../client-esm/client.d.mts";
3
3
  import type BasePackage from "../../common/packages/base-package.d.mts";
4
4
 
@@ -136,10 +136,17 @@ declare global {
136
136
  * @param BasePackage - The parent BasePackage class being mixed
137
137
  * @returns A BasePackage subclass mixed with ClientPackage features
138
138
  */
139
- function ClientPackageMixin<BaseClass extends BasePackage.Internal.Constructor>(
139
+ function ClientPackageMixin<BaseClass extends ClientPackageMixin.BaseClass>(
140
140
  BasePackage: BaseClass,
141
141
  ): Mixin<typeof ClientPackage, BaseClass>;
142
142
 
143
+ namespace ClientPackageMixin {
144
+ type AnyMixedConstructor = ReturnType<typeof ClientPackageMixin<BaseClass>>;
145
+ interface AnyMixed extends FixedInstanceType<AnyMixedConstructor> {}
146
+
147
+ type BaseClass = BasePackage.Internal.Constructor;
148
+ }
149
+
143
150
  class Module extends ClientPackageMixin(foundry.packages.BaseModule) {
144
151
  constructor(data: ClientPackage.ModuleConstructorData, options: unknown);
145
152
 
@@ -1,5 +1,4 @@
1
- import type { ConformRecord } from "../../../types/helperTypes.d.mts";
2
- import type { AnyArray, AnyObject, DeepPartial, InexactPartial } from "../../../types/utils.d.mts";
1
+ import type { AnyArray, AnyObject, InexactPartial, FixedInstanceType } from "fvtt-types/utils";
3
2
  import type ApplicationV2 from "../../client-esm/applications/api/application.d.mts";
4
3
  import type { CustomFormInput } from "../../client-esm/applications/forms/fields.d.mts";
5
4
  import type DataModel from "../../common/abstract/data.d.mts";
@@ -24,7 +23,7 @@ declare global {
24
23
  /**
25
24
  * A object of registered game settings for this scope
26
25
  */
27
- settings: Map<keyof _SettingConfigRecord & string, ClientSettings.SettingConfig>;
26
+ settings: Map<keyof globalThis.SettingConfig & (string & {}), ClientSettings.SettingConfig>;
28
27
 
29
28
  /**
30
29
  * Registered settings menus which trigger secondary applications
@@ -87,11 +86,15 @@ declare global {
87
86
  * });
88
87
  * ```
89
88
  */
90
- register<N extends ClientSettings.Namespace, K extends ClientSettings.Key, T extends ClientSettings.Type>(
89
+ register<
90
+ T extends ClientSettings.Type,
91
+ N extends ClientSettings.Namespace = ClientSettings.Namespace,
92
+ K extends ClientSettings.KeyFor<N> = ClientSettings.KeyFor<N>,
93
+ >(
91
94
  namespace: N,
92
95
  key: K,
93
96
  data: ClientSettings.Type extends T
94
- ? ClientSettings.RegisterOptions<_SettingConfigRecord[`${N}.${K}`]>
97
+ ? ClientSettings.RegisterOptions<globalThis.SettingConfig[`${N}.${K}` & keyof SettingConfig]>
95
98
  : ClientSettings.RegisterOptions<NoInfer<T>>,
96
99
  ): void;
97
100
 
@@ -131,7 +134,7 @@ declare global {
131
134
  * game.settings.get("myModule", "myClientSetting");
132
135
  * ```
133
136
  */
134
- get<N extends ClientSettings.Namespace, K extends ClientSettings.Key>(
137
+ get<N extends ClientSettings.Namespace, K extends ClientSettings.KeyFor<N>>(
135
138
  namespace: N,
136
139
  key: K,
137
140
  ): ClientSettings.SettingInitializedType<N, K>;
@@ -154,7 +157,7 @@ declare global {
154
157
  * game.settings.set("myModule", "myClientSetting", "b");
155
158
  * ```
156
159
  */
157
- set<N extends ClientSettings.Namespace, K extends ClientSettings.Key>(
160
+ set<N extends ClientSettings.Namespace, K extends ClientSettings.KeyFor<N>>(
158
161
  namespace: N,
159
162
  key: K,
160
163
  value: ClientSettings.SettingAssignmentType<N, K>,
@@ -163,8 +166,8 @@ declare global {
163
166
  }
164
167
 
165
168
  namespace ClientSettings {
166
- type Namespace = GetNamespaces<keyof _SettingConfigRecord>;
167
- type Key = GetKeys<keyof _SettingConfigRecord>;
169
+ type Namespace = GetNamespaces<keyof globalThis.SettingConfig>;
170
+ type KeyFor<N extends Namespace> = GetKeys<N, keyof globalThis.SettingConfig>;
168
171
 
169
172
  /**
170
173
  * A compile type is a type for a setting that only exists at compile time.
@@ -187,14 +190,21 @@ declare global {
187
190
  | (T extends readonly (infer V)[] ? typeof Array<V> : never)
188
191
  | (T extends AnyObject ? typeof Object : never);
189
192
 
190
- type SettingAssignmentType<N extends Namespace, K extends Key> = ToSettingAssignmentType<ConfiguredType<N, K>>;
193
+ type SettingAssignmentType<N extends Namespace, K extends KeyFor<N>> = ToSettingAssignmentType<
194
+ ConfiguredType<N, K>
195
+ >;
191
196
  type ToSettingAssignmentType<T extends Type> = ReplaceUndefinedWithNull<
192
197
  | SettingType<T>
193
198
  // TODO(LukeAbby): The `fromSource` function is called with `strict` which changes how fallback behaviour works. See `ClientSettings#set`
194
- | (T extends DataModel.AnyConstructor ? DataModel.ConstructorDataFor<InstanceType<T>> : never)
199
+ // Note(LukeAbby): This doesn't use `InstanceType` because of this TypeScript issue: https://github.com/microsoft/TypeScript/issues/60839
200
+ | (T extends (abstract new (...args: infer _1) => infer Instance extends DataModel.Any)
201
+ ? DataModel.ConstructorDataFor<Instance>
202
+ : never)
195
203
  >;
196
204
 
197
- type SettingInitializedType<N extends Namespace, K extends Key> = ToSettingInitializedType<ConfiguredType<N, K>>;
205
+ type SettingInitializedType<N extends Namespace, K extends KeyFor<N>> = ToSettingInitializedType<
206
+ ConfiguredType<N, K>
207
+ >;
198
208
  type ToSettingInitializedType<T extends Type> = ReplaceUndefinedWithNull<
199
209
  SettingType<T> | (T extends DataModel.Any ? T : never)
200
210
  >;
@@ -290,20 +300,14 @@ declare global {
290
300
  icon?: string | undefined;
291
301
 
292
302
  /** The FormApplication or ApplicationV2 to render */
293
- type:
294
- | (new () => FormApplication.Any)
295
- | (new (options?: DeepPartial<ApplicationV2.Configuration>) => ApplicationV2.Any);
303
+ // In SettingsConfig#_onClickSubmenu this type is constructed and not given any options.
304
+ type: (new () => FormApplication.Any) | (new () => ApplicationV2.Any);
296
305
 
297
306
  /** If true, only a GM can edit this Setting */
298
307
  restricted?: boolean | undefined;
299
308
  }
300
309
 
301
310
  type RegisterSubmenu = Omit<SettingSubmenuConfig, "key" | "namespace">;
302
-
303
- /**
304
- * @deprecated - {@link globalThis.SettingConfig | `SettingConfig`}
305
- */
306
- interface Values extends globalThis.SettingConfig {}
307
311
  }
308
312
  }
309
313
 
@@ -325,7 +329,7 @@ type PRIMITIVE_TYPES = readonly [
325
329
  // Foundry prioritizes the constructor over the function unless it's in `Setting#PRIMITIVE_TYPES`.
326
330
  type ConstructorToSettingType<T extends SettingConstructor> = T extends PRIMITIVE_TYPES[number]
327
331
  ? PrimitiveConstructorToSettingType<T>
328
- : InstanceType<T>;
332
+ : FixedInstanceType<T>;
329
333
 
330
334
  // In theory this is just the `ReturnType<T>`.
331
335
  // However the function end of `Array` returns `any[]` while `Object` returns `any`.
@@ -336,15 +340,18 @@ type PrimitiveConstructorToSettingType<T extends PRIMITIVE_TYPES[number]> = T ex
336
340
  ? AnyObject
337
341
  : ReturnType<T>;
338
342
 
343
+ // The `& keyof SettingConfig` is necessary because otherwise the fact that `K` depends on `N`
344
+ // will confuse TypeScript and make it think that `${N}.${K}` can be invalid keys like
345
+ // "core.moduleSetting" but in reality that would be disallowed by the dependent constraint of `K`.
339
346
  type ConfiguredType<
340
347
  N extends ClientSettings.Namespace,
341
- K extends ClientSettings.Key,
342
- > = _SettingConfigRecord[`${N}.${K}`];
348
+ K extends ClientSettings.KeyFor<N>,
349
+ > = globalThis.SettingConfig[`${N}.${K}` & keyof SettingConfig];
343
350
 
344
351
  type SettingType<T extends ClientSettings.Type> =
345
352
  // Note(LukeAbby): This isn't written as `T extends ClientSettings.TypeScriptType ? T : never` because then types like `DataField.Any` would be matched.
346
353
  | (T extends ClientSettings.RuntimeType ? never : T)
347
- // TODO(LukeAbby): The `validate` function is called with `strict` which changes how fallback behaviour works. See `ClientSettings#set`
354
+ // TODO(LukeAbby): The `validate` function is called with `strict` which changes how fallback behavior works. See `ClientSettings#set`
348
355
  | (T extends DataField.Any ? DataField.AssignmentTypeFor<T> : never)
349
356
  | (T extends SettingConstructor ? ConstructorToSettingType<T> : T extends SettingFunction ? ReturnType<T> : never);
350
357
 
@@ -352,10 +359,6 @@ type SettingType<T extends ClientSettings.Type> =
352
359
  type ReplaceUndefinedWithNull<T> = T extends undefined ? null : T;
353
360
 
354
361
  type GetNamespaces<SettingPath extends PropertyKey> = SettingPath extends `${infer Scope}.${string}` ? Scope : never;
355
- type GetKeys<SettingPath extends PropertyKey> = SettingPath extends `${string}.${infer Name}` ? Name : never;
356
-
357
- type _SettingConfigRecord = ConformRecord<
358
- // Refers to the deprecated interface so that merging works both ways.
359
- ClientSettings.Values,
360
- ClientSettings.Type
361
- >;
362
+ type GetKeys<N extends string, SettingPath extends PropertyKey> = SettingPath extends `${N}.${infer Name}`
363
+ ? Name
364
+ : never;
@@ -1,4 +1,4 @@
1
- import type { AnyObject } from "../../../types/utils.d.mts";
1
+ import type { AnyObject } from "fvtt-types/utils";
2
2
  import type { DatabaseOperationMap, DocumentSocketRequest } from "../../common/abstract/_types.d.mts";
3
3
 
4
4
  declare global {
@@ -1,4 +1,4 @@
1
- import type { InexactPartial } from "../../../types/utils.d.mts";
1
+ import type { InexactPartial } from "fvtt-types/utils";
2
2
 
3
3
  declare global {
4
4
  /**
@@ -1,4 +1,4 @@
1
- import type { ValueOf } from "../../../types/utils.d.mts";
1
+ import type { ValueOf } from "fvtt-types/utils";
2
2
 
3
3
  declare global {
4
4
  /**
@@ -1,4 +1,4 @@
1
- import type { ValueOf } from "../../../types/utils.d.mts";
1
+ import type { ValueOf } from "fvtt-types/utils";
2
2
 
3
3
  export { Tour };
4
4
 
@@ -1,4 +1,29 @@
1
- import type { GetKey } from "../../../types/helperTypes.d.mts";
1
+ import type { AnyObject, MustBeValidUuid } from "fvtt-types/utils";
2
+ import type Document from "../../common/abstract/document.d.mts";
3
+
4
+ declare const __Unset: unique symbol;
5
+
6
+ type __UnsetDocument = Document.Any & {
7
+ [__Unset]: true;
8
+ };
9
+
10
+ declare class InvalidUuid extends foundry.abstract.Document<any, any, any> {}
11
+
12
+ type FromUuid<Uuid extends string> = Uuid extends `${string}.${string}.${infer Rest}`
13
+ ? FromUuid<Rest>
14
+ : Uuid extends `${infer DocumentType extends Document.Type}.${string}`
15
+ ? Document.ConfiguredInstanceForName<DocumentType>
16
+ : InvalidUuid;
17
+
18
+ // TODO(LukeAbby): The usage of `Document.Type` when it's unset will not be necessary once `Document.Any` is more type safe.
19
+ type FromUuidValidate<
20
+ ConcreteDocument extends Document.Any,
21
+ Uuid extends string,
22
+ > = __UnsetDocument extends ConcreteDocument
23
+ ? MustBeValidUuid<Uuid, Document.Type>
24
+ : string extends Uuid
25
+ ? string
26
+ : MustBeValidUuid<Uuid, ConcreteDocument["documentName"]>;
2
27
 
3
28
  declare global {
4
29
  /**
@@ -21,15 +46,15 @@ declare global {
21
46
  * @param uuid - The uuid of the Entity or Embedded Entity to retrieve
22
47
  * @param options - Options to configure how a UUID is resolved.
23
48
  */
24
- function fromUuid(
25
- uuid: string,
49
+ function fromUuid<ConcreteDocument extends Document.Any = __UnsetDocument, const Uuid extends string = string>(
50
+ uuid: FromUuidValidate<ConcreteDocument, Uuid> | null | undefined,
26
51
  options?: {
27
52
  /** A Document to resolve relative UUIDs against. */
28
53
  relative?: ClientDocument;
29
54
  /** Allow retrieving an invalid Document. (default: `false`) */
30
55
  invalid?: boolean;
31
56
  },
32
- ): Promise<foundry.abstract.Document.Any | null>;
57
+ ): Promise<(__UnsetDocument extends ConcreteDocument ? FromUuid<Uuid> : ConcreteDocument) | null>;
33
58
 
34
59
  /**
35
60
  * Retrieve a Document by its Universally Unique Identifier (uuid) synchronously. If the uuid resolves to a compendium
@@ -39,8 +64,8 @@ declare global {
39
64
  * @returns The Document or its index entry if it resides in a Compendium, otherwise null.
40
65
  * @throws If the uuid resolves to a Document that cannot be retrieved synchronously.
41
66
  */
42
- function fromUuidSync(
43
- uuid: string,
67
+ function fromUuidSync<ConcreteDocument extends Document.Any = __UnsetDocument, const Uuid extends string = string>(
68
+ uuid: FromUuidValidate<ConcreteDocument, Uuid> | null | undefined,
44
69
  options?: {
45
70
  /** A Document to resolve relative UUIDs against. */
46
71
  relative?: ClientDocument;
@@ -49,7 +74,7 @@ declare global {
49
74
  /** Throw an error if the UUID cannot be resolved synchronously. (default: `true`) */
50
75
  strict?: boolean;
51
76
  },
52
- ): foundry.abstract.Document.Any | Record<string, unknown> | null;
77
+ ): (__UnsetDocument extends ConcreteDocument ? FromUuid<Uuid> : ConcreteDocument) | AnyObject | null;
53
78
 
54
79
  /**
55
80
  * Resolve a series of embedded document UUID parts against a parent Document.
@@ -65,7 +90,5 @@ declare global {
65
90
  * @param documentName - The canonical Document name, for example "Actor"
66
91
  * @returns configured Document class implementation
67
92
  */
68
- function getDocumentClass<DocumentName extends string>(
69
- documentName: DocumentName,
70
- ): GetKey<GetKey<CONFIG, DocumentName, never>, "documentClass", undefined>;
93
+ function getDocumentClass<Name extends Document.Type>(documentName: Name): Document.ConfiguredClassForName<Name>;
71
94
  }
@@ -1,4 +1,4 @@
1
- export {};
1
+ import "youtube";
2
2
 
3
3
  declare global {
4
4
  /**
@@ -1,4 +1,4 @@
1
- import type { ValueOf } from "../../../types/utils.d.mts";
1
+ import type { ValueOf } from "fvtt-types/utils";
2
2
 
3
3
  // TODO: smarter types for named functions
4
4
  declare global {
@@ -1,24 +1,28 @@
1
- import type { Mixin } from "../../../../types/utils.d.mts";
1
+ import type { FixedInstanceType, Mixin } from "fvtt-types/utils";
2
2
  import type Document from "../../../common/abstract/document.d.mts";
3
- import type { ClientDocument } from "./client-document.d.mts";
3
+ import type { InternalClientDocument } from "./client-document.d.mts";
4
4
 
5
5
  declare class CanvasDocument<
6
- BaseDocument extends Document<any, any, Scene.ConfiguredInstance | null>,
7
- > extends ClientDocument<BaseDocument> {
6
+ BaseDocument extends Document.Internal.Instance.Any,
7
+ PlaceableType extends Document.PlaceableType = Extract<
8
+ Document.Internal.DocumentNameFor<BaseDocument>,
9
+ Document.PlaceableType
10
+ >,
11
+ > extends InternalClientDocument<BaseDocument> {
8
12
  /** @privateRemarks All mixin classses should accept anything for its constructor. */
9
13
  constructor(...args: any[]);
10
14
 
11
15
  /**
12
16
  * A lazily constructed PlaceableObject instance which can represent this Document on the game canvas.
13
17
  */
14
- get object(): Document.ConfiguredObjectInstanceForName<BaseDocument["documentName"]> | null;
18
+ get object(): Document.ConfiguredObjectInstanceForName<PlaceableType> | null;
15
19
 
16
20
  /**
17
21
  * A reference to the PlaceableObject instance which represents this Embedded Document.
18
22
  * @internal
19
23
  * @defaultValue `null`
20
24
  */
21
- protected _object: Document.ConfiguredObjectInstanceForName<BaseDocument["documentName"]> | null;
25
+ protected _object: Document.ConfiguredObjectInstanceForName<PlaceableType> | null;
22
26
 
23
27
  /**
24
28
  * Has this object been deliberately destroyed as part of the deletion workflow?
@@ -30,7 +34,7 @@ declare class CanvasDocument<
30
34
  /**
31
35
  * A reference to the CanvasLayer which contains Document objects of this type.
32
36
  */
33
- get layer(): InstanceType<PlaceablesLayer.ConfiguredClassForName<BaseDocument["documentName"]>>;
37
+ get layer(): FixedInstanceType<PlaceablesLayer.ConfiguredClassForName<PlaceableType>>;
34
38
 
35
39
  /**
36
40
  * An indicator for whether this document is currently rendered on the game canvas.
@@ -48,22 +52,29 @@ declare namespace CanvasDocument {
48
52
  }
49
53
 
50
54
  declare global {
51
- /**
52
- * @deprecated {@link CanvasDocument.Any | `CanvasDocument.Any`}
53
- */
54
- type CanvasDocument = ReturnType<typeof CanvasDocumentMixin>;
55
-
56
55
  /**
57
56
  * A specialized sub-class of the ClientDocumentMixin which is used for document types that are intended to be represented upon the game Canvas.
58
57
  */
58
+ // TODO(LukeAbby): The constraint here should ideally be something like `Document<Document.PlaceableType, any, Scene.ConfiguredInstance | null>` but this causes circularities.
59
59
  function CanvasDocumentMixin<BaseClass extends Document.Internal.Constructor>(
60
60
  Base: BaseClass,
61
- ): typeof AnyDocument & Mixin<typeof CanvasDocument<InstanceType<BaseClass>>, BaseClass>;
61
+ ): typeof AnyDocument & Mixin<typeof CanvasDocument<FixedInstanceType<BaseClass>>, BaseClass>;
62
62
  }
63
63
 
64
64
  // This is yet another `AnyDocument` type.
65
65
  // It exists specifically because the `Document.AnyConstructor` type is too safe to be merged in with a mixin.
66
66
  // The `arg0: never, ...args: never[]` trick trips up the base constructor check and so this one with an actual `...args: any[]` one is used instead.
67
- declare class AnyDocument extends Document<any, any, any> {
67
+ //
68
+ // `{}` is used to avoid merging `DataSchema` with the real schema.
69
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
70
+ declare class AnyDocument extends Document<any, {}, Document.Any | null> {
68
71
  constructor(...args: any[]);
72
+
73
+ // Note(LukeAbby): Specifically adding the `DocumentBrand` should be redundant but in practice it seems to help tsc more efficiently deduce that it's actually inheriting from `Document`.
74
+ // This is odd but probably is because it bails from looking up the parent class properties at times or something.
75
+ static [Document.Internal.DocumentBrand]: true;
76
+
77
+ flags?: unknown;
78
+
79
+ getFlag(scope: never, key: never): any;
69
80
  }
@@ -1,8 +1,9 @@
1
- import type { ConstructorOf, DeepPartial, InexactPartial, Mixin, ValueOf } from "../../../../types/utils.d.mts";
1
+ import type { DeepPartial, InexactPartial, Mixin, FixedInstanceType } from "fvtt-types/utils";
2
2
  import type { DatabaseCreateOperation } from "../../../common/abstract/_types.d.mts";
3
+ import type DataModel from "../../../common/abstract/data.d.mts";
3
4
  import type Document from "../../../common/abstract/document.d.mts";
4
5
 
5
- declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any = Document.Any> {
6
+ declare class InternalClientDocument<BaseDocument extends Document.Internal.Instance.Any = Document.Any> {
6
7
  /** @privateRemarks All mixin classses should accept anything for its constructor. */
7
8
  constructor(...args: any[]);
8
9
 
@@ -13,13 +14,15 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
13
14
  * @see {@link Document#render}
14
15
  * @defaultValue `{}`
15
16
  */
16
- readonly apps: Record<string, Application | foundry.applications.api.ApplicationV2>;
17
+ readonly apps: Record<string, Application.Any | foundry.applications.api.ApplicationV2.Any>;
17
18
 
18
19
  /**
19
20
  * A cached reference to the FormApplication instance used to configure this Document.
20
21
  * @defaultValue `null`
21
22
  */
22
- protected readonly _sheet: FormApplication | null; // TODO: Replace with InstanceType<ConfiguredSheetClass<T>> once the circular reference problem has been solved
23
+ protected readonly _sheet: FixedInstanceType<
24
+ Document.ConfiguredSheetClassFor<Document.Internal.DocumentNameFor<BaseDocument>>
25
+ > | null;
23
26
 
24
27
  static name: "ClientDocumentMixin";
25
28
 
@@ -72,12 +75,12 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
72
75
  * actor.permission; // 2
73
76
  * ```
74
77
  */
75
- get permission(): ValueOf<typeof CONST.DOCUMENT_OWNERSHIP_LEVELS>;
78
+ get permission(): CONST.DOCUMENT_OWNERSHIP_LEVELS;
76
79
 
77
80
  /**
78
81
  * Lazily obtain a FormApplication instance used to configure this Document, or null if no sheet is available.
79
82
  */
80
- get sheet(): FormApplication | foundry.applications.api.ApplicationV2 | null;
83
+ get sheet(): FormApplication.Any | foundry.applications.api.ApplicationV2.Any | null;
81
84
 
82
85
  /**
83
86
  * A boolean indicator for whether or not the current game User has at least limited visibility for this Document.
@@ -88,7 +91,10 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
88
91
  /**
89
92
  * Obtain the FormApplication class constructor which should be used to configure this Document.
90
93
  */
91
- protected _getSheetClass(): ConstructorOf<FormApplication | foundry.applications.api.ApplicationV2> | null;
94
+ protected _getSheetClass():
95
+ | FormApplication.AnyConstructor
96
+ | foundry.applications.api.ApplicationV2.AnyConstructor
97
+ | null;
92
98
 
93
99
  /**
94
100
  * Safely prepare data for a Document, catching any errors.
@@ -290,7 +296,7 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
290
296
  parent: ClientDocument,
291
297
  collection: string,
292
298
  documents: ClientDocument[],
293
- ids: string,
299
+ ids: string[],
294
300
  options: Document.OnDeleteOptions<any> & InexactPartial<{ render: boolean }>,
295
301
  userId: string,
296
302
  ): void;
@@ -337,9 +343,9 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
337
343
  static createDialog<T extends Document.AnyConstructor>(
338
344
  this: T,
339
345
  data?: DeepPartial<Document.ConstructorDataFor<NoInfer<T>> & Record<string, unknown>>,
340
- context?: Pick<DatabaseCreateOperation<InstanceType<NoInfer<T>>>, "parent" | "pack"> &
346
+ context?: Pick<DatabaseCreateOperation<FixedInstanceType<NoInfer<T>>>, "parent" | "pack"> &
341
347
  InexactPartial<
342
- DialogOptions & {
348
+ Dialog.Options & {
343
349
  /** A restriction the selectable sub-types of the Dialog. */
344
350
  types: string[];
345
351
  }
@@ -352,7 +358,7 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
352
358
  * (default: `{}`)
353
359
  * @returns A Promise which resolves to the deleted Document
354
360
  */
355
- deleteDialog(options?: Partial<DialogOptions>): Promise<this | false | null | undefined>;
361
+ deleteDialog(options?: Partial<Dialog.Options>): Promise<this | false | null | undefined>;
356
362
 
357
363
  /**
358
364
  * Export document data to a JSON file which can be saved by the client and later imported into a different session.
@@ -363,7 +369,7 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
363
369
  /**
364
370
  * Serialize salient information about this Document when dragging it.
365
371
  */
366
- toDragData(): DropData<BaseDocument>;
372
+ toDragData(): Document.DropData<Document.Internal.Instance.Complete<BaseDocument>>;
367
373
 
368
374
  /**
369
375
  * A helper function to handle obtaining the relevant Document from dropped data provided via a DataTransfer event.
@@ -378,7 +384,7 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
378
384
  */
379
385
  static fromDropData<T extends Document.AnyConstructor>(
380
386
  this: T,
381
- data: DropData<InstanceType<NoInfer<T>>>,
387
+ data: Document.DropData<FixedInstanceType<NoInfer<T>>>,
382
388
  options?: FromDropDataOptions,
383
389
  ): Promise<Document.ToConfiguredInstance<T> | undefined>;
384
390
 
@@ -402,8 +408,8 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
402
408
  static fromImport<T extends Document.AnyConstructor>(
403
409
  this: T,
404
410
  source: Record<string, unknown>,
405
- context?: Document.ConstructionContext<Document.Any | null> & DataValidationOptions,
406
- ): Promise<InstanceType<T>>;
411
+ context?: Document.ConstructionContext<Document.Any | null> & DataModel.DataValidationOptions,
412
+ ): Promise<FixedInstanceType<T>>;
407
413
  /**
408
414
  * Update this Document using a provided JSON string.
409
415
  * @param json - JSON data string
@@ -596,10 +602,21 @@ declare class ClientDocument<BaseDocument extends Document.Internal.Instance.Any
596
602
  ): void;
597
603
  }
598
604
 
599
- declare const _ClientDocument: ClientDocument;
605
+ type _ClientDocumentType = InternalClientDocument & Document.AnyConstructor;
606
+ declare const _ClientDocument: _ClientDocumentType;
607
+
608
+ type ClientDocumentMixinBaseClass = Document.Internal.Constructor;
600
609
 
601
610
  declare global {
602
- type ClientDocument = typeof _ClientDocument;
611
+ /**
612
+ * This class does not really exist at runtime. It's here for types only.
613
+ */
614
+ class ClientDocument extends _ClientDocument {
615
+ // This may have be removed at some point in the future if it causes issues but the idea is to
616
+ // prevent operations like `new ClientDocument()` or `extends ClientDocument` because this does
617
+ // is not a class that really exists at runtime.
618
+ private constructor(...args: any[]);
619
+ }
603
620
 
604
621
  /**
605
622
  * A mixin which extends each Document definition with specialized client-side behaviors.
@@ -612,7 +629,7 @@ declare global {
612
629
  // Note(LukeAbby): The seemingly redundant merging in of `typeof AnyDocument` makes it easier for tsc to recognize that anything extending `ClientDocumentMixin` is also a document.
613
630
  function ClientDocumentMixin<BaseClass extends Document.Internal.Constructor>(
614
631
  Base: BaseClass,
615
- ): typeof AnyDocument & Mixin<typeof ClientDocument<InstanceType<BaseClass>>, BaseClass>;
632
+ ): typeof AnyDocument & Mixin<typeof InternalClientDocument<FixedInstanceType<BaseClass>>, BaseClass>;
616
633
 
617
634
  namespace ClientDocument {
618
635
  interface SortOptions<T, SortKey extends string = "sort"> extends SortingHelpers.SortOptions<T, SortKey> {
@@ -682,31 +699,23 @@ declare global {
682
699
  }
683
700
  }
684
701
 
685
- export type DropData<T extends Document.Internal.Instance.Any> = T extends { id: string | undefined }
686
- ? InternalData<T> & DropData.UUID
687
- : InternalData<T>;
688
-
689
- declare namespace DropData {
690
- type Any = DropData<any>;
691
-
692
- interface Data<T extends Document.Any> {
693
- type: T["documentName"];
694
- data: T["_source"];
695
- }
696
-
697
- interface UUID {
698
- uuid: string;
699
- }
700
- }
701
-
702
702
  // This is yet another `AnyDocument` type.
703
703
  // It exists specifically because the `Document.AnyConstructor` type is too safe to be merged in with a mixin.
704
704
  // The `arg0: never, ...args: never[]` trick trips up the base constructor check and so this one with an actual `...args: any[]` one is used instead.
705
- declare class AnyDocument extends Document<any, any, any> {
705
+ //
706
+ // `{}` is used to avoid merging `DataSchema` with the real schema.
707
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
708
+ declare class AnyDocument extends Document<any, {}, any> {
706
709
  constructor(...args: any[]);
707
- }
708
710
 
709
- type InternalData<T extends Document.Internal.Instance.Any> = DropData.Data<Document.Internal.Instance.Complete<T>>;
711
+ // Note(LukeAbby): Specifically adding the `DocumentBrand` should be redundant but in practice it seems to help tsc more efficiently deduce that it's actually inheriting from `Document`.
712
+ // This is odd but probably is because it bails from looking up the parent class properties at times or something.
713
+ static [Document.Internal.DocumentBrand]: true;
714
+
715
+ flags?: unknown;
716
+
717
+ getFlag(scope: never, key: never): any;
718
+ }
710
719
 
711
720
  interface FromDropDataOptions {
712
721
  /**