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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (348) hide show
  1. package/README.md +17 -3
  2. package/package.json +14 -15
  3. package/src/foundry/client/apps/app.d.mts +8 -1
  4. package/src/foundry/client/apps/form.d.mts +50 -35
  5. package/src/foundry/client/apps/forms/combat-config.d.mts +1 -1
  6. package/src/foundry/client/apps/forms/grid-config.d.mts +1 -5
  7. package/src/foundry/client/apps/forms/sheet-config.d.mts +2 -1
  8. package/src/foundry/client/apps/i18n.d.mts +59 -0
  9. package/src/foundry/client/apps/placeables/note-config.d.mts +3 -3
  10. package/src/foundry/client/apps/sidebar/apps/client-settings.d.mts +1 -1
  11. package/src/foundry/client/apps/sidebar/apps/keybindings-config.d.mts +7 -7
  12. package/src/foundry/client/apps/sidebar/document-directory.d.mts +1 -2
  13. package/src/foundry/client/apps/templates.d.mts +78 -138
  14. package/src/foundry/client/av/master.d.mts +2 -2
  15. package/src/foundry/client/config.d.mts +473 -167
  16. package/src/foundry/client/core/gamepad.d.mts +15 -1
  17. package/src/foundry/client/core/image.d.mts +81 -32
  18. package/src/foundry/client/core/index.d.mts +1 -0
  19. package/src/foundry/client/core/keybindings.d.mts +128 -27
  20. package/src/foundry/client/core/keyboard.d.mts +54 -7
  21. package/src/foundry/client/core/packages.d.mts +18 -2
  22. package/src/foundry/client/core/settings.d.mts +115 -14
  23. package/src/foundry/client/core/socket.d.mts +47 -1
  24. package/src/foundry/client/data/abstract/canvas-document.d.mts +9 -3
  25. package/src/foundry/client/data/abstract/client-document.d.mts +5 -5
  26. package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +1 -1
  27. package/src/foundry/client/data/abstract/document-collection.d.mts +25 -11
  28. package/src/foundry/client/data/abstract/world-collection.d.mts +6 -12
  29. package/src/foundry/client/data/collections/actors.d.mts +9 -1
  30. package/src/foundry/client/data/collections/compendium-collection.d.mts +49 -61
  31. package/src/foundry/client/data/collections/compendium-folders.d.mts +16 -2
  32. package/src/foundry/client/data/collections/compendium-packs.d.mts +1 -1
  33. package/src/foundry/client/data/collections/folder.d.mts +12 -6
  34. package/src/foundry/client/data/collections/journal.d.mts +3 -1
  35. package/src/foundry/client/data/collections/playlists.d.mts +2 -4
  36. package/src/foundry/client/data/collections/users.d.mts +1 -1
  37. package/src/foundry/client/data/documents/active-effect.d.mts +12 -0
  38. package/src/foundry/client/data/documents/actor-delta.d.mts +14 -3
  39. package/src/foundry/client/data/documents/actor.d.mts +37 -14
  40. package/src/foundry/client/data/documents/adventure.d.mts +11 -0
  41. package/src/foundry/client/data/documents/ambient-light.d.mts +11 -0
  42. package/src/foundry/client/data/documents/ambient-sound.d.mts +12 -1
  43. package/src/foundry/client/data/documents/card.d.mts +12 -0
  44. package/src/foundry/client/data/documents/cards.d.mts +17 -3
  45. package/src/foundry/client/data/documents/chat-message.d.mts +12 -0
  46. package/src/foundry/client/data/documents/combat.d.mts +18 -5
  47. package/src/foundry/client/data/documents/combatant.d.mts +25 -1
  48. package/src/foundry/client/data/documents/drawing.d.mts +11 -0
  49. package/src/foundry/client/data/documents/fog-exploration.d.mts +11 -0
  50. package/src/foundry/client/data/documents/folder.d.mts +18 -1
  51. package/src/foundry/client/data/documents/item.d.mts +12 -0
  52. package/src/foundry/client/data/documents/journal-entry-page.d.mts +12 -0
  53. package/src/foundry/client/data/documents/journal-entry.d.mts +11 -1
  54. package/src/foundry/client/data/documents/macro.d.mts +14 -0
  55. package/src/foundry/client/data/documents/measured-template.d.mts +11 -0
  56. package/src/foundry/client/data/documents/note.d.mts +11 -0
  57. package/src/foundry/client/data/documents/playlist-sound.d.mts +17 -4
  58. package/src/foundry/client/data/documents/playlist.d.mts +11 -0
  59. package/src/foundry/client/data/documents/scene.d.mts +45 -10
  60. package/src/foundry/client/data/documents/setting.d.mts +12 -1
  61. package/src/foundry/client/data/documents/table-result.d.mts +12 -0
  62. package/src/foundry/client/data/documents/table.d.mts +11 -0
  63. package/src/foundry/client/data/documents/tile.d.mts +11 -0
  64. package/src/foundry/client/data/documents/token.d.mts +17 -7
  65. package/src/foundry/client/data/documents/user.d.mts +12 -1
  66. package/src/foundry/client/data/documents/wall.d.mts +12 -1
  67. package/src/foundry/client/game.d.mts +215 -129
  68. package/src/foundry/client/head.d.mts +1 -2
  69. package/src/foundry/client/hooks.d.mts +93 -43
  70. package/src/foundry/client/index.d.mts +0 -1
  71. package/src/foundry/client/pixi/board.d.mts +160 -272
  72. package/src/foundry/client/pixi/core/containers/cached-container.d.mts +7 -5
  73. package/src/foundry/client/pixi/core/containers/full-canvas-container.d.mts +6 -4
  74. package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +1 -1
  75. package/src/foundry/client/pixi/core/containers/quadtree.d.mts +5 -5
  76. package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +34 -17
  77. package/src/foundry/client/pixi/core/interaction/control-icon.d.mts +33 -24
  78. package/src/foundry/client/pixi/core/interaction/mouse-handler.d.mts +47 -20
  79. package/src/foundry/client/pixi/core/interaction/ping.d.mts +2 -2
  80. package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +2 -2
  81. package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +4 -4
  82. package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +32 -10
  83. package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +5 -5
  84. package/src/foundry/client/pixi/core/loader.d.mts +43 -3
  85. package/src/foundry/client/pixi/core/shapes/index.d.mts +0 -1
  86. package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +4 -4
  87. package/src/foundry/client/pixi/core/shapes/ray.d.mts +6 -6
  88. package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +67 -69
  89. package/src/foundry/client/pixi/extensions/circle.d.mts +42 -32
  90. package/src/foundry/client/pixi/extensions/graphics.d.mts +43 -0
  91. package/src/foundry/client/pixi/extensions/index.d.mts +2 -0
  92. package/src/foundry/client/pixi/extensions/observable-transform.d.mts +37 -0
  93. package/src/foundry/client/pixi/extensions/polygon.d.mts +39 -48
  94. package/src/foundry/client/pixi/extensions/rectangle.d.mts +129 -64
  95. package/src/foundry/client/pixi/groups/effects.d.mts +5 -8
  96. package/src/foundry/client/pixi/groups/environment.d.mts +6 -6
  97. package/src/foundry/client/pixi/groups/interface.d.mts +1 -1
  98. package/src/foundry/client/pixi/groups/primary.d.mts +3 -10
  99. package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +21 -5
  100. package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +33 -10
  101. package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +154 -109
  102. package/src/foundry/client/pixi/layers/controls/cursor.d.mts +7 -1
  103. package/src/foundry/client/pixi/layers/controls/door.d.mts +4 -6
  104. package/src/foundry/client/pixi/layers/controls/index.d.mts +0 -1
  105. package/src/foundry/client/pixi/layers/controls/layer.d.mts +80 -47
  106. package/src/foundry/client/pixi/layers/controls/ruler.d.mts +278 -119
  107. package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +19 -3
  108. package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +18 -3
  109. package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +33 -0
  110. package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +93 -16
  111. package/src/foundry/client/pixi/layers/effects/index.d.mts +1 -0
  112. package/src/foundry/client/pixi/layers/effects/visibility.d.mts +58 -27
  113. package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +6 -6
  114. package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +74 -19
  115. package/src/foundry/client/pixi/layers/grid/highlight.d.mts +2 -1
  116. package/src/foundry/client/pixi/layers/grid/index.d.mts +1 -0
  117. package/src/foundry/client/pixi/layers/grid/layer.d.mts +163 -119
  118. package/src/foundry/client/pixi/layers/grid/mesh.d.mts +73 -0
  119. package/src/foundry/client/pixi/layers/masks/depth.d.mts +26 -1
  120. package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +40 -4
  121. package/src/foundry/client/pixi/layers/masks/vision.d.mts +53 -22
  122. package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +35 -16
  123. package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +30 -84
  124. package/src/foundry/client/pixi/layers/placeables/notes.d.mts +24 -13
  125. package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +212 -21
  126. package/src/foundry/client/pixi/layers/placeables/templates.d.mts +21 -9
  127. package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +42 -40
  128. package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +85 -72
  129. package/src/foundry/client/pixi/layers/placeables/walls.d.mts +60 -61
  130. package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +31 -43
  131. package/src/foundry/client/pixi/perception/detection-mode.d.mts +22 -6
  132. package/src/foundry/client/pixi/perception/fog.d.mts +30 -2
  133. package/src/foundry/client/pixi/perception/index.d.mts +0 -1
  134. package/src/foundry/client/pixi/perception/perception-manager.d.mts +63 -62
  135. package/src/foundry/client/pixi/perception/vision-mode.d.mts +33 -13
  136. package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +47 -37
  137. package/src/foundry/client/pixi/placeable.d.mts +84 -39
  138. package/src/foundry/client/pixi/placeables/drawing.d.mts +4 -4
  139. package/src/foundry/client/pixi/placeables/note.d.mts +1 -1
  140. package/src/foundry/client/pixi/placeables/primary-canvas-objects/index.d.mts +3 -4
  141. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +107 -89
  142. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-graphics.d.mts +30 -0
  143. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.d.mts +161 -0
  144. package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.mts +111 -0
  145. package/src/foundry/client/pixi/placeables/sound.d.mts +2 -1
  146. package/src/foundry/client/pixi/placeables/template.d.mts +4 -3
  147. package/src/foundry/client/pixi/placeables/tile.d.mts +2 -2
  148. package/src/foundry/client/pixi/placeables/token.d.mts +14 -18
  149. package/src/foundry/client/pixi/placeables/wall.d.mts +5 -5
  150. package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +54 -19
  151. package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +15 -6
  152. package/src/foundry/client/pixi/webgl/helpers/framebugger-snapshot.d.mts +8 -0
  153. package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +28 -24
  154. package/src/foundry/client/pixi/webgl/helpers/texture-extractor.d.mts +53 -43
  155. package/src/foundry/client/pixi/webgl/shaders/base-shader-mixin.d.mts +119 -0
  156. package/src/foundry/client/pixi/webgl/shaders/base-shader.d.mts +94 -0
  157. package/src/foundry/client/pixi/webgl/shaders/filters/base-filter.d.mts +47 -0
  158. package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +29 -0
  159. package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +26 -4
  160. package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +121 -0
  161. package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +40 -0
  162. package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +75 -0
  163. package/src/foundry/client/pixi/webgl/shaders/filters/index.d.mts +12 -2
  164. package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +29 -0
  165. package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +86 -0
  166. package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +119 -0
  167. package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +70 -0
  168. package/src/foundry/client/pixi/webgl/shaders/filters/vision-mask-filter.d.mts +33 -0
  169. package/src/foundry/client/pixi/webgl/shaders/filters/void.d.mts +18 -0
  170. package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +56 -0
  171. package/src/foundry/client/pixi/webgl/shaders/fragment-channel-mixin.d.mts +54 -0
  172. package/src/foundry/client/pixi/webgl/shaders/grid/grid.d.mts +112 -0
  173. package/src/foundry/client/pixi/webgl/shaders/grid/index.d.mts +1 -0
  174. package/src/foundry/client/pixi/webgl/shaders/index.d.mts +8 -2
  175. package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +65 -0
  176. package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +178 -0
  177. package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +73 -0
  178. package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +73 -0
  179. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +33 -0
  180. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +18 -0
  181. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +23 -0
  182. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +23 -0
  183. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +23 -0
  184. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +38 -0
  185. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +55 -0
  186. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +23 -0
  187. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +22 -0
  188. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +33 -0
  189. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +23 -0
  190. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/index.d.mts +25 -0
  191. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +23 -0
  192. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +18 -0
  193. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +44 -0
  194. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +23 -0
  195. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +36 -0
  196. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +18 -0
  197. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +61 -0
  198. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +32 -0
  199. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +23 -0
  200. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +33 -0
  201. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +23 -0
  202. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +45 -0
  203. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +38 -0
  204. package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +33 -0
  205. package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +79 -0
  206. package/src/foundry/client/pixi/webgl/shaders/lighting/index.d.mts +6 -0
  207. package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +93 -0
  208. package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +35 -0
  209. package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +35 -0
  210. package/src/foundry/client/pixi/webgl/shaders/region/index.d.mts +3 -0
  211. package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +206 -0
  212. package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +38 -0
  213. package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +38 -30
  214. package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +103 -0
  215. package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +8 -0
  216. package/src/foundry/client/pixi/webgl/shaders/samplers/index.d.mts +5 -3
  217. package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +62 -27
  218. package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +26 -0
  219. package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +47 -0
  220. package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +42 -0
  221. package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +31 -0
  222. package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +41 -0
  223. package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +32 -0
  224. package/src/foundry/client/pixi/webgl/shaders/vision/effects/index.d.mts +2 -0
  225. package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +59 -0
  226. package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +36 -0
  227. package/src/foundry/client/pixi/webgl/shaders/vision/index.d.mts +5 -0
  228. package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +106 -0
  229. package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +62 -0
  230. package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +50 -0
  231. package/src/foundry/client/pixi/webgl/shaders/{effects/weather → weather}/index.d.mts +1 -1
  232. package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +42 -0
  233. package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +34 -0
  234. package/src/foundry/client/ui/editor.d.mts +1 -1
  235. package/src/foundry/client-esm/applications/_types.d.mts +0 -2
  236. package/src/foundry/client-esm/applications/api/application.d.mts +25 -24
  237. package/src/foundry/client-esm/applications/api/document-sheet.d.mts +10 -2
  238. package/src/foundry/client-esm/applications/elements/color-picker.d.mts +1 -1
  239. package/src/foundry/client-esm/applications/elements/document-tags.d.mts +1 -1
  240. package/src/foundry/client-esm/applications/forms/fields.d.mts +103 -52
  241. package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +66 -4
  242. package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +38 -4
  243. package/src/foundry/client-esm/applications/sheets/user-config.d.mts +30 -4
  244. package/src/foundry/client-esm/audio/_types.d.mts +16 -1
  245. package/src/foundry/client-esm/audio/biquad.d.mts +51 -0
  246. package/src/foundry/client-esm/audio/cache.d.mts +68 -0
  247. package/src/foundry/client-esm/audio/convolver.d.mts +71 -0
  248. package/src/foundry/client-esm/audio/helper.d.mts +326 -0
  249. package/src/foundry/client-esm/audio/sound.d.mts +401 -0
  250. package/src/foundry/client-esm/audio/timeout.d.mts +85 -0
  251. package/src/foundry/client-esm/canvas/edges/edge.d.mts +6 -6
  252. package/src/foundry/client-esm/canvas/edges/vertex.d.mts +4 -2
  253. package/src/foundry/client-esm/canvas/regions/_module.d.mts +8 -4
  254. package/src/foundry/client-esm/canvas/scene-manager.d.mts +93 -1
  255. package/src/foundry/client-esm/canvas/sources/base-effect-source.d.mts +7 -0
  256. package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +1 -4
  257. package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +1 -4
  258. package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +3 -1
  259. package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +1 -1
  260. package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +9 -3
  261. package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +2 -0
  262. package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -0
  263. package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +79 -0
  264. package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +7 -0
  265. package/src/foundry/client-esm/canvas/tokens/ring.d.mts +5 -0
  266. package/src/foundry/client-esm/client.d.mts +4 -9
  267. package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +12 -9
  268. package/src/foundry/client-esm/dice/terms/function.d.mts +1 -2
  269. package/src/foundry/clipper/clipper.d.mts +23 -56
  270. package/src/foundry/common/abstract/data.d.mts +58 -46
  271. package/src/foundry/common/abstract/document.d.mts +163 -110
  272. package/src/foundry/common/abstract/socket.d.mts +3 -3
  273. package/src/foundry/common/abstract/type-data.d.mts +25 -14
  274. package/src/foundry/common/data/fields.d.mts +1067 -143
  275. package/src/foundry/common/documents/_types.d.mts +34 -2
  276. package/src/foundry/common/documents/active-effect.d.mts +44 -33
  277. package/src/foundry/common/documents/actor-delta.d.mts +8 -20
  278. package/src/foundry/common/documents/actor.d.mts +82 -123
  279. package/src/foundry/common/documents/adventure.d.mts +16 -44
  280. package/src/foundry/common/documents/ambient-light.d.mts +5 -14
  281. package/src/foundry/common/documents/ambient-sound.d.mts +4 -14
  282. package/src/foundry/common/documents/card.d.mts +20 -50
  283. package/src/foundry/common/documents/cards.d.mts +16 -51
  284. package/src/foundry/common/documents/chat-message.d.mts +33 -34
  285. package/src/foundry/common/documents/combat.d.mts +27 -21
  286. package/src/foundry/common/documents/combatant.d.mts +19 -23
  287. package/src/foundry/common/documents/drawing.d.mts +6 -21
  288. package/src/foundry/common/documents/fog-exploration.d.mts +8 -23
  289. package/src/foundry/common/documents/folder.d.mts +16 -33
  290. package/src/foundry/common/documents/item.d.mts +12 -51
  291. package/src/foundry/common/documents/journal-entry-page.d.mts +22 -40
  292. package/src/foundry/common/documents/journal-entry.d.mts +6 -48
  293. package/src/foundry/common/documents/macro.d.mts +27 -43
  294. package/src/foundry/common/documents/measured-template.d.mts +5 -20
  295. package/src/foundry/common/documents/note.d.mts +6 -18
  296. package/src/foundry/common/documents/playlist-sound.d.mts +12 -16
  297. package/src/foundry/common/documents/playlist.d.mts +12 -18
  298. package/src/foundry/common/documents/roll-table.d.mts +6 -29
  299. package/src/foundry/common/documents/scene.d.mts +9 -31
  300. package/src/foundry/common/documents/setting.d.mts +8 -19
  301. package/src/foundry/common/documents/table-result.d.mts +14 -42
  302. package/src/foundry/common/documents/tile.d.mts +4 -13
  303. package/src/foundry/common/documents/token.d.mts +8 -26
  304. package/src/foundry/common/documents/user.d.mts +11 -20
  305. package/src/foundry/common/documents/wall.d.mts +13 -30
  306. package/src/foundry/common/grid/base.d.mts +26 -26
  307. package/src/foundry/common/grid/grid-hex.d.mts +2 -2
  308. package/src/foundry/common/grid/gridless.d.mts +11 -11
  309. package/src/foundry/common/grid/hexagonal.d.mts +30 -26
  310. package/src/foundry/common/grid/square.d.mts +11 -11
  311. package/src/foundry/common/packages/base-package.d.mts +4 -4
  312. package/src/foundry/common/primitives/array.d.mts +2 -2
  313. package/src/foundry/common/types.d.mts +54 -312
  314. package/src/foundry/common/utils/color.d.mts +17 -9
  315. package/src/foundry/common/utils/geometry.d.mts +32 -22
  316. package/src/foundry/common/utils/helpers.d.mts +1 -1
  317. package/src/types/augments/pixi.d.mts +63 -2
  318. package/src/types/config.d.mts +7 -6
  319. package/src/types/documentConfiguration.d.mts +606 -0
  320. package/src/types/helperTypes.d.mts +367 -45
  321. package/src/types/index.d.mts +1 -1
  322. package/src/types/utils.d.mts +139 -6
  323. package/src/foundry/client/audio/audio.d.mts +0 -390
  324. package/src/foundry/client/audio/container.d.mts +0 -176
  325. package/src/foundry/client/audio/index.d.mts +0 -3
  326. package/src/foundry/client/audio/sound.d.mts +0 -307
  327. package/src/foundry/client/pixi/core/shapes/polygon-helpers.d.mts +0 -31
  328. package/src/foundry/client/pixi/layers/controls/hud.d.mts +0 -114
  329. package/src/foundry/client/pixi/perception/color-manager.d.mts +0 -86
  330. package/src/foundry/client/pixi/placeables/primary-canvas-objects/drawing-shape.d.mts +0 -143
  331. package/src/foundry/client/pixi/placeables/primary-canvas-objects/occludable-object.d.mts +0 -175
  332. package/src/foundry/client/pixi/placeables/primary-canvas-objects/tile-mesh.d.mts +0 -52
  333. package/src/foundry/client/pixi/placeables/primary-canvas-objects/token-mesh.d.mts +0 -62
  334. package/src/foundry/client/pixi/webgl/shaders/base.d.mts +0 -691
  335. package/src/foundry/client/pixi/webgl/shaders/effects/index.d.mts +0 -3
  336. package/src/foundry/client/pixi/webgl/shaders/effects/lighting.d.mts +0 -642
  337. package/src/foundry/client/pixi/webgl/shaders/effects/vision.d.mts +0 -216
  338. package/src/foundry/client/pixi/webgl/shaders/effects/weather/base.d.mts +0 -102
  339. package/src/foundry/client/pixi/webgl/shaders/effects/weather/effect.d.mts +0 -38
  340. package/src/foundry/client/pixi/webgl/shaders/effects/weather/fog.d.mts +0 -34
  341. package/src/foundry/client/pixi/webgl/shaders/effects/weather/rain.d.mts +0 -24
  342. package/src/foundry/client/pixi/webgl/shaders/effects/weather/snow.d.mts +0 -20
  343. package/src/foundry/client/pixi/webgl/shaders/filters/filters.d.mts +0 -462
  344. package/src/foundry/client/pixi/webgl/shaders/filters/fxaa.d.mts +0 -74
  345. package/src/foundry/client/pixi/webgl/shaders/samplers/inverse-occlusion.d.mts +0 -47
  346. package/src/foundry/client/pixi/webgl/shaders/samplers/invisibility.d.mts +0 -28
  347. package/src/foundry/client/pixi/webgl/shaders/samplers/monochromatic.d.mts +0 -30
  348. package/src/types/configuredDocuments.d.mts +0 -103
@@ -200,7 +200,7 @@ declare global {
200
200
  interface WebRTCConfig {}
201
201
 
202
202
  /**
203
- * Injects extra data for modules from `game.module.get("module-id")`.
203
+ * Injects extra data for modules from `game.modules.get("module-id")`.
204
204
  * @see {@link RequiredModules} for removing the `undefined` type for required modules.
205
205
  * @example
206
206
  * ```typescript
@@ -209,14 +209,14 @@ declare global {
209
209
  * api: APIObject;
210
210
  * };
211
211
  * }
212
- * const moduleApi: APIObject | undefined = game.module.get("module-id")?.api;
212
+ * const moduleApi: APIObject | undefined = game.modules.get("module-id")?.api;
213
213
  * ```
214
214
  */
215
215
  // eslint-disable-next-line @typescript-eslint/no-empty-object-type
216
216
  interface ModuleConfig {}
217
217
 
218
218
  /**
219
- * Removes `undefined` for modules listed as keys here from the return type of `game.module.get`.
219
+ * Removes `undefined` for modules listed as keys here from the return type of `game.modules.get`.
220
220
  * Useful if a module is a required dependency.
221
221
  * @see {@link ModuleConfig} for adding useful properties to the returned modules, like APIs.
222
222
  * @example
@@ -224,7 +224,7 @@ declare global {
224
224
  * interface RequiredModules {
225
225
  * "module-id": true;
226
226
  * }
227
- * const module: Game.ModuleData<foundry.packages.ModuleData> = game.module.get("module-id");
227
+ * const module: Game.ModuleData<foundry.packages.ModuleData> = game.modules.get("module-id");
228
228
  * ```
229
229
  */
230
230
  // eslint-disable-next-line @typescript-eslint/no-empty-object-type
@@ -263,7 +263,7 @@ declare global {
263
263
  "core.globalAmbientVolume": number;
264
264
  "core.globalInterfaceVolume": number;
265
265
  "core.globalPlaylistVolume": number;
266
- "core.keybindings": Record<string, KeybindingActionBinding[]>;
266
+ "core.keybindings": Record<string, ClientKeybindings.KeybindingActionBinding[]>;
267
267
  "core.language": fields.StringField<{
268
268
  required: true;
269
269
  blank: false;
@@ -316,7 +316,8 @@ declare global {
316
316
  type ValidDataModel = {
317
317
  readonly [DocumentName in foundry.abstract.Document.SystemType]?: {
318
318
  // Recommended to be a TypeDataModel subclass but DataModel is also technically valid.
319
- readonly [DocumentType in string]?: foundry.abstract.DataModel.Any;
319
+ // Note: We used to ask for instances of the class here. This is now deprecated. `AnyConstructor` is the correct signature.
320
+ readonly [DocumentType in string]?: foundry.abstract.DataModel.Any | foundry.abstract.DataModel.AnyConstructor;
320
321
  };
321
322
  };
322
323
 
@@ -0,0 +1,606 @@
1
+ import type { CONST, documents } from "../foundry/client-esm/client.d.mts";
2
+ import type { Document } from "../foundry/common/abstract/module.d.mts";
3
+ import type BaseActor from "../foundry/common/documents/actor.d.mts";
4
+ import type BaseChatMessage from "../foundry/common/documents/chat-message.d.mts";
5
+ import type BaseCombat from "../foundry/common/documents/combat.d.mts";
6
+ import type BaseCombatant from "../foundry/common/documents/combatant.d.mts";
7
+ import type BaseDrawing from "../foundry/common/documents/drawing.d.mts";
8
+ import type BaseFogExploration from "../foundry/common/documents/fog-exploration.d.mts";
9
+ import type BaseMeasuredTemplate from "../foundry/common/documents/measured-template.d.mts";
10
+ import type BaseSetting from "../foundry/common/documents/setting.d.mts";
11
+ import type BaseTableResult from "../foundry/common/documents/table-result.d.mts";
12
+ import type BaseToken from "../foundry/common/documents/token.d.mts";
13
+ import type BaseUser from "../foundry/common/documents/user.d.mts";
14
+ import type BaseWall from "../foundry/common/documents/wall.d.mts";
15
+ import type { ConformRecord, InterfaceToObject, MakeConform, MustConform } from "./helperTypes.d.mts";
16
+ import type { Merge } from "./utils.d.mts";
17
+
18
+ type DocumentConform<T> = MakeConform<T, Document.AnyConstructor>;
19
+
20
+ // This interface holds all documents without configuration.
21
+ // It is structured this way to create a place for errors to show up if the type complexity grows too great.
22
+ interface _DefaultDocuments {
23
+ ActiveEffect: typeof ActiveEffect;
24
+ ActorDelta: typeof ActorDelta;
25
+ Actor: typeof Actor;
26
+ Adventure: typeof Adventure;
27
+ Card: typeof Card;
28
+ Cards: typeof Cards;
29
+ ChatMessage: typeof ChatMessage;
30
+ Combat: typeof Combat;
31
+ Combatant: typeof Combatant;
32
+ FogExploration: typeof FogExploration;
33
+ Folder: typeof Folder;
34
+ Item: typeof Item;
35
+ JournalEntryPage: typeof JournalEntryPage;
36
+ JournalEntry: typeof JournalEntry;
37
+ Macro: typeof Macro;
38
+ PlaylistSound: typeof PlaylistSound;
39
+ Playlist: typeof Playlist;
40
+ RollTable: typeof RollTable;
41
+ Scene: typeof Scene;
42
+ Setting: typeof Setting;
43
+ TableResult: typeof TableResult;
44
+ User: typeof User;
45
+
46
+ // Placeables have corresponding document classes.
47
+ AmbientLight: typeof AmbientLightDocument;
48
+ AmbientSound: typeof AmbientSoundDocument;
49
+ Drawing: typeof DrawingDocument;
50
+ MeasuredTemplate: typeof MeasuredTemplateDocument;
51
+ Note: typeof NoteDocument;
52
+ Tile: typeof TileDocument;
53
+ Token: typeof TokenDocument;
54
+ Wall: typeof WallDocument;
55
+ }
56
+
57
+ type TestDefaultDocumentsValid = MustConform<
58
+ InterfaceToObject<_DefaultDocuments>,
59
+ Record<string, Document.AnyConstructor>
60
+ >;
61
+
62
+ type ConformedDefault = ConformRecord<_DefaultDocuments, Document.AnyConstructor>;
63
+
64
+ export interface DefaultDocuments extends ConformedDefault {}
65
+
66
+ // Note(LukeAbby): This helper type is structured this way to make it as simple as possible for TypeScript to figure out that it's always a Document.
67
+ // This also uses `ConcreteDocumentType extends keyof DocumentClassConfig` instead of `GetKey` or equivalent for the critical purposes of stymying circular errors.
68
+ // See https://gist.github.com/LukeAbby/f9561689e5cad8a4b1e9cb92a8c63982 for more information.
69
+ type ConfiguredDocument<ConcreteDocumentType extends Document.Type> =
70
+ ConcreteDocumentType extends keyof DocumentClassConfig
71
+ ? DocumentClassConfig[ConcreteDocumentType]
72
+ : DefaultDocuments[ConcreteDocumentType];
73
+
74
+ // This interface exists as a way to catch circular errors easier.
75
+ // This makes it more verbose than it might seem it has to be but it's important to stay this way.
76
+ interface _ConfiguredDocuments {
77
+ ActiveEffect: ConfiguredDocument<"ActiveEffect">;
78
+ ActorDelta: ConfiguredDocument<"ActorDelta">;
79
+ Actor: ConfiguredDocument<"Actor">;
80
+ Adventure: ConfiguredDocument<"Adventure">;
81
+ Card: ConfiguredDocument<"Card">;
82
+ Cards: ConfiguredDocument<"Cards">;
83
+ ChatMessage: ConfiguredDocument<"ChatMessage">;
84
+ Combat: ConfiguredDocument<"Combat">;
85
+ Combatant: ConfiguredDocument<"Combatant">;
86
+ FogExploration: ConfiguredDocument<"FogExploration">;
87
+ Folder: ConfiguredDocument<"Folder">;
88
+ Item: ConfiguredDocument<"Item">;
89
+ JournalEntryPage: ConfiguredDocument<"JournalEntryPage">;
90
+ JournalEntry: ConfiguredDocument<"JournalEntry">;
91
+ Macro: ConfiguredDocument<"Macro">;
92
+ PlaylistSound: ConfiguredDocument<"PlaylistSound">;
93
+ Playlist: ConfiguredDocument<"Playlist">;
94
+ RollTable: ConfiguredDocument<"RollTable">;
95
+ Scene: ConfiguredDocument<"Scene">;
96
+ Setting: ConfiguredDocument<"Setting">;
97
+ TableResult: ConfiguredDocument<"TableResult">;
98
+ User: ConfiguredDocument<"User">;
99
+
100
+ AmbientLight: ConfiguredDocument<"AmbientLight">;
101
+ AmbientSound: ConfiguredDocument<"AmbientSound">;
102
+ Drawing: ConfiguredDocument<"Drawing">;
103
+ MeasuredTemplate: ConfiguredDocument<"MeasuredTemplate">;
104
+ Note: ConfiguredDocument<"Note">;
105
+ Tile: ConfiguredDocument<"Tile">;
106
+ Token: ConfiguredDocument<"Token">;
107
+ Wall: ConfiguredDocument<"Wall">;
108
+ }
109
+
110
+ type TestConfiguredDocumentsValid = MustConform<
111
+ InterfaceToObject<_ConfiguredDocuments>,
112
+ Record<string, Document.AnyConstructor>
113
+ >;
114
+
115
+ type ConformedConfigured = ConformRecord<_ConfiguredDocuments, Document.AnyConstructor>;
116
+
117
+ export interface ConfiguredDocuments extends ConformedConfigured {}
118
+
119
+ interface _ConfiguredMetadata<ThisType extends Document.Internal.Instance.Any> {
120
+ ActiveEffect: Merge<
121
+ Document.Metadata.Default,
122
+ {
123
+ name: "ActiveEffect";
124
+ collection: "effects";
125
+ hasTypeData: true;
126
+ label: string;
127
+ labelPlural: string;
128
+ schemaVersion: string;
129
+ }
130
+ >;
131
+ ActorDelta: Merge<
132
+ Document.Metadata.Default,
133
+ {
134
+ name: "ActorDelta";
135
+ collection: "delta";
136
+ label: string;
137
+ labelPlural: string;
138
+ isEmbedded: true;
139
+ embedded: {
140
+ Item: "items";
141
+ ActiveEffect: "effects";
142
+ };
143
+ schemaVersion: string;
144
+ }
145
+ >;
146
+ Actor: Merge<
147
+ Document.Metadata.Default,
148
+ {
149
+ name: "Actor";
150
+ collection: "actors";
151
+ indexed: true;
152
+ compendiumIndexFields: ["_id", "name", "img", "type", "sort", "folder"];
153
+ embedded: { ActiveEffect: "effects"; Item: "items" };
154
+ hasTypeData: true;
155
+ label: string;
156
+ labelPlural: string;
157
+ permissions: {
158
+ create(user: BaseUser, doc: ThisType): boolean;
159
+ update(user: BaseUser, doc: ThisType, data: BaseActor.UpdateData): boolean;
160
+ };
161
+ schemaVersion: string;
162
+ }
163
+ >;
164
+ Adventure: Merge<
165
+ Document.Metadata.Default,
166
+ {
167
+ name: "Adventure";
168
+ collection: "adventures";
169
+ compendiumIndexFields: ["_id", "name", "img", "sort", "folder"];
170
+ label: string;
171
+ labelPlural: string;
172
+ schemaVersion: string;
173
+ }
174
+ >;
175
+ AmbientLight: Merge<
176
+ Document.Metadata.Default,
177
+ {
178
+ name: "AmbientLight";
179
+ collection: "lights";
180
+ label: string;
181
+ labelPlural: string;
182
+ schemaVersion: string;
183
+ }
184
+ >;
185
+ AmbientSound: Merge<
186
+ Document.Metadata.Default,
187
+ {
188
+ name: "AmbientSound";
189
+ collection: "sounds";
190
+ label: string;
191
+ labelPlural: string;
192
+ isEmbedded: true;
193
+ schemaVersion: string;
194
+ }
195
+ >;
196
+ Card: Merge<
197
+ Document.Metadata.Default,
198
+ {
199
+ name: "Card";
200
+ collection: "cards";
201
+ hasTypeData: true;
202
+ indexed: true;
203
+ label: string;
204
+ labelPlural: string;
205
+ permissions: {
206
+ create: () => boolean;
207
+ update: () => boolean;
208
+ };
209
+ compendiumIndexFields: ["name", "type", "suit", "sort"];
210
+ schemaVersion: string;
211
+ }
212
+ >;
213
+ Cards: Merge<
214
+ Document.Metadata.Default,
215
+ {
216
+ name: "Cards";
217
+ collection: "cards";
218
+ indexed: true;
219
+ compendiumIndexFields: ["_id", "name", "description", "img", "type", "sort", "folder"];
220
+ embedded: { Card: "cards" };
221
+ hasTypeData: true;
222
+ label: string;
223
+ labelPlural: string;
224
+ coreTypes: ["deck", "hand", "pile"];
225
+ schemaVersion: string;
226
+ }
227
+ >;
228
+ ChatMessage: Merge<
229
+ Document.Metadata.Default,
230
+ {
231
+ name: "ChatMessage";
232
+ collection: "messages";
233
+ label: string;
234
+ labelPlural: string;
235
+ isPrimary: true;
236
+ permissions: {
237
+ create(user: BaseUser, doc: ThisType): boolean;
238
+ update(user: BaseUser, doc: ThisType, data: BaseChatMessage.UpdateData): boolean;
239
+ };
240
+ schemaVersion: string;
241
+ }
242
+ >;
243
+ Combat: Merge<
244
+ Document.Metadata.Default,
245
+ {
246
+ name: "Combat";
247
+ collection: "combats";
248
+ label: string;
249
+ labelPlural: string;
250
+ embedded: {
251
+ Combatant: "combatants";
252
+ };
253
+ hasTypeData: true;
254
+ permissions: {
255
+ update(user: BaseUser, doc: ThisType, data: BaseCombat.UpdateData): boolean;
256
+ };
257
+ schemaVersion: string;
258
+ }
259
+ >;
260
+ Combatant: Merge<
261
+ Document.Metadata.Default,
262
+ {
263
+ name: "Combatant";
264
+ collection: "combatants";
265
+ label: string;
266
+ labelPlural: string;
267
+ isEmbedded: true;
268
+ hasTypeData: true;
269
+ schemaVersion: string;
270
+ permissions: {
271
+ create(user: BaseUser, doc: ThisType): boolean;
272
+ update(user: BaseUser, doc: ThisType, data: BaseCombatant.UpdateData): boolean;
273
+ };
274
+ }
275
+ >;
276
+ Drawing: Merge<
277
+ Document.Metadata.Default,
278
+ {
279
+ name: "Drawing";
280
+ collection: "drawings";
281
+ label: string;
282
+ labelPlural: string;
283
+ isEmbedded: true;
284
+ permissions: {
285
+ create: "DRAWING_CREATE";
286
+ update(user: BaseUser, doc: ThisType, data: BaseDrawing.UpdateData): boolean;
287
+ delete(user: BaseUser, doc: ThisType, data: BaseDrawing.UpdateData): boolean;
288
+ };
289
+ schemaVersion: string;
290
+ }
291
+ >;
292
+ FogExploration: Merge<
293
+ Document.Metadata.Default,
294
+ {
295
+ name: "FogExploration";
296
+ collection: "fog";
297
+ label: string;
298
+ labelPlural: string;
299
+ isPrimary: true;
300
+ permissions: {
301
+ create: "PLAYER";
302
+ update(user: BaseUser, doc: ThisType, data: BaseFogExploration.UpdateData): boolean;
303
+ delete(user: BaseUser, doc: ThisType, data: BaseFogExploration.UpdateData): boolean;
304
+ };
305
+ schemaVersion: string;
306
+ }
307
+ >;
308
+ Folder: Merge<
309
+ Document.Metadata.Default,
310
+ {
311
+ name: "Folder";
312
+ collection: "folders";
313
+ label: string;
314
+ labelPlural: string;
315
+ coreTypes: typeof CONST.FOLDER_DOCUMENT_TYPES;
316
+ schemaVersion: string;
317
+ }
318
+ >;
319
+ Item: Merge<
320
+ Document.Metadata.Default,
321
+ {
322
+ name: "Item";
323
+ collection: "items";
324
+ hasTypeData: true;
325
+ indexed: true;
326
+ compendiumIndexFields: ["_id", "name", "img", "type", "sort", "folder"];
327
+ embedded: { ActiveEffect: "effects" };
328
+ label: string;
329
+ labelPlural: string;
330
+ permissions: { create: "ITEM_CREATE" };
331
+ schemaVersion: string;
332
+ }
333
+ >;
334
+ JournalEntryPage: Merge<
335
+ Document.Metadata.Default,
336
+ {
337
+ name: "JournalEntryPage";
338
+ collection: "pages";
339
+ hasTypeData: true;
340
+ indexed: true;
341
+ label: string;
342
+ labelPlural: string;
343
+ coreTypes: ["text", "image", "pdf", "video"];
344
+ compendiumIndexFields: ["name", "type", "sort"];
345
+ schemaVersion: string;
346
+ }
347
+ >;
348
+ JournalEntry: Merge<
349
+ Document.Metadata.Default,
350
+ {
351
+ name: "JournalEntry";
352
+ collection: "journal";
353
+ indexed: true;
354
+ compendiumIndexFields: ["_id", "name", "sort", "folder"];
355
+ embedded: { JournalEntryPage: "pages" };
356
+ label: string;
357
+ labelPlural: string;
358
+ permissions: {
359
+ create: "JOURNAL_CREATE";
360
+ };
361
+ schemaVersion: string;
362
+ }
363
+ >;
364
+ Macro: Merge<
365
+ Document.Metadata.Default,
366
+ {
367
+ name: "Macro";
368
+ collection: "macros";
369
+ indexed: true;
370
+ compendiumIndexFields: ["_id", "name", "img", "sort", "folder"];
371
+ label: string;
372
+ labelPlural: string;
373
+ coreTypes: CONST.MACRO_TYPES[];
374
+ permissions: {
375
+ create(user: BaseUser, doc: ThisType): boolean;
376
+ update(user: BaseUser, doc: ThisType): boolean;
377
+ };
378
+ schemaVersion: string;
379
+ }
380
+ >;
381
+ MeasuredTemplate: Merge<
382
+ Document.Metadata.Default,
383
+ {
384
+ name: "MeasuredTemplate";
385
+ collection: "templates";
386
+ label: string;
387
+ labelPlural: string;
388
+ isEmbedded: true;
389
+ permissions: {
390
+ create(user: BaseUser, doc: ThisType): boolean;
391
+ update(user: BaseUser, doc: ThisType, data: BaseMeasuredTemplate.UpdateData): boolean;
392
+ delete(user: BaseUser, doc: ThisType, data: BaseMeasuredTemplate.UpdateData): boolean;
393
+ };
394
+ schemaVersion: string;
395
+ }
396
+ >;
397
+ Note: Merge<
398
+ Document.Metadata.Default,
399
+ {
400
+ name: "Note";
401
+ collection: "notes";
402
+ label: string;
403
+ labelPlural: string;
404
+ permissions: {
405
+ create: "NOTE_CREATE";
406
+ };
407
+ schemaVersion: string;
408
+ }
409
+ >;
410
+ PlaylistSound: Merge<
411
+ Document.Metadata.Default,
412
+ {
413
+ name: "PlaylistSound";
414
+ collection: "sounds";
415
+ indexed: true;
416
+ label: string;
417
+ labelPlural: string;
418
+ compendiumIndexFields: ["name", "sort"];
419
+ schemaVersion: string;
420
+ }
421
+ >;
422
+ Playlist: Merge<
423
+ Document.Metadata.Default,
424
+ {
425
+ name: "Playlist";
426
+ collection: "playlists";
427
+ indexed: true;
428
+ compendiumIndexFields: ["_id", "name", "sort", "folder"];
429
+ embedded: { PlaylistSound: "sounds" };
430
+ label: string;
431
+ labelPlural: string;
432
+ permissions: {
433
+ create: "PLAYLIST_CREATE";
434
+ };
435
+ schemaVersion: string;
436
+ }
437
+ >;
438
+ RollTable: Merge<
439
+ Document.Metadata.Default,
440
+ {
441
+ name: "RollTable";
442
+ collection: "tables";
443
+ indexed: true;
444
+ compendiumIndexFields: ["_id", "name", "img", "sort", "folder"];
445
+ embedded: { TableResult: "results" };
446
+ label: string;
447
+ labelPlural: string;
448
+ schemaVersion: string;
449
+ }
450
+ >;
451
+ Scene: Merge<
452
+ Document.Metadata.Default,
453
+ {
454
+ name: "Scene";
455
+ collection: "scenes";
456
+ indexed: true;
457
+ compendiumIndexFields: ["_id", "name", "thumb", "sort", "folder"];
458
+ embedded: {
459
+ AmbientLight: "lights";
460
+ AmbientSound: "sounds";
461
+ Drawing: "drawings";
462
+ MeasuredTemplate: "templates";
463
+ Note: "notes";
464
+ Tile: "tiles";
465
+ Token: "tokens";
466
+ Wall: "walls";
467
+ };
468
+ label: string;
469
+ labelPlural: string;
470
+ preserveOnImport: ["_id", "sort", "ownership", "active"];
471
+ schemaVersion: string;
472
+ }
473
+ >;
474
+ Setting: Merge<
475
+ Document.Metadata.Default,
476
+ {
477
+ name: "Setting";
478
+ collection: "settings";
479
+ label: string;
480
+ labelPlural: string;
481
+ permissions: {
482
+ create(user: BaseUser, doc: ThisType, data: BaseSetting.UpdateData): boolean;
483
+ update(user: BaseUser, doc: ThisType, data: BaseSetting.UpdateData): boolean;
484
+ delete(user: BaseUser, doc: ThisType, data: BaseSetting.UpdateData): boolean;
485
+ };
486
+ schemaVersion: string;
487
+ }
488
+ >;
489
+ TableResult: Merge<
490
+ Document.Metadata.Default,
491
+ {
492
+ name: "TableResult";
493
+ collection: "results";
494
+ label: string;
495
+ labelPlural: string;
496
+ coreTypes: foundry.CONST.TABLE_RESULT_TYPES[];
497
+ permissions: {
498
+ update(user: BaseUser, doc: ThisType, data: BaseTableResult.UpdateData): boolean;
499
+ };
500
+ compendiumIndexFields: ["type"];
501
+ schemaVersion: string;
502
+ }
503
+ >;
504
+ Tile: Merge<
505
+ Document.Metadata.Default,
506
+ {
507
+ name: "Tile";
508
+ collection: "tiles";
509
+ label: string;
510
+ labelPlural: string;
511
+ schemaVersion: string;
512
+ }
513
+ >;
514
+ Token: Merge<
515
+ Document.Metadata.Default,
516
+ {
517
+ name: "Token";
518
+ collection: "tokens";
519
+ label: string;
520
+ labelPlural: string;
521
+ isEmbedded: true;
522
+ embedded: {
523
+ ActorDelta: "delta";
524
+ };
525
+ permissions: {
526
+ create: "TOKEN_CREATE";
527
+ update(user: BaseUser, doc: ThisType, data: BaseToken.UpdateData): boolean;
528
+ delete: "TOKEN_DELETE";
529
+ };
530
+ schemaVersion: string;
531
+ }
532
+ >;
533
+ User: Merge<
534
+ Document.Metadata.Default,
535
+ {
536
+ name: "User";
537
+ collection: "users";
538
+ label: string;
539
+ labelPlural: string;
540
+ permissions: {
541
+ create(user: BaseUser, doc: ThisType, data: BaseUser.UpdateData): boolean;
542
+ update(user: BaseUser, doc: ThisType, changes: BaseUser.UpdateData): boolean;
543
+ delete(user: BaseUser, doc: ThisType): boolean;
544
+ };
545
+ schemaVersion: string;
546
+ }
547
+ >;
548
+ Wall: Merge<
549
+ Document.Metadata.Default,
550
+ {
551
+ name: "Wall";
552
+ collection: "walls";
553
+ label: string;
554
+ labelPlural: string;
555
+ permissions: {
556
+ update(user: BaseUser, doc: ThisType, data: BaseWall.UpdateData): boolean;
557
+ };
558
+ schemaVersion: string;
559
+ }
560
+ >;
561
+ }
562
+
563
+ type ReadonlyMetadata<ThisType extends Document.Internal.Instance.Any> = {
564
+ [K in keyof _ConfiguredMetadata<ThisType>]: Readonly<_ConfiguredMetadata<ThisType>[K]>;
565
+ };
566
+
567
+ interface ConfiguredMetadata<ThisType extends Document.Internal.Instance.Any> extends ReadonlyMetadata<ThisType> {}
568
+
569
+ type MetadataShape = {
570
+ [Name in Document.Type]: Document.Metadata<Document.Any>;
571
+ };
572
+
573
+ type TestConfiguredMetadataValid = MustConform<InterfaceToObject<ConfiguredMetadata<Document.Any>>, MetadataShape>;
574
+
575
+ export interface ConstructorData {
576
+ ActiveEffect: documents.BaseActiveEffect.ConstructorData;
577
+ ActorDelta: documents.BaseActorDelta.ConstructorData;
578
+ Actor: documents.BaseActor.ConstructorData;
579
+ Adventure: documents.BaseAdventure.ConstructorData;
580
+ Card: documents.BaseCard.ConstructorData;
581
+ Cards: documents.BaseCards.ConstructorData;
582
+ ChatMessage: documents.BaseChatMessage.ConstructorData;
583
+ Combat: documents.BaseCombat.ConstructorData;
584
+ Combatant: documents.BaseCombatant.ConstructorData;
585
+ FogExploration: documents.BaseFogExploration.ConstructorData;
586
+ Folder: documents.BaseFolder.ConstructorData;
587
+ Item: documents.BaseItem.ConstructorData;
588
+ JournalEntryPage: documents.BaseJournalEntryPage.ConstructorData;
589
+ JournalEntry: documents.BaseJournalEntry.ConstructorData;
590
+ Macro: documents.BaseMacro.ConstructorData;
591
+ PlaylistSound: documents.BasePlaylistSound.ConstructorData;
592
+ Playlist: documents.BasePlaylist.ConstructorData;
593
+ RollTable: documents.BaseRollTable.ConstructorData;
594
+ Scene: documents.BaseScene.ConstructorData;
595
+ Setting: documents.BaseSetting.ConstructorData;
596
+ TableResult: documents.BaseTableResult.ConstructorData;
597
+ User: documents.BaseUser.ConstructorData;
598
+ AmbientLight: documents.BaseAmbientLight.ConstructorData;
599
+ AmbientSound: documents.BaseAmbientSound.ConstructorData;
600
+ Drawing: documents.BaseDrawing.ConstructorData;
601
+ MeasuredTemplate: documents.BaseMeasuredTemplate.ConstructorData;
602
+ Note: documents.BaseNote.ConstructorData;
603
+ Tile: documents.BaseTile.ConstructorData;
604
+ Token: documents.BaseToken.ConstructorData;
605
+ Wall: documents.BaseWall.ConstructorData;
606
+ }