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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (559) hide show
  1. package/README.md +17 -18
  2. package/package.json +74 -32
  3. package/src/configuration/configuration.d.mts +316 -0
  4. package/src/configuration/documents.d.mts +295 -0
  5. package/src/configuration/globals.d.mts +357 -0
  6. package/src/configuration/index.d.mts +5 -0
  7. package/src/foundry/client/apps/app.d.mts +129 -122
  8. package/src/foundry/client/apps/av/av-config.d.mts +12 -7
  9. package/src/foundry/client/apps/av/cameras.d.mts +12 -7
  10. package/src/foundry/client/apps/dice/dice-config.d.mts +59 -0
  11. package/src/foundry/client/apps/dice/index.d.mts +1 -0
  12. package/src/foundry/client/apps/form.d.mts +114 -86
  13. package/src/foundry/client/apps/forms/actor.d.mts +21 -11
  14. package/src/foundry/client/apps/forms/adventure-exporter.d.mts +12 -7
  15. package/src/foundry/client/apps/forms/adventure-importer.d.mts +14 -6
  16. package/src/foundry/client/apps/forms/base-sheet.d.mts +16 -8
  17. package/src/foundry/client/apps/forms/card-config.d.mts +16 -8
  18. package/src/foundry/client/apps/forms/cards-config.d.mts +15 -14
  19. package/src/foundry/client/apps/forms/combat-config.d.mts +7 -7
  20. package/src/foundry/client/apps/forms/combatant-config.d.mts +3 -3
  21. package/src/foundry/client/apps/forms/default-sheets-config.d.mts +1 -1
  22. package/src/foundry/client/apps/forms/effect-config.d.mts +7 -7
  23. package/src/foundry/client/apps/forms/folder-config.d.mts +5 -5
  24. package/src/foundry/client/apps/forms/fonts.d.mts +42 -35
  25. package/src/foundry/client/apps/forms/grid-config.d.mts +12 -13
  26. package/src/foundry/client/apps/forms/image-popout.d.mts +29 -23
  27. package/src/foundry/client/apps/forms/item.d.mts +9 -9
  28. package/src/foundry/client/apps/forms/journal-page-sheet.d.mts +16 -14
  29. package/src/foundry/client/apps/forms/journal-sheet.d.mts +48 -38
  30. package/src/foundry/client/apps/forms/macro-config.d.mts +7 -7
  31. package/src/foundry/client/apps/forms/measure-template.d.mts +10 -12
  32. package/src/foundry/client/apps/forms/ownership.d.mts +5 -5
  33. package/src/foundry/client/apps/forms/playlist-config.d.mts +8 -10
  34. package/src/foundry/client/apps/forms/playlist-sound-config.d.mts +7 -7
  35. package/src/foundry/client/apps/forms/roll-table-config.d.mts +11 -10
  36. package/src/foundry/client/apps/forms/scene-config.d.mts +40 -41
  37. package/src/foundry/client/apps/forms/sheet-config.d.mts +9 -21
  38. package/src/foundry/client/apps/forms/user-config.d.mts +13 -12
  39. package/src/foundry/client/apps/hud/chatbubble.d.mts +18 -6
  40. package/src/foundry/client/apps/hud/container.d.mts +4 -4
  41. package/src/foundry/client/apps/hud/controls.d.mts +126 -81
  42. package/src/foundry/client/apps/hud/hotbar.d.mts +17 -12
  43. package/src/foundry/client/apps/hud/hud.d.mts +5 -5
  44. package/src/foundry/client/apps/hud/menu.d.mts +10 -3
  45. package/src/foundry/client/apps/hud/navigation.d.mts +14 -9
  46. package/src/foundry/client/apps/hud/pause.d.mts +9 -4
  47. package/src/foundry/client/apps/hud/players.d.mts +14 -9
  48. package/src/foundry/client/apps/i18n.d.mts +31 -27
  49. package/src/foundry/client/apps/index.d.mts +1 -0
  50. package/src/foundry/client/apps/placeables/drawing-config.d.mts +41 -33
  51. package/src/foundry/client/apps/placeables/drawing-hud.d.mts +5 -5
  52. package/src/foundry/client/apps/placeables/index.d.mts +0 -2
  53. package/src/foundry/client/apps/placeables/note-config.d.mts +28 -18
  54. package/src/foundry/client/apps/placeables/tile-config.d.mts +23 -10
  55. package/src/foundry/client/apps/placeables/tile-hud.d.mts +10 -5
  56. package/src/foundry/client/apps/placeables/token-config.d.mts +91 -58
  57. package/src/foundry/client/apps/placeables/token-hud.d.mts +12 -7
  58. package/src/foundry/client/apps/placeables/wall-config.d.mts +21 -17
  59. package/src/foundry/client/apps/sidebar/apps/chat-popout.d.mts +5 -5
  60. package/src/foundry/client/apps/sidebar/apps/client-settings.d.mts +3 -3
  61. package/src/foundry/client/apps/sidebar/apps/compendium.d.mts +15 -13
  62. package/src/foundry/client/apps/sidebar/apps/invitation-links.d.mts +3 -3
  63. package/src/foundry/client/apps/sidebar/apps/keybindings-config.d.mts +3 -2
  64. package/src/foundry/client/apps/sidebar/apps/module-management.d.mts +6 -6
  65. package/src/foundry/client/apps/sidebar/apps/permission-config.d.mts +6 -6
  66. package/src/foundry/client/apps/sidebar/apps/support-details.d.mts +34 -29
  67. package/src/foundry/client/apps/sidebar/apps/tours-management.d.mts +2 -2
  68. package/src/foundry/client/apps/sidebar/apps/world-config.d.mts +13 -10
  69. package/src/foundry/client/apps/sidebar/directory-tab-mixin.d.mts +50 -35
  70. package/src/foundry/client/apps/sidebar/document-directory.d.mts +52 -38
  71. package/src/foundry/client/apps/sidebar/package-configuration.d.mts +4 -4
  72. package/src/foundry/client/apps/sidebar/sidebar-tab.d.mts +3 -3
  73. package/src/foundry/client/apps/sidebar/sidebar.d.mts +9 -4
  74. package/src/foundry/client/apps/sidebar/tabs/actors-directory.d.mts +11 -2
  75. package/src/foundry/client/apps/sidebar/tabs/cards-directory.d.mts +11 -2
  76. package/src/foundry/client/apps/sidebar/tabs/chat-log.d.mts +39 -27
  77. package/src/foundry/client/apps/sidebar/tabs/combat-tracker.d.mts +21 -12
  78. package/src/foundry/client/apps/sidebar/tabs/compendium-directory.d.mts +30 -15
  79. package/src/foundry/client/apps/sidebar/tabs/items-directory.d.mts +11 -2
  80. package/src/foundry/client/apps/sidebar/tabs/journal-directory.d.mts +11 -2
  81. package/src/foundry/client/apps/sidebar/tabs/macros-directory.d.mts +14 -5
  82. package/src/foundry/client/apps/sidebar/tabs/playlists-directory.d.mts +30 -22
  83. package/src/foundry/client/apps/sidebar/tabs/roll-table-directory.d.mts +11 -2
  84. package/src/foundry/client/apps/sidebar/tabs/scenes-directory.d.mts +14 -5
  85. package/src/foundry/client/apps/sidebar/tabs/settings.d.mts +23 -5
  86. package/src/foundry/client/apps/templates.d.mts +1 -1
  87. package/src/foundry/client/av/client.d.mts +1 -1
  88. package/src/foundry/client/av/clients/simplepeer.d.mts +11 -1
  89. package/src/foundry/client/av/master.d.mts +2 -2
  90. package/src/foundry/client/av/settings.d.mts +17 -15
  91. package/src/foundry/client/config.d.mts +444 -312
  92. package/src/foundry/client/core/document-index.d.mts +11 -3
  93. package/src/foundry/client/core/hooks.d.mts +2 -4
  94. package/src/foundry/client/core/image.d.mts +14 -13
  95. package/src/foundry/client/core/issues.d.mts +9 -4
  96. package/src/foundry/client/core/keybindings.d.mts +5 -5
  97. package/src/foundry/client/core/nue.d.mts +1 -1
  98. package/src/foundry/client/core/packages.d.mts +397 -61
  99. package/src/foundry/client/core/settings.d.mts +62 -38
  100. package/src/foundry/client/core/socket.d.mts +2 -2
  101. package/src/foundry/client/core/sorting.d.mts +6 -6
  102. package/src/foundry/client/core/time.d.mts +6 -3
  103. package/src/foundry/client/core/tooltip.d.mts +2 -2
  104. package/src/foundry/client/core/tour.d.mts +59 -50
  105. package/src/foundry/client/core/tours.d.mts +1 -1
  106. package/src/foundry/client/core/utils.d.mts +33 -10
  107. package/src/foundry/client/core/video.d.mts +1 -1
  108. package/src/foundry/client/core/workers.d.mts +24 -17
  109. package/src/foundry/client/data/abstract/canvas-document.d.mts +21 -16
  110. package/src/foundry/client/data/abstract/client-document.d.mts +153 -183
  111. package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +23 -39
  112. package/src/foundry/client/data/abstract/document-collection.d.mts +96 -68
  113. package/src/foundry/client/data/abstract/world-collection.d.mts +47 -55
  114. package/src/foundry/client/data/collections/actors.d.mts +30 -28
  115. package/src/foundry/client/data/collections/cards.d.mts +16 -3
  116. package/src/foundry/client/data/collections/combats.d.mts +18 -5
  117. package/src/foundry/client/data/collections/compendium-collection.d.mts +81 -99
  118. package/src/foundry/client/data/collections/compendium-folders.d.mts +6 -6
  119. package/src/foundry/client/data/collections/compendium-packs.d.mts +5 -5
  120. package/src/foundry/client/data/collections/fog.d.mts +16 -3
  121. package/src/foundry/client/data/collections/folder.d.mts +20 -6
  122. package/src/foundry/client/data/collections/items.d.mts +17 -4
  123. package/src/foundry/client/data/collections/journal.d.mts +22 -7
  124. package/src/foundry/client/data/collections/macros.d.mts +21 -19
  125. package/src/foundry/client/data/collections/messages.d.mts +19 -6
  126. package/src/foundry/client/data/collections/playlists.d.mts +17 -5
  127. package/src/foundry/client/data/collections/scenes.d.mts +24 -27
  128. package/src/foundry/client/data/collections/settings.d.mts +16 -3
  129. package/src/foundry/client/data/collections/tables.d.mts +18 -5
  130. package/src/foundry/client/data/collections/users.d.mts +19 -7
  131. package/src/foundry/client/data/documents/active-effect.d.mts +677 -85
  132. package/src/foundry/client/data/documents/actor-delta.d.mts +670 -27
  133. package/src/foundry/client/data/documents/actor.d.mts +718 -64
  134. package/src/foundry/client/data/documents/adventure.d.mts +480 -46
  135. package/src/foundry/client/data/documents/ambient-light.d.mts +423 -19
  136. package/src/foundry/client/data/documents/ambient-sound.d.mts +473 -14
  137. package/src/foundry/client/data/documents/card.d.mts +567 -36
  138. package/src/foundry/client/data/documents/cards.d.mts +744 -87
  139. package/src/foundry/client/data/documents/chat-message.d.mts +574 -42
  140. package/src/foundry/client/data/documents/combat.d.mts +699 -69
  141. package/src/foundry/client/data/documents/combatant.d.mts +504 -24
  142. package/src/foundry/client/data/documents/drawing.d.mts +540 -14
  143. package/src/foundry/client/data/documents/fog-exploration.d.mts +416 -21
  144. package/src/foundry/client/data/documents/folder.d.mts +468 -35
  145. package/src/foundry/client/data/documents/index.d.mts +2 -0
  146. package/src/foundry/client/data/documents/item.d.mts +677 -20
  147. package/src/foundry/client/data/documents/journal-entry-page.d.mts +585 -19
  148. package/src/foundry/client/data/documents/journal-entry.d.mts +619 -18
  149. package/src/foundry/client/data/documents/macro.d.mts +528 -25
  150. package/src/foundry/client/data/documents/measured-template.d.mts +478 -14
  151. package/src/foundry/client/data/documents/note.d.mts +491 -15
  152. package/src/foundry/client/data/documents/playlist-sound.d.mts +426 -24
  153. package/src/foundry/client/data/documents/playlist.d.mts +665 -74
  154. package/src/foundry/client/data/documents/region-behavior.d.mts +507 -0
  155. package/src/foundry/client/data/documents/region.d.mts +784 -0
  156. package/src/foundry/client/data/documents/scene.d.mts +983 -147
  157. package/src/foundry/client/data/documents/setting.d.mts +395 -13
  158. package/src/foundry/client/data/documents/table-result.d.mts +476 -14
  159. package/src/foundry/client/data/documents/table.d.mts +661 -78
  160. package/src/foundry/client/data/documents/tile.d.mts +499 -14
  161. package/src/foundry/client/data/documents/token.d.mts +1111 -94
  162. package/src/foundry/client/data/documents/user.d.mts +493 -25
  163. package/src/foundry/client/data/documents/wall.d.mts +548 -14
  164. package/src/foundry/client/game.d.mts +60 -92
  165. package/src/foundry/client/head.d.mts +9 -9
  166. package/src/foundry/client/hooks.d.mts +257 -237
  167. package/src/foundry/client/pixi/board.d.mts +106 -94
  168. package/src/foundry/client/pixi/core/containers/base-canvas-group.d.mts +97 -25
  169. package/src/foundry/client/pixi/core/containers/cached-container.d.mts +37 -19
  170. package/src/foundry/client/pixi/core/containers/full-canvas-container.d.mts +7 -10
  171. package/src/foundry/client/pixi/core/containers/point-source-mesh.d.mts +25 -15
  172. package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +16 -6
  173. package/src/foundry/client/pixi/core/containers/quadtree.d.mts +113 -54
  174. package/src/foundry/client/pixi/core/containers/sprite-mesh.d.mts +69 -26
  175. package/src/foundry/client/pixi/core/containers/unbound-container.d.mts +20 -2
  176. package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +164 -99
  177. package/src/foundry/client/pixi/core/interaction/control-icon.d.mts +61 -22
  178. package/src/foundry/client/pixi/core/interaction/mouse-handler.d.mts +120 -53
  179. package/src/foundry/client/pixi/core/interaction/ping.d.mts +62 -31
  180. package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +23 -10
  181. package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +91 -34
  182. package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +76 -30
  183. package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +35 -5
  184. package/src/foundry/client/pixi/core/interaction/targets.d.mts +21 -18
  185. package/src/foundry/client/pixi/core/loader.d.mts +86 -76
  186. package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +42 -17
  187. package/src/foundry/client/pixi/core/shapes/polygon-mesher.d.mts +92 -64
  188. package/src/foundry/client/pixi/core/shapes/precise-text.d.mts +28 -10
  189. package/src/foundry/client/pixi/core/shapes/ray.d.mts +47 -23
  190. package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +170 -75
  191. package/src/foundry/client/pixi/extensions/circle.d.mts +128 -125
  192. package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
  193. package/src/foundry/client/pixi/extensions/observable-transform.d.mts +5 -4
  194. package/src/foundry/client/pixi/extensions/polygon.d.mts +154 -134
  195. package/src/foundry/client/pixi/extensions/rectangle.d.mts +242 -259
  196. package/src/foundry/client/pixi/groups/effects.d.mts +75 -24
  197. package/src/foundry/client/pixi/groups/environment.d.mts +68 -19
  198. package/src/foundry/client/pixi/groups/hidden.d.mts +27 -11
  199. package/src/foundry/client/pixi/groups/interface.d.mts +62 -38
  200. package/src/foundry/client/pixi/groups/overlay.d.mts +19 -7
  201. package/src/foundry/client/pixi/groups/primary.d.mts +66 -44
  202. package/src/foundry/client/pixi/groups/rendered.d.mts +19 -7
  203. package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +11 -15
  204. package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +29 -28
  205. package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +306 -272
  206. package/src/foundry/client/pixi/layers/controls/cursor.d.mts +18 -9
  207. package/src/foundry/client/pixi/layers/controls/door.d.mts +32 -11
  208. package/src/foundry/client/pixi/layers/controls/layer.d.mts +89 -77
  209. package/src/foundry/client/pixi/layers/controls/ruler.d.mts +121 -96
  210. package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +9 -12
  211. package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +9 -10
  212. package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +8 -8
  213. package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +22 -22
  214. package/src/foundry/client/pixi/layers/effects/visibility.d.mts +106 -86
  215. package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +14 -5
  216. package/src/foundry/client/pixi/layers/effects/weather/particles/leaves.d.mts +31 -2
  217. package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +137 -65
  218. package/src/foundry/client/pixi/layers/grid/highlight.d.mts +14 -4
  219. package/src/foundry/client/pixi/layers/grid/layer.d.mts +92 -92
  220. package/src/foundry/client/pixi/layers/grid/mesh.d.mts +37 -16
  221. package/src/foundry/client/pixi/layers/masks/depth.d.mts +12 -7
  222. package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +19 -12
  223. package/src/foundry/client/pixi/layers/masks/vision.d.mts +104 -18
  224. package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +16 -15
  225. package/src/foundry/client/pixi/layers/placeables/index.d.mts +1 -0
  226. package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +12 -14
  227. package/src/foundry/client/pixi/layers/placeables/notes.d.mts +49 -32
  228. package/src/foundry/client/pixi/layers/placeables/regions.d.mts +113 -0
  229. package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +81 -67
  230. package/src/foundry/client/pixi/layers/placeables/templates.d.mts +11 -15
  231. package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +30 -21
  232. package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +66 -52
  233. package/src/foundry/client/pixi/layers/placeables/walls.d.mts +54 -57
  234. package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +62 -27
  235. package/src/foundry/client/pixi/perception/detection-mode.d.mts +121 -47
  236. package/src/foundry/client/pixi/perception/fog.d.mts +38 -15
  237. package/src/foundry/client/pixi/perception/perception-manager.d.mts +136 -136
  238. package/src/foundry/client/pixi/perception/vision-mode.d.mts +91 -64
  239. package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +44 -16
  240. package/src/foundry/client/pixi/placeable.d.mts +238 -137
  241. package/src/foundry/client/pixi/placeables/drawing.d.mts +255 -133
  242. package/src/foundry/client/pixi/placeables/index.d.mts +1 -0
  243. package/src/foundry/client/pixi/placeables/light.d.mts +199 -64
  244. package/src/foundry/client/pixi/placeables/note.d.mts +145 -54
  245. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +30 -8
  246. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-graphics.d.mts +41 -11
  247. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.d.mts +59 -18
  248. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.mts +120 -37
  249. package/src/foundry/client/pixi/placeables/region.d.mts +280 -0
  250. package/src/foundry/client/pixi/placeables/sound.d.mts +205 -66
  251. package/src/foundry/client/pixi/placeables/template.d.mts +181 -100
  252. package/src/foundry/client/pixi/placeables/tile.d.mts +206 -140
  253. package/src/foundry/client/pixi/placeables/token.d.mts +916 -449
  254. package/src/foundry/client/pixi/placeables/wall.d.mts +249 -129
  255. package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +72 -33
  256. package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +10 -9
  257. package/src/foundry/client/pixi/webgl/helpers/{framebugger-snapshot.d.mts → framebuffer-snapshot.d.mts} +10 -9
  258. package/src/foundry/client/pixi/webgl/helpers/index.d.mts +1 -1
  259. package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +38 -23
  260. package/src/foundry/client/pixi/webgl/helpers/texture-extractor.d.mts +82 -53
  261. package/src/foundry/client/pixi/webgl/shaders/base-shader-mixin.d.mts +12 -12
  262. package/src/foundry/client/pixi/webgl/shaders/base-shader.d.mts +45 -28
  263. package/src/foundry/client/pixi/webgl/shaders/filters/base-filter.d.mts +12 -11
  264. package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +12 -10
  265. package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +22 -20
  266. package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +36 -32
  267. package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +10 -9
  268. package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +12 -11
  269. package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +10 -9
  270. package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +12 -11
  271. package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +67 -60
  272. package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +24 -17
  273. package/src/foundry/client/pixi/webgl/shaders/filters/vision-mask-filter.d.mts +13 -10
  274. package/src/foundry/client/pixi/webgl/shaders/filters/void.d.mts +10 -9
  275. package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +11 -10
  276. package/src/foundry/client/pixi/webgl/shaders/fragment-channel-mixin.d.mts +20 -14
  277. package/src/foundry/client/pixi/webgl/shaders/grid/grid.d.mts +12 -11
  278. package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +10 -9
  279. package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +33 -33
  280. package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +10 -9
  281. package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +10 -9
  282. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +19 -17
  283. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +10 -9
  284. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +10 -9
  285. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +10 -9
  286. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +10 -9
  287. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +19 -17
  288. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +19 -17
  289. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +10 -9
  290. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +10 -8
  291. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +19 -17
  292. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +10 -9
  293. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +10 -9
  294. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +10 -9
  295. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +19 -17
  296. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +10 -9
  297. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +10 -9
  298. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +10 -9
  299. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +19 -17
  300. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +20 -17
  301. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +10 -9
  302. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +19 -17
  303. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +10 -9
  304. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +19 -17
  305. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +19 -17
  306. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +19 -17
  307. package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +10 -9
  308. package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +71 -29
  309. package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +54 -10
  310. package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +69 -9
  311. package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +24 -25
  312. package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +10 -9
  313. package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +38 -29
  314. package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +21 -17
  315. package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +10 -9
  316. package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +20 -18
  317. package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +11 -2
  318. package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +28 -2
  319. package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +10 -9
  320. package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +11 -9
  321. package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +10 -9
  322. package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +10 -9
  323. package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +19 -17
  324. package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +10 -9
  325. package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +40 -36
  326. package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +27 -33
  327. package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +17 -16
  328. package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +19 -18
  329. package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +15 -14
  330. package/src/foundry/client/pixi/workers/texture-worker.d.mts +33 -53
  331. package/src/foundry/client/tours/setup-tour.d.mts +15 -10
  332. package/src/foundry/client/ui/context.d.mts +48 -40
  333. package/src/foundry/client/ui/dialog.d.mts +137 -126
  334. package/src/foundry/client/ui/drag.d.mts +1 -1
  335. package/src/foundry/client/ui/dragdrop.d.mts +34 -28
  336. package/src/foundry/client/ui/editor.d.mts +29 -21
  337. package/src/foundry/client/ui/filepicker.d.mts +43 -38
  338. package/src/foundry/client/ui/filter.d.mts +62 -50
  339. package/src/foundry/client/ui/forms.d.mts +22 -22
  340. package/src/foundry/client/ui/notifications.d.mts +10 -3
  341. package/src/foundry/client/ui/prosemirror.d.mts +15 -7
  342. package/src/foundry/client/ui/secrets.d.mts +42 -27
  343. package/src/foundry/client/ui/tabs.d.mts +40 -33
  344. package/src/foundry/client-esm/applications/_module.d.mts +3 -3
  345. package/src/foundry/client-esm/applications/_types.d.mts +0 -2
  346. package/src/foundry/client-esm/applications/api/_module.d.mts +2 -2
  347. package/src/foundry/client-esm/applications/api/application.d.mts +36 -19
  348. package/src/foundry/client-esm/applications/api/dialog.d.mts +20 -22
  349. package/src/foundry/client-esm/applications/api/document-sheet.d.mts +26 -12
  350. package/src/foundry/client-esm/applications/api/handlebars-application.d.mts +142 -126
  351. package/src/foundry/client-esm/applications/apps/_module.d.mts +2 -2
  352. package/src/foundry/client-esm/applications/apps/compendium-art-config.d.mts +10 -10
  353. package/src/foundry/client-esm/applications/apps/permission-config.d.mts +3 -3
  354. package/src/foundry/client-esm/applications/dice/_module.d.mts +2 -2
  355. package/src/foundry/client-esm/applications/dice/roll-resolver.d.mts +14 -2
  356. package/src/foundry/client-esm/applications/elements/_module.d.mts +2 -2
  357. package/src/foundry/client-esm/applications/elements/document-tags.d.mts +2 -0
  358. package/src/foundry/client-esm/applications/elements/file-picker.d.mts +1 -1
  359. package/src/foundry/client-esm/applications/elements/multi-select.d.mts +15 -5
  360. package/src/foundry/client-esm/applications/elements/string-tags.d.mts +1 -1
  361. package/src/foundry/client-esm/applications/forms/fields.d.mts +1 -1
  362. package/src/foundry/client-esm/applications/sheets/_module.d.mts +2 -2
  363. package/src/foundry/client-esm/applications/sheets/actor-sheet.d.mts +3 -3
  364. package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +10 -8
  365. package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +9 -7
  366. package/src/foundry/client-esm/applications/sheets/item-sheet.d.mts +3 -3
  367. package/src/foundry/client-esm/applications/sheets/region-behavior-config.d.mts +30 -5
  368. package/src/foundry/client-esm/applications/sheets/region-config.d.mts +36 -5
  369. package/src/foundry/client-esm/applications/sheets/user-config.d.mts +8 -7
  370. package/src/foundry/client-esm/applications/ui/_module.d.mts +2 -2
  371. package/src/foundry/client-esm/applications/ui/region-legend.d.mts +45 -3
  372. package/src/foundry/client-esm/audio/_module.d.mts +2 -3
  373. package/src/foundry/client-esm/audio/_types.d.mts +2 -0
  374. package/src/foundry/client-esm/audio/biquad.d.mts +76 -26
  375. package/src/foundry/client-esm/audio/cache.d.mts +31 -20
  376. package/src/foundry/client-esm/audio/convolver.d.mts +47 -25
  377. package/src/foundry/client-esm/audio/helper.d.mts +124 -80
  378. package/src/foundry/client-esm/audio/sound.d.mts +230 -126
  379. package/src/foundry/client-esm/audio/timeout.d.mts +28 -12
  380. package/src/foundry/client-esm/canvas/_module.d.mts +2 -2
  381. package/src/foundry/client-esm/canvas/edges/_module.d.mts +2 -2
  382. package/src/foundry/client-esm/canvas/edges/collision.d.mts +69 -18
  383. package/src/foundry/client-esm/canvas/edges/edge.d.mts +110 -41
  384. package/src/foundry/client-esm/canvas/edges/edges.d.mts +10 -0
  385. package/src/foundry/client-esm/canvas/edges/vertex.d.mts +56 -26
  386. package/src/foundry/client-esm/canvas/regions/_module.d.mts +6 -11
  387. package/src/foundry/client-esm/canvas/regions/geometry.d.mts +38 -0
  388. package/src/foundry/client-esm/canvas/regions/mesh.d.mts +72 -0
  389. package/src/foundry/client-esm/canvas/regions/polygon-tree.d.mts +130 -0
  390. package/src/foundry/client-esm/canvas/regions/shape.d.mts +129 -0
  391. package/src/foundry/client-esm/canvas/scene-manager.d.mts +13 -3
  392. package/src/foundry/client-esm/canvas/smaa/blend.d.mts +14 -3
  393. package/src/foundry/client-esm/canvas/smaa/edges.d.mts +25 -3
  394. package/src/foundry/client-esm/canvas/smaa/smaa.d.mts +121 -23
  395. package/src/foundry/client-esm/canvas/smaa/weights.d.mts +26 -3
  396. package/src/foundry/client-esm/canvas/sources/_module.d.mts +2 -2
  397. package/src/foundry/client-esm/canvas/sources/base-effect-source.d.mts +84 -40
  398. package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +103 -39
  399. package/src/foundry/client-esm/canvas/sources/global-light-source.d.mts +89 -15
  400. package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +71 -27
  401. package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +49 -20
  402. package/src/foundry/client-esm/canvas/sources/point-light-source.d.mts +57 -16
  403. package/src/foundry/client-esm/canvas/sources/point-movement-source.d.mts +31 -4
  404. package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +45 -12
  405. package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +98 -52
  406. package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +180 -69
  407. package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -3
  408. package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +175 -2
  409. package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +141 -2
  410. package/src/foundry/client-esm/canvas/tokens/ring.d.mts +284 -2
  411. package/src/foundry/client-esm/client.d.mts +47 -54
  412. package/src/foundry/client-esm/data/_module.d.mts +2 -2
  413. package/src/foundry/client-esm/data/client-backend.d.mts +22 -23
  414. package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +11 -14
  415. package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +57 -0
  416. package/src/foundry/client-esm/data/region-behaviors/base.d.mts +59 -0
  417. package/src/foundry/client-esm/data/region-behaviors/display-scrolling-text.d.mts +64 -0
  418. package/src/foundry/client-esm/data/region-behaviors/execute-macro.d.mts +27 -0
  419. package/src/foundry/client-esm/data/region-behaviors/execute-script.d.mts +23 -0
  420. package/src/foundry/client-esm/data/region-behaviors/pause-game.d.mts +23 -0
  421. package/src/foundry/client-esm/data/region-behaviors/suppress-weather.d.mts +17 -0
  422. package/src/foundry/client-esm/data/region-behaviors/teleport-token.d.mts +32 -0
  423. package/src/foundry/client-esm/data/region-behaviors/toggle-behavior.d.mts +31 -0
  424. package/src/foundry/client-esm/dice/_module.d.mts +2 -3
  425. package/src/foundry/client-esm/dice/parser.d.mts +11 -25
  426. package/src/foundry/client-esm/dice/roll.d.mts +115 -89
  427. package/src/foundry/client-esm/dice/terms/_module.d.mts +2 -3
  428. package/src/foundry/client-esm/dice/terms/coin.d.mts +8 -5
  429. package/src/foundry/client-esm/dice/terms/dice.d.mts +93 -63
  430. package/src/foundry/client-esm/dice/terms/die.d.mts +11 -4
  431. package/src/foundry/client-esm/dice/terms/fate.d.mts +9 -2
  432. package/src/foundry/client-esm/dice/terms/function.d.mts +18 -18
  433. package/src/foundry/client-esm/dice/terms/numeric.d.mts +3 -5
  434. package/src/foundry/client-esm/dice/terms/operator.d.mts +2 -2
  435. package/src/foundry/client-esm/dice/terms/parenthetical.d.mts +9 -10
  436. package/src/foundry/client-esm/dice/terms/pool.d.mts +25 -31
  437. package/src/foundry/client-esm/dice/terms/string.d.mts +4 -4
  438. package/src/foundry/client-esm/dice/terms/term.d.mts +18 -4
  439. package/src/foundry/client-esm/dice/twister.d.mts +3 -3
  440. package/src/foundry/client-esm/helpers/_module.d.mts +2 -2
  441. package/src/foundry/client-esm/helpers/_types.d.mts +12 -46
  442. package/src/foundry/client-esm/helpers/compendium-art.d.mts +56 -4
  443. package/src/foundry/common/abstract/_types.d.mts +60 -54
  444. package/src/foundry/common/abstract/backend.d.mts +51 -45
  445. package/src/foundry/common/abstract/data.d.mts +132 -154
  446. package/src/foundry/common/abstract/document.d.mts +1306 -438
  447. package/src/foundry/common/abstract/embedded-collection-delta.d.mts +1 -1
  448. package/src/foundry/common/abstract/embedded-collection.d.mts +37 -7
  449. package/src/foundry/common/abstract/module.d.mts +3 -2
  450. package/src/foundry/common/abstract/singleton-collection.d.mts +1 -1
  451. package/src/foundry/common/abstract/socket.d.mts +1 -1
  452. package/src/foundry/common/abstract/type-data.d.mts +58 -55
  453. package/src/foundry/common/config.d.mts +5 -3
  454. package/src/foundry/common/constants.d.mts +261 -231
  455. package/src/foundry/common/data/data.d.mts +200 -94
  456. package/src/foundry/common/data/fields.d.mts +700 -644
  457. package/src/foundry/common/data/module.d.mts +2 -2
  458. package/src/foundry/common/data/validation-failure.d.mts +12 -9
  459. package/src/foundry/common/documents/_module.d.mts +4 -2
  460. package/src/foundry/common/documents/_types.d.mts +22 -50
  461. package/src/foundry/common/documents/active-effect.d.mts +280 -179
  462. package/src/foundry/common/documents/actor-delta.d.mts +318 -69
  463. package/src/foundry/common/documents/actor.d.mts +305 -117
  464. package/src/foundry/common/documents/adventure.d.mts +266 -141
  465. package/src/foundry/common/documents/ambient-light.d.mts +268 -75
  466. package/src/foundry/common/documents/ambient-sound.d.mts +268 -109
  467. package/src/foundry/common/documents/card.d.mts +267 -174
  468. package/src/foundry/common/documents/cards.d.mts +299 -126
  469. package/src/foundry/common/documents/chat-message.d.mts +276 -158
  470. package/src/foundry/common/documents/combat.d.mts +300 -89
  471. package/src/foundry/common/documents/combatant.d.mts +275 -88
  472. package/src/foundry/common/documents/drawing.d.mts +286 -206
  473. package/src/foundry/common/documents/fog-exploration.d.mts +258 -70
  474. package/src/foundry/common/documents/folder.d.mts +252 -81
  475. package/src/foundry/common/documents/item.d.mts +305 -99
  476. package/src/foundry/common/documents/journal-entry-page.d.mts +279 -189
  477. package/src/foundry/common/documents/journal-entry.d.mts +294 -68
  478. package/src/foundry/common/documents/macro.d.mts +254 -132
  479. package/src/foundry/common/documents/measured-template.d.mts +293 -139
  480. package/src/foundry/common/documents/note.d.mts +274 -149
  481. package/src/foundry/common/documents/playlist-sound.d.mts +260 -94
  482. package/src/foundry/common/documents/playlist.d.mts +279 -120
  483. package/src/foundry/common/documents/region-behavior.d.mts +329 -0
  484. package/src/foundry/common/documents/region.d.mts +327 -0
  485. package/src/foundry/common/documents/roll-table.d.mts +286 -102
  486. package/src/foundry/common/documents/scene.d.mts +276 -336
  487. package/src/foundry/common/documents/setting.d.mts +229 -54
  488. package/src/foundry/common/documents/table-result.d.mts +267 -94
  489. package/src/foundry/common/documents/tile.d.mts +301 -170
  490. package/src/foundry/common/documents/token.d.mts +351 -445
  491. package/src/foundry/common/documents/user.d.mts +256 -144
  492. package/src/foundry/common/documents/wall.d.mts +273 -156
  493. package/src/foundry/common/grid/_module.d.mts +3 -3
  494. package/src/foundry/common/grid/base.d.mts +66 -49
  495. package/src/foundry/common/grid/gridless.d.mts +2 -2
  496. package/src/foundry/common/grid/hexagonal.d.mts +35 -28
  497. package/src/foundry/common/grid/square.d.mts +3 -3
  498. package/src/foundry/common/packages/base-module.d.mts +6 -24
  499. package/src/foundry/common/packages/base-package.d.mts +23 -21
  500. package/src/foundry/common/packages/base-system.d.mts +6 -63
  501. package/src/foundry/common/packages/base-world.d.mts +8 -61
  502. package/src/foundry/common/packages/module.d.mts +7 -7
  503. package/src/foundry/common/packages/sub-types.d.mts +2 -2
  504. package/src/foundry/common/primitives/array.d.mts +4 -4
  505. package/src/foundry/common/primitives/math.d.mts +7 -1
  506. package/src/foundry/common/primitives/number.d.mts +2 -2
  507. package/src/foundry/common/primitives/set.d.mts +17 -14
  508. package/src/foundry/common/primitives/string.d.mts +1 -1
  509. package/src/foundry/common/prosemirror/_module.d.mts +15 -15
  510. package/src/foundry/common/prosemirror/dirty-plugin.d.mts +1 -1
  511. package/src/foundry/common/prosemirror/dom-parser.d.mts +2 -1
  512. package/src/foundry/common/prosemirror/dropdown.d.mts +1 -1
  513. package/src/foundry/common/prosemirror/highlight-matches-plugin.d.mts +2 -2
  514. package/src/foundry/common/prosemirror/image-plugin.d.mts +1 -1
  515. package/src/foundry/common/prosemirror/menu.d.mts +3 -3
  516. package/src/foundry/common/prosemirror/paste-transformer.d.mts +1 -1
  517. package/src/foundry/common/prosemirror/plugin.d.mts +2 -2
  518. package/src/foundry/common/prosemirror/schema/index.d.mts +0 -1
  519. package/src/foundry/common/prosemirror/schema/lists.d.mts +2 -0
  520. package/src/foundry/common/prosemirror/util.d.mts +1 -1
  521. package/src/foundry/common/types.d.mts +3 -3
  522. package/src/foundry/common/utils/bitmask.d.mts +23 -11
  523. package/src/foundry/common/utils/collection.d.mts +61 -38
  524. package/src/foundry/common/utils/color.d.mts +20 -2
  525. package/src/foundry/common/utils/event-emitter.d.mts +32 -17
  526. package/src/foundry/common/utils/helpers.d.mts +36 -26
  527. package/src/foundry/common/utils/http.d.mts +2 -2
  528. package/src/foundry/common/utils/module.d.mts +2 -2
  529. package/src/foundry/common/utils/string-tree.d.mts +45 -39
  530. package/src/foundry/common/utils/word-tree.d.mts +10 -23
  531. package/src/foundry/index.d.mts +0 -1
  532. package/src/foundry/{clipper → public/scripts/clipper}/clipper.d.mts +58 -16
  533. package/src/foundry/public/scripts/index.d.mts +1 -0
  534. package/src/foundry/public/scripts/workers/image-compressor.d.mts +23 -0
  535. package/src/foundry/public/scripts/workers/index.d.mts +1 -0
  536. package/{index-lenient.d.mts → src/index-lenient.d.mts} +2 -0
  537. package/src/index.d.mts +6 -0
  538. package/src/tsconfig.json +15 -0
  539. package/src/types/augments/particles.d.mts +29 -0
  540. package/src/types/augments/pixi.d.mts +1024 -21
  541. package/src/types/augments/smooth.d.mts +31 -0
  542. package/src/types/augments/tinyMCE.d.mts +1 -1
  543. package/src/types/config.d.mts +20 -312
  544. package/src/types/documentConfiguration.d.mts +286 -542
  545. package/src/types/index.d.mts +1 -1
  546. package/src/types/lib.d.mts +12 -0
  547. package/src/types/workers/image-compressor.d.mts +176 -0
  548. package/src/utils/index.d.mts +1279 -0
  549. package/tsconfig.json +29 -0
  550. package/tsconfig.main.json +8 -0
  551. package/tsconfig.miscellaneous.json +16 -0
  552. package/index.d.mts +0 -5
  553. package/src/foundry/client/apps/placeables/light-config.d.mts +0 -100
  554. package/src/foundry/client/apps/placeables/sound-config.d.mts +0 -43
  555. package/src/foundry/common/documents/module.d.mts +0 -35
  556. package/src/foundry/common/primitives/regex.d.mts +0 -12
  557. package/src/types/helperTypes.d.mts +0 -583
  558. package/src/types/utils.d.mts +0 -539
  559. /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,109 +1,73 @@
1
- import type { LineIntersection } from "../../../common/utils/geometry.d.mts";
1
+ import type { FixedInstanceType, HandleEmptyObject, NullishProps } from "fvtt-types/utils";
2
2
  import type { ConfiguredObjectClassOrDefault } from "../../config.d.mts";
3
+ import Edge = foundry.canvas.edges.Edge;
3
4
 
4
5
  declare global {
5
- namespace Wall {
6
- type ConfiguredClass = ConfiguredObjectClassOrDefault<typeof Wall>;
7
- type ConfiguredInstance = InstanceType<ConfiguredClass>;
8
-
9
- interface RenderFlags extends PlaceableObject.RenderFlags {
10
- refreshLine: boolean;
11
-
12
- refreshEndpoints: boolean;
13
-
14
- refreshDirection: boolean;
15
-
16
- refreshHighlight: boolean;
17
- }
18
-
19
- interface ControlOptions extends PlaceableObject.ControlOptions {
20
- /** @defaultValue `false` */
21
- chain: boolean;
22
- }
23
-
24
- type DoorInteraction = "open" | "close" | "lock" | "unlock" | "test";
25
- }
26
-
27
6
  /**
28
7
  * A Wall is an implementation of PlaceableObject which represents a physical or visual barrier within the Scene.
29
8
  * Walls are used to restrict Token movement or visibility as well as to define the areas of effect for ambient lights
30
9
  * and sounds.
31
10
  *
32
- * @see {@link WallDocument}
33
- * @see {@link WallsLayer}
11
+ * @see {@link WallDocument | `WallDocument`}
12
+ * @see {@link WallsLayer | `WallsLayer`}
34
13
  */
35
- class Wall extends PlaceableObject<WallDocument.ConfiguredInstance> {
14
+ class Wall extends PlaceableObject<WallDocument.Implementation> {
36
15
  static override embeddedName: "Wall";
37
16
 
38
- static override RENDER_FLAGS: {
39
- /** @defaultValue `{ propagate: ["refresh"] }` */
40
- redraw: RenderFlag<Partial<Wall.RenderFlags>>;
41
-
42
- /** @defaultValue `{ propagate: ["refreshState", "refreshLine"], alias: true }` */
43
- refresh: RenderFlag<Partial<Wall.RenderFlags>>;
17
+ static override RENDER_FLAGS: Wall.RENDER_FLAGS;
44
18
 
45
- /** @defaultValue `{ propagate: ["refreshEndpoints", "refreshHighlight"] }` */
46
- refreshState: RenderFlag<Partial<Wall.RenderFlags>>;
19
+ // Note: This isn't a "real" override but `renderFlags` is set corresponding to the
20
+ // `RENDER_FLAGS` and so it has to be adjusted here.
21
+ renderFlags: RenderFlags<Wall.RENDER_FLAGS>;
47
22
 
48
- /** @defaultValue `{ propagate: ["refreshEndpoints", "refreshHighlight", "refreshDirection"] }` */
49
- refreshLine: RenderFlag<Partial<Wall.RenderFlags>>;
50
-
51
- /** @defaultValue `{}` */
52
- refreshEndpoints: RenderFlag<Partial<Wall.RenderFlags>>;
53
-
54
- /** @defaultValue `{}` */
55
- refreshDirection: RenderFlag<Partial<Wall.RenderFlags>>;
56
-
57
- /** @defaultValue `{}` */
58
- refreshHighlight: RenderFlag<Partial<Wall.RenderFlags>>;
59
- };
23
+ // fake override; super has to type as if this could be a ControlIcon, but Walls don't use one
24
+ override controlIcon: null;
60
25
 
61
26
  /**
62
27
  * A reference the Door Control icon associated with this Wall, if any
63
28
  * @defaultValue `undefined`
29
+ * @remarks Only `undefined` prior to first draw. {@link Wall.clearDoorControl | `Wall#clearDoorControl`} sets it `null`.
64
30
  */
65
- protected doorControl: DoorControl | undefined | null;
66
-
67
- /**
68
- * A reference to an overhead Tile that is a roof, interior to which this wall is contained
69
- * @defaultValue `undefined`
70
- */
71
- roof: Tile.ConfiguredInstance | undefined;
72
-
73
- /**
74
- * A Graphics object used to highlight this wall segment. Only used when the wall is controlled.
75
- */
76
- highlight: PIXI.Graphics | undefined;
31
+ doorControl: DoorControl.ConfiguredInstance | null | undefined;
77
32
 
78
33
  /**
79
- * A set which tracks other Wall instances that this Wall intersects with (excluding shared endpoints)
34
+ * The line segment that represents the Wall.
80
35
  */
81
- intersectsWith: Map<Wall.ConfiguredInstance, LineIntersection>;
36
+ line: PIXI.Graphics | undefined;
82
37
 
83
38
  /**
84
- * A convenience reference to the coordinates Array for the Wall endpoints, [x0,y0,x1,y1].
39
+ * The endpoints of the Wall line segment.
40
+ * @defaultValue `undefined`
41
+ * @remarks Only `undefined` prior to first draw.
85
42
  */
86
- get coords(): Wall["document"]["c"];
43
+ endpoints: PIXI.Graphics | undefined;
87
44
 
88
45
  /**
89
- * The endpoints of the wall expressed as {@link foundry.canvas.edges.PolygonVertex} instances.
46
+ * The icon that indicates the direction of the Wall.
47
+ * @defaultValue `undefined`
48
+ * @remarks Only `undefined` prior to first draw.
49
+ * @privateRemarks Foundry types this as `| null` as well, but it is never set that in practice
90
50
  */
91
- get vertices(): { a: foundry.canvas.edges.PolygonVertex; b: foundry.canvas.edges.PolygonVertex };
51
+ directionIcon: PIXI.Sprite | undefined;
92
52
 
93
53
  /**
94
- * The initial endpoint of the Wall
54
+ * A Graphics object used to highlight this wall segment. Only used when the wall is controlled.
55
+ * @defaultValue `undefined`
56
+ * @remarks This is both not initialized to a value at construction *and* conditionally set
57
+ * explicitly `undefined` in {@link Wall._refreshHighlight | `Wall#_refreshHighlight`}
95
58
  */
96
- get A(): Canvas.Point;
59
+ highlight: PIXI.Graphics | undefined;
97
60
 
98
61
  /**
99
- * The second endpoint of the Wall
62
+ * A convenience reference to the coordinates Array for the Wall endpoints, [x0,y0,x1,y1].
100
63
  */
101
- get B(): Canvas.Point;
64
+ get coords(): Wall.Coordinates;
102
65
 
103
66
  /**
104
- * A set of vertex sort keys which identify this Wall's endpoints.
67
+ * The Edge instance which represents this Wall.
68
+ * The Edge is re-created when data for the Wall changes.
105
69
  */
106
- get wallKeys(): Set<number>;
70
+ get edge(): Edge;
107
71
 
108
72
  override get bounds(): PIXI.Rectangle;
109
73
 
@@ -117,66 +81,56 @@ declare global {
117
81
  */
118
82
  get isOpen(): boolean;
119
83
 
120
- /**
121
- * Is this Wall interior to a non-occluded roof Tile?
122
- */
123
- get hasActiveRoof(): boolean;
124
-
125
84
  /**
126
85
  * Return the coordinates [x,y] at the midpoint of the wall segment
127
86
  */
128
- get midpoint(): Canvas.PointArray;
87
+ get midpoint(): Canvas.PointTuple;
129
88
 
130
89
  override get center(): PIXI.Point;
131
90
 
132
91
  /**
133
92
  * Get the direction of effect for a directional Wall
134
93
  * @returns The angle of wall effect
94
+ * @remarks In radians. Returns `null` if the document's `dir` is falsey/not set
135
95
  */
136
96
  get direction(): number | null;
137
97
 
98
+ /**
99
+ * @throws "`Wall#getSnappedPosition` is not supported: WallDocument does not have a (x, y) position"
100
+ */
101
+ override getSnappedPosition(position: never): never;
102
+
103
+ /**
104
+ * Initialize the edge which represents this Wall.
105
+ * @param options - Options which modify how the edge is initialized
106
+ */
107
+ // options: not null (destructured)
108
+ initializeEdge(options?: Wall.InitializeEdgeOptions): void;
109
+
138
110
  /**
139
111
  * This helper converts the wall segment to a Ray
140
112
  * @returns The wall in Ray representation
141
113
  */
142
114
  toRay(): Ray;
143
115
 
144
- protected override _draw(): Promise<void>;
116
+ protected override _draw(options: HandleEmptyObject<Wall.DrawOptions>): Promise<void>;
145
117
 
146
118
  override clear(): this;
147
119
 
148
120
  /**
149
121
  * Draw a control icon that is used to manipulate the door's open/closed state
150
122
  */
151
- createDoorControl(): DoorControl;
123
+ createDoorControl(): DoorControl.ConfiguredInstance;
152
124
 
153
125
  /**
154
126
  * Clear the door control if it exists.
155
127
  */
156
128
  clearDoorControl(): void;
157
129
 
158
- /**
159
- * Determine the orientation of this wall with respect to a reference point
160
- * @param point - Some reference point, relative to which orientation is determined
161
- * @returns An orientation in CONST.WALL_DIRECTIONS which indicates whether the Point is left,
162
- * right, or collinear (both) with the Wall
163
- */
164
- orientPoint(point: Canvas.Point): number;
165
-
166
- /**
167
- * Test whether to apply a configured threshold of this wall.
168
- * When the proximity threshold is met, this wall is excluded as an edge in perception calculations.
169
- * @param sourceType - Sense type for the source
170
- * @param sourceOrigin - The origin or position of the source on the canvas
171
- * @param externalRadius - The external radius of the source
172
- * (default: `0`)
173
- * @returns True if the wall has a threshold greater than 0 for the source type, and the source type is within that distance.
174
- */
175
- applyThreshold(sourceType: string, sourceOrigin: Canvas.Point, externalRadius: number): boolean;
176
-
130
+ // options: not null (destructured)
177
131
  override control(options?: Wall.ControlOptions): boolean;
178
132
 
179
- protected override _destroy(options?: PIXI.IDestroyOptions | boolean): void;
133
+ protected override _destroy(options: PIXI.IDestroyOptions | boolean | undefined): void;
180
134
 
181
135
  /**
182
136
  * Test whether the Wall direction lies between two provided angles
@@ -197,63 +151,65 @@ declare global {
197
151
  * Get an Array of Wall objects which are linked by a common coordinate
198
152
  * @returns An object reporting ids and endpoints of the linked segments
199
153
  */
200
- getLinkedSegments(): {
201
- ids: string[];
202
- walls: WallsLayer["placeables"];
203
- endpoints: Array<[x: number, y: number]>;
204
- };
154
+ getLinkedSegments(): Wall.GetLinkedSegmentsReturn;
155
+
156
+ protected override _applyRenderFlags(flags: Wall.RenderFlags): void;
205
157
 
206
158
  /**
207
- * Determine whether this wall is beneath a roof tile, and is considered "interior", or not.
159
+ * Refresh the displayed position of the wall which refreshes when the wall coordinates or type changes.
208
160
  */
209
- identifyInteriorState(): void;
161
+ protected _refreshLine(): void;
210
162
 
211
163
  /**
212
- * Update any intersections with this wall.
164
+ * Refresh the display of wall endpoints which refreshes when the wall position or state changes.
213
165
  */
214
- updateIntersections(): void;
166
+ protected _refreshEndpoints(): void;
215
167
 
216
168
  /**
217
- * Record the intersection points between this wall and another, if any.
218
- * @param other - The other wall.
169
+ * Draw a directional prompt icon for one-way walls to illustrate their direction of effect.
219
170
  */
220
- protected _identifyIntersectionsWith(other: WallDocument.ConfiguredInstance): void;
171
+ protected _refreshDirection(): void;
221
172
 
222
- protected override _applyRenderFlags(flags: Wall.RenderFlags): void;
173
+ /**
174
+ * Refresh the appearance of the wall control highlight graphic. Occurs when wall control or position changes.
175
+ */
176
+ protected _refreshHighlight(): void;
223
177
 
224
178
  /**
225
- * Given the properties of the wall - decide upon a color to render the wall for display on the WallsLayer
179
+ * Refresh the displayed state of the Wall.
226
180
  */
227
- protected _getWallColor(): number;
181
+ protected _refreshState(): void;
228
182
 
229
183
  /**
230
- * @privateRemarks _onCreate, _onUpdate, and _onDelete are all overridden but with no signature changes.
231
- * For type simplicity they are left off. These methods historically have been the source of a large amount of computation from tsc.
184
+ * Given the properties of the wall - decide upon a color to render the wall for display on the WallsLayer
232
185
  */
186
+ protected _getWallColor(): number;
187
+
188
+ // _onCreate, _onUpdate, and _onDelete are all overridden but with no signature changes.
189
+ // For type simplicity they are left off. These methods historically have been the source of a large amount of computation from tsc.
233
190
 
234
191
  /**
235
192
  * Play a door interaction sound.
236
193
  * This plays locally, each client independently applies this workflow.
237
194
  * @param interaction - The door interaction: "open", "close", "lock", "unlock", or "test".
238
- * @internal
195
+ * @remarks Foundry marked `@internal`
239
196
  */
240
197
  protected _playDoorSound(interaction: Wall.DoorInteraction): void;
241
198
 
242
- protected override _createInteractionManager(): NonNullable<this["mouseInteractionManager"]>;
243
-
244
- override activateListeners(): void;
199
+ /**
200
+ * Customize the audible radius of sounds emitted by this wall, for example when a door opens or closes.
201
+ * @defaultValue `canvas.dimensions.distance * 12; // 60 feet on a 5ft grid`
202
+ */
203
+ get soundRadius(): number;
245
204
 
246
- protected override _canControl(user: User.ConfiguredInstance, event?: any): boolean;
205
+ protected override _canControl(user: User.Implementation, event: PIXI.FederatedEvent): boolean;
247
206
 
207
+ // options: not null (destructured in super)
248
208
  protected override _onHoverIn(event: PIXI.FederatedEvent, options?: PlaceableObject.HoverInOptions): false | void;
249
209
 
250
- protected override _onHoverOut(event: PIXI.FederatedEvent): false | void;
210
+ protected override _onHoverOut(event: PIXI.FederatedEvent): void;
251
211
 
252
- /**
253
- * Handle mouse-hover events on the line segment itself, pulling the Wall to the front of the container stack
254
- * @internal
255
- */
256
- protected _onMouseOverLine(event: PIXI.FederatedEvent): void;
212
+ protected override _overlapsSelection(rectangle: PIXI.Rectangle): boolean;
257
213
 
258
214
  protected override _onClickLeft(event: PIXI.FederatedEvent): boolean;
259
215
 
@@ -265,11 +221,175 @@ declare global {
265
221
 
266
222
  protected override _onDragLeftMove(event: PIXI.FederatedEvent): void;
267
223
 
268
- protected override _onDragLeftDrop(event: PIXI.FederatedEvent): Promise<unknown>;
224
+ protected override _prepareDragLeftDropUpdates(event: PIXI.FederatedEvent): Wall.DragLeftDropUpdate[] | null;
269
225
 
270
226
  /**
271
- * @remarks Not used
227
+ * @deprecated since v12, until v14
228
+ * @remarks "`Wall#roof` has been deprecated. There's no replacement"
272
229
  */
273
- controlIcon: null;
230
+ get roof(): null;
231
+
232
+ /**
233
+ * @deprecated since v12, until v14
234
+ * @remarks "`Wall#hasActiveRoof` has been deprecated. There's no replacement"
235
+ */
236
+ get hasActiveRoof(): boolean;
237
+
238
+ /**
239
+ * @deprecated since v12, until v14
240
+ * @remarks "`Wall#identifyInteriorState` has been deprecated. It has no effect anymore and there's no replacement."
241
+ */
242
+ identifyInteriorState(): void;
243
+
244
+ /**
245
+ * Determine the orientation of this wall with respect to a reference point
246
+ * @param point - Some reference point, relative to which orientation is determined
247
+ * @returns An orientation in CONST.WALL_DIRECTIONS which indicates whether the Point is left, right, or collinear (both) with the Wall
248
+ * @deprecated since v12, until v14
249
+ * @remarks "`Wall#orientPoint` has been moved to {@link Edge.orientPoint | `foundry.canvas.edges.Edge#orientPoint`}"
250
+ */
251
+ orientPoint(point: Canvas.Point): CONST.WALL_DIRECTIONS;
252
+
253
+ /**
254
+ * Test whether to apply a configured threshold of this wall.
255
+ * When the proximity threshold is met, this wall is excluded as an edge in perception calculations.
256
+ * @param sourceType - Sense type for the source
257
+ * @param sourceOrigin - The origin or position of the source on the canvas
258
+ * @param externalRadius - The external radius of the source (default: `0`)
259
+ * @returns `true` if the wall has a threshold greater than 0 for the source type, and the source type is within that distance.
260
+ * @deprecated since v12, until v14
261
+ * @remarks "Wall#applyThreshold has been moved to {@link Edge.applyThreshold | `foundry.canvas.edges.Edge#applyThreshold`}"
262
+ */
263
+ applyThreshold(
264
+ sourceType: Edge.AttenuationTypes,
265
+ sourceOrigin: Canvas.Point,
266
+ externalRadius?: number | null,
267
+ ): boolean;
268
+
269
+ /**
270
+ * @deprecated since v12, until v14
271
+ * @remarks "`Wall#vertices` is replaced by {@link Wall.edge | `Wall#edge`}"
272
+ */
273
+ get vertices(): Edge;
274
+
275
+ /**
276
+ * The initial endpoint of the Wall
277
+ * @deprecated since v12, until v14
278
+ * @remarks "`Wall#A` is replaced by {@link Edge.a | `Wall#edge#a`}"
279
+ */
280
+ get A(): Edge["a"];
281
+
282
+ /**
283
+ * The second endpoint of the Wall
284
+ * @deprecated since v12, until v14
285
+ * @remarks "`Wall#B` is replaced by {@link Edge.b | `Wall#edge#b`}"
286
+ */
287
+ get B(): Edge["b"];
288
+ }
289
+
290
+ namespace Wall {
291
+ // eslint-disable-next-line no-restricted-syntax
292
+ interface ObjectClass extends ConfiguredObjectClassOrDefault<typeof Wall> {}
293
+ interface Object extends FixedInstanceType<ObjectClass> {}
294
+
295
+ /**
296
+ * @deprecated {@link Wall.ObjectClass | `Wall.ObjectClass`}
297
+ */
298
+ type ConfiguredClass = ObjectClass;
299
+
300
+ /**
301
+ * @deprecated {@link Wall.Object | `Wall.Object`}
302
+ */
303
+ type ConfiguredInstance = Object;
304
+
305
+ /**
306
+ * This type will permanently exist but is marked deprecated. The reason it exists is because
307
+ * the confusion between `Wall` (the `PlaceableObject` that appears on the canvas) and
308
+ * `WallDocument` (the `Document` that represents the data for a `Wall`) is so common that
309
+ * it is useful to have a type to forward to `WallDocument`.
310
+ *
311
+ * @deprecated {@link WallDocument.Implementation | `WallDocument.Implementation`}
312
+ */
313
+ type Implementation = WallDocument.Implementation;
314
+
315
+ /**
316
+ * This type will permanently exist but is marked deprecated. The reason it exists is because
317
+ * the confusion between `Wall` (the `PlaceableObject` that appears on the canvas) and
318
+ * `WallDocument` (the `Document` that represents the data for a `Wall`) is so common that
319
+ * it is useful to have a type to forward to `WallDocument`.
320
+ *
321
+ * @deprecated {@link WallDocument.ImplementationClass | `WallDocument.ImplementationClass`}
322
+ */
323
+ type ImplementationClass = WallDocument.ImplementationClass;
324
+
325
+ interface RENDER_FLAGS {
326
+ /** @defaultValue `{ propagate: ["refresh"] }` */
327
+ redraw: RenderFlag<this, "redraw">;
328
+
329
+ /** @defaultValue `{ propagate: ["refreshState", "refreshLine"], alias: true }` */
330
+ refresh: RenderFlag<this, "refresh">;
331
+
332
+ /** @defaultValue `{ propagate: ["refreshEndpoints", "refreshHighlight"] }` */
333
+ refreshState: RenderFlag<this, "refreshState">;
334
+
335
+ /** @defaultValue `{ propagate: ["refreshEndpoints", "refreshHighlight", "refreshDirection"] }` */
336
+ refreshLine: RenderFlag<this, "refreshLine">;
337
+
338
+ /** @defaultValue `{}` */
339
+ refreshEndpoints: RenderFlag<this, "refreshEndpoints">;
340
+
341
+ /** @defaultValue `{}` */
342
+ refreshDirection: RenderFlag<this, "refreshDirection">;
343
+
344
+ /** @defaultValue `{}` */
345
+ refreshHighlight: RenderFlag<this, "refreshHighlight">;
346
+ }
347
+
348
+ interface RenderFlags extends RenderFlagsMixin.ToBooleanFlags<RENDER_FLAGS> {}
349
+
350
+ type Coordinates = WallDocument.Coordinates;
351
+
352
+ type DoorInteraction = "open" | "close" | "lock" | "unlock" | "test";
353
+
354
+ interface DrawOptions extends PlaceableObject.DrawOptions {}
355
+
356
+ interface RefreshOptions extends PlaceableObject.RefreshOptions {}
357
+
358
+ /** @internal */
359
+ type _ControlOptions = NullishProps<{
360
+ /** @defaultValue `false` */
361
+ chain: boolean;
362
+ }>;
363
+
364
+ interface ControlOptions extends _ControlOptions, PlaceableObject.ControlOptions {}
365
+
366
+ interface ReleaseOptions extends PlaceableObject.ReleaseOptions {}
367
+
368
+ /** @internal */
369
+ type _InitializeEdgeOptions = NullishProps<{
370
+ /**
371
+ * Has the edge been deleted?
372
+ * @defaultValue `false`
373
+ */
374
+ deleted: boolean;
375
+ }>;
376
+
377
+ interface InitializeEdgeOptions extends _InitializeEdgeOptions {}
378
+
379
+ interface GetLinkedSegmentsReturn {
380
+ /** @remarks IDs of the Walls in `walls` */
381
+ ids: string[];
382
+
383
+ /** @remarks All the Walls connected to this one */
384
+ walls: Wall.Object[];
385
+
386
+ /** @remarks `walls.length + 1` endpoints */
387
+ endpoints: Canvas.PointTuple[];
388
+ }
389
+
390
+ interface DragLeftDropUpdate {
391
+ _id: string;
392
+ c: WallDocument.Coordinates;
393
+ }
274
394
  }
275
395
  }
@@ -1,37 +1,7 @@
1
- import type { ToMethod } from "../../../../../types/helperTypes.d.mts";
2
- import type { InexactPartial } from "../../../../../types/utils.d.mts";
3
-
4
- declare abstract class AnyBatchRenderer extends BatchRenderer {
5
- constructor(arg0: never, ...args: never[]);
6
- }
1
+ import type { ToMethod, InexactPartial, IntentionalPartial, Identity } from "fvtt-types/utils";
2
+ import type { IBatchableElement, ViewableBuffer } from "pixi.js";
7
3
 
8
4
  declare global {
9
- namespace BatchRenderer {
10
- type AnyConstructor = typeof AnyBatchRenderer;
11
-
12
- type PackInterleavedGeometryFunction = ToMethod<
13
- (
14
- element: PIXI.IBatchableElement,
15
- attributeBuffer: PIXI.ViewableBuffer,
16
- indexBuffer: Uint16Array,
17
- aIndex: number,
18
- iIndex: number,
19
- ) => void
20
- >;
21
-
22
- type PreRenderBatchFunction = ToMethod<(batchRenderer: typeof BatchRenderer) => void>;
23
-
24
- type BatchDefaultUniformsFunction = ToMethod<(maxTextures: number) => AbstractBaseShader.Uniforms>;
25
-
26
- type ReservedTextureUnits = 0 | 1 | 2 | 3 | 4;
27
-
28
- interface ShaderGeneratorOptions {
29
- vertex: typeof BatchRenderer.defaultVertexSrc;
30
- fragment: typeof BatchRenderer.defaultFragmentTemplate;
31
- uniforms: typeof BatchRenderer.defaultUniforms;
32
- }
33
- }
34
-
35
5
  /**
36
6
  * A batch renderer with a customizable data transfer function to packed geometries.
37
7
  */
@@ -83,7 +53,18 @@ declare global {
83
53
 
84
54
  override start(): void;
85
55
 
86
- override packInterleavedGeometry: BatchRenderer.PackInterleavedGeometryFunction;
56
+ /**
57
+ * @privateRemarks This signature must match `PIXI.BatchRenderer#packInterleavedGeometry`, as opposed to being
58
+ * a `PackInterleavedGeometryFunction`, as these params will be piped there if the subclass in question
59
+ * doesn't implement `_packInterleavedGeometry`
60
+ */
61
+ override packInterleavedGeometry(
62
+ element: IBatchableElement,
63
+ attributeBuffer: ViewableBuffer,
64
+ indexBuffer: Uint16Array,
65
+ aIndex: number,
66
+ iIndex: number,
67
+ ): void;
87
68
 
88
69
  /**
89
70
  * Verify if a PIXI plugin exists. Check by name.
@@ -92,4 +73,62 @@ declare global {
92
73
  */
93
74
  static hasPlugin(name: string): boolean;
94
75
  }
76
+
77
+ namespace BatchRenderer {
78
+ interface Any extends AnyBatchRenderer {}
79
+ interface AnyConstructor extends Identity<typeof AnyBatchRenderer> {}
80
+
81
+ type PackInterleavedGeometryFunction = ToMethod<
82
+ (
83
+ /**
84
+ * @privateRemarks The `element` param is `Partial`'d here because at least one `_packInterleavedGeometry` implementation (`DepthSampleShader`'s)
85
+ * omits properties from the parent PIXI interface. Neither `PIXI.BatchRenderer` nor any Foundry implementations provide any default vaules for
86
+ * properties of this interface, so no `InexactPartial` or `NullishProps`.
87
+ */
88
+ element: IntentionalPartial<PIXI.IBatchableElement>,
89
+ attributeBuffer: PIXI.ViewableBuffer,
90
+ indexBuffer: Uint16Array,
91
+ aIndex: number,
92
+ iIndex: number,
93
+ ) => void
94
+ >;
95
+
96
+ type PreRenderBatchFunction = ToMethod<(batchRenderer: typeof BatchRenderer) => void>;
97
+
98
+ type BatchDefaultUniformsFunction = ToMethod<(maxTextures: number) => AbstractBaseShader.Uniforms>;
99
+
100
+ /** @remarks The `BatchRenderer#reservedTextureUnits` setter throws if passed a value outside of 0-4, and by usage wants an integer */
101
+ type ReservedTextureUnits = 0 | 1 | 2 | 3 | 4;
102
+
103
+ /** @internal */
104
+ type _ShaderGeneratorOptions = InexactPartial<{
105
+ /**
106
+ * The vertex shader source
107
+ * @remarks Can't be null as only a signature default is provided
108
+ */
109
+ vertex: typeof BatchRenderer.defaultVertexSrc;
110
+
111
+ /**
112
+ * The fragment shader source template
113
+ * @remarks Can't be null as only a signature default is provided
114
+ */
115
+ fragment: typeof BatchRenderer.defaultFragmentTemplate;
116
+
117
+ /**
118
+ * Additional Uniforms
119
+ * @remarks Can't be null as only a signature default is provided
120
+ */
121
+ uniforms: typeof BatchRenderer.defaultUniforms;
122
+ }>;
123
+
124
+ /**
125
+ * Options for {@link BatchRenderer#setShaderGenerator} (and ultimately the
126
+ * constructor of whatever's set as {@link BatchRenderer.shaderGeneratorClass})
127
+ */
128
+ interface ShaderGeneratorOptions extends _ShaderGeneratorOptions {}
129
+ }
130
+ }
131
+
132
+ declare abstract class AnyBatchRenderer extends BatchRenderer {
133
+ constructor(...args: never);
95
134
  }
@@ -1,14 +1,6 @@
1
- export {};
2
-
3
- declare abstract class AnyBatchShaderGenerator extends BatchShaderGenerator {
4
- constructor(arg0: never, ...args: never[]);
5
- }
1
+ import type { Identity } from "fvtt-types/utils";
6
2
 
7
3
  declare global {
8
- namespace BatchShaderGenerator {
9
- type AnyConstructor = typeof AnyBatchShaderGenerator;
10
- }
11
-
12
4
  /**
13
5
  * A batch shader generator that could handle extra uniforms during initialization.
14
6
  * @param vertexSrc - The vertex shader source
@@ -27,4 +19,13 @@ declare global {
27
19
 
28
20
  override generateShader(maxTextures: number): PIXI.Shader;
29
21
  }
22
+
23
+ namespace BatchShaderGenerator {
24
+ interface Any extends AnyBatchShaderGenerator {}
25
+ interface AnyConstructor extends Identity<typeof AnyBatchShaderGenerator> {}
26
+ }
27
+ }
28
+
29
+ declare abstract class AnyBatchShaderGenerator extends BatchShaderGenerator {
30
+ constructor(...args: never);
30
31
  }
@@ -1,14 +1,6 @@
1
- export {};
2
-
3
- declare abstract class AnyFramebufferSnapshot extends FramebufferSnapshot {
4
- constructor(arg0: never, ...args: never[]);
5
- }
1
+ import type { Identity } from "fvtt-types/utils";
6
2
 
7
3
  declare global {
8
- namespace FramebufferSnapshot {
9
- type AnyConstructor = typeof AnyFramebufferSnapshot;
10
- }
11
-
12
4
  /**
13
5
  * Provide the necessary methods to get a snapshot of the framebuffer into a render texture.
14
6
  * Class meant to be used as a singleton.
@@ -27,4 +19,13 @@ declare global {
27
19
  */
28
20
  getFramebufferTexture(renderer: PIXI.Renderer): PIXI.RenderTexture;
29
21
  }
22
+
23
+ namespace FramebufferSnapshot {
24
+ interface Any extends AnyFramebufferSnapshot {}
25
+ interface AnyConstructor extends Identity<typeof AnyFramebufferSnapshot> {}
26
+ }
27
+ }
28
+
29
+ declare abstract class AnyFramebufferSnapshot extends FramebufferSnapshot {
30
+ constructor(...args: never);
30
31
  }