@league-of-foundry-developers/foundry-vtt-types 12.331.2-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 (695) hide show
  1. package/README.md +13 -17
  2. package/package.json +84 -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 +3 -8
  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 +16 -13
  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/apps/templates.d.mts +5 -1
  83. package/src/foundry/client/av/client.d.mts +1 -1
  84. package/src/foundry/client/av/clients/simplepeer.d.mts +11 -1
  85. package/src/foundry/client/av/master.d.mts +2 -2
  86. package/src/foundry/client/av/settings.d.mts +1 -2
  87. package/src/foundry/client/config.d.mts +201 -198
  88. package/src/foundry/client/core/hooks.d.mts +2 -2
  89. package/src/foundry/client/core/image.d.mts +81 -33
  90. package/src/foundry/client/core/keybindings.d.mts +2 -2
  91. package/src/foundry/client/core/packages.d.mts +9 -2
  92. package/src/foundry/client/core/settings.d.mts +34 -31
  93. package/src/foundry/client/core/socket.d.mts +1 -1
  94. package/src/foundry/client/core/sorting.d.mts +1 -1
  95. package/src/foundry/client/core/tooltip.d.mts +1 -1
  96. package/src/foundry/client/core/tour.d.mts +1 -1
  97. package/src/foundry/client/core/utils.d.mts +33 -10
  98. package/src/foundry/client/core/video.d.mts +1 -1
  99. package/src/foundry/client/core/workers.d.mts +1 -1
  100. package/src/foundry/client/data/abstract/canvas-document.d.mts +25 -15
  101. package/src/foundry/client/data/abstract/client-document.d.mts +48 -39
  102. package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +19 -13
  103. package/src/foundry/client/data/abstract/document-collection.d.mts +8 -8
  104. package/src/foundry/client/data/abstract/world-collection.d.mts +3 -5
  105. package/src/foundry/client/data/collections/actors.d.mts +10 -1
  106. package/src/foundry/client/data/collections/cards.d.mts +9 -0
  107. package/src/foundry/client/data/collections/combats.d.mts +10 -1
  108. package/src/foundry/client/data/collections/compendium-collection.d.mts +8 -37
  109. package/src/foundry/client/data/collections/compendium-packs.d.mts +2 -2
  110. package/src/foundry/client/data/collections/fog.d.mts +9 -0
  111. package/src/foundry/client/data/collections/folder.d.mts +9 -0
  112. package/src/foundry/client/data/collections/items.d.mts +9 -0
  113. package/src/foundry/client/data/collections/journal.d.mts +10 -1
  114. package/src/foundry/client/data/collections/macros.d.mts +10 -1
  115. package/src/foundry/client/data/collections/messages.d.mts +9 -0
  116. package/src/foundry/client/data/collections/playlists.d.mts +10 -1
  117. package/src/foundry/client/data/collections/scenes.d.mts +10 -1
  118. package/src/foundry/client/data/collections/settings.d.mts +9 -0
  119. package/src/foundry/client/data/collections/tables.d.mts +10 -1
  120. package/src/foundry/client/data/collections/users.d.mts +10 -1
  121. package/src/foundry/client/data/documents/active-effect.d.mts +43 -14
  122. package/src/foundry/client/data/documents/actor-delta.d.mts +4 -4
  123. package/src/foundry/client/data/documents/actor.d.mts +7 -4
  124. package/src/foundry/client/data/documents/adventure.d.mts +9 -8
  125. package/src/foundry/client/data/documents/ambient-light.d.mts +3 -2
  126. package/src/foundry/client/data/documents/ambient-sound.d.mts +3 -2
  127. package/src/foundry/client/data/documents/card.d.mts +4 -3
  128. package/src/foundry/client/data/documents/cards.d.mts +15 -20
  129. package/src/foundry/client/data/documents/chat-message.d.mts +4 -3
  130. package/src/foundry/client/data/documents/combat.d.mts +5 -4
  131. package/src/foundry/client/data/documents/combatant.d.mts +5 -4
  132. package/src/foundry/client/data/documents/drawing.d.mts +3 -2
  133. package/src/foundry/client/data/documents/fog-exploration.d.mts +13 -3
  134. package/src/foundry/client/data/documents/folder.d.mts +27 -9
  135. package/src/foundry/client/data/documents/index.d.mts +2 -0
  136. package/src/foundry/client/data/documents/item.d.mts +6 -2
  137. package/src/foundry/client/data/documents/journal-entry-page.d.mts +5 -4
  138. package/src/foundry/client/data/documents/journal-entry.d.mts +5 -4
  139. package/src/foundry/client/data/documents/macro.d.mts +5 -6
  140. package/src/foundry/client/data/documents/measured-template.d.mts +3 -2
  141. package/src/foundry/client/data/documents/note.d.mts +3 -2
  142. package/src/foundry/client/data/documents/playlist-sound.d.mts +4 -3
  143. package/src/foundry/client/data/documents/playlist.d.mts +13 -13
  144. package/src/foundry/client/data/documents/region-behavior.d.mts +78 -0
  145. package/src/foundry/client/data/documents/region.d.mts +160 -0
  146. package/src/foundry/client/data/documents/scene.d.mts +18 -10
  147. package/src/foundry/client/data/documents/setting.d.mts +3 -2
  148. package/src/foundry/client/data/documents/table-result.d.mts +3 -2
  149. package/src/foundry/client/data/documents/table.d.mts +5 -4
  150. package/src/foundry/client/data/documents/tile.d.mts +3 -2
  151. package/src/foundry/client/data/documents/token.d.mts +7 -16
  152. package/src/foundry/client/data/documents/user.d.mts +5 -4
  153. package/src/foundry/client/data/documents/wall.d.mts +3 -2
  154. package/src/foundry/client/game.d.mts +28 -21
  155. package/src/foundry/client/head.d.mts +12 -7
  156. package/src/foundry/client/hooks.d.mts +60 -41
  157. package/src/foundry/client/pixi/board.d.mts +21 -20
  158. package/src/foundry/client/pixi/core/containers/base-canvas-group.d.mts +95 -24
  159. package/src/foundry/client/pixi/core/containers/cached-container.d.mts +36 -18
  160. package/src/foundry/client/pixi/core/containers/full-canvas-container.d.mts +7 -10
  161. package/src/foundry/client/pixi/core/containers/point-source-mesh.d.mts +24 -14
  162. package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +15 -5
  163. package/src/foundry/client/pixi/core/containers/quadtree.d.mts +107 -50
  164. package/src/foundry/client/pixi/core/containers/sprite-mesh.d.mts +66 -23
  165. package/src/foundry/client/pixi/core/containers/unbound-container.d.mts +20 -2
  166. package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +158 -99
  167. package/src/foundry/client/pixi/core/interaction/control-icon.d.mts +61 -22
  168. package/src/foundry/client/pixi/core/interaction/mouse-handler.d.mts +119 -52
  169. package/src/foundry/client/pixi/core/interaction/ping.d.mts +51 -28
  170. package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +16 -8
  171. package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +84 -33
  172. package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +16 -7
  173. package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +35 -5
  174. package/src/foundry/client/pixi/core/interaction/targets.d.mts +19 -16
  175. package/src/foundry/client/pixi/core/loader.d.mts +85 -75
  176. package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +36 -16
  177. package/src/foundry/client/pixi/core/shapes/polygon-mesher.d.mts +92 -64
  178. package/src/foundry/client/pixi/core/shapes/precise-text.d.mts +28 -10
  179. package/src/foundry/client/pixi/core/shapes/ray.d.mts +27 -9
  180. package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +162 -72
  181. package/src/foundry/client/pixi/extensions/circle.d.mts +133 -122
  182. package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
  183. package/src/foundry/client/pixi/extensions/observable-transform.d.mts +10 -2
  184. package/src/foundry/client/pixi/extensions/polygon.d.mts +155 -134
  185. package/src/foundry/client/pixi/extensions/rectangle.d.mts +266 -240
  186. package/src/foundry/client/pixi/groups/effects.d.mts +75 -24
  187. package/src/foundry/client/pixi/groups/environment.d.mts +68 -19
  188. package/src/foundry/client/pixi/groups/hidden.d.mts +27 -11
  189. package/src/foundry/client/pixi/groups/interface.d.mts +62 -38
  190. package/src/foundry/client/pixi/groups/overlay.d.mts +18 -6
  191. package/src/foundry/client/pixi/groups/primary.d.mts +64 -42
  192. package/src/foundry/client/pixi/groups/rendered.d.mts +18 -6
  193. package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +9 -13
  194. package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +18 -17
  195. package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +86 -98
  196. package/src/foundry/client/pixi/layers/controls/cursor.d.mts +1 -1
  197. package/src/foundry/client/pixi/layers/controls/door.d.mts +9 -0
  198. package/src/foundry/client/pixi/layers/controls/layer.d.mts +10 -8
  199. package/src/foundry/client/pixi/layers/controls/ruler.d.mts +1 -1
  200. package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +6 -8
  201. package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +4 -7
  202. package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +3 -6
  203. package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +4 -7
  204. package/src/foundry/client/pixi/layers/effects/visibility.d.mts +11 -8
  205. package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +1 -1
  206. package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +5 -8
  207. package/src/foundry/client/pixi/layers/grid/highlight.d.mts +1 -1
  208. package/src/foundry/client/pixi/layers/grid/layer.d.mts +6 -8
  209. package/src/foundry/client/pixi/layers/grid/mesh.d.mts +1 -1
  210. package/src/foundry/client/pixi/layers/masks/depth.d.mts +11 -6
  211. package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +18 -11
  212. package/src/foundry/client/pixi/layers/masks/vision.d.mts +100 -14
  213. package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +3 -6
  214. package/src/foundry/client/pixi/layers/placeables/index.d.mts +1 -0
  215. package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +4 -7
  216. package/src/foundry/client/pixi/layers/placeables/notes.d.mts +4 -6
  217. package/src/foundry/client/pixi/layers/placeables/regions.d.mts +100 -0
  218. package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +4 -8
  219. package/src/foundry/client/pixi/layers/placeables/templates.d.mts +3 -6
  220. package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +3 -5
  221. package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +6 -10
  222. package/src/foundry/client/pixi/layers/placeables/walls.d.mts +9 -11
  223. package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +53 -24
  224. package/src/foundry/client/pixi/perception/detection-mode.d.mts +4 -2
  225. package/src/foundry/client/pixi/perception/fog.d.mts +9 -0
  226. package/src/foundry/client/pixi/perception/perception-manager.d.mts +1 -1
  227. package/src/foundry/client/pixi/perception/vision-mode.d.mts +31 -13
  228. package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +77 -39
  229. package/src/foundry/client/pixi/placeable.d.mts +15 -7
  230. package/src/foundry/client/pixi/placeables/drawing.d.mts +10 -9
  231. package/src/foundry/client/pixi/placeables/index.d.mts +1 -0
  232. package/src/foundry/client/pixi/placeables/light.d.mts +8 -6
  233. package/src/foundry/client/pixi/placeables/note.d.mts +8 -7
  234. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +29 -8
  235. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-graphics.d.mts +41 -11
  236. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.d.mts +59 -18
  237. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.mts +120 -37
  238. package/src/foundry/client/pixi/placeables/region.d.mts +177 -0
  239. package/src/foundry/client/pixi/placeables/sound.d.mts +7 -6
  240. package/src/foundry/client/pixi/placeables/template.d.mts +12 -11
  241. package/src/foundry/client/pixi/placeables/tile.d.mts +12 -10
  242. package/src/foundry/client/pixi/placeables/token.d.mts +149 -19
  243. package/src/foundry/client/pixi/placeables/wall.d.mts +11 -9
  244. package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +50 -33
  245. package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +9 -8
  246. package/src/foundry/client/pixi/webgl/helpers/{framebugger-snapshot.d.mts → framebuffer-snapshot.d.mts} +9 -8
  247. package/src/foundry/client/pixi/webgl/helpers/index.d.mts +1 -1
  248. package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +30 -23
  249. package/src/foundry/client/pixi/webgl/helpers/texture-extractor.d.mts +82 -53
  250. package/src/foundry/client/pixi/webgl/shaders/base-shader-mixin.d.mts +10 -10
  251. package/src/foundry/client/pixi/webgl/shaders/base-shader.d.mts +45 -28
  252. package/src/foundry/client/pixi/webgl/shaders/filters/base-filter.d.mts +11 -10
  253. package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +11 -9
  254. package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +21 -19
  255. package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +33 -32
  256. package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +9 -8
  257. package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +11 -10
  258. package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +9 -8
  259. package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +11 -10
  260. package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +65 -58
  261. package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +20 -16
  262. package/src/foundry/client/pixi/webgl/shaders/filters/vision-mask-filter.d.mts +13 -10
  263. package/src/foundry/client/pixi/webgl/shaders/filters/void.d.mts +9 -8
  264. package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +9 -8
  265. package/src/foundry/client/pixi/webgl/shaders/fragment-channel-mixin.d.mts +20 -14
  266. package/src/foundry/client/pixi/webgl/shaders/grid/grid.d.mts +11 -10
  267. package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +9 -8
  268. package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +32 -32
  269. package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +9 -8
  270. package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +9 -8
  271. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +18 -16
  272. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +9 -8
  273. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +9 -8
  274. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +9 -8
  275. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +9 -8
  276. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +18 -16
  277. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +18 -16
  278. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +9 -8
  279. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +9 -7
  280. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +18 -16
  281. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +9 -8
  282. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +9 -8
  283. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +9 -8
  284. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +18 -16
  285. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +9 -8
  286. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +9 -8
  287. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +9 -8
  288. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +18 -16
  289. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +19 -17
  290. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +9 -8
  291. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +18 -16
  292. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +9 -9
  293. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +18 -16
  294. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +18 -16
  295. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +18 -16
  296. package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +9 -8
  297. package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +70 -28
  298. package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +52 -8
  299. package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +68 -8
  300. package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +23 -24
  301. package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +9 -8
  302. package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +37 -28
  303. package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +20 -16
  304. package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +9 -8
  305. package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +19 -17
  306. package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +9 -0
  307. package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +29 -1
  308. package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +9 -8
  309. package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +10 -8
  310. package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +9 -8
  311. package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +9 -8
  312. package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +18 -16
  313. package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +9 -8
  314. package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +37 -32
  315. package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +15 -14
  316. package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +16 -15
  317. package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +18 -17
  318. package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +14 -13
  319. package/src/foundry/client/pixi/workers/texture-worker.d.mts +33 -53
  320. package/src/foundry/client/ui/dialog.d.mts +136 -125
  321. package/src/foundry/client/ui/drag.d.mts +1 -1
  322. package/src/foundry/client/ui/dragdrop.d.mts +1 -1
  323. package/src/foundry/client/ui/editor.d.mts +3 -3
  324. package/src/foundry/client/ui/filepicker.d.mts +1 -1
  325. package/src/foundry/client/ui/filter.d.mts +2 -2
  326. package/src/foundry/client/ui/index.d.mts +0 -2
  327. package/src/foundry/client-esm/_module.d.mts +112 -0
  328. package/src/foundry/client-esm/_types.d.mts +8 -0
  329. package/src/foundry/client-esm/applications/_module.d.mts +10 -5
  330. package/src/foundry/client-esm/applications/_types.d.mts +2 -2
  331. package/src/foundry/client-esm/applications/api/_module.d.mts +6 -5
  332. package/src/foundry/client-esm/applications/api/application.d.mts +221 -55
  333. package/src/foundry/client-esm/applications/api/category-browser.d.mts +40 -0
  334. package/src/foundry/client-esm/applications/api/dialog.d.mts +152 -74
  335. package/src/foundry/client-esm/applications/api/document-sheet.d.mts +21 -8
  336. package/src/foundry/client-esm/applications/api/handlebars-application.d.mts +161 -131
  337. package/src/foundry/client-esm/applications/apps/_module.d.mts +9 -2
  338. package/src/foundry/client-esm/applications/apps/av/_module.d.mts +7 -0
  339. package/src/foundry/client-esm/applications/apps/av/camera-popout.d.mts +23 -0
  340. package/src/foundry/client-esm/applications/apps/av/cameras.d.mts +95 -0
  341. package/src/foundry/client-esm/applications/apps/combat-tracker-config.d.mts +21 -0
  342. package/src/foundry/client-esm/applications/apps/compendium-art-config.d.mts +6 -5
  343. package/src/foundry/client-esm/applications/apps/document-ownership.d.mts +21 -0
  344. package/src/foundry/client-esm/applications/apps/document-sheet-config.d.mts +24 -0
  345. package/src/foundry/client-esm/applications/apps/file-picker.d.mts +410 -0
  346. package/src/foundry/client-esm/applications/apps/grid-config.d.mts +25 -0
  347. package/src/foundry/client-esm/applications/apps/image-popout.d.mts +56 -0
  348. package/src/foundry/client-esm/applications/apps/permission-config.d.mts +4 -4
  349. package/src/foundry/client-esm/applications/dice/_module.d.mts +2 -2
  350. package/src/foundry/client-esm/applications/dice/roll-resolver.d.mts +14 -2
  351. package/src/foundry/client-esm/applications/elements/_module.d.mts +5 -2
  352. package/src/foundry/client-esm/applications/elements/codemirror/element.d.mts +16 -0
  353. package/src/foundry/client-esm/applications/elements/codemirror/extensions.d.mts +20 -0
  354. package/src/foundry/client-esm/applications/elements/codemirror/view.d.mts +8 -0
  355. package/src/foundry/client-esm/applications/elements/document-embed.d.mts +14 -0
  356. package/src/foundry/client-esm/applications/elements/document-tags.d.mts +2 -0
  357. package/src/foundry/client-esm/applications/elements/enriched-content.d.mts +29 -0
  358. package/src/foundry/client-esm/applications/elements/multi-select.d.mts +15 -5
  359. package/src/foundry/client-esm/applications/elements/prosemirror-editor.d.mts +1 -1
  360. package/src/foundry/client-esm/applications/elements/secret-block.d.mts +7 -0
  361. package/src/foundry/client-esm/applications/elements/string-tags.d.mts +1 -1
  362. package/src/foundry/client-esm/applications/forms/fields.d.mts +6 -1
  363. package/src/foundry/client-esm/applications/handlebars.d.mts +3 -0
  364. package/src/foundry/client-esm/applications/hud/_module.d.mts +10 -0
  365. package/src/foundry/client-esm/applications/hud/container.d.mts +15 -0
  366. package/src/foundry/client-esm/applications/hud/drawing-hud.d.mts +19 -0
  367. package/src/foundry/client-esm/applications/hud/placeable-hud.d.mts +41 -0
  368. package/src/foundry/client-esm/applications/hud/tile-hud.d.mts +19 -0
  369. package/src/foundry/client-esm/applications/hud/token-hud.d.mts +20 -0
  370. package/src/foundry/client-esm/applications/quickstart.d.mts +20 -0
  371. package/src/foundry/client-esm/applications/settings/_module.d.mts +7 -0
  372. package/src/foundry/client-esm/applications/settings/config.d.mts +21 -0
  373. package/src/foundry/client-esm/applications/settings/dependency-resolution.d.mts +19 -0
  374. package/src/foundry/client-esm/applications/settings/menus/_module.d.mts +11 -0
  375. package/src/foundry/client-esm/applications/settings/menus/av-config.d.mts +27 -0
  376. package/src/foundry/client-esm/applications/settings/menus/default-sheets-config.d.mts +19 -0
  377. package/src/foundry/client-esm/applications/settings/menus/dice-config.d.mts +18 -0
  378. package/src/foundry/client-esm/applications/settings/menus/font-config.d.mts +43 -0
  379. package/src/foundry/client-esm/applications/settings/menus/prototype-overrides.d.mts +21 -0
  380. package/src/foundry/client-esm/applications/settings/menus/ui-config.d.mts +26 -0
  381. package/src/foundry/client-esm/applications/sheets/_module.d.mts +30 -5
  382. package/src/foundry/client-esm/applications/sheets/active-effect-config.d.mts +25 -0
  383. package/src/foundry/client-esm/applications/sheets/actor-sheet.d.mts +1 -1
  384. package/src/foundry/client-esm/applications/sheets/adventure-exporter.d.mts +25 -0
  385. package/src/foundry/client-esm/applications/sheets/adventure-importer.d.mts +25 -0
  386. package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +9 -6
  387. package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +3 -3
  388. package/src/foundry/client-esm/applications/sheets/base-sheet.d.mts +23 -0
  389. package/src/foundry/client-esm/applications/sheets/card-config.d.mts +25 -0
  390. package/src/foundry/client-esm/applications/sheets/cards-config.d.mts +49 -0
  391. package/src/foundry/client-esm/applications/sheets/combatant-config.d.mts +25 -0
  392. package/src/foundry/client-esm/applications/sheets/drawing-config.d.mts +25 -0
  393. package/src/foundry/client-esm/applications/sheets/folder-config.d.mts +25 -0
  394. package/src/foundry/client-esm/applications/sheets/item-sheet.d.mts +1 -1
  395. package/src/foundry/client-esm/applications/sheets/journal/_module.d.mts +16 -0
  396. package/src/foundry/client-esm/applications/sheets/journal/dialog-show.d.mts +19 -0
  397. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-category-config.d.mts +25 -0
  398. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-hbs-sheet.d.mts +19 -0
  399. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-image-sheet.d.mts +18 -0
  400. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-markdown-sheet.d.mts +18 -0
  401. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-pdf-sheet.d.mts +18 -0
  402. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-prose-mirror-sheet.d.mts +18 -0
  403. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-sheet.d.mts +28 -0
  404. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-text-sheet.d.mts +18 -0
  405. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-video-sheet.d.mts +18 -0
  406. package/src/foundry/client-esm/applications/sheets/journal/journal-entry-sheet.d.mts +35 -0
  407. package/src/foundry/client-esm/applications/sheets/macro-config.d.mts +25 -0
  408. package/src/foundry/client-esm/applications/sheets/note-config.d.mts +25 -0
  409. package/src/foundry/client-esm/applications/sheets/playlist-config.d.mts +25 -0
  410. package/src/foundry/client-esm/applications/sheets/playlist-sound-config.d.mts +25 -0
  411. package/src/foundry/client-esm/applications/sheets/region-behavior-config.d.mts +29 -5
  412. package/src/foundry/client-esm/applications/sheets/region-config.d.mts +35 -5
  413. package/src/foundry/client-esm/applications/sheets/roll-table-config.d.mts +25 -0
  414. package/src/foundry/client-esm/applications/sheets/roll-table-sheet.d.mts +25 -0
  415. package/src/foundry/client-esm/applications/sheets/scene-config.d.mts +25 -0
  416. package/src/foundry/client-esm/applications/sheets/table-result-config.d.mts +25 -0
  417. package/src/foundry/client-esm/applications/sheets/template-config.d.mts +25 -0
  418. package/src/foundry/client-esm/applications/sheets/tile-config.d.mts +25 -0
  419. package/src/foundry/client-esm/applications/sheets/token/_module.d.mts +7 -0
  420. package/src/foundry/client-esm/applications/sheets/token/mixin.d.mts +27 -0
  421. package/src/foundry/client-esm/applications/sheets/token/prototype-config.d.mts +18 -0
  422. package/src/foundry/client-esm/applications/sheets/token/token-config.d.mts +25 -0
  423. package/src/foundry/client-esm/applications/sheets/user-config.d.mts +3 -3
  424. package/src/foundry/client-esm/applications/sheets/wall-config.d.mts +25 -0
  425. package/src/foundry/client-esm/applications/sidebar/_module.d.mts +10 -0
  426. package/src/foundry/client-esm/applications/sidebar/apps/_module.d.mts +15 -0
  427. package/src/foundry/client-esm/applications/sidebar/apps/chat-popout.d.mts +22 -0
  428. package/src/foundry/client-esm/applications/sidebar/apps/compendium.d.mts +21 -0
  429. package/src/foundry/client-esm/applications/sidebar/apps/controls-config.d.mts +20 -0
  430. package/src/foundry/client-esm/applications/sidebar/apps/folder-export.d.mts +18 -0
  431. package/src/foundry/client-esm/applications/sidebar/apps/frame-viewer.d.mts +22 -0
  432. package/src/foundry/client-esm/applications/sidebar/apps/invitation-links.d.mts +17 -0
  433. package/src/foundry/client-esm/applications/sidebar/apps/module-management.d.mts +21 -0
  434. package/src/foundry/client-esm/applications/sidebar/apps/support-details.d.mts +17 -0
  435. package/src/foundry/client-esm/applications/sidebar/apps/tours-management.d.mts +20 -0
  436. package/src/foundry/client-esm/applications/sidebar/apps/world-config.d.mts +19 -0
  437. package/src/foundry/client-esm/applications/sidebar/document-directory.d.mts +30 -0
  438. package/src/foundry/client-esm/applications/sidebar/sidebar-tab.d.mts +86 -0
  439. package/src/foundry/client-esm/applications/sidebar/sidebar.d.mts +18 -0
  440. package/src/foundry/client-esm/applications/sidebar/tabs/_module.d.mts +17 -0
  441. package/src/foundry/client-esm/applications/sidebar/tabs/actor-directory.d.mts +20 -0
  442. package/src/foundry/client-esm/applications/sidebar/tabs/cards-directory.d.mts +20 -0
  443. package/src/foundry/client-esm/applications/sidebar/tabs/chat.d.mts +19 -0
  444. package/src/foundry/client-esm/applications/sidebar/tabs/combat-tracker.d.mts +19 -0
  445. package/src/foundry/client-esm/applications/sidebar/tabs/compendium-directory.d.mts +19 -0
  446. package/src/foundry/client-esm/applications/sidebar/tabs/item-directory.d.mts +20 -0
  447. package/src/foundry/client-esm/applications/sidebar/tabs/journal-directory.d.mts +20 -0
  448. package/src/foundry/client-esm/applications/sidebar/tabs/macro-directory.d.mts +20 -0
  449. package/src/foundry/client-esm/applications/sidebar/tabs/playlist-directory.d.mts +20 -0
  450. package/src/foundry/client-esm/applications/sidebar/tabs/roll-table-directory.d.mts +20 -0
  451. package/src/foundry/client-esm/applications/sidebar/tabs/scene-directory.d.mts +20 -0
  452. package/src/foundry/client-esm/applications/sidebar/tabs/settings.d.mts +18 -0
  453. package/src/foundry/client-esm/applications/ui/_module.d.mts +9 -2
  454. package/src/foundry/client-esm/applications/ui/game-pause.d.mts +22 -0
  455. package/src/foundry/client-esm/applications/ui/hotbar.d.mts +29 -0
  456. package/src/foundry/client-esm/applications/ui/main-menu.d.mts +27 -0
  457. package/src/foundry/client-esm/applications/ui/notifications.d.mts +208 -0
  458. package/src/foundry/client-esm/applications/ui/players.d.mts +26 -0
  459. package/src/foundry/client-esm/applications/ui/region-legend.d.mts +48 -3
  460. package/src/foundry/client-esm/applications/ui/scene-controls.d.mts +20 -0
  461. package/src/foundry/client-esm/applications/ui/scene-navigation.d.mts +28 -0
  462. package/src/foundry/client-esm/applications/ux/_module.d.mts +14 -0
  463. package/src/foundry/client-esm/applications/ux/context-menu.d.mts +359 -0
  464. package/src/foundry/client-esm/applications/ux/drag-drop.d.mts +21 -0
  465. package/src/foundry/client-esm/applications/ux/draggable.d.mts +9 -0
  466. package/src/foundry/client-esm/applications/ux/form-data-extended.d.mts +17 -0
  467. package/src/foundry/client-esm/applications/ux/html-secret.d.mts +21 -0
  468. package/src/foundry/client-esm/applications/ux/prosemirror-editor.d.mts +9 -0
  469. package/src/foundry/client-esm/applications/ux/search-filter.d.mts +9 -0
  470. package/src/foundry/client-esm/applications/ux/tabs.d.mts +29 -0
  471. package/src/foundry/client-esm/applications/ux/text-editor.d.mts +9 -0
  472. package/src/foundry/client-esm/appv1/_module.d.mts +7 -0
  473. package/src/foundry/client-esm/appv1/api/_module.d.mts +9 -0
  474. package/src/foundry/client-esm/appv1/api/application-v1.d.mts +5 -0
  475. package/src/foundry/client-esm/appv1/api/dialog-v1.d.mts +5 -0
  476. package/src/foundry/client-esm/appv1/api/document-sheet-v1.d.mts +5 -0
  477. package/src/foundry/client-esm/appv1/api/form-application-v1.d.mts +5 -0
  478. package/src/foundry/client-esm/appv1/sheets/_module.d.mts +10 -0
  479. package/src/foundry/client-esm/appv1/sheets/actor-sheet.d.mts +5 -0
  480. package/src/foundry/client-esm/appv1/sheets/adventure-importer.d.mts +5 -0
  481. package/src/foundry/client-esm/appv1/sheets/item-sheet.d.mts +5 -0
  482. package/src/foundry/client-esm/appv1/sheets/journal-page-sheet.d.mts +7 -0
  483. package/src/foundry/client-esm/appv1/sheets/journal-sheet.d.mts +5 -0
  484. package/src/foundry/client-esm/audio/_module.d.mts +2 -3
  485. package/src/foundry/client-esm/audio/_types.d.mts +1 -1
  486. package/src/foundry/client-esm/audio/biquad.d.mts +1 -1
  487. package/src/foundry/client-esm/audio/convolver.d.mts +1 -1
  488. package/src/foundry/client-esm/audio/helper.d.mts +6 -5
  489. package/src/foundry/client-esm/audio/sound.d.mts +2 -2
  490. package/src/foundry/client-esm/audio/timeout.d.mts +5 -2
  491. package/src/foundry/client-esm/av/_module.d.mts +10 -0
  492. package/src/foundry/client-esm/av/client.d.mts +18 -0
  493. package/src/foundry/client-esm/av/clients/_module.d.mts +6 -0
  494. package/src/foundry/client-esm/av/clients/simplepeer.d.mts +11 -0
  495. package/src/foundry/client-esm/av/master.d.mts +12 -0
  496. package/src/foundry/client-esm/av/settings.d.mts +30 -0
  497. package/src/foundry/client-esm/canvas/_module.d.mts +2 -2
  498. package/src/foundry/client-esm/canvas/edges/_module.d.mts +2 -2
  499. package/src/foundry/client-esm/canvas/edges/collision.d.mts +61 -18
  500. package/src/foundry/client-esm/canvas/edges/edge.d.mts +106 -42
  501. package/src/foundry/client-esm/canvas/edges/edges.d.mts +9 -0
  502. package/src/foundry/client-esm/canvas/edges/vertex.d.mts +51 -23
  503. package/src/foundry/client-esm/canvas/regions/_module.d.mts +2 -3
  504. package/src/foundry/client-esm/canvas/regions/geometry.d.mts +31 -0
  505. package/src/foundry/client-esm/canvas/regions/mesh.d.mts +61 -0
  506. package/src/foundry/client-esm/canvas/regions/polygon-tree.d.mts +101 -0
  507. package/src/foundry/client-esm/canvas/regions/shape.d.mts +118 -0
  508. package/src/foundry/client-esm/canvas/scene-manager.d.mts +12 -3
  509. package/src/foundry/client-esm/canvas/smaa/smaa.d.mts +2 -3
  510. package/src/foundry/client-esm/canvas/sources/_module.d.mts +2 -2
  511. package/src/foundry/client-esm/canvas/sources/base-effect-source.d.mts +32 -18
  512. package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +53 -15
  513. package/src/foundry/client-esm/canvas/sources/global-light-source.d.mts +18 -3
  514. package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +47 -23
  515. package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +17 -7
  516. package/src/foundry/client-esm/canvas/sources/point-light-source.d.mts +26 -14
  517. package/src/foundry/client-esm/canvas/sources/point-movement-source.d.mts +20 -4
  518. package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +26 -8
  519. package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +26 -25
  520. package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +89 -52
  521. package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -3
  522. package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +112 -2
  523. package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +170 -3
  524. package/src/foundry/client-esm/canvas/tokens/ring.d.mts +189 -2
  525. package/src/foundry/client-esm/client.d.mts +56 -63
  526. package/src/foundry/client-esm/config.d.mts +1 -0
  527. package/src/foundry/client-esm/data/_module.d.mts +8 -3
  528. package/src/foundry/client-esm/data/_types.d.mts +10 -0
  529. package/src/foundry/client-esm/data/calendar.d.mts +213 -0
  530. package/src/foundry/client-esm/data/client-backend.d.mts +17 -18
  531. package/src/foundry/client-esm/data/combat-config.d.mts +53 -0
  532. package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +3 -3
  533. package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +57 -0
  534. package/src/foundry/client-esm/data/region-behaviors/base.d.mts +59 -0
  535. package/src/foundry/client-esm/data/region-behaviors/display-scrolling-text.d.mts +64 -0
  536. package/src/foundry/client-esm/data/region-behaviors/execute-macro.d.mts +27 -0
  537. package/src/foundry/client-esm/data/region-behaviors/execute-script.d.mts +23 -0
  538. package/src/foundry/client-esm/data/region-behaviors/pause-game.d.mts +23 -0
  539. package/src/foundry/client-esm/data/region-behaviors/suppress-weather.d.mts +17 -0
  540. package/src/foundry/client-esm/data/region-behaviors/teleport-token.d.mts +32 -0
  541. package/src/foundry/client-esm/data/region-behaviors/toggle-behavior.d.mts +31 -0
  542. package/src/foundry/client-esm/data/terrain-data.d.mts +22 -0
  543. package/src/foundry/client-esm/dice/_module.d.mts +2 -3
  544. package/src/foundry/client-esm/dice/parser.d.mts +8 -0
  545. package/src/foundry/client-esm/dice/roll.d.mts +64 -30
  546. package/src/foundry/client-esm/dice/terms/_module.d.mts +2 -3
  547. package/src/foundry/client-esm/dice/terms/coin.d.mts +8 -1
  548. package/src/foundry/client-esm/dice/terms/dice.d.mts +11 -2
  549. package/src/foundry/client-esm/dice/terms/die.d.mts +9 -2
  550. package/src/foundry/client-esm/dice/terms/fate.d.mts +9 -2
  551. package/src/foundry/client-esm/dice/terms/function.d.mts +5 -2
  552. package/src/foundry/client-esm/dice/terms/numeric.d.mts +1 -1
  553. package/src/foundry/client-esm/dice/terms/operator.d.mts +1 -1
  554. package/src/foundry/client-esm/dice/terms/parenthetical.d.mts +1 -1
  555. package/src/foundry/client-esm/dice/terms/pool.d.mts +15 -6
  556. package/src/foundry/client-esm/dice/terms/string.d.mts +1 -1
  557. package/src/foundry/client-esm/dice/terms/term.d.mts +12 -3
  558. package/src/foundry/client-esm/documents/_module.d.mts +11 -0
  559. package/src/foundry/client-esm/documents/_types.d.mts +8 -0
  560. package/src/foundry/client-esm/documents/abstract/_module.d.mts +6 -0
  561. package/src/foundry/client-esm/documents/collections/_module.d.mts +6 -0
  562. package/src/foundry/client-esm/game.d.mts +7 -0
  563. package/src/foundry/client-esm/helpers/_module.d.mts +2 -2
  564. package/src/foundry/client-esm/helpers/_types.d.mts +1 -1
  565. package/src/foundry/client-esm/hooks.d.mts +1 -0
  566. package/src/foundry/client-esm/nue/_module.d.mts +9 -0
  567. package/src/foundry/client-esm/nue/nue-manager.d.mts +18 -0
  568. package/src/foundry/client-esm/nue/tour.d.mts +9 -0
  569. package/src/foundry/client-esm/nue/tours/_module.d.mts +8 -0
  570. package/src/foundry/client-esm/nue/tours/canvas-tour.d.mts +12 -0
  571. package/src/foundry/client-esm/nue/tours/setup-tour.d.mts +11 -0
  572. package/src/foundry/client-esm/nue/tours/sidebar-tour.d.mts +11 -0
  573. package/src/foundry/client-esm/nue/tours-collection.d.mts +25 -0
  574. package/src/foundry/client-esm/packages/_module.d.mts +22 -0
  575. package/src/foundry/client-esm/packages/_types.d.mts +11 -0
  576. package/src/foundry/client-esm/packages/client-package.d.mts +11 -0
  577. package/src/foundry/client-esm/packages/module.d.mts +8 -0
  578. package/src/foundry/client-esm/packages/system.d.mts +8 -0
  579. package/src/foundry/client-esm/packages/world.d.mts +8 -0
  580. package/src/foundry/client-esm/ui.d.mts +1 -0
  581. package/src/foundry/client-esm/utils/_module.d.mts +7 -0
  582. package/src/foundry/client-esm/utils/_types.d.mts +2 -0
  583. package/src/foundry/client-esm/utils/helpers.d.mts +6 -0
  584. package/src/foundry/common/{types.d.mts → _types.d.mts} +3 -3
  585. package/src/foundry/common/abstract/{module.d.mts → _module.d.mts} +2 -2
  586. package/src/foundry/common/abstract/backend.d.mts +38 -44
  587. package/src/foundry/common/abstract/data.d.mts +22 -51
  588. package/src/foundry/common/abstract/document.d.mts +212 -121
  589. package/src/foundry/common/abstract/embedded-collection-delta.d.mts +1 -1
  590. package/src/foundry/common/abstract/embedded-collection.d.mts +37 -7
  591. package/src/foundry/common/abstract/socket.d.mts +1 -1
  592. package/src/foundry/common/abstract/type-data.d.mts +40 -24
  593. package/src/foundry/common/config.d.mts +3 -1
  594. package/src/foundry/common/constants.d.mts +234 -205
  595. package/src/foundry/common/data/{module.d.mts → _module.d.mts} +2 -2
  596. package/src/foundry/common/data/_types.d.mts +47 -0
  597. package/src/foundry/common/data/data.d.mts +25 -19
  598. package/src/foundry/common/data/fields.d.mts +469 -423
  599. package/src/foundry/common/data/validation-failure.d.mts +4 -6
  600. package/src/foundry/common/documents/_module.d.mts +4 -2
  601. package/src/foundry/common/documents/_types.d.mts +10 -45
  602. package/src/foundry/common/documents/active-effect.d.mts +7 -4
  603. package/src/foundry/common/documents/actor-delta.d.mts +7 -5
  604. package/src/foundry/common/documents/actor.d.mts +6 -19
  605. package/src/foundry/common/documents/adventure.d.mts +13 -2
  606. package/src/foundry/common/documents/ambient-light.d.mts +3 -1
  607. package/src/foundry/common/documents/ambient-sound.d.mts +3 -1
  608. package/src/foundry/common/documents/card.d.mts +6 -4
  609. package/src/foundry/common/documents/cards.d.mts +3 -1
  610. package/src/foundry/common/documents/chat-message.d.mts +10 -8
  611. package/src/foundry/common/documents/combat.d.mts +3 -1
  612. package/src/foundry/common/documents/combatant.d.mts +4 -12
  613. package/src/foundry/common/documents/drawing.d.mts +6 -4
  614. package/src/foundry/common/documents/fog-exploration.d.mts +3 -1
  615. package/src/foundry/common/documents/folder.d.mts +9 -1
  616. package/src/foundry/common/documents/item.d.mts +5 -3
  617. package/src/foundry/common/documents/journal-entry-page.d.mts +3 -2
  618. package/src/foundry/common/documents/journal-entry.d.mts +3 -1
  619. package/src/foundry/common/documents/macro.d.mts +5 -3
  620. package/src/foundry/common/documents/measured-template.d.mts +6 -8
  621. package/src/foundry/common/documents/module.d.mts +2 -2
  622. package/src/foundry/common/documents/note.d.mts +4 -2
  623. package/src/foundry/common/documents/playlist-sound.d.mts +4 -2
  624. package/src/foundry/common/documents/playlist.d.mts +3 -1
  625. package/src/foundry/common/documents/region-behavior.d.mts +88 -0
  626. package/src/foundry/common/documents/region.d.mts +108 -0
  627. package/src/foundry/common/documents/roll-table.d.mts +3 -1
  628. package/src/foundry/common/documents/scene.d.mts +9 -1
  629. package/src/foundry/common/documents/setting.d.mts +3 -2
  630. package/src/foundry/common/documents/table-result.d.mts +4 -4
  631. package/src/foundry/common/documents/tile.d.mts +3 -1
  632. package/src/foundry/common/documents/token.d.mts +15 -7
  633. package/src/foundry/common/documents/user.d.mts +7 -5
  634. package/src/foundry/common/documents/wall.d.mts +12 -15
  635. package/src/foundry/common/grid/_module.d.mts +3 -3
  636. package/src/foundry/common/grid/_types.d.mts +47 -0
  637. package/src/foundry/common/grid/base.d.mts +10 -14
  638. package/src/foundry/common/grid/gridless.d.mts +2 -2
  639. package/src/foundry/common/grid/hexagonal.d.mts +21 -10
  640. package/src/foundry/common/grid/square.d.mts +2 -2
  641. package/src/foundry/common/packages/{module.d.mts → _module.d.mts} +2 -2
  642. package/src/foundry/common/packages/_types.d.mts +25 -0
  643. package/src/foundry/common/packages/base-package.d.mts +6 -6
  644. package/src/foundry/common/packages/base-system.d.mts +19 -4
  645. package/src/foundry/common/packages/base-world.d.mts +2 -2
  646. package/src/foundry/common/packages/sub-types.d.mts +1 -1
  647. package/src/foundry/common/primitives/array.d.mts +1 -1
  648. package/src/foundry/common/primitives/number.d.mts +1 -1
  649. package/src/foundry/common/primitives/string.d.mts +1 -1
  650. package/src/foundry/common/prosemirror/_module.d.mts +15 -15
  651. package/src/foundry/common/prosemirror/_types.d.mts +29 -0
  652. package/src/foundry/common/prosemirror/dirty-plugin.d.mts +1 -1
  653. package/src/foundry/common/prosemirror/dom-parser.d.mts +2 -1
  654. package/src/foundry/common/prosemirror/highlight-matches-plugin.d.mts +1 -1
  655. package/src/foundry/common/prosemirror/image-plugin.d.mts +1 -1
  656. package/src/foundry/common/prosemirror/paste-transformer.d.mts +1 -1
  657. package/src/foundry/common/prosemirror/plugin.d.mts +1 -1
  658. package/src/foundry/common/prosemirror/schema/index.d.mts +1 -1
  659. package/src/foundry/common/prosemirror/schema/lists.d.mts +2 -0
  660. package/src/foundry/common/utils/{module.d.mts → _module.d.mts} +2 -2
  661. package/src/foundry/common/utils/_types.d.mts +1 -0
  662. package/src/foundry/common/utils/bitmask.d.mts +20 -11
  663. package/src/foundry/common/utils/collection.d.mts +7 -19
  664. package/src/foundry/common/utils/color.d.mts +20 -2
  665. package/src/foundry/common/utils/event-emitter.d.mts +1 -1
  666. package/src/foundry/common/utils/geometry.d.mts +12 -2
  667. package/src/foundry/common/utils/helpers.d.mts +23 -13
  668. package/src/foundry/common/utils/string-tree.d.mts +1 -1
  669. package/src/foundry/common/utils/word-tree.d.mts +1 -1
  670. package/src/foundry/index.d.mts +0 -1
  671. package/src/foundry/{clipper → public/scripts/clipper}/clipper.d.mts +52 -43
  672. package/src/foundry/public/scripts/index.d.mts +1 -0
  673. package/src/foundry/public/scripts/workers/image-compressor.d.mts +23 -0
  674. package/src/foundry/public/scripts/workers/index.d.mts +1 -0
  675. package/{index-lenient.d.mts → src/index-lenient.d.mts} +2 -0
  676. package/src/index.d.mts +6 -0
  677. package/src/tsconfig.json +19 -0
  678. package/src/types/augments/particles.d.mts +29 -0
  679. package/src/types/augments/pixi.d.mts +1013 -10
  680. package/src/types/augments/smooth.d.mts +31 -0
  681. package/src/types/augments/tinyMCE.d.mts +1 -1
  682. package/src/types/config.d.mts +20 -311
  683. package/src/types/documentConfiguration.d.mts +91 -32
  684. package/src/types/index.d.mts +1 -1
  685. package/src/types/lib.d.mts +12 -0
  686. package/src/types/workers/image-compressor.d.mts +176 -0
  687. package/src/utils/index.d.mts +1091 -0
  688. package/index.d.mts +0 -5
  689. package/src/foundry/client/ui/context.d.mts +0 -213
  690. package/src/foundry/client/ui/notifications.d.mts +0 -136
  691. package/src/foundry/common/primitives/regex.d.mts +0 -12
  692. package/src/types/helperTypes.d.mts +0 -389
  693. package/src/types/utils.d.mts +0 -520
  694. /package/src/foundry/common/primitives/{module.d.mts → _module.d.mts} +0 -0
  695. /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,132 +1,143 @@
1
- import type { InexactPartial } from "../../../../types/utils.d.mts";
2
-
3
- declare module "pixi.js" {
4
- interface Circle {
5
- /**
6
- * Determine the center of the circle.
7
- * Trivial, but used to match center method for other shapes.
8
- */
9
- get circle(): PIXI.Point;
10
-
11
- /**
12
- * Determine if a point is on or nearly on this circle.
13
- * @param point - Point to test
14
- * @param epsilon - Tolerated margin of error
15
- * (default: `1e-08`)
16
- * @returns Is the point on the circle within the allowed tolerance?
17
- */
18
- pointIsOn(point: Canvas.Point, epsilon: number): boolean;
19
-
20
- /**
21
- * Get all intersection points on this circle for a segment A|B
22
- * Intersections are sorted from A to B.
23
- * @param a - The first endpoint on segment A|B
24
- * @param b - The second endpoint on segment A|B
25
- * @returns Points where the segment A|B intersects the circle
26
- */
27
- segmentIntersections(a: Canvas.Point, b: Canvas.Point): [Canvas.Point?, Canvas.Point?];
28
-
29
- /**
30
- * Calculate an x,y point on this circle's circumference given an angle
31
- * 0: due east
32
- * π / 2: due south
33
- * π or -π: due west
34
- * -π/2: due north
35
- * @param angle - Angle of the point, in radians
36
- * @returns The point on the circle at the given angle
37
- */
38
- pointAtAngle(angle: number): Canvas.Point;
39
-
40
- /**
41
- * Get all the points for a polygon approximation of this circle between two points.
42
- * The two points can be anywhere in 2d space. The intersection of this circle with the line from this circle center
43
- * to the point will be used as the start or end point, respectively.
44
- * This is used to draw the portion of the circle (the arc) between two intersection points on this circle.
45
- * @param a - Point in 2d space representing the start point
46
- * @param b - Point in 2d space representing the end point
47
- * @param options - Options passed on to the pointsForArc method
48
- * @returns An array of points arranged clockwise from start to end
49
- */
50
- pointsBetween(a: Canvas.Point, b: Canvas.Point, options?: Circle.PointsForArcOptions): Canvas.Point[];
51
-
52
- /**
53
- * Get the points that would approximate a circular arc along this circle, given a starting and ending angle.
54
- * Points returned are clockwise. If from and to are the same, a full circle will be returned.
55
- * @param fromAngle - Starting angle, in radians. π is due north, π/2 is due east
56
- * @param toAngle - Ending angle, in radians
57
- * @param options - Options which affect how the circle is converted
58
- * @returns An array of points along the requested arc
59
- */
60
- pointsForArc(fromAngle: number, toAngle: number, options?: Circle.PointsForArcOptions): Canvas.Point[];
61
-
62
- /**
63
- * Approximate this PIXI.Circle as a PIXI.Polygon
64
- * @param options - Options forwarded on to the pointsForArc method
65
- * @returns The Circle expressed as a PIXI.Polygon
66
- */
67
- toPolygon(options?: Circle.PointsForArcOptions): PIXI.Polygon;
68
-
69
- /**
70
- * The recommended vertex density for the regular polygon approximation of a circle of a given radius.
71
- * Small radius circles have fewer vertices. The returned value will be rounded up to the nearest integer.
72
- * See the formula described at:
73
- * https://math.stackexchange.com/questions/4132060/compute-number-of-regular-polgy-sides-to-approximate-circle-to-defined-precision
74
- * @param radius - Circle radius
75
- * @param epsilon - The maximum tolerable distance between an approximated line segment and the true radius.
76
- * A larger epsilon results in fewer points for a given radius.
77
- * @returns The number of points for the approximated polygon
78
- */
79
- approximateVertexDensity(radius: number, epsilon?: number): number;
80
-
81
- /**
82
- * Intersect this PIXI.Circle with a PIXI.Polygon.
83
- * @param polygon - A PIXI.Polygon
84
- * @param options - Options which configure how the intersection is computed
85
- * @returns The intersected polygon
86
- */
87
- intersectPolygon(
88
- polygon: PIXI.Polygon,
89
- options?: InexactPartial<{
90
- /** The number of points which defines the density of approximation */
91
- density: number;
1
+ import type { NullishProps } from "fvtt-types/utils";
2
+ import type { LineCircleIntersection } from "../../../common/utils/geometry.d.mts";
3
+ import * as _PIXI from "pixi.js";
4
+
5
+ declare global {
6
+ namespace PIXI {
7
+ interface Circle {
8
+ /**
9
+ * Determine the center of the circle.
10
+ * Trivial, but used to match center method for other shapes.
11
+ */
12
+ get center(): PIXI.Point;
13
+
14
+ /**
15
+ * Determine if a point is on or nearly on this circle.
16
+ * @param point - Point to test
17
+ * @param epsilon - Tolerated margin of error
18
+ * (default: `1e-08`)
19
+ * @returns Is the point on the circle within the allowed tolerance?
20
+ */
21
+ pointIsOn(point: Canvas.Point, epsilon?: number): boolean;
22
+
23
+ /**
24
+ * Get all intersection points on this circle for a segment A|B
25
+ * Intersections are sorted from A to B.
26
+ * @param a - The first endpoint on segment A|B
27
+ * @param b - The second endpoint on segment A|B
28
+ * @returns Points where the segment A|B intersects the circle
29
+ */
30
+ segmentIntersections(a: Canvas.Point, b: Canvas.Point): LineCircleIntersection["intersections"];
31
+
32
+ /**
33
+ * Calculate an x,y point on this circle's circumference given an angle
34
+ * 0: due east
35
+ * π / 2: due south
36
+ * π or -π: due west
37
+ * -π/2: due north
38
+ * @param angle - Angle of the point, in radians
39
+ * @returns The point on the circle at the given angle
40
+ */
41
+ pointAtAngle(angle: number): Canvas.Point;
42
+
43
+ /**
44
+ * Get all the points for a polygon approximation of this circle between two points.
45
+ * The two points can be anywhere in 2d space. The intersection of this circle with the line from this circle center
46
+ * to the point will be used as the start or end point, respectively.
47
+ * This is used to draw the portion of the circle (the arc) between two intersection points on this circle.
48
+ * @param a - Point in 2d space representing the start point
49
+ * @param b - Point in 2d space representing the end point
50
+ * @param options - Options passed on to the pointsForArc method
51
+ * @returns An array of points arranged clockwise from start to end
52
+ */
53
+ pointsBetween(a: Canvas.Point, b: Canvas.Point, options?: Circle.PointsForArcOptions): Canvas.Point[];
54
+
55
+ /**
56
+ * Get the points that would approximate a circular arc along this circle, given a starting and ending angle.
57
+ * Points returned are clockwise. If from and to are the same, a full circle will be returned.
58
+ * @param fromAngle - Starting angle, in radians. π is due north, π/2 is due east
59
+ * @param toAngle - Ending angle, in radians
60
+ * @param options - Options which affect how the circle is converted
61
+ * @returns An array of points along the requested arc
62
+ */
63
+ pointsForArc(fromAngle: number, toAngle: number, options?: Circle.PointsForArcOptions): Canvas.Point[];
64
+
65
+ /**
66
+ * Approximate this PIXI.Circle as a PIXI.Polygon
67
+ * @param options - Options forwarded on to the pointsForArc method
68
+ * @returns The Circle expressed as a PIXI.Polygon
69
+ */
70
+ toPolygon(options?: Circle.PointsForArcOptions): PIXI.Polygon;
92
71
 
93
- /** The clipper clip type */
94
- clipType: number;
72
+ /**
73
+ * Intersect this PIXI.Circle with a PIXI.Polygon.
74
+ * @param polygon - A PIXI.Polygon
75
+ * @param options - Options which configure how the intersection is computed
76
+ * @returns The intersected polygon
77
+ * @remarks Slightly bugged in v12; if `options.weilerAtherton` is falsey, it will not pass on `options.clipType` to `PIXI.Polygon#intersectPolygon`,
78
+ * forcing the default of `ClipperLib.ClipTypes.ctIntersection`
79
+ */
80
+ intersectPolygon(polygon: PIXI.Polygon, options?: PIXI.Circle.WACIntersectPolygonOptions): PIXI.Polygon;
81
+ intersectPolygon(polygon: PIXI.Polygon, options?: PIXI.Circle.ClipperLibIntersectPolygonOptions): PIXI.Polygon;
95
82
 
83
+ /**
84
+ * Intersect this PIXI.Circle with an array of ClipperPoints.
85
+ * Convert the circle to a Polygon approximation and use intersectPolygon.
86
+ * In the future we may replace this with more specialized logic which uses the line-circle intersection formula.
87
+ * @param clipperPoints - Array of ClipperPoints generated by PIXI.Polygon.toClipperPoints()
88
+ * @param options - Options which configure how the intersection is computed
89
+ * @returns The intersected polygon
90
+ */
91
+ intersectClipper(
92
+ clipperPoints: PIXI.Polygon.ClipperPoint[],
93
+ options?: PIXI.Circle.IntersectClipperOptions,
94
+ ): PIXI.Polygon;
95
+ }
96
+
97
+ namespace Circle {
98
+ /** @remarks The options for `intersectPolygon` when `weilerAtherton` is true (or not provided) */
99
+ interface WACIntersectPolygonOptions extends PIXI.Rectangle.WACIntersectPolygonOptions {}
100
+
101
+ /** @remarks The options for `intersectPolygon` when `weilerAtherton` is false. */
102
+ interface ClipperLibIntersectPolygonOptions
103
+ extends PIXI.Rectangle.ClipperLibIntersectPolygonOptions,
104
+ Pick<PIXI.Circle.PointsForArcOptions, "density"> {}
105
+
106
+ /** @internal Helper type to simplify use of optionality- and nullish-permissiveness-modifying helpers */
107
+ type _PointsForArcOptions = NullishProps<{
96
108
  /**
97
- * Use the Weiler-Atherton algorithm. Otherwise, use Clipper.
98
- * (default: `true`)
99
- * */
100
- weilerAtherton: boolean;
101
- }>,
102
- ): PIXI.Polygon;
103
-
104
- /**
105
- * Intersect this PIXI.Circle with an array of ClipperPoints.
106
- * Convert the circle to a Polygon approximation and use intersectPolygon.
107
- * In the future we may replace this with more specialized logic which uses the line-circle intersection formula.
108
- * @param clipperPoints - Array of ClipperPoints generated by PIXI.Polygon.toClipperPoints()
109
- * @param options - Options which configure how the intersection is computed
110
- * @returns The intersected polygon
111
- */
112
- intersectClipper(
113
- clipperPoints: PIXI.Polygon.ClipperPoint[],
114
- options?: PIXI.Circle.IntersectClipperOptions,
115
- ): PIXI.Polygon;
116
- }
109
+ * The number of points which defines the density of approximation
110
+ * @defaultValue `PIXI.Circle.approximateVertexDensity(this.radius)`
111
+ * @remarks Default provided by `??=` in `pointsForArc` function body
112
+ */
113
+ density: number;
114
+
115
+ /**
116
+ * Whether to include points at the circle where the arc starts and ends
117
+ * @defaultValue `true`
118
+ */
119
+ includeEndpoints: boolean;
120
+ }>;
117
121
 
118
- namespace Circle {
119
- interface PointsForArcOptions {
120
- /** The number of points which defines the density of approximation */
121
- density: number;
122
+ interface PointsForArcOptions extends _PointsForArcOptions {}
122
123
 
123
- /** Whether to include points at the circle where the arc starts and ends */
124
- includeEndpoints: boolean;
124
+ interface IntersectClipperOptions
125
+ extends PIXI.Polygon.IntersectClipperOptions,
126
+ Pick<PIXI.Circle.PointsForArcOptions, "density"> {}
125
127
  }
126
128
 
127
- interface IntersectClipperOptions extends PIXI.Polygon.IntersectClipperOptions {
128
- /** The number of points which defines the density of approximation */
129
- density?: number | undefined;
129
+ class Circle extends _PIXI.Circle {
130
+ /**
131
+ * The recommended vertex density for the regular polygon approximation of a circle of a given radius.
132
+ * Small radius circles have fewer vertices. The returned value will be rounded up to the nearest integer.
133
+ * See the formula described at:
134
+ * https://math.stackexchange.com/questions/4132060/compute-number-of-regular-polgy-sides-to-approximate-circle-to-defined-precision
135
+ * @param radius - Circle radius
136
+ * @param epsilon - The maximum tolerable distance between an approximated line segment and the true radius.
137
+ * A larger epsilon results in fewer points for a given radius. (default: `1`)
138
+ * @returns The number of points for the approximated polygon
139
+ */
140
+ static approximateVertexDensity(radius: number, epsilon?: number): number;
130
141
  }
131
142
  }
132
143
  }
@@ -3,7 +3,9 @@ export {};
3
3
  declare global {
4
4
  namespace PIXI {
5
5
  namespace Graphics {
6
- type Path = [number[] | PIXI.IPointData[] | PIXI.Polygon] | Array<number | PIXI.IPointData>;
6
+ type Path =
7
+ | [points: number[] | PIXI.IPointData[] | PIXI.Polygon, smoothingFactor?: number]
8
+ | Array<number | PIXI.IPointData>;
7
9
  }
8
10
  }
9
11
  }
@@ -1,11 +1,11 @@
1
- import type { AnyObject } from "../../../../types/utils.d.mts";
1
+ export {};
2
2
 
3
3
  declare global {
4
4
  /**
5
5
  * A custom Transform class allowing to observe changes with a callback.
6
6
  * @privateRemarks Scope extends object is intentional; `"The scope bound to an ObservableTransform class must be a valid object/class."`
7
7
  */
8
- class ObservableTransform<Scope extends AnyObject, CB extends (this: Scope) => unknown> extends PIXI.Transform {
8
+ class ObservableTransform<CB extends (this: Scope) => unknown, Scope extends object> extends PIXI.Transform {
9
9
  /**
10
10
  *
11
11
  * @param callback - The callback called to observe changes.
@@ -27,4 +27,12 @@ declare global {
27
27
 
28
28
  protected override updateSkew(): void;
29
29
  }
30
+ namespace ObservableTransform {
31
+ interface Any extends AnyObservableTransform {}
32
+ type AnyConstructor = typeof AnyObservableTransform;
33
+ }
34
+ }
35
+
36
+ declare abstract class AnyObservableTransform extends ObservableTransform<any, any> {
37
+ constructor(arg0: never, ...args: never[]);
30
38
  }
@@ -1,142 +1,163 @@
1
- import type { InexactPartial } from "../../../../types/utils.d.mts";
2
-
3
- declare module "pixi.js" {
4
- interface Polygon {
5
- /**
6
- * Test whether the polygon is has a positive signed area.
7
- * Using a y-down axis orientation, this means that the polygon is "clockwise".
8
- */
9
- get isPositive(): boolean;
10
-
11
- /**
12
- * @remarks Non enumerable
13
- */
14
- _isPositive?: boolean;
15
-
16
- /**
17
- * Clear the cached signed orientation.
18
- */
19
- clearCache(): void;
20
-
21
- /**
22
- * Compute the signed area of polygon using an approach similar to ClipperLib.Clipper.Area.
23
- * The math behind this is based on the Shoelace formula. https://en.wikipedia.org/wiki/Shoelace_formula.
24
- * The area is positive if the orientation of the polygon is positive.
25
- * @returns The signed area of the polygon
26
- */
27
- signedArea(): number;
28
-
29
- /**
30
- * Reverse the order of the polygon points in-place, replacing the points array into the polygon.
31
- * Note: references to the old points array will not be affected.
32
- * @returns This polygon with its orientation reversed
33
- */
34
- reverseOrientation(): PIXI.Polygon;
35
-
36
- /**
37
- * Add a de-duplicated point to the Polygon.
38
- * @param point - The point to add to the Polygon
39
- * @returns A reference to the polygon for method chaining
40
- */
41
- addPoint(point: Canvas.Point): this;
42
-
43
- /**
44
- * Return the bounding box for a PIXI.Polygon.
45
- * The bounding rectangle is normalized such that the width and height are non-negative.
46
- * @returns The bounding PIXI.Rectangle
47
- */
48
- getBounds(): PIXI.Rectangle;
49
-
50
- /**
51
- * Construct a PIXI.Polygon instance from an array of clipper points [\{X,Y\}, ...].
52
- * @param points - An array of points returned by clipper
53
- * @param options - Options which affect how canvas points are generated
54
- * @param scalingFactor -
55
- * @returns The resulting PIXI.Polygon
56
- */
57
- fromClipperPoints(
58
- points: PIXI.Polygon.ClipperPoint[],
59
- options?: InexactPartial<{
1
+ import type { InexactPartial, NullishProps } from "fvtt-types/utils";
2
+ import * as _PIXI from "pixi.js";
3
+
4
+ declare global {
5
+ namespace PIXI {
6
+ interface Polygon {
7
+ /**
8
+ * Test whether the polygon is has a positive signed area.
9
+ * Using a y-down axis orientation, this means that the polygon is "clockwise".
10
+ */
11
+ get isPositive(): boolean;
12
+
13
+ /**
14
+ * @remarks Non enumerable
15
+ */
16
+ _isPositive?: boolean;
17
+
18
+ /**
19
+ * Clear the cached signed orientation.
20
+ */
21
+ clearCache(): void;
22
+
23
+ /**
24
+ * Compute the signed area of polygon using an approach similar to ClipperLib.Clipper.Area.
25
+ * The math behind this is based on the Shoelace formula. https://en.wikipedia.org/wiki/Shoelace_formula.
26
+ * The area is positive if the orientation of the polygon is positive.
27
+ * @returns The signed area of the polygon
28
+ */
29
+ signedArea(): number;
30
+
31
+ /**
32
+ * Reverse the order of the polygon points in-place, replacing the points array into the polygon.
33
+ * Note: references to the old points array will not be affected.
34
+ * @returns This polygon with its orientation reversed
35
+ */
36
+ reverseOrientation(): this;
37
+
38
+ /**
39
+ * Add a de-duplicated point to the Polygon.
40
+ * @param point - The point to add to the Polygon
41
+ * @returns A reference to the polygon for method chaining
42
+ */
43
+ addPoint(point: Canvas.Point): this;
44
+
45
+ /**
46
+ * Return the bounding box for a PIXI.Polygon.
47
+ * The bounding rectangle is normalized such that the width and height are non-negative.
48
+ * @returns The bounding PIXI.Rectangle
49
+ */
50
+ getBounds(): PIXI.Rectangle;
51
+
52
+ /**
53
+ * Convert a PIXI.Polygon into an array of clipper points [\{X,Y\}, ...].
54
+ * Note that clipper points must be rounded to integers.
55
+ * In order to preserve some amount of floating point precision, an optional scaling factor may be provided.
56
+ * @param options - Options which affect how clipper points are generated
57
+ * @returns An array of points to be used by clipper
58
+ */
59
+ toClipperPoints(options?: PIXI.Polygon.ClipperPointsOptions): PIXI.Polygon.ClipperPoint[];
60
+
61
+ /**
62
+ * Determine whether the PIXI.Polygon is closed, defined by having the same starting and ending point.
63
+ * @remarks Non-enumerable
64
+ */
65
+ get isClosed(): boolean;
66
+
67
+ /**
68
+ * Intersect this PIXI.Polygon with another PIXI.Polygon using the clipper library.
69
+ * @param other - Another PIXI.Polygon
70
+ * @param options - Options which configure how the intersection is computed
71
+ * @returns The intersected polygon
72
+ */
73
+ intersectPolygon(other: PIXI.Polygon, options?: PIXI.Polygon.IntersectPolygonOptions): PIXI.Polygon;
74
+
75
+ /**
76
+ * Intersect this PIXI.Polygon with an array of ClipperPoints.
77
+ * @param clipperPoints - Array of clipper points generated by PIXI.Polygon.toClipperPoints()
78
+ * @param options - Options which configure how the intersection is computed
79
+ */
80
+ intersectClipper(
81
+ clipperPoints: PIXI.Polygon.ClipperPoint[],
82
+ options?: PIXI.Polygon.IntersectClipperOptions,
83
+ ): PIXI.Polygon.ClipperPoint[];
84
+
85
+ /**
86
+ * Intersect this PIXI.Polygon with a PIXI.Circle.
87
+ * For now, convert the circle to a Polygon approximation and use intersectPolygon.
88
+ * In the future we may replace this with more specialized logic which uses the line-circle intersection formula.
89
+ * @param circle - A PIXI.Circle
90
+ * @param options - Options which configure how the intersection is computed
91
+ * @returns The intersected polygon
92
+ */
93
+ intersectCircle(circle: PIXI.Circle, options?: PIXI.Circle.IntersectClipperOptions): PIXI.Polygon;
94
+
95
+ /**
96
+ * Intersect this PIXI.Polygon with a PIXI.Rectangle.
97
+ * For now, convert the rectangle to a Polygon and use intersectPolygon.
98
+ * In the future we may replace this with more specialized logic which uses the line-line intersection formula.
99
+ * @param rect - A PIXI.Rectangle
100
+ * @param options - Options which configure how the intersection is computed
101
+ * @returns The intersected polygon
102
+ */
103
+ intersectRectangle(rect: PIXI.Rectangle, options?: PIXI.Rectangle.WACIntersectPolygonOptions): PIXI.Polygon;
104
+ intersectRectangle(
105
+ rect: PIXI.Rectangle,
106
+ options?: PIXI.Rectangle.ClipperLibIntersectPolygonOptions,
107
+ ): PIXI.Polygon;
108
+ }
109
+
110
+ namespace Polygon {
111
+ type OrPointsFlat = number[] | PIXI.Polygon;
112
+ type OrPoints = OrPointsFlat | PIXI.IPointData[];
113
+
114
+ /** @privateRemarks Foundry uses this type instead of full `ClipperLib.IntPoint` objects */
115
+ interface ClipperPoint {
116
+ X: number;
117
+ Y: number;
118
+ }
119
+
120
+ /** @internal */
121
+ type _IntersectClipperOptions = InexactPartial<{
60
122
  /**
61
- * A scaling factor used to preserve floating point precision
123
+ * A scaling factor passed to Polygon#toClipperPoints to preserve precision
124
+ * @remarks Can't be `null` as, where it has any, it only has parameter defaults
62
125
  * @defaultValue `1`
63
126
  */
64
127
  scalingFactor: number;
65
- }>,
66
- ): PIXI.Polygon;
67
-
68
- /**
69
- * Convert a PIXI.Polygon into an array of clipper points [\{X,Y\}, ...].
70
- * Note that clipper points must be rounded to integers.
71
- * In order to preserve some amount of floating point precision, an optional scaling factor may be provided.
72
- * @param options - Options which affect how clipper points are generated
73
- * @returns An array of points to be used by clipper
74
- */
75
- toClipperPoints(options?: {
76
- /** A scaling factor used to preserve floating point precision
77
- * (default: `1`) */
78
- scalingFactor: number;
79
- }): PIXI.Polygon.ClipperPoint[];
80
-
81
- /**
82
- * Determine whether the PIXI.Polygon is closed, defined by having the same starting and ending point.
83
- */
84
- get isClosed(): boolean;
85
-
86
- /**
87
- * Intersect this PIXI.Polygon with another PIXI.Polygon using the clipper library.
88
- * @param other - Another PIXI.Polygon
89
- * @param options - Options which configure how the intersection is computed
90
- * @returns The intersected polygon
91
- */
92
- intersectPolygon(other: PIXI.Polygon, options: PIXI.Polygon.IntersectClipperOptions): PIXI.Polygon;
93
-
94
- /**
95
- * Intersect this PIXI.Polygon with an array of ClipperPoints.
96
- * @param clipperPoints - Array of clipper points generated by PIXI.Polygon.toClipperPoints()
97
- * @param options - Options which configure how the intersection is computed
98
- */
99
- intersectClipper(
100
- clipperPoints: PIXI.Polygon.ClipperPoint[],
101
- options?: PIXI.Polygon.IntersectClipperOptions,
102
- ): PIXI.Polygon.ClipperPoint[];
103
-
104
- /**
105
- * Intersect this PIXI.Polygon with a PIXI.Circle.
106
- * For now, convert the circle to a Polygon approximation and use intersectPolygon.
107
- * In the future we may replace this with more specialized logic which uses the line-circle intersection formula.
108
- * @param circle - A PIXI.Circle
109
- * @param options - Options which configure how the intersection is computed
110
- * @returns The intersected polygon
111
- */
112
- intersectCircle(circle: PIXI.Circle, options?: PIXI.Circle.IntersectClipperOptions): PIXI.Polygon;
113
-
114
- /**
115
- * Intersect this PIXI.Polygon with a PIXI.Rectangle.
116
- * For now, convert the rectangle to a Polygon and use intersectPolygon.
117
- * In the future we may replace this with more specialized logic which uses the line-line intersection formula.
118
- * @param rect - A PIXI.Rectangle
119
- * @param options - Options which configure how the intersection is computed
120
- * @returns The intersected polygon
121
- */
122
- intersectRectangle(rect: PIXI.Rectangle, options?: PIXI.Rectangle.IntersectPolygonOptions): PIXI.Polygon;
123
- }
124
-
125
- namespace Polygon {
126
- interface ClipperPoint {
127
- X: number;
128
- Y: number;
128
+ }> &
129
+ NullishProps<{
130
+ /**
131
+ * The clipper clip type
132
+ * @defaultValue `ClipperLib.ClipType.ctIntersection`
133
+ * @remarks ClipperLib functions require a non-nullish `ClipperLib.ClipType` value, but the Foundry functions have `??=` guards for this.
134
+ */
135
+ clipType: ClipperLib.ClipType;
136
+ }>;
137
+
138
+ interface IntersectClipperOptions extends _IntersectClipperOptions {}
139
+
140
+ /**
141
+ * @privateRemarks Separate interface despite identical keys for purposes of declaration merging
142
+ * and just having an expected name for external reference
143
+ */
144
+ interface IntersectPolygonOptions extends _IntersectClipperOptions {}
145
+
146
+ interface ClipperPointsOptions extends Pick<PIXI.Polygon.IntersectClipperOptions, "scalingFactor"> {}
129
147
  }
130
148
 
131
- /** @internal Helper type for interface to simplify InexactPartial usage */
132
- type _IntersectClipperOptions = InexactPartial<{
133
- /** The clipper clip type */
134
- clipType: number;
135
-
136
- /** A scaling factor passed to Polygon#toClipperPoints to preserve precision */
137
- scalingFactor: number;
138
- }>;
139
-
140
- interface IntersectClipperOptions extends _IntersectClipperOptions {}
149
+ class Polygon extends _PIXI.Polygon {
150
+ /**
151
+ * Construct a PIXI.Polygon instance from an array of clipper points [\{X,Y\}, ...].
152
+ * @param points - An array of points returned by clipper
153
+ * @param options - Options which affect how canvas points are generated
154
+ * @param scalingFactor -
155
+ * @returns The resulting PIXI.Polygon
156
+ */
157
+ static fromClipperPoints(
158
+ points: PIXI.Polygon.ClipperPoint[],
159
+ options?: PIXI.Polygon.ClipperPointsOptions,
160
+ ): PIXI.Polygon;
161
+ }
141
162
  }
142
163
  }