@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,20 +1,29 @@
1
- import type { DatabaseBackend } from "../abstract/module.d.mts";
2
1
  import type { DataModel } from "../abstract/data.d.mts";
3
- import type { fields } from "./module.d.mts";
4
- import type * as documents from "../documents/_module.d.mts";
5
- import type { AnyObject, EmptyObject, ValueOf } from "../../../types/utils.d.mts";
6
-
7
- // TODO: Implement all of the necessary options
8
-
9
- declare global {
10
- type LightAnimationData = fields.SchemaField.InnerInitializedType<LightData.LightAnimationDataSchema>;
11
- }
2
+ import type {
3
+ AnyMutableObject,
4
+ EmptyObject,
5
+ GetKey,
6
+ NullishCoalesce,
7
+ RemoveIndexSignatures,
8
+ ToMethod,
9
+ ValueOf,
10
+ } from "#utils";
11
+ import fields = foundry.data.fields;
12
+ import documents = foundry.documents;
13
+ import Document = foundry.abstract.Document;
14
+ import type { SchemaField } from "./fields.d.mts";
15
+
16
+ type DataSchema = foundry.data.fields.DataSchema;
12
17
 
13
18
  declare namespace LightData {
14
- export interface LightAnimationDataSchema extends DataSchema {
19
+ type Parent = TokenDocument.Implementation | AmbientLightDocument.Implementation;
20
+
21
+ interface LightAnimationDataSchema extends DataSchema {
15
22
  /**
16
23
  * The animation type which is applied
17
24
  * @defaultValue `null`
25
+ * @remarks While not enforced by the data model, this should be in `keyof CONFIG.Canvas.lightAnimations`
26
+ * (or `.darknessAnimations` as appropriate) or the animation will be ignored
18
27
  */
19
28
  type: fields.StringField<{ nullable: true; blank: false; initial: null }>;
20
29
 
@@ -53,16 +62,16 @@ declare namespace LightData {
53
62
  reverse: fields.BooleanField;
54
63
  }
55
64
 
56
- export interface DarknessSchema extends DataSchema {
65
+ interface DarknessSchema extends DataSchema {
57
66
  /**
58
67
  * @defaultValue `0`
59
68
  */
60
- min: fields.NumberField<{ initial: 0 }>;
69
+ min: fields.AlphaField<{ initial: 0 }>;
61
70
 
62
71
  /**
63
72
  * @defaultValue `1`
64
73
  */
65
- max: fields.NumberField<{ initial: 1 }>;
74
+ max: fields.AlphaField<{ initial: 1 }>;
66
75
  }
67
76
 
68
77
  interface Schema extends DataSchema {
@@ -104,6 +113,7 @@ declare namespace LightData {
104
113
  /**
105
114
  * The coloration technique applied in the shader
106
115
  * @defaultValue `1`
116
+ * @remarks This should match the `id` of the desired property of {@link AdaptiveLightingShader.SHADER_TECHNIQUES | `AdaptiveLightingShader.SHADER_TECHNIQUES`}
107
117
  */
108
118
  coloration: fields.NumberField<{ required: true; integer: true; initial: 1 }>;
109
119
 
@@ -156,7 +166,7 @@ declare namespace LightData {
156
166
  darkness: fields.SchemaField<
157
167
  DarknessSchema,
158
168
  {
159
- validate: (d: fields.SchemaField.InnerAssignmentType<DarknessSchema>) => boolean;
169
+ validate: (d: unknown) => boolean;
160
170
  validationError: "darkness.max may not be less than darkness.min";
161
171
  }
162
172
  >;
@@ -167,15 +177,18 @@ declare namespace LightData {
167
177
  * A reusable document structure for the internal data used to render the appearance of a light source.
168
178
  * This is re-used by both the AmbientLightData and TokenData classes.
169
179
  */
170
- declare class LightData extends DataModel<LightData.Schema> {
180
+ declare class LightData extends DataModel<LightData.Schema, LightData.Parent> {
171
181
  static override defineSchema(): LightData.Schema;
172
182
 
173
- /**
174
- * @defaultValue `["LIGHT"]`
175
- */
183
+ /** @defaultValue `["LIGHT"]` */
176
184
  static override LOCALIZATION_PREFIXES: string[];
177
185
 
178
- static migrateData(source: AnyObject): AnyObject;
186
+ /**
187
+ * @remarks
188
+ * Migrations:
189
+ * - negative `luminosity`s to `1 - luminosity` and setting `negative` true
190
+ */
191
+ static override migrateData(source: AnyMutableObject): AnyMutableObject;
179
192
  }
180
193
 
181
194
  declare namespace ShapeData {
@@ -232,17 +245,21 @@ declare class ShapeData extends DataModel<ShapeData.Schema> {
232
245
  }
233
246
 
234
247
  declare namespace BaseShapeData {
235
- interface Schema extends DataSchema {
248
+ interface Schema<ShapeType extends ShapeTypes = ShapeTypes> extends DataSchema {
236
249
  /**
237
250
  * The type of shape, a value in BaseShapeData.TYPES.
238
251
  * @defaultValue `this.TYPE`
252
+ * @remarks `this.TYPE` is `""` in `BaseShapeData`, and must be defined by subclasses
239
253
  */
240
254
  type: fields.StringField<{
241
255
  required: true;
242
256
  blank: false;
243
- initial: string;
244
- validate: (value: string) => boolean;
245
- validationError: `must be equal to "${string}"`;
257
+ initial: ShapeType;
258
+ validate: (value: unknown) => value is ShapeType;
259
+ // TODO: The following `choices` does not exist in Foundry, it's a type hack to get this field to report as the only valid value it can have
260
+ // TODO: The validation function enough might be able to be made to sufficiently limit the value
261
+ choices: [ShapeType];
262
+ validationError: `must be equal to "${ShapeType}"`;
246
263
  }>;
247
264
 
248
265
  /**
@@ -252,18 +269,22 @@ declare namespace BaseShapeData {
252
269
  hole: fields.BooleanField;
253
270
  }
254
271
 
255
- interface Types {
256
- rectangle: RectangleShapeData;
257
- circle: CircleShapeData;
258
- ellipse: EllipseShapeData;
259
- polygon: PolygonShapeData;
272
+ type ShapeTypes = keyof RemoveIndexSignatures<BaseShapeData.Types>;
273
+
274
+ interface Types extends foundry.data.fields.TypedSchemaField.Types {
275
+ rectangle: typeof RectangleShapeData;
276
+ circle: typeof CircleShapeData;
277
+ ellipse: typeof EllipseShapeData;
278
+ polygon: typeof PolygonShapeData;
260
279
  }
261
280
  }
262
281
 
263
282
  /**
264
283
  * A data model intended to be used as an inner EmbeddedDataField which defines a geometric shape.
265
284
  */
266
- declare abstract class BaseShapeData extends DataModel<BaseShapeData.Schema> {
285
+ declare abstract class BaseShapeData<
286
+ ShapeSchema extends BaseShapeData.Schema = BaseShapeData.Schema,
287
+ > extends DataModel<ShapeSchema> {
267
288
  /**
268
289
  * The possible shape types.
269
290
  */
@@ -280,7 +301,7 @@ declare abstract class BaseShapeData extends DataModel<BaseShapeData.Schema> {
280
301
  }
281
302
 
282
303
  declare namespace RectangleShapeData {
283
- interface Schema extends BaseShapeData.Schema {
304
+ interface Schema extends BaseShapeData.Schema<"rectangle"> {
284
305
  /**
285
306
  * The top-left x-coordinate in pixels before rotation.
286
307
  * @defaultValue `undefined`
@@ -316,17 +337,14 @@ declare namespace RectangleShapeData {
316
337
  /**
317
338
  * The data model for a rectangular shape.
318
339
  */
319
- declare class RectangleShapeData extends BaseShapeData {
320
- /**
321
- * @defaultValue `"rectangle"`
322
- */
323
- static override TYPE: string;
340
+ declare class RectangleShapeData extends BaseShapeData<RectangleShapeData.Schema> {
341
+ static override TYPE: "rectangle";
324
342
 
325
343
  static override defineSchema(): RectangleShapeData.Schema;
326
344
  }
327
345
 
328
346
  declare namespace CircleShapeData {
329
- interface Schema extends BaseShapeData.Schema {
347
+ interface Schema extends BaseShapeData.Schema<"circle"> {
330
348
  /**
331
349
  * The x-coordinate of the center point in pixels.
332
350
  * @defaultValue `undefined`
@@ -350,17 +368,14 @@ declare namespace CircleShapeData {
350
368
  /**
351
369
  * The data model for a circle shape.
352
370
  */
353
- declare class CircleShapeData extends BaseShapeData {
354
- /**
355
- * @defaultValue `"circle"`
356
- */
357
- static override TYPE: string;
371
+ declare class CircleShapeData extends BaseShapeData<CircleShapeData.Schema> {
372
+ static override TYPE: "circle";
358
373
 
359
374
  static override defineSchema(): CircleShapeData.Schema;
360
375
  }
361
376
 
362
377
  declare namespace EllipseShapeData {
363
- interface Schema extends BaseShapeData.Schema {
378
+ interface Schema extends BaseShapeData.Schema<"ellipse"> {
364
379
  /**
365
380
  * The x-coordinate of the center point in pixels.
366
381
  * @defaultValue `undefined`
@@ -396,17 +411,14 @@ declare namespace EllipseShapeData {
396
411
  /**
397
412
  * The data model for an ellipse shape.
398
413
  */
399
- declare class EllipseShapeData extends BaseShapeData {
400
- /**
401
- * @defaultValue `"ellipse"`
402
- */
403
- static override TYPE: string;
414
+ declare class EllipseShapeData extends BaseShapeData<EllipseShapeData.Schema> {
415
+ static override TYPE: "ellipse";
404
416
 
405
417
  static override defineSchema(): EllipseShapeData.Schema;
406
418
  }
407
419
 
408
420
  declare namespace PolygonShapeData {
409
- interface Schema extends BaseShapeData.Schema {
421
+ interface Schema extends BaseShapeData.Schema<"polygon"> {
410
422
  /**
411
423
  * The points of the polygon ([x0, y0, x1, y1, ...]).
412
424
  * The polygon must not be self-intersecting.
@@ -422,97 +434,172 @@ declare namespace PolygonShapeData {
422
434
  /**
423
435
  * The data model for a polygon shape.
424
436
  */
425
- declare class PolygonShapeData extends BaseShapeData {
426
- /**
427
- * @defaultValue `"polygon"`
428
- */
429
- static override TYPE: string;
437
+ declare class PolygonShapeData extends BaseShapeData<PolygonShapeData.Schema> {
438
+ static override TYPE: "polygon";
430
439
 
431
440
  static override defineSchema(): PolygonShapeData.Schema;
432
441
  }
433
442
 
434
443
  declare namespace TextureData {
444
+ /** The parameter defaults for `srcOptions` in the {@link TextureData} constructor */
435
445
  interface DefaultOptions {
436
446
  categories: ["IMAGE", "VIDEO"];
437
- // initial: {};
447
+ initial: EmptyObject;
438
448
  wildcard: false;
439
449
  label: "";
440
450
  }
441
451
 
442
- interface Schema<SrcOptions extends FilePathFieldOptions> extends DataSchema {
452
+ /**
453
+ * @internal
454
+ * The `initial` property of the `srcOptions` parameter of the {@link TextureData | `TextureData`} constructor
455
+ * is not the `initial` for any one field, but instead is an object that gets parcelled out by key to the
456
+ * fields of the schema
457
+ */
458
+ type _SrcOptionsInitial<T> = {
459
+ [K in keyof T]: fields.DataField.Options.InitialType<T[K]>;
460
+ };
461
+
462
+ /** @remarks The keys picked directly are passed on to the `src: FilePathField` field, but `initial` is an object of initial values for potentially every field in the schema */
463
+ interface SrcOptions extends Pick<fields.FilePathField.Options, "categories" | "wildcard" | "label"> {
464
+ initial: _SrcOptionsInitial<fields.SchemaField.AssignmentData<Schema<DefaultOptions>>>;
465
+ }
466
+
467
+ interface Schema<Options extends SrcOptions = DefaultOptions> extends DataSchema {
443
468
  /**
444
469
  * The URL of the texture source.
445
470
  * @defaultValue `initial.src ?? null`
446
- */
447
- src: fields.FilePathField<SrcOptions>;
471
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
472
+ * parameter of the {@link TextureData | `TextureData`} constructor
473
+ */
474
+ src: fields.FilePathField<{
475
+ categories: NullishCoalesce<Options["categories"], DefaultOptions["categories"]>;
476
+ initial: NullishCoalesce<GetKey<Options["initial"], "src", null>, null>;
477
+ wildcard: NullishCoalesce<Options["wildcard"], DefaultOptions["wildcard"]>;
478
+ label: NullishCoalesce<Options["label"], DefaultOptions["label"]>;
479
+ }>;
448
480
 
449
481
  /**
450
482
  * The X coordinate of the texture anchor.
451
483
  * @defaultValue `initial.anchorX ?? 0`
484
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
485
+ * parameter of the {@link TextureData | `TextureData`} constructor
452
486
  */
453
- anchorX: fields.NumberField<{ nullable: false; initial: number }>;
487
+ anchorX: fields.NumberField<{
488
+ nullable: false;
489
+ initial: NullishCoalesce<GetKey<Options["initial"], "anchorX", 0>, 0>;
490
+ }>;
454
491
 
455
492
  /**
456
493
  * The Y coordinate of the texture anchor.
457
494
  * @defaultValue `initial.anchorY ?? 0`
495
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
496
+ * parameter of the {@link TextureData | `TextureData`} constructor
458
497
  */
459
- anchorY: fields.NumberField<{ nullable: false; initial: number }>;
498
+ anchorY: fields.NumberField<{
499
+ nullable: false;
500
+ initial: NullishCoalesce<GetKey<Options["initial"], "anchorY", 0>, 0>;
501
+ }>;
460
502
 
461
503
  /**
462
504
  * The X offset of the texture with (0,0) in the top left.
463
505
  * @defaultValue `initial.offsetX ?? 0`
506
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
507
+ * parameter of the {@link TextureData | `TextureData`} constructor
464
508
  */
465
- offsetX: fields.NumberField<{ nullable: false; integer: true; initial: number }>;
509
+ offsetX: fields.NumberField<{
510
+ nullable: false;
511
+ integer: true;
512
+ initial: NullishCoalesce<GetKey<Options["initial"], "offsetX", 0>, 0>;
513
+ }>;
466
514
 
467
515
  /**
468
516
  * The Y offset of the texture with (0,0) in the top left.
469
517
  * @defaultValue `initial.offsetY ?? 0`
518
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
519
+ * parameter of the {@link TextureData | `TextureData`} constructor
470
520
  */
471
- offsetY: fields.NumberField<{ nullable: false; integer: true; initial: number }>;
521
+ offsetY: fields.NumberField<{
522
+ nullable: false;
523
+ integer: true;
524
+ initial: NullishCoalesce<GetKey<Options["initial"], "offsetY", 0>, 0>;
525
+ }>;
472
526
 
473
527
  /**
474
528
  * @defaultValue `initial.fit ?? "fill"`
529
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
530
+ * parameter of the {@link TextureData | `TextureData`} constructor
475
531
  */
476
- fit: fields.StringField<{ initial: string; choices: typeof CONST.TEXTURE_DATA_FIT_MODES }>;
532
+ fit: fields.StringField<
533
+ {
534
+ initial: NullishCoalesce<GetKey<Options["initial"], "fit", "fill">, "fill">;
535
+ choices: typeof CONST.TEXTURE_DATA_FIT_MODES;
536
+ },
537
+ ValueOf<typeof CONST.TEXTURE_DATA_FIT_MODES> | null | undefined,
538
+ ValueOf<typeof CONST.TEXTURE_DATA_FIT_MODES>,
539
+ ValueOf<typeof CONST.TEXTURE_DATA_FIT_MODES>
540
+ >;
477
541
 
478
542
  /**
479
543
  * The scale of the texture in the X dimension.
480
544
  * @defaultValue `initial.scaleX ?? 1`
545
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
546
+ * parameter of the {@link TextureData | `TextureData`} constructor
481
547
  */
482
- scaleX: fields.NumberField<{ nullable: false; initial: number }>;
548
+ scaleX: fields.NumberField<{
549
+ nullable: false;
550
+ initial: NullishCoalesce<GetKey<Options["initial"], "scaleX", 1>, 1>;
551
+ }>;
483
552
 
484
553
  /**
485
554
  * The scale of the texture in the Y dimension.
486
555
  * @defaultValue `initial.scaleY ?? 1`
556
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
557
+ * parameter of the {@link TextureData | `TextureData`} constructor
487
558
  */
488
- scaleY: fields.NumberField<{ nullable: false; initial: number }>;
559
+ scaleY: fields.NumberField<{
560
+ nullable: false;
561
+ initial: NullishCoalesce<GetKey<Options["initial"], "scaleY", 1>, 1>;
562
+ }>;
489
563
 
490
564
  /**
491
565
  * An angle of rotation by which this texture is rotated around its center.
492
566
  * @defaultValue `initial.rotation ?? 0`
567
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
568
+ * parameter of the {@link TextureData | `TextureData`} constructor
493
569
  */
494
- rotation: fields.AngleField<{ initial: number }>;
570
+ rotation: fields.AngleField<{
571
+ initial: NullishCoalesce<GetKey<Options["initial"], "rotation", 0>, 0>;
572
+ }>;
495
573
 
496
574
  /**
497
575
  * The tint applied to the texture.
498
576
  * @defaultValue `initial.tint ?? "#ffffff"`
577
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
578
+ * parameter of the {@link TextureData | `TextureData`} constructor
499
579
  */
500
- tint: fields.ColorField<{ nullable: false; initial: string }>;
501
-
580
+ tint: fields.ColorField<{
581
+ nullable: false;
582
+ initial: NullishCoalesce<GetKey<Options["initial"], "tint", "#ffffff">, "#ffffff">;
583
+ }>;
502
584
  /**
503
585
  * Only pixels with an alpha value at or above this value are consider solid
504
586
  * w.r.t. to occlusion testing and light/weather blocking.
505
587
  * @defaultValue `initial.alphaThreshold ?? 0`
588
+ * @remarks The `initial` in the above default value is the property from the `srcOptions`
589
+ * parameter of the {@link TextureData | `TextureData`} constructor
506
590
  */
507
- alphaThreshold: fields.AlphaField<{ nullable: false; initial: number }>;
591
+ alphaThreshold: fields.AlphaField<{
592
+ nullable: false;
593
+ initial: NullishCoalesce<GetKey<Options["initial"], "alphaThreshold", 0>, 0>;
594
+ }>;
508
595
  }
509
596
  }
510
597
 
511
598
  /**
512
- * A {@link fields.SchemaField} subclass used to represent texture data.
599
+ * A {@link fields.SchemaField | `fields.SchemaField`} subclass used to represent texture data.
513
600
  */
514
601
  declare class TextureData<
515
- SrcOptions extends FilePathFieldOptions = TextureData.DefaultOptions,
602
+ SrcOptions extends TextureData.SrcOptions = TextureData.DefaultOptions,
516
603
  SchemaOptions extends fields.SchemaField.Options<TextureData.Schema<SrcOptions>> = EmptyObject,
517
604
  > extends fields.SchemaField<TextureData.Schema<SrcOptions>, SchemaOptions> {
518
605
  /**
@@ -525,7 +612,10 @@ declare class TextureData<
525
612
  declare namespace PrototypeToken {
526
613
  type Parent = documents.BaseActor;
527
614
 
528
- // Not otherwise used
615
+ /**
616
+ * @internal
617
+ * The fields foundry omits from the BaseToken schema. Not used, left as reference
618
+ */
529
619
  type ExcludedProperties =
530
620
  | "_id"
531
621
  | "actorId"
@@ -538,29 +628,55 @@ declare namespace PrototypeToken {
538
628
  | "locked"
539
629
  | "_regions";
540
630
 
541
- interface Schema extends foundry.documents.BaseToken.SharedProtoSchema {
542
- name: fields.StringField<{ required: true; blank: true; textSearch: boolean }>;
631
+ /**
632
+ * @remarks This has `PrototypeToken.#applyDefaultTokenSettings` run on it before actually being returned, so `initial`
633
+ * values may not be exactly accurate as typed
634
+ * @privateRemarks Since the {@link TokenDocument.Schema | `TokenDocument` schema} also extends `SharedProtoSchema`,
635
+ * overrides & extensions specific to {@link PrototypeToken | `PrototypeToken`} must go here
636
+ */
637
+ interface Schema extends TokenDocument.SharedProtoSchema {
638
+ /**
639
+ * The name used to describe the Token
640
+ * @defaultValue `""`
641
+ * @privateRemarks Only change from parent schema is `textSearch: false`
642
+ */
643
+ name: fields.StringField<{ required: true; blank: true; textSearch: false }>;
543
644
 
544
645
  /**
545
646
  * Does the prototype token use a random wildcard image?
546
647
  * @defaultValue `false`
648
+ * @privateRemarks New field, not in parent schema
547
649
  */
548
650
  randomImg: fields.BooleanField;
549
651
  }
550
652
 
551
- type ConstructorData = fields.SchemaField.InnerAssignmentType<Schema>;
653
+ /**
654
+ * {@link PrototypeToken.CreateData | `PrototypeToken.CreateData`}
655
+ */
656
+ type ConstructorData = CreateData;
657
+
658
+ interface CreateData extends fields.SchemaField.CreateData<Schema> {}
659
+
660
+ interface UpdateData extends fields.SchemaField.UpdateData<Schema> {}
661
+
662
+ export import Flags = TokenDocument.Flags;
552
663
  }
553
664
 
554
665
  /**
555
666
  * Extend the base TokenData to define a PrototypeToken which exists within a parent Actor.
556
667
  */
557
- declare class PrototypeToken extends DataModel<PrototypeToken.Schema, any> {
558
- constructor(data?: PrototypeToken.ConstructorData, options?: DataModel.ConstructorOptions<PrototypeToken.Parent>);
668
+ declare class PrototypeToken extends DataModel<PrototypeToken.Schema, PrototypeToken.Parent> {
669
+ // options: not null (destructured when passed to super)
670
+ constructor(
671
+ data?: PrototypeToken.ConstructorData | null,
672
+ options?: DataModel.ConstructionContext<PrototypeToken.Parent>,
673
+ );
559
674
 
560
- declare parent: PrototypeToken.Parent;
561
-
562
- /** @defaultValue `{}` */
563
- apps: Record<string, Application>;
675
+ /**
676
+ * @defaultValue `{}`
677
+ * @remarks Created via `defineProperty` in constructor
678
+ */
679
+ apps: Record<string, Application.Any | foundry.applications.api.ApplicationV2.Any>;
564
680
 
565
681
  static override defineSchema(): PrototypeToken.Schema;
566
682
 
@@ -574,10 +690,11 @@ declare class PrototypeToken extends DataModel<PrototypeToken.Schema, any> {
574
690
  */
575
691
  get actor(): this["parent"];
576
692
 
577
- override toObject(source: true): this["_source"] & { actorId: string | undefined };
578
- override toObject(source?: boolean): ReturnType<this["schema"]["toObject"]>;
693
+ override toObject(
694
+ source?: boolean | null,
695
+ ): SchemaField.SourceData<PrototypeToken.Schema> & { actorId: string | undefined };
579
696
 
580
- static get database(): DatabaseBackend;
697
+ static get database(): CONFIG["DatabaseBackend"];
581
698
 
582
699
  /**
583
700
  * Apply configured default token settings to the schema.
@@ -586,44 +703,63 @@ declare class PrototypeToken extends DataModel<PrototypeToken.Schema, any> {
586
703
  static #applyDefaultTokenSettings(schema: DataSchema): void;
587
704
 
588
705
  /**
589
- * @see foundry.abstract.Document#update
706
+ * @see {@link foundry.abstract.Document.update | `foundry.abstract.Document#update`}
707
+ * @remarks Despite the above `@see`, forwards to {@link Actor.update | `this.actor.update`} after wrapping `data`
708
+ * in `{prototypeToken: data}`
590
709
  */
591
- update(data: unknown, options: unknown): unknown;
710
+ update(
711
+ data: PrototypeToken.UpdateData | undefined,
712
+ operation?: Actor.Database.UpdateOperation,
713
+ ): Promise<Actor.Implementation | undefined>;
592
714
 
593
715
  /**
594
- * @see foundry.abstract.Document#getFlag
716
+ * @see {@link foundry.abstract.Document.getFlag | `foundry.abstract.Document#getFlag`}
595
717
  */
596
- getFlag(args: unknown): unknown;
718
+ getFlag<Scope extends TokenDocument.Flags.Scope, Key extends TokenDocument.Flags.Key<Scope>>(
719
+ scope: Scope,
720
+ key: Key,
721
+ ): Document.GetFlag<TokenDocument.Name, Scope, Key>;
597
722
 
598
723
  /**
599
- * @see foundry.abstract.Document#setFlag
724
+ * @see {@link foundry.abstract.Document.setFlag | `foundry.abstract.Document#setFlag`}
600
725
  */
601
- setFlag(args: unknown): unknown;
726
+ setFlag<
727
+ Scope extends TokenDocument.Flags.Scope,
728
+ Key extends TokenDocument.Flags.Key<Scope>,
729
+ Value extends Document.GetFlag<TokenDocument.Name, Scope, Key>,
730
+ >(scope: Scope, key: Key, value: Value): Promise<this>;
602
731
 
603
732
  /**
604
- * @see foundry.abstract.Document#unsetFlag
733
+ * @see {@link foundry.abstract.Document.unsetFlag | `foundry.abstract.Document#unsetFlag`}
605
734
  */
606
- unsetFlag(args: unknown): Promise<unknown>;
735
+ unsetFlag<Scope extends TokenDocument.Flags.Scope, Key extends TokenDocument.Flags.Key<Scope>>(
736
+ scope: Scope,
737
+ key: Key,
738
+ ): Promise<this>;
607
739
 
608
740
  /**
609
- * @see foundry.abstract.Document#testUserPermission
741
+ * @see {@link Document.testUserPermission | `Document#testUserPermission`}
742
+ * @remarks Forwards to {@link Actor.testUserPermission | `this.actor.testUserPermission`}. Core's `Actor` implementation
743
+ * doesn't override this method, so without further extension, that's equivalent to `Document#testUserPermission`
610
744
  */
745
+ // options: not null (destructured)
611
746
  testUserPermission(
612
- user: documents.BaseUser,
613
- permission: unknown,
614
- { exact }: { exact: boolean },
615
- ): ReturnType<this["actor"]["testUserPermission"]>;
747
+ user: User.Implementation,
748
+ permission: Document.ActionPermission,
749
+ options?: Document.TestUserPermissionOptions,
750
+ ): boolean;
616
751
 
617
752
  /**
618
- * @see foundry.abstract.Document#isOwner
753
+ * @see {@link foundry.abstract.Document.isOwner | `foundry.abstract.Document#isOwner`}
619
754
  */
620
755
  get isOwner(): boolean;
621
756
 
622
- // Monkey patched in from `token.js`, put here due to issues with the merge process
623
757
  /**
624
- * @see TokenDocument#getBarAttribute
758
+ * @see {@link TokenDocument.getBarAttribute | `TokenDocument#getBarAttribute`}
759
+ *
760
+ * @remarks This is monkey patched in from `token.js`, put here due to issues with the merge process
625
761
  */
626
- getBarAttribute: TokenDocument["getBarAttribute"];
762
+ getBarAttribute: ToMethod<TokenDocument.Implementation["getBarAttribute"]>;
627
763
  }
628
764
 
629
765
  declare namespace TombstoneData {
@@ -640,7 +776,7 @@ declare namespace TombstoneData {
640
776
  */
641
777
  _tombstone: fields.BooleanField<{
642
778
  initial: true;
643
- validate: (v: boolean) => boolean;
779
+ validate: (v: unknown) => boolean;
644
780
  validationError: "must be true";
645
781
  }>;
646
782
  }