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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (559) hide show
  1. package/README.md +17 -18
  2. package/package.json +91 -32
  3. package/src/configuration/configuration.d.mts +316 -0
  4. package/src/configuration/documents.d.mts +295 -0
  5. package/src/configuration/globals.d.mts +357 -0
  6. package/src/configuration/index.d.mts +5 -0
  7. package/src/foundry/client/apps/app.d.mts +129 -122
  8. package/src/foundry/client/apps/av/av-config.d.mts +12 -7
  9. package/src/foundry/client/apps/av/cameras.d.mts +12 -7
  10. package/src/foundry/client/apps/dice/dice-config.d.mts +59 -0
  11. package/src/foundry/client/apps/dice/index.d.mts +1 -0
  12. package/src/foundry/client/apps/form.d.mts +114 -86
  13. package/src/foundry/client/apps/forms/actor.d.mts +21 -11
  14. package/src/foundry/client/apps/forms/adventure-exporter.d.mts +12 -7
  15. package/src/foundry/client/apps/forms/adventure-importer.d.mts +14 -6
  16. package/src/foundry/client/apps/forms/base-sheet.d.mts +16 -8
  17. package/src/foundry/client/apps/forms/card-config.d.mts +16 -8
  18. package/src/foundry/client/apps/forms/cards-config.d.mts +15 -14
  19. package/src/foundry/client/apps/forms/combat-config.d.mts +7 -7
  20. package/src/foundry/client/apps/forms/combatant-config.d.mts +3 -3
  21. package/src/foundry/client/apps/forms/default-sheets-config.d.mts +1 -1
  22. package/src/foundry/client/apps/forms/effect-config.d.mts +7 -7
  23. package/src/foundry/client/apps/forms/folder-config.d.mts +10 -5
  24. package/src/foundry/client/apps/forms/fonts.d.mts +42 -35
  25. package/src/foundry/client/apps/forms/grid-config.d.mts +12 -13
  26. package/src/foundry/client/apps/forms/image-popout.d.mts +29 -23
  27. package/src/foundry/client/apps/forms/item.d.mts +9 -9
  28. package/src/foundry/client/apps/forms/journal-page-sheet.d.mts +16 -14
  29. package/src/foundry/client/apps/forms/journal-sheet.d.mts +48 -38
  30. package/src/foundry/client/apps/forms/macro-config.d.mts +7 -7
  31. package/src/foundry/client/apps/forms/measure-template.d.mts +10 -12
  32. package/src/foundry/client/apps/forms/ownership.d.mts +5 -5
  33. package/src/foundry/client/apps/forms/playlist-config.d.mts +8 -10
  34. package/src/foundry/client/apps/forms/playlist-sound-config.d.mts +7 -7
  35. package/src/foundry/client/apps/forms/roll-table-config.d.mts +11 -10
  36. package/src/foundry/client/apps/forms/scene-config.d.mts +40 -41
  37. package/src/foundry/client/apps/forms/sheet-config.d.mts +9 -21
  38. package/src/foundry/client/apps/forms/user-config.d.mts +13 -12
  39. package/src/foundry/client/apps/hud/chatbubble.d.mts +18 -6
  40. package/src/foundry/client/apps/hud/container.d.mts +4 -4
  41. package/src/foundry/client/apps/hud/controls.d.mts +126 -81
  42. package/src/foundry/client/apps/hud/hotbar.d.mts +17 -12
  43. package/src/foundry/client/apps/hud/hud.d.mts +5 -5
  44. package/src/foundry/client/apps/hud/menu.d.mts +10 -3
  45. package/src/foundry/client/apps/hud/navigation.d.mts +14 -9
  46. package/src/foundry/client/apps/hud/pause.d.mts +9 -4
  47. package/src/foundry/client/apps/hud/players.d.mts +14 -9
  48. package/src/foundry/client/apps/i18n.d.mts +31 -27
  49. package/src/foundry/client/apps/index.d.mts +1 -0
  50. package/src/foundry/client/apps/placeables/drawing-config.d.mts +41 -33
  51. package/src/foundry/client/apps/placeables/drawing-hud.d.mts +5 -5
  52. package/src/foundry/client/apps/placeables/index.d.mts +0 -2
  53. package/src/foundry/client/apps/placeables/note-config.d.mts +28 -18
  54. package/src/foundry/client/apps/placeables/tile-config.d.mts +23 -10
  55. package/src/foundry/client/apps/placeables/tile-hud.d.mts +10 -5
  56. package/src/foundry/client/apps/placeables/token-config.d.mts +91 -58
  57. package/src/foundry/client/apps/placeables/token-hud.d.mts +12 -7
  58. package/src/foundry/client/apps/placeables/wall-config.d.mts +21 -17
  59. package/src/foundry/client/apps/sidebar/apps/chat-popout.d.mts +5 -5
  60. package/src/foundry/client/apps/sidebar/apps/client-settings.d.mts +3 -3
  61. package/src/foundry/client/apps/sidebar/apps/compendium.d.mts +15 -13
  62. package/src/foundry/client/apps/sidebar/apps/invitation-links.d.mts +3 -3
  63. package/src/foundry/client/apps/sidebar/apps/keybindings-config.d.mts +3 -2
  64. package/src/foundry/client/apps/sidebar/apps/module-management.d.mts +6 -6
  65. package/src/foundry/client/apps/sidebar/apps/permission-config.d.mts +6 -6
  66. package/src/foundry/client/apps/sidebar/apps/support-details.d.mts +34 -29
  67. package/src/foundry/client/apps/sidebar/apps/tours-management.d.mts +2 -2
  68. package/src/foundry/client/apps/sidebar/apps/world-config.d.mts +13 -10
  69. package/src/foundry/client/apps/sidebar/directory-tab-mixin.d.mts +50 -35
  70. package/src/foundry/client/apps/sidebar/document-directory.d.mts +52 -38
  71. package/src/foundry/client/apps/sidebar/package-configuration.d.mts +4 -4
  72. package/src/foundry/client/apps/sidebar/sidebar-tab.d.mts +3 -3
  73. package/src/foundry/client/apps/sidebar/sidebar.d.mts +9 -4
  74. package/src/foundry/client/apps/sidebar/tabs/actors-directory.d.mts +11 -2
  75. package/src/foundry/client/apps/sidebar/tabs/cards-directory.d.mts +11 -2
  76. package/src/foundry/client/apps/sidebar/tabs/chat-log.d.mts +39 -27
  77. package/src/foundry/client/apps/sidebar/tabs/combat-tracker.d.mts +21 -12
  78. package/src/foundry/client/apps/sidebar/tabs/compendium-directory.d.mts +30 -15
  79. package/src/foundry/client/apps/sidebar/tabs/items-directory.d.mts +11 -2
  80. package/src/foundry/client/apps/sidebar/tabs/journal-directory.d.mts +11 -2
  81. package/src/foundry/client/apps/sidebar/tabs/macros-directory.d.mts +14 -5
  82. package/src/foundry/client/apps/sidebar/tabs/playlists-directory.d.mts +30 -22
  83. package/src/foundry/client/apps/sidebar/tabs/roll-table-directory.d.mts +11 -2
  84. package/src/foundry/client/apps/sidebar/tabs/scenes-directory.d.mts +14 -5
  85. package/src/foundry/client/apps/sidebar/tabs/settings.d.mts +23 -5
  86. package/src/foundry/client/apps/templates.d.mts +1 -1
  87. package/src/foundry/client/av/client.d.mts +1 -1
  88. package/src/foundry/client/av/clients/simplepeer.d.mts +11 -1
  89. package/src/foundry/client/av/master.d.mts +2 -2
  90. package/src/foundry/client/av/settings.d.mts +17 -15
  91. package/src/foundry/client/config.d.mts +444 -312
  92. package/src/foundry/client/core/document-index.d.mts +11 -3
  93. package/src/foundry/client/core/hooks.d.mts +2 -4
  94. package/src/foundry/client/core/image.d.mts +14 -13
  95. package/src/foundry/client/core/issues.d.mts +9 -4
  96. package/src/foundry/client/core/keybindings.d.mts +5 -5
  97. package/src/foundry/client/core/nue.d.mts +1 -1
  98. package/src/foundry/client/core/packages.d.mts +400 -62
  99. package/src/foundry/client/core/settings.d.mts +62 -38
  100. package/src/foundry/client/core/socket.d.mts +2 -2
  101. package/src/foundry/client/core/sorting.d.mts +6 -6
  102. package/src/foundry/client/core/time.d.mts +6 -3
  103. package/src/foundry/client/core/tooltip.d.mts +2 -2
  104. package/src/foundry/client/core/tour.d.mts +59 -50
  105. package/src/foundry/client/core/tours.d.mts +1 -1
  106. package/src/foundry/client/core/utils.d.mts +33 -10
  107. package/src/foundry/client/core/video.d.mts +1 -1
  108. package/src/foundry/client/core/workers.d.mts +24 -17
  109. package/src/foundry/client/data/abstract/canvas-document.d.mts +22 -28
  110. package/src/foundry/client/data/abstract/client-document.d.mts +238 -206
  111. package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +24 -40
  112. package/src/foundry/client/data/abstract/document-collection.d.mts +96 -68
  113. package/src/foundry/client/data/abstract/world-collection.d.mts +53 -54
  114. package/src/foundry/client/data/collections/actors.d.mts +30 -28
  115. package/src/foundry/client/data/collections/cards.d.mts +16 -3
  116. package/src/foundry/client/data/collections/combats.d.mts +18 -5
  117. package/src/foundry/client/data/collections/compendium-collection.d.mts +84 -101
  118. package/src/foundry/client/data/collections/compendium-folders.d.mts +6 -6
  119. package/src/foundry/client/data/collections/compendium-packs.d.mts +5 -5
  120. package/src/foundry/client/data/collections/fog.d.mts +16 -3
  121. package/src/foundry/client/data/collections/folder.d.mts +20 -6
  122. package/src/foundry/client/data/collections/items.d.mts +17 -4
  123. package/src/foundry/client/data/collections/journal.d.mts +22 -7
  124. package/src/foundry/client/data/collections/macros.d.mts +21 -19
  125. package/src/foundry/client/data/collections/messages.d.mts +19 -6
  126. package/src/foundry/client/data/collections/playlists.d.mts +17 -5
  127. package/src/foundry/client/data/collections/scenes.d.mts +24 -27
  128. package/src/foundry/client/data/collections/settings.d.mts +16 -3
  129. package/src/foundry/client/data/collections/tables.d.mts +18 -5
  130. package/src/foundry/client/data/collections/users.d.mts +22 -10
  131. package/src/foundry/client/data/documents/active-effect.d.mts +780 -112
  132. package/src/foundry/client/data/documents/actor-delta.d.mts +705 -31
  133. package/src/foundry/client/data/documents/actor.d.mts +806 -98
  134. package/src/foundry/client/data/documents/adventure.d.mts +522 -59
  135. package/src/foundry/client/data/documents/ambient-light.d.mts +427 -20
  136. package/src/foundry/client/data/documents/ambient-sound.d.mts +478 -14
  137. package/src/foundry/client/data/documents/card.d.mts +598 -44
  138. package/src/foundry/client/data/documents/cards.d.mts +862 -169
  139. package/src/foundry/client/data/documents/chat-message.d.mts +668 -77
  140. package/src/foundry/client/data/documents/combat.d.mts +757 -107
  141. package/src/foundry/client/data/documents/combatant.d.mts +545 -32
  142. package/src/foundry/client/data/documents/drawing.d.mts +545 -14
  143. package/src/foundry/client/data/documents/fog-exploration.d.mts +465 -30
  144. package/src/foundry/client/data/documents/folder.d.mts +567 -51
  145. package/src/foundry/client/data/documents/index.d.mts +2 -0
  146. package/src/foundry/client/data/documents/item.d.mts +691 -24
  147. package/src/foundry/client/data/documents/journal-entry-page.d.mts +654 -55
  148. package/src/foundry/client/data/documents/journal-entry.d.mts +631 -35
  149. package/src/foundry/client/data/documents/macro.d.mts +560 -31
  150. package/src/foundry/client/data/documents/measured-template.d.mts +484 -15
  151. package/src/foundry/client/data/documents/note.d.mts +498 -15
  152. package/src/foundry/client/data/documents/playlist-sound.d.mts +443 -45
  153. package/src/foundry/client/data/documents/playlist.d.mts +710 -99
  154. package/src/foundry/client/data/documents/region-behavior.d.mts +516 -0
  155. package/src/foundry/client/data/documents/region.d.mts +789 -0
  156. package/src/foundry/client/data/documents/scene.d.mts +1216 -159
  157. package/src/foundry/client/data/documents/setting.d.mts +406 -23
  158. package/src/foundry/client/data/documents/table-result.d.mts +488 -14
  159. package/src/foundry/client/data/documents/table.d.mts +667 -78
  160. package/src/foundry/client/data/documents/tile.d.mts +505 -14
  161. package/src/foundry/client/data/documents/token.d.mts +1191 -143
  162. package/src/foundry/client/data/documents/user.d.mts +613 -57
  163. package/src/foundry/client/data/documents/wall.d.mts +555 -14
  164. package/src/foundry/client/game.d.mts +60 -92
  165. package/src/foundry/client/head.d.mts +9 -9
  166. package/src/foundry/client/hooks.d.mts +259 -248
  167. package/src/foundry/client/pixi/board.d.mts +107 -94
  168. package/src/foundry/client/pixi/core/containers/base-canvas-group.d.mts +97 -25
  169. package/src/foundry/client/pixi/core/containers/cached-container.d.mts +37 -19
  170. package/src/foundry/client/pixi/core/containers/full-canvas-container.d.mts +7 -10
  171. package/src/foundry/client/pixi/core/containers/point-source-mesh.d.mts +25 -15
  172. package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +16 -6
  173. package/src/foundry/client/pixi/core/containers/quadtree.d.mts +113 -54
  174. package/src/foundry/client/pixi/core/containers/sprite-mesh.d.mts +69 -26
  175. package/src/foundry/client/pixi/core/containers/unbound-container.d.mts +20 -2
  176. package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +164 -99
  177. package/src/foundry/client/pixi/core/interaction/control-icon.d.mts +61 -22
  178. package/src/foundry/client/pixi/core/interaction/mouse-handler.d.mts +120 -53
  179. package/src/foundry/client/pixi/core/interaction/ping.d.mts +62 -31
  180. package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +23 -10
  181. package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +91 -34
  182. package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +69 -30
  183. package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +35 -5
  184. package/src/foundry/client/pixi/core/interaction/targets.d.mts +21 -18
  185. package/src/foundry/client/pixi/core/loader.d.mts +86 -76
  186. package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +42 -17
  187. package/src/foundry/client/pixi/core/shapes/polygon-mesher.d.mts +92 -64
  188. package/src/foundry/client/pixi/core/shapes/precise-text.d.mts +28 -10
  189. package/src/foundry/client/pixi/core/shapes/ray.d.mts +47 -23
  190. package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +170 -75
  191. package/src/foundry/client/pixi/extensions/circle.d.mts +128 -125
  192. package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
  193. package/src/foundry/client/pixi/extensions/observable-transform.d.mts +5 -4
  194. package/src/foundry/client/pixi/extensions/polygon.d.mts +154 -134
  195. package/src/foundry/client/pixi/extensions/rectangle.d.mts +242 -259
  196. package/src/foundry/client/pixi/groups/effects.d.mts +75 -24
  197. package/src/foundry/client/pixi/groups/environment.d.mts +68 -19
  198. package/src/foundry/client/pixi/groups/hidden.d.mts +27 -11
  199. package/src/foundry/client/pixi/groups/interface.d.mts +62 -38
  200. package/src/foundry/client/pixi/groups/overlay.d.mts +19 -7
  201. package/src/foundry/client/pixi/groups/primary.d.mts +66 -44
  202. package/src/foundry/client/pixi/groups/rendered.d.mts +19 -7
  203. package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +11 -15
  204. package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +29 -28
  205. package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +306 -272
  206. package/src/foundry/client/pixi/layers/controls/cursor.d.mts +18 -9
  207. package/src/foundry/client/pixi/layers/controls/door.d.mts +32 -11
  208. package/src/foundry/client/pixi/layers/controls/layer.d.mts +89 -77
  209. package/src/foundry/client/pixi/layers/controls/ruler.d.mts +121 -96
  210. package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +9 -12
  211. package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +9 -10
  212. package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +8 -8
  213. package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +22 -22
  214. package/src/foundry/client/pixi/layers/effects/visibility.d.mts +106 -86
  215. package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +14 -5
  216. package/src/foundry/client/pixi/layers/effects/weather/particles/leaves.d.mts +31 -2
  217. package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +137 -65
  218. package/src/foundry/client/pixi/layers/grid/highlight.d.mts +14 -4
  219. package/src/foundry/client/pixi/layers/grid/layer.d.mts +92 -92
  220. package/src/foundry/client/pixi/layers/grid/mesh.d.mts +37 -16
  221. package/src/foundry/client/pixi/layers/masks/depth.d.mts +12 -7
  222. package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +19 -12
  223. package/src/foundry/client/pixi/layers/masks/vision.d.mts +104 -18
  224. package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +16 -15
  225. package/src/foundry/client/pixi/layers/placeables/index.d.mts +1 -0
  226. package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +12 -14
  227. package/src/foundry/client/pixi/layers/placeables/notes.d.mts +49 -32
  228. package/src/foundry/client/pixi/layers/placeables/regions.d.mts +113 -0
  229. package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +81 -67
  230. package/src/foundry/client/pixi/layers/placeables/templates.d.mts +11 -15
  231. package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +30 -21
  232. package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +66 -52
  233. package/src/foundry/client/pixi/layers/placeables/walls.d.mts +54 -57
  234. package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +62 -27
  235. package/src/foundry/client/pixi/perception/detection-mode.d.mts +121 -47
  236. package/src/foundry/client/pixi/perception/fog.d.mts +38 -15
  237. package/src/foundry/client/pixi/perception/perception-manager.d.mts +136 -136
  238. package/src/foundry/client/pixi/perception/vision-mode.d.mts +91 -64
  239. package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +44 -16
  240. package/src/foundry/client/pixi/placeable.d.mts +239 -137
  241. package/src/foundry/client/pixi/placeables/drawing.d.mts +255 -133
  242. package/src/foundry/client/pixi/placeables/index.d.mts +1 -0
  243. package/src/foundry/client/pixi/placeables/light.d.mts +193 -64
  244. package/src/foundry/client/pixi/placeables/note.d.mts +145 -54
  245. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +30 -8
  246. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-graphics.d.mts +41 -11
  247. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.d.mts +59 -18
  248. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.mts +120 -37
  249. package/src/foundry/client/pixi/placeables/region.d.mts +280 -0
  250. package/src/foundry/client/pixi/placeables/sound.d.mts +205 -66
  251. package/src/foundry/client/pixi/placeables/template.d.mts +181 -100
  252. package/src/foundry/client/pixi/placeables/tile.d.mts +206 -140
  253. package/src/foundry/client/pixi/placeables/token.d.mts +916 -449
  254. package/src/foundry/client/pixi/placeables/wall.d.mts +249 -129
  255. package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +72 -33
  256. package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +10 -9
  257. package/src/foundry/client/pixi/webgl/helpers/{framebugger-snapshot.d.mts → framebuffer-snapshot.d.mts} +10 -9
  258. package/src/foundry/client/pixi/webgl/helpers/index.d.mts +1 -1
  259. package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +38 -23
  260. package/src/foundry/client/pixi/webgl/helpers/texture-extractor.d.mts +82 -53
  261. package/src/foundry/client/pixi/webgl/shaders/base-shader-mixin.d.mts +12 -12
  262. package/src/foundry/client/pixi/webgl/shaders/base-shader.d.mts +45 -28
  263. package/src/foundry/client/pixi/webgl/shaders/filters/base-filter.d.mts +12 -11
  264. package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +12 -10
  265. package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +22 -20
  266. package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +36 -32
  267. package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +10 -9
  268. package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +12 -11
  269. package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +10 -9
  270. package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +12 -11
  271. package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +67 -60
  272. package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +24 -17
  273. package/src/foundry/client/pixi/webgl/shaders/filters/vision-mask-filter.d.mts +13 -10
  274. package/src/foundry/client/pixi/webgl/shaders/filters/void.d.mts +10 -9
  275. package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +11 -10
  276. package/src/foundry/client/pixi/webgl/shaders/fragment-channel-mixin.d.mts +20 -14
  277. package/src/foundry/client/pixi/webgl/shaders/grid/grid.d.mts +12 -11
  278. package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +10 -9
  279. package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +33 -33
  280. package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +10 -9
  281. package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +10 -9
  282. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +19 -17
  283. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +10 -9
  284. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +10 -9
  285. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +10 -9
  286. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +10 -9
  287. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +19 -17
  288. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +19 -17
  289. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +10 -9
  290. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +10 -8
  291. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +19 -17
  292. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +10 -9
  293. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +10 -9
  294. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +10 -9
  295. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +19 -17
  296. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +10 -9
  297. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +10 -9
  298. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +10 -9
  299. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +19 -17
  300. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +20 -17
  301. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +10 -9
  302. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +19 -17
  303. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +10 -9
  304. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +19 -17
  305. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +19 -17
  306. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +19 -17
  307. package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +10 -9
  308. package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +71 -29
  309. package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +54 -10
  310. package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +69 -9
  311. package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +24 -25
  312. package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +10 -9
  313. package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +38 -29
  314. package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +21 -17
  315. package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +10 -9
  316. package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +20 -18
  317. package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +11 -2
  318. package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +28 -2
  319. package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +10 -9
  320. package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +11 -9
  321. package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +10 -9
  322. package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +10 -9
  323. package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +19 -17
  324. package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +10 -9
  325. package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +40 -36
  326. package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +27 -33
  327. package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +17 -16
  328. package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +19 -18
  329. package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +15 -14
  330. package/src/foundry/client/pixi/workers/texture-worker.d.mts +33 -53
  331. package/src/foundry/client/tours/setup-tour.d.mts +15 -10
  332. package/src/foundry/client/ui/context.d.mts +48 -40
  333. package/src/foundry/client/ui/dialog.d.mts +137 -126
  334. package/src/foundry/client/ui/drag.d.mts +1 -1
  335. package/src/foundry/client/ui/dragdrop.d.mts +34 -28
  336. package/src/foundry/client/ui/editor.d.mts +29 -21
  337. package/src/foundry/client/ui/filepicker.d.mts +43 -38
  338. package/src/foundry/client/ui/filter.d.mts +62 -50
  339. package/src/foundry/client/ui/forms.d.mts +22 -22
  340. package/src/foundry/client/ui/notifications.d.mts +10 -3
  341. package/src/foundry/client/ui/prosemirror.d.mts +15 -7
  342. package/src/foundry/client/ui/secrets.d.mts +42 -27
  343. package/src/foundry/client/ui/tabs.d.mts +40 -33
  344. package/src/foundry/client-esm/applications/_module.d.mts +3 -3
  345. package/src/foundry/client-esm/applications/_types.d.mts +0 -2
  346. package/src/foundry/client-esm/applications/api/_module.d.mts +2 -2
  347. package/src/foundry/client-esm/applications/api/application.d.mts +28 -19
  348. package/src/foundry/client-esm/applications/api/dialog.d.mts +20 -22
  349. package/src/foundry/client-esm/applications/api/document-sheet.d.mts +26 -12
  350. package/src/foundry/client-esm/applications/api/handlebars-application.d.mts +142 -126
  351. package/src/foundry/client-esm/applications/apps/_module.d.mts +2 -2
  352. package/src/foundry/client-esm/applications/apps/compendium-art-config.d.mts +10 -10
  353. package/src/foundry/client-esm/applications/apps/permission-config.d.mts +3 -3
  354. package/src/foundry/client-esm/applications/dice/_module.d.mts +2 -2
  355. package/src/foundry/client-esm/applications/dice/roll-resolver.d.mts +14 -2
  356. package/src/foundry/client-esm/applications/elements/_module.d.mts +2 -2
  357. package/src/foundry/client-esm/applications/elements/document-tags.d.mts +2 -0
  358. package/src/foundry/client-esm/applications/elements/file-picker.d.mts +1 -1
  359. package/src/foundry/client-esm/applications/elements/multi-select.d.mts +15 -5
  360. package/src/foundry/client-esm/applications/elements/string-tags.d.mts +1 -1
  361. package/src/foundry/client-esm/applications/forms/fields.d.mts +1 -1
  362. package/src/foundry/client-esm/applications/sheets/_module.d.mts +2 -2
  363. package/src/foundry/client-esm/applications/sheets/actor-sheet.d.mts +3 -3
  364. package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +10 -8
  365. package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +9 -7
  366. package/src/foundry/client-esm/applications/sheets/item-sheet.d.mts +3 -3
  367. package/src/foundry/client-esm/applications/sheets/region-behavior-config.d.mts +30 -5
  368. package/src/foundry/client-esm/applications/sheets/region-config.d.mts +36 -5
  369. package/src/foundry/client-esm/applications/sheets/user-config.d.mts +8 -7
  370. package/src/foundry/client-esm/applications/ui/_module.d.mts +2 -2
  371. package/src/foundry/client-esm/applications/ui/region-legend.d.mts +45 -3
  372. package/src/foundry/client-esm/audio/_module.d.mts +2 -3
  373. package/src/foundry/client-esm/audio/_types.d.mts +2 -0
  374. package/src/foundry/client-esm/audio/biquad.d.mts +76 -26
  375. package/src/foundry/client-esm/audio/cache.d.mts +31 -20
  376. package/src/foundry/client-esm/audio/convolver.d.mts +47 -25
  377. package/src/foundry/client-esm/audio/helper.d.mts +124 -80
  378. package/src/foundry/client-esm/audio/sound.d.mts +230 -126
  379. package/src/foundry/client-esm/audio/timeout.d.mts +28 -12
  380. package/src/foundry/client-esm/canvas/_module.d.mts +2 -2
  381. package/src/foundry/client-esm/canvas/edges/_module.d.mts +2 -2
  382. package/src/foundry/client-esm/canvas/edges/collision.d.mts +69 -18
  383. package/src/foundry/client-esm/canvas/edges/edge.d.mts +110 -41
  384. package/src/foundry/client-esm/canvas/edges/edges.d.mts +10 -0
  385. package/src/foundry/client-esm/canvas/edges/vertex.d.mts +56 -26
  386. package/src/foundry/client-esm/canvas/regions/_module.d.mts +6 -11
  387. package/src/foundry/client-esm/canvas/regions/geometry.d.mts +38 -0
  388. package/src/foundry/client-esm/canvas/regions/mesh.d.mts +72 -0
  389. package/src/foundry/client-esm/canvas/regions/polygon-tree.d.mts +130 -0
  390. package/src/foundry/client-esm/canvas/regions/shape.d.mts +129 -0
  391. package/src/foundry/client-esm/canvas/scene-manager.d.mts +13 -3
  392. package/src/foundry/client-esm/canvas/smaa/blend.d.mts +14 -3
  393. package/src/foundry/client-esm/canvas/smaa/edges.d.mts +25 -3
  394. package/src/foundry/client-esm/canvas/smaa/smaa.d.mts +121 -23
  395. package/src/foundry/client-esm/canvas/smaa/weights.d.mts +26 -3
  396. package/src/foundry/client-esm/canvas/sources/_module.d.mts +2 -2
  397. package/src/foundry/client-esm/canvas/sources/base-effect-source.d.mts +84 -40
  398. package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +103 -39
  399. package/src/foundry/client-esm/canvas/sources/global-light-source.d.mts +89 -15
  400. package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +71 -27
  401. package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +49 -20
  402. package/src/foundry/client-esm/canvas/sources/point-light-source.d.mts +57 -16
  403. package/src/foundry/client-esm/canvas/sources/point-movement-source.d.mts +31 -4
  404. package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +45 -12
  405. package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +98 -52
  406. package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +180 -69
  407. package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -3
  408. package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +175 -2
  409. package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +142 -2
  410. package/src/foundry/client-esm/canvas/tokens/ring.d.mts +284 -2
  411. package/src/foundry/client-esm/client.d.mts +47 -54
  412. package/src/foundry/client-esm/data/_module.d.mts +2 -2
  413. package/src/foundry/client-esm/data/client-backend.d.mts +22 -23
  414. package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +11 -14
  415. package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +56 -0
  416. package/src/foundry/client-esm/data/region-behaviors/base.d.mts +59 -0
  417. package/src/foundry/client-esm/data/region-behaviors/display-scrolling-text.d.mts +64 -0
  418. package/src/foundry/client-esm/data/region-behaviors/execute-macro.d.mts +27 -0
  419. package/src/foundry/client-esm/data/region-behaviors/execute-script.d.mts +23 -0
  420. package/src/foundry/client-esm/data/region-behaviors/pause-game.d.mts +23 -0
  421. package/src/foundry/client-esm/data/region-behaviors/suppress-weather.d.mts +17 -0
  422. package/src/foundry/client-esm/data/region-behaviors/teleport-token.d.mts +32 -0
  423. package/src/foundry/client-esm/data/region-behaviors/toggle-behavior.d.mts +31 -0
  424. package/src/foundry/client-esm/dice/_module.d.mts +2 -3
  425. package/src/foundry/client-esm/dice/parser.d.mts +11 -25
  426. package/src/foundry/client-esm/dice/roll.d.mts +112 -89
  427. package/src/foundry/client-esm/dice/terms/_module.d.mts +2 -3
  428. package/src/foundry/client-esm/dice/terms/coin.d.mts +8 -5
  429. package/src/foundry/client-esm/dice/terms/dice.d.mts +93 -63
  430. package/src/foundry/client-esm/dice/terms/die.d.mts +11 -4
  431. package/src/foundry/client-esm/dice/terms/fate.d.mts +9 -2
  432. package/src/foundry/client-esm/dice/terms/function.d.mts +18 -18
  433. package/src/foundry/client-esm/dice/terms/numeric.d.mts +3 -5
  434. package/src/foundry/client-esm/dice/terms/operator.d.mts +2 -2
  435. package/src/foundry/client-esm/dice/terms/parenthetical.d.mts +9 -10
  436. package/src/foundry/client-esm/dice/terms/pool.d.mts +25 -31
  437. package/src/foundry/client-esm/dice/terms/string.d.mts +4 -4
  438. package/src/foundry/client-esm/dice/terms/term.d.mts +18 -4
  439. package/src/foundry/client-esm/dice/twister.d.mts +3 -3
  440. package/src/foundry/client-esm/helpers/_module.d.mts +2 -2
  441. package/src/foundry/client-esm/helpers/_types.d.mts +12 -46
  442. package/src/foundry/client-esm/helpers/compendium-art.d.mts +56 -4
  443. package/src/foundry/common/abstract/_types.d.mts +60 -54
  444. package/src/foundry/common/abstract/backend.d.mts +51 -45
  445. package/src/foundry/common/abstract/data.d.mts +265 -236
  446. package/src/foundry/common/abstract/document.d.mts +1449 -464
  447. package/src/foundry/common/abstract/embedded-collection-delta.d.mts +1 -1
  448. package/src/foundry/common/abstract/embedded-collection.d.mts +37 -7
  449. package/src/foundry/common/abstract/module.d.mts +3 -2
  450. package/src/foundry/common/abstract/singleton-collection.d.mts +1 -1
  451. package/src/foundry/common/abstract/socket.d.mts +1 -1
  452. package/src/foundry/common/abstract/type-data.d.mts +61 -55
  453. package/src/foundry/common/config.d.mts +11 -3
  454. package/src/foundry/common/constants.d.mts +261 -231
  455. package/src/foundry/common/data/data.d.mts +238 -102
  456. package/src/foundry/common/data/fields.d.mts +1334 -874
  457. package/src/foundry/common/data/module.d.mts +2 -2
  458. package/src/foundry/common/data/validation-failure.d.mts +12 -9
  459. package/src/foundry/common/documents/_module.d.mts +4 -2
  460. package/src/foundry/common/documents/_types.d.mts +22 -56
  461. package/src/foundry/common/documents/active-effect.d.mts +358 -194
  462. package/src/foundry/common/documents/actor-delta.d.mts +403 -73
  463. package/src/foundry/common/documents/actor.d.mts +359 -117
  464. package/src/foundry/common/documents/adventure.d.mts +312 -142
  465. package/src/foundry/common/documents/ambient-light.d.mts +296 -75
  466. package/src/foundry/common/documents/ambient-sound.d.mts +296 -109
  467. package/src/foundry/common/documents/card.d.mts +321 -187
  468. package/src/foundry/common/documents/cards.d.mts +353 -125
  469. package/src/foundry/common/documents/chat-message.d.mts +338 -167
  470. package/src/foundry/common/documents/combat.d.mts +358 -94
  471. package/src/foundry/common/documents/combatant.d.mts +323 -92
  472. package/src/foundry/common/documents/drawing.d.mts +327 -206
  473. package/src/foundry/common/documents/fog-exploration.d.mts +303 -69
  474. package/src/foundry/common/documents/folder.d.mts +307 -82
  475. package/src/foundry/common/documents/item.d.mts +377 -100
  476. package/src/foundry/common/documents/journal-entry-page.d.mts +327 -187
  477. package/src/foundry/common/documents/journal-entry.d.mts +345 -68
  478. package/src/foundry/common/documents/macro.d.mts +325 -139
  479. package/src/foundry/common/documents/measured-template.d.mts +328 -138
  480. package/src/foundry/common/documents/note.d.mts +312 -151
  481. package/src/foundry/common/documents/playlist-sound.d.mts +309 -102
  482. package/src/foundry/common/documents/playlist.d.mts +341 -131
  483. package/src/foundry/common/documents/region-behavior.d.mts +360 -0
  484. package/src/foundry/common/documents/region.d.mts +355 -0
  485. package/src/foundry/common/documents/roll-table.d.mts +320 -102
  486. package/src/foundry/common/documents/scene.d.mts +437 -350
  487. package/src/foundry/common/documents/setting.d.mts +285 -54
  488. package/src/foundry/common/documents/table-result.d.mts +326 -103
  489. package/src/foundry/common/documents/tile.d.mts +337 -172
  490. package/src/foundry/common/documents/token.d.mts +396 -447
  491. package/src/foundry/common/documents/user.d.mts +296 -173
  492. package/src/foundry/common/documents/wall.d.mts +303 -156
  493. package/src/foundry/common/grid/_module.d.mts +3 -3
  494. package/src/foundry/common/grid/base.d.mts +66 -49
  495. package/src/foundry/common/grid/gridless.d.mts +2 -2
  496. package/src/foundry/common/grid/hexagonal.d.mts +35 -28
  497. package/src/foundry/common/grid/square.d.mts +3 -3
  498. package/src/foundry/common/packages/base-module.d.mts +6 -24
  499. package/src/foundry/common/packages/base-package.d.mts +56 -31
  500. package/src/foundry/common/packages/base-system.d.mts +45 -63
  501. package/src/foundry/common/packages/base-world.d.mts +15 -61
  502. package/src/foundry/common/packages/module.d.mts +7 -7
  503. package/src/foundry/common/packages/sub-types.d.mts +4 -6
  504. package/src/foundry/common/primitives/array.d.mts +4 -4
  505. package/src/foundry/common/primitives/math.d.mts +7 -1
  506. package/src/foundry/common/primitives/number.d.mts +2 -2
  507. package/src/foundry/common/primitives/set.d.mts +17 -14
  508. package/src/foundry/common/primitives/string.d.mts +1 -1
  509. package/src/foundry/common/prosemirror/_module.d.mts +15 -15
  510. package/src/foundry/common/prosemirror/dirty-plugin.d.mts +1 -1
  511. package/src/foundry/common/prosemirror/dom-parser.d.mts +2 -1
  512. package/src/foundry/common/prosemirror/dropdown.d.mts +1 -1
  513. package/src/foundry/common/prosemirror/highlight-matches-plugin.d.mts +2 -2
  514. package/src/foundry/common/prosemirror/image-plugin.d.mts +1 -1
  515. package/src/foundry/common/prosemirror/menu.d.mts +3 -3
  516. package/src/foundry/common/prosemirror/paste-transformer.d.mts +1 -1
  517. package/src/foundry/common/prosemirror/plugin.d.mts +2 -2
  518. package/src/foundry/common/prosemirror/schema/index.d.mts +0 -1
  519. package/src/foundry/common/prosemirror/schema/lists.d.mts +2 -0
  520. package/src/foundry/common/prosemirror/util.d.mts +1 -1
  521. package/src/foundry/common/types.d.mts +3 -3
  522. package/src/foundry/common/utils/bitmask.d.mts +23 -11
  523. package/src/foundry/common/utils/collection.d.mts +61 -38
  524. package/src/foundry/common/utils/color.d.mts +20 -2
  525. package/src/foundry/common/utils/event-emitter.d.mts +32 -17
  526. package/src/foundry/common/utils/helpers.d.mts +36 -26
  527. package/src/foundry/common/utils/http.d.mts +2 -2
  528. package/src/foundry/common/utils/module.d.mts +2 -2
  529. package/src/foundry/common/utils/string-tree.d.mts +45 -39
  530. package/src/foundry/common/utils/word-tree.d.mts +10 -23
  531. package/src/foundry/index.d.mts +0 -1
  532. package/src/foundry/{clipper → public/scripts/clipper}/clipper.d.mts +58 -16
  533. package/src/foundry/public/scripts/index.d.mts +1 -0
  534. package/src/foundry/public/scripts/workers/image-compressor.d.mts +23 -0
  535. package/src/foundry/public/scripts/workers/index.d.mts +1 -0
  536. package/{index-lenient.d.mts → src/index-lenient.d.mts} +2 -0
  537. package/src/index.d.mts +6 -0
  538. package/src/tsconfig.json +15 -0
  539. package/src/types/augments/particles.d.mts +29 -0
  540. package/src/types/augments/pixi.d.mts +1024 -21
  541. package/src/types/augments/smooth.d.mts +31 -0
  542. package/src/types/augments/tinyMCE.d.mts +1 -1
  543. package/src/types/config.d.mts +18 -313
  544. package/src/types/documentConfiguration.d.mts +286 -542
  545. package/src/types/index.d.mts +1 -1
  546. package/src/types/lib.d.mts +12 -0
  547. package/src/types/workers/image-compressor.d.mts +176 -0
  548. package/src/utils/index.d.mts +1279 -0
  549. package/tsconfig.json +29 -0
  550. package/tsconfig.main.json +8 -0
  551. package/tsconfig.miscellaneous.json +16 -0
  552. package/index.d.mts +0 -5
  553. package/src/foundry/client/apps/placeables/light-config.d.mts +0 -100
  554. package/src/foundry/client/apps/placeables/sound-config.d.mts +0 -43
  555. package/src/foundry/common/documents/module.d.mts +0 -35
  556. package/src/foundry/common/primitives/regex.d.mts +0 -12
  557. package/src/types/helperTypes.d.mts +0 -583
  558. package/src/types/utils.d.mts +0 -539
  559. /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,4 +1,4 @@
1
- import type { InexactPartial } from "../../../../../types/utils.d.mts";
1
+ import type { Identity, NullishProps } from "#utils";
2
2
 
3
3
  declare global {
4
4
  /**
@@ -9,16 +9,10 @@ declare global {
9
9
  * @param options - A config object
10
10
  */
11
11
  constructor(
12
- options?: InexactPartial<{
13
- /** A geometry passed to the graphics. */
14
- geometry: PIXI.GraphicsGeometry;
15
-
16
- /** The name of the PCO. */
17
- name: string;
18
-
19
- /** Any object that owns this PCO. */
20
- object: PlaceableObject;
21
- }>,
12
+ /**
13
+ * @remarks Passing `null`, or an object where the `geometry` property is either missing or nullish, will result in an effective default of `new PIXI.GraphicsGeometry()`
14
+ */
15
+ options?: PIXI.GraphicsGeometry | PrimaryGraphics.ConstructorOptions | null,
22
16
  );
23
17
 
24
18
  override _calculateCanvasBounds(): void;
@@ -27,4 +21,40 @@ declare global {
27
21
 
28
22
  override containsCanvasPoint(point: PIXI.IPointData): boolean;
29
23
  }
24
+
25
+ namespace PrimaryGraphics {
26
+ interface Any extends AnyPrimaryGraphics {}
27
+ interface AnyConstructor extends Identity<typeof AnyPrimaryGraphics> {}
28
+
29
+ /** @internal */
30
+ type _ConstructorOptions = NullishProps<{
31
+ /**
32
+ * A geometry passed to the graphics.
33
+ * @defaultValue `new PIXI.GraphicsGeometry()`
34
+ * @remarks Default via calling `super(geometry)` with a falsey value
35
+ */
36
+ geometry: PIXI.GraphicsGeometry;
37
+
38
+ /**
39
+ * The name of the PCO.
40
+ * @defaultValue `null`
41
+ * @remarks Default via `?? null` in function body
42
+ * */
43
+ name: string;
44
+
45
+ /**
46
+ * Any object that owns this PCO.
47
+ * @defaultValue `null`
48
+ * @remarks Default via `?? null` in function body
49
+ * @privateRemarks Foundry types as `*`, but the only place they use this class is for `Drawing`s
50
+ */
51
+ object: PlaceableObject.Any;
52
+ }>;
53
+
54
+ interface ConstructorOptions extends _ConstructorOptions {}
55
+ }
56
+ }
57
+
58
+ declare abstract class AnyPrimaryGraphics extends PrimaryGraphics {
59
+ constructor(...args: never);
30
60
  }
@@ -1,4 +1,4 @@
1
- import type { InexactPartial, Mixin } from "../../../../../types/utils.d.mts";
1
+ import type { FixedInstanceType, Mixin, NullishProps } from "#utils";
2
2
 
3
3
  declare class PrimaryOccludableObject {
4
4
  /** @privateRemarks All mixin classses should accept anything for its constructor. */
@@ -20,7 +20,7 @@ declare class PrimaryOccludableObject {
20
20
  * The occlusion mode of this occludable object.
21
21
  * @defaultValue `CONST.OCCLUSION_MODES.NONE`
22
22
  */
23
- occlusionMode: typeof CONST.OCCLUSION_MODES;
23
+ occlusionMode: CONST.OCCLUSION_MODES;
24
24
 
25
25
  /**
26
26
  * The unoccluded alpha of this object.
@@ -44,18 +44,40 @@ declare class PrimaryOccludableObject {
44
44
 
45
45
  /**
46
46
  * The amount of rendered FADE, RADIAL, and VISION occlusion.
47
+ * @defaultValue
48
+ * ```js
49
+ * {
50
+ * fade: 0.0,
51
+ * radial: 0.0,
52
+ * vision: 0.0
53
+ * }
54
+ * ```
55
+ * @privateRemarks Foundry marked `@internal`
47
56
  */
48
- protected _occlusionState: PrimaryOccludableObjectMixin.OcclusionState;
57
+ _occlusionState: PrimaryOccludableObjectMixin.OcclusionState;
49
58
 
50
59
  /**
51
60
  * The state of hover-fading.
52
- */
53
- protected _hoverFadeState: PrimaryOccludableObjectMixin.HoverFadeState;
61
+ * @defaultValue
62
+ * ```js
63
+ * {
64
+ * hovered: false,
65
+ * hoveredTime: 0,
66
+ * faded: false,
67
+ * fading: false,
68
+ * fadingTime: 0,
69
+ * occlusion: 0.0
70
+ * }
71
+ * ```
72
+ * @privateRemarks Foundry marked `@internal`
73
+ */
74
+ _hoverFadeState: PrimaryOccludableObjectMixin.HoverFadeState;
54
75
 
55
76
  /**
56
77
  * Get the blocking option bitmask value.
78
+ * @privateRemarks Foundry marked `@internal`
57
79
  */
58
- protected get _restrictionState(): number;
80
+ get _restrictionState(): number;
59
81
 
60
82
  /**
61
83
  * Is this object blocking light?
@@ -81,12 +103,13 @@ declare class PrimaryOccludableObject {
81
103
  * change PCO appearance.
82
104
  * Uses a 50ms debounce threshold.
83
105
  * Objects which are in the hovered state remain occluded until their hovered state ends.
106
+ * @remarks Actually the return value of an arrow function passed to `foundry.utils.debounce` with a timeout of 50ms
84
107
  */
85
- debounceSetOcclusion: (occluded: boolean) => void;
108
+ debounceSetOcclusion: (occluded: boolean) => boolean;
86
109
 
87
110
  updateCanvasTransform(): void;
88
111
 
89
- _shouldRenderDepth: boolean;
112
+ _shouldRenderDepth(): boolean;
90
113
 
91
114
  /**
92
115
  * Test whether a specific Token occludes this PCO.
@@ -95,37 +118,55 @@ declare class PrimaryOccludableObject {
95
118
  * @param options - Additional options that affect testing
96
119
  * @returns Is the Token occluded by the PCO?
97
120
  */
98
- testOcclusion(
99
- token: Token,
100
- options?: InexactPartial<{
101
- /** Test corners of the hit-box in addition to the token center? */
102
- corners: boolean;
103
- }>,
104
- ): boolean;
121
+ testOcclusion(token: Token.Object, options?: PrimaryOccludableObjectMixin.TestOcclusionOptions): boolean;
105
122
 
106
123
  /**
107
124
  * @deprecated since v12, will be removed in v14
125
+ * @remarks "`#roof` is deprecated in favor of more granular options: `#restrictsLight` and `#restrictsWeather`"
108
126
  */
109
127
  get roof(): boolean;
110
128
 
129
+ /**
130
+ * @deprecated since v12, until v14
131
+ * @remarks "#roof is deprecated in favor of more granular options: #restrictsLight and #restrictsWeather"
132
+ */
133
+ set roof(enabled);
134
+
111
135
  /**
112
136
  * @deprecated since v12, will be removed in v14
137
+ * @remarks "#containsPixel is deprecated. Use #containsCanvasPoint instead."
113
138
  */
114
- containsPixel(x: number, y: number, alphaThreshold: number): boolean;
139
+ containsPixel(x: number, y: number, alphaThreshold?: number): boolean;
115
140
 
116
141
  /**
117
142
  * @deprecated since v11, will be removed in v13
143
+ * @remarks "PrimaryCanvasObject#renderOcclusion is deprecated in favor of PrimaryCanvasObject#renderDepth"
118
144
  */
119
145
  renderOcclusion(renderer: PIXI.Renderer): void;
120
146
  }
121
147
 
122
148
  declare global {
123
- function PrimaryOccludableObjectMixin<BaseClass extends PIXI.DisplayObject.AnyConstructor>(
149
+ function PrimaryOccludableObjectMixin<BaseClass extends PrimaryOccludableObjectMixin.BaseClass>(
124
150
  DisplayObject: BaseClass,
125
151
  ): Mixin<typeof PrimaryOccludableObject, ReturnType<typeof PrimaryCanvasObjectMixin<BaseClass>>>;
126
152
 
127
153
  namespace PrimaryOccludableObjectMixin {
128
- type MixinClass = typeof PrimaryOccludableObject;
154
+ interface AnyMixedConstructor extends ReturnType<typeof PrimaryOccludableObjectMixin<BaseClass>> {}
155
+ interface AnyMixed extends FixedInstanceType<AnyMixedConstructor> {}
156
+
157
+ type BaseClass = PIXI.Container.AnyConstructor;
158
+
159
+ /** @internal */
160
+ type _TestOcclusionOptions = NullishProps<{
161
+ /**
162
+ * Test corners of the hit-box in addition to the token center?
163
+ * @defaultValue `0`
164
+ */
165
+ corners: boolean;
166
+ }>;
167
+
168
+ /** Additional options that affect testing */
169
+ interface TestOcclusionOptions extends _TestOcclusionOptions {}
129
170
 
130
171
  interface OcclusionState {
131
172
  /** The amount of FADE occlusion */
@@ -1,11 +1,4 @@
1
- import type { InexactPartial } from "../../../../../types/utils.d.mts";
2
-
3
- // TODO: Remove when #2570 is completed
4
- declare const PrimaryBaseSamplerShader: BaseSamplerShader;
5
-
6
- declare namespace PrimaryBaseSamplerShader {
7
- type AnyConstructor = unknown;
8
- }
1
+ import type { Identity, InexactPartial, NullishProps } from "#utils";
9
2
 
10
3
  declare global {
11
4
  /**
@@ -13,30 +6,31 @@ declare global {
13
6
  */
14
7
  class PrimarySpriteMesh extends PrimaryOccludableObjectMixin(SpriteMesh) {
15
8
  constructor(
16
- options?:
17
- | InexactPartial<{
18
- /** Texture passed to the SpriteMesh. */
19
- texture: PIXI.Texture;
20
-
21
- /** The shader class used to render this sprite. */
22
- shaderClass: PrimaryBaseSamplerShader.AnyConstructor;
23
-
24
- /** The name of this sprite. */
25
- name: string;
26
- }>
27
- | PIXI.Texture,
28
- shaderClass?: PrimaryBaseSamplerShader.AnyConstructor,
9
+ /**
10
+ * The constructor options.
11
+ * @defaultValue `{}`
12
+ * @remarks Default is applied if `options` is `instanceof PIXI.Texture`, or neither that nor `instanceof Object`
13
+ */
14
+ options?: PrimarySpriteMesh.ConstructorOptions | PIXI.Texture | null,
15
+ /**
16
+ * The shader class used to render this sprite.
17
+ * @defaultValue `PrimaryBaseSamplerShader`
18
+ * @remarks If `options` is an object, `options.shaderClass` takes precedence. If omitted,
19
+ * or if `options` is a `PIXI.Texture`, default is provided by `??` in function body.
20
+ */
21
+ shaderClass?: PrimaryBaseSamplerShader.AnyConstructor | null,
29
22
  );
30
23
 
31
24
  /**
32
25
  * The texture alpha data.
33
26
  */
34
- _textureAlphaData: TextureLoader.TextureAlphaData | null;
27
+ protected _textureAlphaData: TextureLoader.TextureAlphaData | null;
35
28
 
36
29
  /**
37
30
  * The texture alpha threshold used for point containment tests.
38
31
  * If set to a value larger than 0, the texture alpha data is
39
32
  * extracted from the texture at 25% resolution.
33
+ * @defaultValue `0`
40
34
  */
41
35
  textureAlphaThreshold: number;
42
36
 
@@ -67,21 +61,9 @@ declare global {
67
61
  * @param baseWidth - The base width used for computations.
68
62
  * @param baseHeight - The base height used for computations.
69
63
  * @param options - The options.
64
+ * @throws If either `baseWidth` or `baseHeight` are less than 0, or if `options.fit` is not a FitType
70
65
  */
71
- resize(
72
- baseWidth: number,
73
- baseHeight: number,
74
- options?: InexactPartial<{
75
- /** The fit type. */
76
- fit: "fill" | "cover" | "contain" | "width" | "height";
77
-
78
- /** The scale on X axis. */
79
- scaleX: number;
80
-
81
- /** The scale on Y axis. */
82
- scaleY: number;
83
- }>,
84
- ): void;
66
+ resize(baseWidth: number, baseHeight: number, options?: PrimarySpriteMesh.ResizeOptions): void;
85
67
 
86
68
  protected override _updateBatchData(): void;
87
69
 
@@ -92,7 +74,22 @@ declare global {
92
74
  * @param point - The point in canvas space
93
75
  * @param textureAlphaThreshold - The minimum texture alpha required for containment
94
76
  */
95
- containsCanvasPoint(point: PIXI.IPointData, textureAlphaThreshold?: number): boolean;
77
+ containsCanvasPoint(
78
+ point: PIXI.IPointData,
79
+ /** @defaultValue `this.textureAlphaThreshold` */
80
+ textureAlphaThreshold?: number,
81
+ ): boolean;
82
+
83
+ /**
84
+ * Is the given point in world space contained in this object?
85
+ * @param point - The point in world space
86
+ * @param textureAlphaThreshold - The minimum texture alpha required for containment
87
+ */
88
+ containsPoint(
89
+ point: PIXI.IPointData,
90
+ /** @defaultValue `this.textureAlphaThreshold` */
91
+ textureAlphaThreshold?: number,
92
+ ): boolean;
96
93
 
97
94
  override renderDepthData(renderer: PIXI.Renderer): void;
98
95
 
@@ -105,7 +102,93 @@ declare global {
105
102
 
106
103
  /**
107
104
  * @deprecated since v12, will be removed in v14
105
+ * @remarks "#getPixelAlpha is deprecated without replacement."
108
106
  */
109
107
  getPixelAlpha(x: number, y: number): number;
108
+
109
+ /**
110
+ * @deprecated since v12, until v14
111
+ * @remarks "#_getAlphaBounds is deprecated without replacement."
112
+ */
113
+ _getAlphaBounds(): PIXI.Rectangle;
114
+
115
+ /**
116
+ * @deprecated since v12, until v14
117
+ * @remarks "#_getTextureCoordinate is deprecated without replacement."
118
+ */
119
+ _getTextureCoordinate(testX: number, testY: number): PIXI.IPointData;
110
120
  }
121
+
122
+ namespace PrimarySpriteMesh {
123
+ interface Any extends AnyPrimarySpriteMesh {}
124
+ interface AnyConstructor extends Identity<typeof AnyPrimarySpriteMesh> {}
125
+
126
+ type FitType = "fill" | "cover" | "contain" | "width" | "height";
127
+
128
+ /** @internal */
129
+ type _ConstructorOptions = NullishProps<{
130
+ /**
131
+ * Texture passed to the SpriteMesh.
132
+ * @defaultValue `null`
133
+ * @remarks Default ultimately provided by the `SpriteMesh` constructor
134
+ */
135
+ texture: PIXI.Texture;
136
+
137
+ /**
138
+ * The shader class used to render this sprite.
139
+ * @defaultValue `PrimaryBaseSamplerShader`
140
+ * @remarks Default provided by `??=` in function body
141
+ */
142
+ shaderClass: PrimaryBaseSamplerShader.AnyConstructor;
143
+
144
+ /**
145
+ * The name of this sprite.
146
+ * @defaultValue `null`
147
+ * @remarks Default provided by `?? null` in function body
148
+ */
149
+ name: string;
150
+
151
+ /**
152
+ * Any object that owns this PCO.
153
+ * @defaultValue `null`
154
+ * @remarks Default via `?? null` in function body
155
+ * @privateRemarks Foundry types as `*`, but the only things passed in practice are `Tile`s, `Token`s, and the `PrimaryCanvasGroup`
156
+ */
157
+ // TODO: (esheyw) Revisit the "any canvas group" type when groups are done
158
+ object: PlaceableObject.Any | CanvasGroupMixin.AnyMixed;
159
+ }>;
160
+
161
+ /** The constructor options */
162
+ interface ConstructorOptions extends _ConstructorOptions {}
163
+
164
+ /** @internal */
165
+ type _ResizeOptions = InexactPartial<{
166
+ /**
167
+ * The fit type.
168
+ * @defaultValue `"fill"`
169
+ * @remarks Can't be `null` because it only has a parameter default, and is then fed into a switch statement where the default is throw
170
+ * */
171
+ fit: FitType;
172
+
173
+ /**
174
+ * The scale on X axis.
175
+ * @defaultValue `1`
176
+ * @remarks Can't be `null` because it only has a parameter default and a width scale of 0 is, if not nonsensical, not to be done by accident.
177
+ */
178
+ scaleX: number;
179
+
180
+ /**
181
+ * The scale on Y axis.
182
+ * @defaultValue `1`
183
+ * @remarks Can't be `null` because it only has a parameter default and a height scale of 0 is, if not nonsensical, not to be done by accident.
184
+ */
185
+ scaleY: number;
186
+ }>;
187
+
188
+ interface ResizeOptions extends _ResizeOptions {}
189
+ }
190
+ }
191
+
192
+ declare abstract class AnyPrimarySpriteMesh extends PrimarySpriteMesh {
193
+ constructor(...args: never);
111
194
  }
@@ -0,0 +1,280 @@
1
+ import type { ConfiguredObjectClassOrDefault } from "../../config.d.mts";
2
+ import type { Brand, FixedInstanceType, HandleEmptyObject, NullishProps } from "#utils";
3
+ import type RegionShape from "../../../client-esm/canvas/regions/shape.d.mts";
4
+ import type RegionPolygonTree from "../../../client-esm/canvas/regions/polygon-tree.d.mts";
5
+ import type RegionGeometry from "../../../client-esm/canvas/regions/geometry.d.mts";
6
+
7
+ declare global {
8
+ /**
9
+ * A Region is an implementation of PlaceableObject which represents a Region document
10
+ * within a viewed Scene on the game canvas.
11
+ * @see {@link RegionDocument | `RegionDocument`}
12
+ * @see {@link RegionLayer | `RegionLayer`}
13
+ */
14
+ class Region extends PlaceableObject<RegionDocument.Implementation> {
15
+ constructor(document: RegionDocument.Implementation);
16
+
17
+ // fake override; super has to type as if this could be a ControlIcon, but Regions don't use one
18
+ override controlIcon: null;
19
+
20
+ static override embeddedName: "Region";
21
+
22
+ static override RENDER_FLAGS: Region.RENDER_FLAGS;
23
+
24
+ // Note: This isn't a "real" override but `renderFlags` is set corresponding to the
25
+ // `RENDER_FLAGS` and so it has to be adjusted here.
26
+ renderFlags: RenderFlags<Region.RENDER_FLAGS>;
27
+
28
+ /**
29
+ * The scaling factor used for Clipper paths.
30
+ * @defaultValue `100`
31
+ * @remarks Defined using `Object.defineProperty` in a static initialization block
32
+ */
33
+ static readonly CLIPPER_SCALING_FACTOR: 100;
34
+
35
+ /**
36
+ * The three movement segment types: ENTER, MOVE, and EXIT.
37
+ * @remarks Defined using `Object.defineProperty` in a static initialization block
38
+ */
39
+ static readonly MOVEMENT_SEGMENT_TYPES: Region.MovementSegmentTypes;
40
+
41
+ /**
42
+ * The shapes of this Region in draw order.
43
+ * @privateRemarks Foundry types this as `ReadonlyArray<>`, but does nothing to that effect at runtime.
44
+ * Not reported, as this is deprecated and thus untyped in v13
45
+ */
46
+ get shapes(): RegionShape.Any[];
47
+
48
+ /** The bottom elevation of this Region. */
49
+ get bottom(): number;
50
+
51
+ /** The top elevation of this Region. */
52
+ get top(): number;
53
+
54
+ /**
55
+ * The polygons of this Region.
56
+ * @privateRemarks Foundry types this as `ReadonlyArray<>`, but does nothing to that effect at runtime.
57
+ * Not reported, as this is deprecated and thus untyped in v13
58
+ */
59
+ get polygons(): PIXI.Polygon[];
60
+
61
+ /** The polygon tree of this Region. */
62
+ get polygonTree(): RegionPolygonTree;
63
+
64
+ /**
65
+ * The Clipper paths of this Region.
66
+ * @privateRemarks Foundry types this as `ReadonlyArray<>`, but does nothing to that effect at runtime.
67
+ * Not reported, as this is deprecated and thus untyped in v13
68
+ */
69
+ get clipperPaths(): ClipperLib.Paths;
70
+
71
+ /**
72
+ * The triangulation of this Region
73
+ * @privateRemarks Foundry types this as `Readonly<>`, but does nothing to that effect at runtime.
74
+ * Not reported, as this is deprecated and thus untyped in v13
75
+ */
76
+ get triangulation(): Region.TriangulationData;
77
+
78
+ /** The geometry of this Region */
79
+ get geometry(): RegionGeometry;
80
+
81
+ override get bounds(): PIXI.Rectangle;
82
+
83
+ override get center(): PIXI.Point;
84
+
85
+ /** Is this Region currently visible on the Canvas? */
86
+ get isVisible(): boolean;
87
+
88
+ /**
89
+ * @throws "`Region#getSnappedPosition` is not supported: `RegionDocument` does not have a (x, y) position"
90
+ */
91
+ override getSnappedPosition(position?: never): never;
92
+
93
+ protected override _draw(options: HandleEmptyObject<Region.DrawOptions>): Promise<void>;
94
+
95
+ // fake override; super has to account for misbehaving siblings returning void
96
+ override clear(): this;
97
+
98
+ protected override _applyRenderFlags(flags: Region.RenderFlags): void;
99
+
100
+ /** Refresh the state of the Region. */
101
+ protected _refreshState(): void;
102
+
103
+ /** Refreshes the border of the Region. */
104
+ protected _refreshBorder(): void;
105
+
106
+ protected override _canDrag(user: User.Implementation, event: PIXI.FederatedEvent): boolean;
107
+
108
+ protected override _canHUD(user: User.Implementation, event: PIXI.FederatedEvent): boolean;
109
+
110
+ protected override _onControl(options: Region.ControlOptions): void;
111
+
112
+ protected override _onRelease(options: HandleEmptyObject<Region.ReleaseOptions>): void;
113
+
114
+ // options: not null (destructured)
115
+ protected override _onHoverIn(event: PIXI.FederatedEvent, options?: Region.HoverInOptions): void;
116
+
117
+ // options: not null (destructured)
118
+ protected override _onHoverOut(event: PIXI.FederatedEvent, options?: Region.HoverOutOptions): void;
119
+
120
+ protected override _overlapsSelection(rectangle: PIXI.Rectangle): boolean;
121
+
122
+ /**
123
+ * Test whether the given point (at the given elevation) is inside this Region.
124
+ * @param point - The point.
125
+ * @param elevation - The elevation of the point.
126
+ * @returns Is the point (at the given elevation) inside this Region?
127
+ * @remarks Only tests elevation if provided, always forwards `position` to {@link RegionPolygonTree.testPoint | `RegionPolygonTree#testPoint`}
128
+ */
129
+ // elevation: not null (`=== undefined` check)
130
+ testPoint(point: Canvas.Point, elevation?: number): boolean;
131
+
132
+ /**
133
+ * Split the movement into its segments.
134
+ * @param waypoints - The waypoints of movement.
135
+ * @param samples - The points relative to the waypoints that are tested. Whenever one of them is inside the region, the moved object is considered to be inside the region.
136
+ * @param options - Additional options
137
+ * @returns The movement split into its segments.
138
+ */
139
+ // options: not null (destructured)
140
+ segmentizeMovement(
141
+ waypoints: Region.MovementWaypoint[],
142
+ samples: Canvas.Point[],
143
+ options?: Region.SegmentizeMovementOptions,
144
+ ): Region.MovementSegment[];
145
+
146
+ // _onUpdate is overridden but with no signature changes.
147
+ // For type simplicity it is left off. These methods historically have been the source of a large amount of computation from tsc.
148
+
149
+ // fake override to narrow the type from super, which had to account for this class's misbehaving siblings
150
+ protected override _prepareDragLeftDropUpdates(event: PIXI.FederatedEvent): PlaceableObject.DragLeftDropUpdate[];
151
+ }
152
+
153
+ namespace Region {
154
+ // eslint-disable-next-line no-restricted-syntax
155
+ interface ObjectClass extends ConfiguredObjectClassOrDefault<typeof Region> {}
156
+ interface Object extends FixedInstanceType<ObjectClass> {}
157
+
158
+ /**
159
+ * @deprecated {@link Region.ObjectClass | `Region.ObjectClass`}
160
+ */
161
+ type ConfiguredClass = ObjectClass;
162
+
163
+ /**
164
+ * @deprecated {@link Region.Object | `Region.Object`}
165
+ */
166
+ type ConfiguredInstance = Object;
167
+
168
+ /**
169
+ * This type will permanently exist but is marked deprecated. The reason it exists is because
170
+ * the confusion between `Region` (the `PlaceableObject` that appears on the canvas) and
171
+ * `RegionDocument` (the `Document` that represents the data for a `Region`) is so common that
172
+ * it is useful to have a type to forward to `RegionDocument`.
173
+ *
174
+ * @deprecated {@link RegionDocument.Implementation | `RegionDocument.Implementation`}
175
+ */
176
+ type Implementation = RegionDocument.Implementation;
177
+
178
+ /**
179
+ * This type will permanently exist but is marked deprecated. The reason it exists is because
180
+ * the confusion between `Region` (the `PlaceableObject` that appears on the canvas) and
181
+ * `RegionDocument` (the `Document` that represents the data for a `Region`) is so common that
182
+ * it is useful to have a type to forward to `RegionDocument`.
183
+ *
184
+ * @deprecated {@link RegionDocument.ImplementationClass | `RegionDocument.ImplementationClass`}
185
+ */
186
+ type ImplementationClass = RegionDocument.ImplementationClass;
187
+
188
+ interface RENDER_FLAGS {
189
+ /** @defaultValue `{ propagate: ["refresh"] }` */
190
+ redraw: RenderFlag<this, "redraw">;
191
+
192
+ /** @defaultValue `{ propagate: ["refreshState", "refreshBorder"], alias: true }` */
193
+ refresh: RenderFlag<this, "refresh">;
194
+
195
+ /** @defaultValue `{}` */
196
+ refreshState: RenderFlag<this, "refreshState">;
197
+
198
+ /** @defaultValue `{}` */
199
+ refreshBorder: RenderFlag<this, "refreshBorder">;
200
+ }
201
+
202
+ interface RenderFlags extends RenderFlagsMixin.ToBooleanFlags<RENDER_FLAGS> {}
203
+
204
+ interface TriangulationData {
205
+ vertices: Float32Array;
206
+ indices: Uint16Array | Uint32Array;
207
+ }
208
+
209
+ interface DrawOptions extends PlaceableObject.DrawOptions {}
210
+
211
+ interface RefreshOptions extends PlaceableObject.RefreshOptions {}
212
+
213
+ interface ControlOptions extends PlaceableObject.ControlOptions {}
214
+
215
+ interface ReleaseOptions extends PlaceableObject.ReleaseOptions {}
216
+
217
+ type _HoverInOptions = NullishProps<{
218
+ /** @defaultValue `true` */
219
+ updateLegend: boolean;
220
+ }>;
221
+
222
+ interface HoverInOptions extends _HoverInOptions, PlaceableObject.HoverInOptions {}
223
+
224
+ interface HoverOutOptions extends _HoverInOptions {}
225
+
226
+ interface MovementWaypoint {
227
+ /** The x-coordinates in pixels (integer) */
228
+ x: number;
229
+
230
+ /** The y-coordinates in pixels (integer) */
231
+ y: number;
232
+
233
+ /** The elevation in grid units. */
234
+ elevation: number;
235
+ }
236
+
237
+ interface MovementSegment {
238
+ /** The type of this segment (see {@link Region.MovementSegmentTypes | `Region.MovementSegmentTypes`}) */
239
+ type: MOVEMENT_SEGMENT_TYPES;
240
+
241
+ /** The waypoint that this segment starts from */
242
+ from: MovementWaypoint;
243
+
244
+ /** The waypoint that this segment goes to */
245
+ to: MovementWaypoint;
246
+ }
247
+
248
+ type MOVEMENT_SEGMENT_TYPES = Brand<number, "Region.MOVEMENT_SEGMENT_TYPES">;
249
+
250
+ interface MovementSegmentTypes
251
+ extends Readonly<{
252
+ /**
253
+ * The segment crosses the boundary of the region and exits it.
254
+ */
255
+ EXIT: -1 & MOVEMENT_SEGMENT_TYPES;
256
+
257
+ /**
258
+ * The segment does not cross the boundary of the region and is contained within it.
259
+ */
260
+ MOVE: 0 & MOVEMENT_SEGMENT_TYPES;
261
+
262
+ /**
263
+ * The segment crosses the boundary of the region and enters it.
264
+ */
265
+ ENTER: 1 & MOVEMENT_SEGMENT_TYPES;
266
+ }> {}
267
+
268
+ /** @internal */
269
+ type _SegmentizeMovementOptions = NullishProps<{
270
+ /**
271
+ * Is it teleportation?
272
+ * @defaultValue `false`
273
+ * @remarks Can't be `null` because it only has a parameter default
274
+ */
275
+ teleport: boolean;
276
+ }>;
277
+
278
+ interface SegmentizeMovementOptions extends _SegmentizeMovementOptions {}
279
+ }
280
+ }