@league-of-foundry-developers/foundry-vtt-types 12.331.3-beta → 12.331.4-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -18
- package/package.json +74 -32
- package/src/configuration/configuration.d.mts +316 -0
- package/src/configuration/documents.d.mts +295 -0
- package/src/configuration/globals.d.mts +357 -0
- package/src/configuration/index.d.mts +5 -0
- package/src/foundry/client/apps/app.d.mts +129 -122
- package/src/foundry/client/apps/av/av-config.d.mts +12 -7
- package/src/foundry/client/apps/av/cameras.d.mts +12 -7
- package/src/foundry/client/apps/dice/dice-config.d.mts +59 -0
- package/src/foundry/client/apps/dice/index.d.mts +1 -0
- package/src/foundry/client/apps/form.d.mts +114 -86
- package/src/foundry/client/apps/forms/actor.d.mts +21 -11
- package/src/foundry/client/apps/forms/adventure-exporter.d.mts +12 -7
- package/src/foundry/client/apps/forms/adventure-importer.d.mts +14 -6
- package/src/foundry/client/apps/forms/base-sheet.d.mts +16 -8
- package/src/foundry/client/apps/forms/card-config.d.mts +16 -8
- package/src/foundry/client/apps/forms/cards-config.d.mts +15 -14
- package/src/foundry/client/apps/forms/combat-config.d.mts +7 -7
- package/src/foundry/client/apps/forms/combatant-config.d.mts +3 -3
- package/src/foundry/client/apps/forms/default-sheets-config.d.mts +1 -1
- package/src/foundry/client/apps/forms/effect-config.d.mts +7 -7
- package/src/foundry/client/apps/forms/folder-config.d.mts +5 -5
- package/src/foundry/client/apps/forms/fonts.d.mts +42 -35
- package/src/foundry/client/apps/forms/grid-config.d.mts +12 -13
- package/src/foundry/client/apps/forms/image-popout.d.mts +29 -23
- package/src/foundry/client/apps/forms/item.d.mts +9 -9
- package/src/foundry/client/apps/forms/journal-page-sheet.d.mts +16 -14
- package/src/foundry/client/apps/forms/journal-sheet.d.mts +48 -38
- package/src/foundry/client/apps/forms/macro-config.d.mts +7 -7
- package/src/foundry/client/apps/forms/measure-template.d.mts +10 -12
- package/src/foundry/client/apps/forms/ownership.d.mts +5 -5
- package/src/foundry/client/apps/forms/playlist-config.d.mts +8 -10
- package/src/foundry/client/apps/forms/playlist-sound-config.d.mts +7 -7
- package/src/foundry/client/apps/forms/roll-table-config.d.mts +11 -10
- package/src/foundry/client/apps/forms/scene-config.d.mts +40 -41
- package/src/foundry/client/apps/forms/sheet-config.d.mts +9 -21
- package/src/foundry/client/apps/forms/user-config.d.mts +13 -12
- package/src/foundry/client/apps/hud/chatbubble.d.mts +18 -6
- package/src/foundry/client/apps/hud/container.d.mts +4 -4
- package/src/foundry/client/apps/hud/controls.d.mts +126 -81
- package/src/foundry/client/apps/hud/hotbar.d.mts +17 -12
- package/src/foundry/client/apps/hud/hud.d.mts +5 -5
- package/src/foundry/client/apps/hud/menu.d.mts +10 -3
- package/src/foundry/client/apps/hud/navigation.d.mts +14 -9
- package/src/foundry/client/apps/hud/pause.d.mts +9 -4
- package/src/foundry/client/apps/hud/players.d.mts +14 -9
- package/src/foundry/client/apps/i18n.d.mts +31 -27
- package/src/foundry/client/apps/index.d.mts +1 -0
- package/src/foundry/client/apps/placeables/drawing-config.d.mts +41 -33
- package/src/foundry/client/apps/placeables/drawing-hud.d.mts +5 -5
- package/src/foundry/client/apps/placeables/index.d.mts +0 -2
- package/src/foundry/client/apps/placeables/note-config.d.mts +28 -18
- package/src/foundry/client/apps/placeables/tile-config.d.mts +23 -10
- package/src/foundry/client/apps/placeables/tile-hud.d.mts +10 -5
- package/src/foundry/client/apps/placeables/token-config.d.mts +91 -58
- package/src/foundry/client/apps/placeables/token-hud.d.mts +12 -7
- package/src/foundry/client/apps/placeables/wall-config.d.mts +21 -17
- package/src/foundry/client/apps/sidebar/apps/chat-popout.d.mts +5 -5
- package/src/foundry/client/apps/sidebar/apps/client-settings.d.mts +3 -3
- package/src/foundry/client/apps/sidebar/apps/compendium.d.mts +15 -13
- package/src/foundry/client/apps/sidebar/apps/invitation-links.d.mts +3 -3
- package/src/foundry/client/apps/sidebar/apps/keybindings-config.d.mts +3 -2
- package/src/foundry/client/apps/sidebar/apps/module-management.d.mts +6 -6
- package/src/foundry/client/apps/sidebar/apps/permission-config.d.mts +6 -6
- package/src/foundry/client/apps/sidebar/apps/support-details.d.mts +34 -29
- package/src/foundry/client/apps/sidebar/apps/tours-management.d.mts +2 -2
- package/src/foundry/client/apps/sidebar/apps/world-config.d.mts +13 -10
- package/src/foundry/client/apps/sidebar/directory-tab-mixin.d.mts +50 -35
- package/src/foundry/client/apps/sidebar/document-directory.d.mts +52 -38
- package/src/foundry/client/apps/sidebar/package-configuration.d.mts +4 -4
- package/src/foundry/client/apps/sidebar/sidebar-tab.d.mts +3 -3
- package/src/foundry/client/apps/sidebar/sidebar.d.mts +9 -4
- package/src/foundry/client/apps/sidebar/tabs/actors-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/cards-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/chat-log.d.mts +39 -27
- package/src/foundry/client/apps/sidebar/tabs/combat-tracker.d.mts +21 -12
- package/src/foundry/client/apps/sidebar/tabs/compendium-directory.d.mts +30 -15
- package/src/foundry/client/apps/sidebar/tabs/items-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/journal-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/macros-directory.d.mts +14 -5
- package/src/foundry/client/apps/sidebar/tabs/playlists-directory.d.mts +30 -22
- package/src/foundry/client/apps/sidebar/tabs/roll-table-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/scenes-directory.d.mts +14 -5
- package/src/foundry/client/apps/sidebar/tabs/settings.d.mts +23 -5
- package/src/foundry/client/apps/templates.d.mts +1 -1
- package/src/foundry/client/av/client.d.mts +1 -1
- package/src/foundry/client/av/clients/simplepeer.d.mts +11 -1
- package/src/foundry/client/av/master.d.mts +2 -2
- package/src/foundry/client/av/settings.d.mts +17 -15
- package/src/foundry/client/config.d.mts +444 -312
- package/src/foundry/client/core/document-index.d.mts +11 -3
- package/src/foundry/client/core/hooks.d.mts +2 -4
- package/src/foundry/client/core/image.d.mts +14 -13
- package/src/foundry/client/core/issues.d.mts +9 -4
- package/src/foundry/client/core/keybindings.d.mts +5 -5
- package/src/foundry/client/core/nue.d.mts +1 -1
- package/src/foundry/client/core/packages.d.mts +397 -61
- package/src/foundry/client/core/settings.d.mts +62 -38
- package/src/foundry/client/core/socket.d.mts +2 -2
- package/src/foundry/client/core/sorting.d.mts +6 -6
- package/src/foundry/client/core/time.d.mts +6 -3
- package/src/foundry/client/core/tooltip.d.mts +2 -2
- package/src/foundry/client/core/tour.d.mts +59 -50
- package/src/foundry/client/core/tours.d.mts +1 -1
- package/src/foundry/client/core/utils.d.mts +33 -10
- package/src/foundry/client/core/video.d.mts +1 -1
- package/src/foundry/client/core/workers.d.mts +24 -17
- package/src/foundry/client/data/abstract/canvas-document.d.mts +21 -16
- package/src/foundry/client/data/abstract/client-document.d.mts +153 -183
- package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +23 -39
- package/src/foundry/client/data/abstract/document-collection.d.mts +96 -68
- package/src/foundry/client/data/abstract/world-collection.d.mts +47 -55
- package/src/foundry/client/data/collections/actors.d.mts +30 -28
- package/src/foundry/client/data/collections/cards.d.mts +16 -3
- package/src/foundry/client/data/collections/combats.d.mts +18 -5
- package/src/foundry/client/data/collections/compendium-collection.d.mts +81 -99
- package/src/foundry/client/data/collections/compendium-folders.d.mts +6 -6
- package/src/foundry/client/data/collections/compendium-packs.d.mts +5 -5
- package/src/foundry/client/data/collections/fog.d.mts +16 -3
- package/src/foundry/client/data/collections/folder.d.mts +20 -6
- package/src/foundry/client/data/collections/items.d.mts +17 -4
- package/src/foundry/client/data/collections/journal.d.mts +22 -7
- package/src/foundry/client/data/collections/macros.d.mts +21 -19
- package/src/foundry/client/data/collections/messages.d.mts +19 -6
- package/src/foundry/client/data/collections/playlists.d.mts +17 -5
- package/src/foundry/client/data/collections/scenes.d.mts +24 -27
- package/src/foundry/client/data/collections/settings.d.mts +16 -3
- package/src/foundry/client/data/collections/tables.d.mts +18 -5
- package/src/foundry/client/data/collections/users.d.mts +19 -7
- package/src/foundry/client/data/documents/active-effect.d.mts +677 -85
- package/src/foundry/client/data/documents/actor-delta.d.mts +670 -27
- package/src/foundry/client/data/documents/actor.d.mts +718 -64
- package/src/foundry/client/data/documents/adventure.d.mts +480 -46
- package/src/foundry/client/data/documents/ambient-light.d.mts +423 -19
- package/src/foundry/client/data/documents/ambient-sound.d.mts +473 -14
- package/src/foundry/client/data/documents/card.d.mts +567 -36
- package/src/foundry/client/data/documents/cards.d.mts +744 -87
- package/src/foundry/client/data/documents/chat-message.d.mts +574 -42
- package/src/foundry/client/data/documents/combat.d.mts +699 -69
- package/src/foundry/client/data/documents/combatant.d.mts +504 -24
- package/src/foundry/client/data/documents/drawing.d.mts +540 -14
- package/src/foundry/client/data/documents/fog-exploration.d.mts +416 -21
- package/src/foundry/client/data/documents/folder.d.mts +468 -35
- package/src/foundry/client/data/documents/index.d.mts +2 -0
- package/src/foundry/client/data/documents/item.d.mts +677 -20
- package/src/foundry/client/data/documents/journal-entry-page.d.mts +585 -19
- package/src/foundry/client/data/documents/journal-entry.d.mts +619 -18
- package/src/foundry/client/data/documents/macro.d.mts +528 -25
- package/src/foundry/client/data/documents/measured-template.d.mts +478 -14
- package/src/foundry/client/data/documents/note.d.mts +491 -15
- package/src/foundry/client/data/documents/playlist-sound.d.mts +426 -24
- package/src/foundry/client/data/documents/playlist.d.mts +665 -74
- package/src/foundry/client/data/documents/region-behavior.d.mts +507 -0
- package/src/foundry/client/data/documents/region.d.mts +784 -0
- package/src/foundry/client/data/documents/scene.d.mts +983 -147
- package/src/foundry/client/data/documents/setting.d.mts +395 -13
- package/src/foundry/client/data/documents/table-result.d.mts +476 -14
- package/src/foundry/client/data/documents/table.d.mts +661 -78
- package/src/foundry/client/data/documents/tile.d.mts +499 -14
- package/src/foundry/client/data/documents/token.d.mts +1111 -94
- package/src/foundry/client/data/documents/user.d.mts +493 -25
- package/src/foundry/client/data/documents/wall.d.mts +548 -14
- package/src/foundry/client/game.d.mts +60 -92
- package/src/foundry/client/head.d.mts +9 -9
- package/src/foundry/client/hooks.d.mts +257 -237
- package/src/foundry/client/pixi/board.d.mts +106 -94
- package/src/foundry/client/pixi/core/containers/base-canvas-group.d.mts +97 -25
- package/src/foundry/client/pixi/core/containers/cached-container.d.mts +37 -19
- package/src/foundry/client/pixi/core/containers/full-canvas-container.d.mts +7 -10
- package/src/foundry/client/pixi/core/containers/point-source-mesh.d.mts +25 -15
- package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +16 -6
- package/src/foundry/client/pixi/core/containers/quadtree.d.mts +113 -54
- package/src/foundry/client/pixi/core/containers/sprite-mesh.d.mts +69 -26
- package/src/foundry/client/pixi/core/containers/unbound-container.d.mts +20 -2
- package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +164 -99
- package/src/foundry/client/pixi/core/interaction/control-icon.d.mts +61 -22
- package/src/foundry/client/pixi/core/interaction/mouse-handler.d.mts +120 -53
- package/src/foundry/client/pixi/core/interaction/ping.d.mts +62 -31
- package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +23 -10
- package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +91 -34
- package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +76 -30
- package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +35 -5
- package/src/foundry/client/pixi/core/interaction/targets.d.mts +21 -18
- package/src/foundry/client/pixi/core/loader.d.mts +86 -76
- package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +42 -17
- package/src/foundry/client/pixi/core/shapes/polygon-mesher.d.mts +92 -64
- package/src/foundry/client/pixi/core/shapes/precise-text.d.mts +28 -10
- package/src/foundry/client/pixi/core/shapes/ray.d.mts +47 -23
- package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +170 -75
- package/src/foundry/client/pixi/extensions/circle.d.mts +128 -125
- package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
- package/src/foundry/client/pixi/extensions/observable-transform.d.mts +5 -4
- package/src/foundry/client/pixi/extensions/polygon.d.mts +154 -134
- package/src/foundry/client/pixi/extensions/rectangle.d.mts +242 -259
- package/src/foundry/client/pixi/groups/effects.d.mts +75 -24
- package/src/foundry/client/pixi/groups/environment.d.mts +68 -19
- package/src/foundry/client/pixi/groups/hidden.d.mts +27 -11
- package/src/foundry/client/pixi/groups/interface.d.mts +62 -38
- package/src/foundry/client/pixi/groups/overlay.d.mts +19 -7
- package/src/foundry/client/pixi/groups/primary.d.mts +66 -44
- package/src/foundry/client/pixi/groups/rendered.d.mts +19 -7
- package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +11 -15
- package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +29 -28
- package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +306 -272
- package/src/foundry/client/pixi/layers/controls/cursor.d.mts +18 -9
- package/src/foundry/client/pixi/layers/controls/door.d.mts +32 -11
- package/src/foundry/client/pixi/layers/controls/layer.d.mts +89 -77
- package/src/foundry/client/pixi/layers/controls/ruler.d.mts +121 -96
- package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +9 -12
- package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +9 -10
- package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +8 -8
- package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +22 -22
- package/src/foundry/client/pixi/layers/effects/visibility.d.mts +106 -86
- package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +14 -5
- package/src/foundry/client/pixi/layers/effects/weather/particles/leaves.d.mts +31 -2
- package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +137 -65
- package/src/foundry/client/pixi/layers/grid/highlight.d.mts +14 -4
- package/src/foundry/client/pixi/layers/grid/layer.d.mts +92 -92
- package/src/foundry/client/pixi/layers/grid/mesh.d.mts +37 -16
- package/src/foundry/client/pixi/layers/masks/depth.d.mts +12 -7
- package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +19 -12
- package/src/foundry/client/pixi/layers/masks/vision.d.mts +104 -18
- package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +16 -15
- package/src/foundry/client/pixi/layers/placeables/index.d.mts +1 -0
- package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +12 -14
- package/src/foundry/client/pixi/layers/placeables/notes.d.mts +49 -32
- package/src/foundry/client/pixi/layers/placeables/regions.d.mts +113 -0
- package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +81 -67
- package/src/foundry/client/pixi/layers/placeables/templates.d.mts +11 -15
- package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +30 -21
- package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +66 -52
- package/src/foundry/client/pixi/layers/placeables/walls.d.mts +54 -57
- package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +62 -27
- package/src/foundry/client/pixi/perception/detection-mode.d.mts +121 -47
- package/src/foundry/client/pixi/perception/fog.d.mts +38 -15
- package/src/foundry/client/pixi/perception/perception-manager.d.mts +136 -136
- package/src/foundry/client/pixi/perception/vision-mode.d.mts +91 -64
- package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +44 -16
- package/src/foundry/client/pixi/placeable.d.mts +238 -137
- package/src/foundry/client/pixi/placeables/drawing.d.mts +255 -133
- package/src/foundry/client/pixi/placeables/index.d.mts +1 -0
- package/src/foundry/client/pixi/placeables/light.d.mts +199 -64
- package/src/foundry/client/pixi/placeables/note.d.mts +145 -54
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +30 -8
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-graphics.d.mts +41 -11
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.d.mts +59 -18
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.mts +120 -37
- package/src/foundry/client/pixi/placeables/region.d.mts +280 -0
- package/src/foundry/client/pixi/placeables/sound.d.mts +205 -66
- package/src/foundry/client/pixi/placeables/template.d.mts +181 -100
- package/src/foundry/client/pixi/placeables/tile.d.mts +206 -140
- package/src/foundry/client/pixi/placeables/token.d.mts +916 -449
- package/src/foundry/client/pixi/placeables/wall.d.mts +249 -129
- package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +72 -33
- package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/helpers/{framebugger-snapshot.d.mts → framebuffer-snapshot.d.mts} +10 -9
- package/src/foundry/client/pixi/webgl/helpers/index.d.mts +1 -1
- package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +38 -23
- package/src/foundry/client/pixi/webgl/helpers/texture-extractor.d.mts +82 -53
- package/src/foundry/client/pixi/webgl/shaders/base-shader-mixin.d.mts +12 -12
- package/src/foundry/client/pixi/webgl/shaders/base-shader.d.mts +45 -28
- package/src/foundry/client/pixi/webgl/shaders/filters/base-filter.d.mts +12 -11
- package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +12 -10
- package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +22 -20
- package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +36 -32
- package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +12 -11
- package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +12 -11
- package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +67 -60
- package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +24 -17
- package/src/foundry/client/pixi/webgl/shaders/filters/vision-mask-filter.d.mts +13 -10
- package/src/foundry/client/pixi/webgl/shaders/filters/void.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +11 -10
- package/src/foundry/client/pixi/webgl/shaders/fragment-channel-mixin.d.mts +20 -14
- package/src/foundry/client/pixi/webgl/shaders/grid/grid.d.mts +12 -11
- package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +33 -33
- package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +10 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +20 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +71 -29
- package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +54 -10
- package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +69 -9
- package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +24 -25
- package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +38 -29
- package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +21 -17
- package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +20 -18
- package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +11 -2
- package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +28 -2
- package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +11 -9
- package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +40 -36
- package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +27 -33
- package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +17 -16
- package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +19 -18
- package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +15 -14
- package/src/foundry/client/pixi/workers/texture-worker.d.mts +33 -53
- package/src/foundry/client/tours/setup-tour.d.mts +15 -10
- package/src/foundry/client/ui/context.d.mts +48 -40
- package/src/foundry/client/ui/dialog.d.mts +137 -126
- package/src/foundry/client/ui/drag.d.mts +1 -1
- package/src/foundry/client/ui/dragdrop.d.mts +34 -28
- package/src/foundry/client/ui/editor.d.mts +29 -21
- package/src/foundry/client/ui/filepicker.d.mts +43 -38
- package/src/foundry/client/ui/filter.d.mts +62 -50
- package/src/foundry/client/ui/forms.d.mts +22 -22
- package/src/foundry/client/ui/notifications.d.mts +10 -3
- package/src/foundry/client/ui/prosemirror.d.mts +15 -7
- package/src/foundry/client/ui/secrets.d.mts +42 -27
- package/src/foundry/client/ui/tabs.d.mts +40 -33
- package/src/foundry/client-esm/applications/_module.d.mts +3 -3
- package/src/foundry/client-esm/applications/_types.d.mts +0 -2
- package/src/foundry/client-esm/applications/api/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/api/application.d.mts +36 -19
- package/src/foundry/client-esm/applications/api/dialog.d.mts +20 -22
- package/src/foundry/client-esm/applications/api/document-sheet.d.mts +26 -12
- package/src/foundry/client-esm/applications/api/handlebars-application.d.mts +142 -126
- package/src/foundry/client-esm/applications/apps/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/apps/compendium-art-config.d.mts +10 -10
- package/src/foundry/client-esm/applications/apps/permission-config.d.mts +3 -3
- package/src/foundry/client-esm/applications/dice/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/dice/roll-resolver.d.mts +14 -2
- package/src/foundry/client-esm/applications/elements/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/elements/document-tags.d.mts +2 -0
- package/src/foundry/client-esm/applications/elements/file-picker.d.mts +1 -1
- package/src/foundry/client-esm/applications/elements/multi-select.d.mts +15 -5
- package/src/foundry/client-esm/applications/elements/string-tags.d.mts +1 -1
- package/src/foundry/client-esm/applications/forms/fields.d.mts +1 -1
- package/src/foundry/client-esm/applications/sheets/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/sheets/actor-sheet.d.mts +3 -3
- package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +10 -8
- package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +9 -7
- package/src/foundry/client-esm/applications/sheets/item-sheet.d.mts +3 -3
- package/src/foundry/client-esm/applications/sheets/region-behavior-config.d.mts +30 -5
- package/src/foundry/client-esm/applications/sheets/region-config.d.mts +36 -5
- package/src/foundry/client-esm/applications/sheets/user-config.d.mts +8 -7
- package/src/foundry/client-esm/applications/ui/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/ui/region-legend.d.mts +45 -3
- package/src/foundry/client-esm/audio/_module.d.mts +2 -3
- package/src/foundry/client-esm/audio/_types.d.mts +2 -0
- package/src/foundry/client-esm/audio/biquad.d.mts +76 -26
- package/src/foundry/client-esm/audio/cache.d.mts +31 -20
- package/src/foundry/client-esm/audio/convolver.d.mts +47 -25
- package/src/foundry/client-esm/audio/helper.d.mts +124 -80
- package/src/foundry/client-esm/audio/sound.d.mts +230 -126
- package/src/foundry/client-esm/audio/timeout.d.mts +28 -12
- package/src/foundry/client-esm/canvas/_module.d.mts +2 -2
- package/src/foundry/client-esm/canvas/edges/_module.d.mts +2 -2
- package/src/foundry/client-esm/canvas/edges/collision.d.mts +69 -18
- package/src/foundry/client-esm/canvas/edges/edge.d.mts +110 -41
- package/src/foundry/client-esm/canvas/edges/edges.d.mts +10 -0
- package/src/foundry/client-esm/canvas/edges/vertex.d.mts +56 -26
- package/src/foundry/client-esm/canvas/regions/_module.d.mts +6 -11
- package/src/foundry/client-esm/canvas/regions/geometry.d.mts +38 -0
- package/src/foundry/client-esm/canvas/regions/mesh.d.mts +72 -0
- package/src/foundry/client-esm/canvas/regions/polygon-tree.d.mts +130 -0
- package/src/foundry/client-esm/canvas/regions/shape.d.mts +129 -0
- package/src/foundry/client-esm/canvas/scene-manager.d.mts +13 -3
- package/src/foundry/client-esm/canvas/smaa/blend.d.mts +14 -3
- package/src/foundry/client-esm/canvas/smaa/edges.d.mts +25 -3
- package/src/foundry/client-esm/canvas/smaa/smaa.d.mts +121 -23
- package/src/foundry/client-esm/canvas/smaa/weights.d.mts +26 -3
- package/src/foundry/client-esm/canvas/sources/_module.d.mts +2 -2
- package/src/foundry/client-esm/canvas/sources/base-effect-source.d.mts +84 -40
- package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +103 -39
- package/src/foundry/client-esm/canvas/sources/global-light-source.d.mts +89 -15
- package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +71 -27
- package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +49 -20
- package/src/foundry/client-esm/canvas/sources/point-light-source.d.mts +57 -16
- package/src/foundry/client-esm/canvas/sources/point-movement-source.d.mts +31 -4
- package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +45 -12
- package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +98 -52
- package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +180 -69
- package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -3
- package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +175 -2
- package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +141 -2
- package/src/foundry/client-esm/canvas/tokens/ring.d.mts +284 -2
- package/src/foundry/client-esm/client.d.mts +47 -54
- package/src/foundry/client-esm/data/_module.d.mts +2 -2
- package/src/foundry/client-esm/data/client-backend.d.mts +22 -23
- package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +11 -14
- package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +57 -0
- package/src/foundry/client-esm/data/region-behaviors/base.d.mts +59 -0
- package/src/foundry/client-esm/data/region-behaviors/display-scrolling-text.d.mts +64 -0
- package/src/foundry/client-esm/data/region-behaviors/execute-macro.d.mts +27 -0
- package/src/foundry/client-esm/data/region-behaviors/execute-script.d.mts +23 -0
- package/src/foundry/client-esm/data/region-behaviors/pause-game.d.mts +23 -0
- package/src/foundry/client-esm/data/region-behaviors/suppress-weather.d.mts +17 -0
- package/src/foundry/client-esm/data/region-behaviors/teleport-token.d.mts +32 -0
- package/src/foundry/client-esm/data/region-behaviors/toggle-behavior.d.mts +31 -0
- package/src/foundry/client-esm/dice/_module.d.mts +2 -3
- package/src/foundry/client-esm/dice/parser.d.mts +11 -25
- package/src/foundry/client-esm/dice/roll.d.mts +115 -89
- package/src/foundry/client-esm/dice/terms/_module.d.mts +2 -3
- package/src/foundry/client-esm/dice/terms/coin.d.mts +8 -5
- package/src/foundry/client-esm/dice/terms/dice.d.mts +93 -63
- package/src/foundry/client-esm/dice/terms/die.d.mts +11 -4
- package/src/foundry/client-esm/dice/terms/fate.d.mts +9 -2
- package/src/foundry/client-esm/dice/terms/function.d.mts +18 -18
- package/src/foundry/client-esm/dice/terms/numeric.d.mts +3 -5
- package/src/foundry/client-esm/dice/terms/operator.d.mts +2 -2
- package/src/foundry/client-esm/dice/terms/parenthetical.d.mts +9 -10
- package/src/foundry/client-esm/dice/terms/pool.d.mts +25 -31
- package/src/foundry/client-esm/dice/terms/string.d.mts +4 -4
- package/src/foundry/client-esm/dice/terms/term.d.mts +18 -4
- package/src/foundry/client-esm/dice/twister.d.mts +3 -3
- package/src/foundry/client-esm/helpers/_module.d.mts +2 -2
- package/src/foundry/client-esm/helpers/_types.d.mts +12 -46
- package/src/foundry/client-esm/helpers/compendium-art.d.mts +56 -4
- package/src/foundry/common/abstract/_types.d.mts +60 -54
- package/src/foundry/common/abstract/backend.d.mts +51 -45
- package/src/foundry/common/abstract/data.d.mts +132 -154
- package/src/foundry/common/abstract/document.d.mts +1306 -438
- package/src/foundry/common/abstract/embedded-collection-delta.d.mts +1 -1
- package/src/foundry/common/abstract/embedded-collection.d.mts +37 -7
- package/src/foundry/common/abstract/module.d.mts +3 -2
- package/src/foundry/common/abstract/singleton-collection.d.mts +1 -1
- package/src/foundry/common/abstract/socket.d.mts +1 -1
- package/src/foundry/common/abstract/type-data.d.mts +58 -55
- package/src/foundry/common/config.d.mts +5 -3
- package/src/foundry/common/constants.d.mts +261 -231
- package/src/foundry/common/data/data.d.mts +200 -94
- package/src/foundry/common/data/fields.d.mts +700 -644
- package/src/foundry/common/data/module.d.mts +2 -2
- package/src/foundry/common/data/validation-failure.d.mts +12 -9
- package/src/foundry/common/documents/_module.d.mts +4 -2
- package/src/foundry/common/documents/_types.d.mts +22 -50
- package/src/foundry/common/documents/active-effect.d.mts +280 -179
- package/src/foundry/common/documents/actor-delta.d.mts +318 -69
- package/src/foundry/common/documents/actor.d.mts +305 -117
- package/src/foundry/common/documents/adventure.d.mts +266 -141
- package/src/foundry/common/documents/ambient-light.d.mts +268 -75
- package/src/foundry/common/documents/ambient-sound.d.mts +268 -109
- package/src/foundry/common/documents/card.d.mts +267 -174
- package/src/foundry/common/documents/cards.d.mts +299 -126
- package/src/foundry/common/documents/chat-message.d.mts +276 -158
- package/src/foundry/common/documents/combat.d.mts +300 -89
- package/src/foundry/common/documents/combatant.d.mts +275 -88
- package/src/foundry/common/documents/drawing.d.mts +286 -206
- package/src/foundry/common/documents/fog-exploration.d.mts +258 -70
- package/src/foundry/common/documents/folder.d.mts +252 -81
- package/src/foundry/common/documents/item.d.mts +305 -99
- package/src/foundry/common/documents/journal-entry-page.d.mts +279 -189
- package/src/foundry/common/documents/journal-entry.d.mts +294 -68
- package/src/foundry/common/documents/macro.d.mts +254 -132
- package/src/foundry/common/documents/measured-template.d.mts +293 -139
- package/src/foundry/common/documents/note.d.mts +274 -149
- package/src/foundry/common/documents/playlist-sound.d.mts +260 -94
- package/src/foundry/common/documents/playlist.d.mts +279 -120
- package/src/foundry/common/documents/region-behavior.d.mts +329 -0
- package/src/foundry/common/documents/region.d.mts +327 -0
- package/src/foundry/common/documents/roll-table.d.mts +286 -102
- package/src/foundry/common/documents/scene.d.mts +276 -336
- package/src/foundry/common/documents/setting.d.mts +229 -54
- package/src/foundry/common/documents/table-result.d.mts +267 -94
- package/src/foundry/common/documents/tile.d.mts +301 -170
- package/src/foundry/common/documents/token.d.mts +351 -445
- package/src/foundry/common/documents/user.d.mts +256 -144
- package/src/foundry/common/documents/wall.d.mts +273 -156
- package/src/foundry/common/grid/_module.d.mts +3 -3
- package/src/foundry/common/grid/base.d.mts +66 -49
- package/src/foundry/common/grid/gridless.d.mts +2 -2
- package/src/foundry/common/grid/hexagonal.d.mts +35 -28
- package/src/foundry/common/grid/square.d.mts +3 -3
- package/src/foundry/common/packages/base-module.d.mts +6 -24
- package/src/foundry/common/packages/base-package.d.mts +23 -21
- package/src/foundry/common/packages/base-system.d.mts +6 -63
- package/src/foundry/common/packages/base-world.d.mts +8 -61
- package/src/foundry/common/packages/module.d.mts +7 -7
- package/src/foundry/common/packages/sub-types.d.mts +2 -2
- package/src/foundry/common/primitives/array.d.mts +4 -4
- package/src/foundry/common/primitives/math.d.mts +7 -1
- package/src/foundry/common/primitives/number.d.mts +2 -2
- package/src/foundry/common/primitives/set.d.mts +17 -14
- package/src/foundry/common/primitives/string.d.mts +1 -1
- package/src/foundry/common/prosemirror/_module.d.mts +15 -15
- package/src/foundry/common/prosemirror/dirty-plugin.d.mts +1 -1
- package/src/foundry/common/prosemirror/dom-parser.d.mts +2 -1
- package/src/foundry/common/prosemirror/dropdown.d.mts +1 -1
- package/src/foundry/common/prosemirror/highlight-matches-plugin.d.mts +2 -2
- package/src/foundry/common/prosemirror/image-plugin.d.mts +1 -1
- package/src/foundry/common/prosemirror/menu.d.mts +3 -3
- package/src/foundry/common/prosemirror/paste-transformer.d.mts +1 -1
- package/src/foundry/common/prosemirror/plugin.d.mts +2 -2
- package/src/foundry/common/prosemirror/schema/index.d.mts +0 -1
- package/src/foundry/common/prosemirror/schema/lists.d.mts +2 -0
- package/src/foundry/common/prosemirror/util.d.mts +1 -1
- package/src/foundry/common/types.d.mts +3 -3
- package/src/foundry/common/utils/bitmask.d.mts +23 -11
- package/src/foundry/common/utils/collection.d.mts +61 -38
- package/src/foundry/common/utils/color.d.mts +20 -2
- package/src/foundry/common/utils/event-emitter.d.mts +32 -17
- package/src/foundry/common/utils/helpers.d.mts +36 -26
- package/src/foundry/common/utils/http.d.mts +2 -2
- package/src/foundry/common/utils/module.d.mts +2 -2
- package/src/foundry/common/utils/string-tree.d.mts +45 -39
- package/src/foundry/common/utils/word-tree.d.mts +10 -23
- package/src/foundry/index.d.mts +0 -1
- package/src/foundry/{clipper → public/scripts/clipper}/clipper.d.mts +58 -16
- package/src/foundry/public/scripts/index.d.mts +1 -0
- package/src/foundry/public/scripts/workers/image-compressor.d.mts +23 -0
- package/src/foundry/public/scripts/workers/index.d.mts +1 -0
- package/{index-lenient.d.mts → src/index-lenient.d.mts} +2 -0
- package/src/index.d.mts +6 -0
- package/src/tsconfig.json +15 -0
- package/src/types/augments/particles.d.mts +29 -0
- package/src/types/augments/pixi.d.mts +1024 -21
- package/src/types/augments/smooth.d.mts +31 -0
- package/src/types/augments/tinyMCE.d.mts +1 -1
- package/src/types/config.d.mts +20 -312
- package/src/types/documentConfiguration.d.mts +286 -542
- package/src/types/index.d.mts +1 -1
- package/src/types/lib.d.mts +12 -0
- package/src/types/workers/image-compressor.d.mts +176 -0
- package/src/utils/index.d.mts +1279 -0
- package/tsconfig.json +29 -0
- package/tsconfig.main.json +8 -0
- package/tsconfig.miscellaneous.json +16 -0
- package/index.d.mts +0 -5
- package/src/foundry/client/apps/placeables/light-config.d.mts +0 -100
- package/src/foundry/client/apps/placeables/sound-config.d.mts +0 -43
- package/src/foundry/common/documents/module.d.mts +0 -35
- package/src/foundry/common/primitives/regex.d.mts +0 -12
- package/src/types/helperTypes.d.mts +0 -583
- package/src/types/utils.d.mts +0 -539
- /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,20 +1,20 @@
|
|
1
|
-
import type {
|
1
|
+
import type { AnyObject, Identity, InexactPartial, IntentionalPartial, NullishProps } from "fvtt-types/utils";
|
2
2
|
import type BaseEffectSource from "./base-effect-source.d.mts";
|
3
|
-
|
4
|
-
// TODO: Remove after shaders are done
|
5
|
-
type AdaptiveDarknessShader = unknown;
|
3
|
+
import type BaseLightSource from "./base-light-source.d.mts";
|
6
4
|
|
7
5
|
/**
|
8
6
|
* An abstract class which extends the base PointSource to provide common functionality for rendering.
|
9
7
|
* This class is extended by both the LightSource and VisionSource subclasses.
|
10
8
|
*/
|
11
|
-
declare class RenderedEffectSource<
|
12
|
-
SourceData extends RenderedEffectSource.
|
9
|
+
declare abstract class RenderedEffectSource<
|
10
|
+
SourceData extends RenderedEffectSource.SourceData = RenderedEffectSource.SourceData,
|
13
11
|
SourceShape extends PIXI.Polygon = PIXI.Polygon,
|
14
|
-
RenderingLayers extends Record<string, RenderedEffectSource.
|
12
|
+
RenderingLayers extends Record<string, RenderedEffectSource.SourceLayer> = RenderedEffectSource.Layers,
|
15
13
|
> extends BaseEffectSource<SourceData, SourceShape> {
|
16
14
|
/**
|
17
15
|
* Keys of the data object which require shaders to be re-initialized.
|
16
|
+
* @privateRemarks Presumably, allowing this to contain `"animation.type"` in `BaseLightSource` is why
|
17
|
+
* `#_configure` is passed flattened data
|
18
18
|
*/
|
19
19
|
protected static _initializeShaderKeys: string[];
|
20
20
|
|
@@ -27,7 +27,7 @@ declare class RenderedEffectSource<
|
|
27
27
|
* Layers handled by this rendered source.
|
28
28
|
* @remarks Keys should match the keys of RenderingLayers
|
29
29
|
*/
|
30
|
-
protected static get _layers(): Record<string, RenderedEffectSource.
|
30
|
+
protected static get _layers(): Record<string, RenderedEffectSource.LayerConfig>;
|
31
31
|
|
32
32
|
/**
|
33
33
|
* The offset in pixels applied to create soft edges.
|
@@ -39,21 +39,21 @@ declare class RenderedEffectSource<
|
|
39
39
|
* @defaultValue
|
40
40
|
* ```js
|
41
41
|
* {
|
42
|
-
*
|
43
|
-
*
|
44
|
-
*
|
45
|
-
*
|
46
|
-
*
|
42
|
+
* ...super.defaultData,
|
43
|
+
* animation: {},
|
44
|
+
* seed: null,
|
45
|
+
* preview: false,
|
46
|
+
* color: null
|
47
47
|
* }
|
48
48
|
* ```
|
49
49
|
*/
|
50
|
-
static defaultData: RenderedEffectSource.
|
50
|
+
static defaultData: RenderedEffectSource.SourceData;
|
51
51
|
|
52
52
|
/**
|
53
53
|
* The animation configuration applied to this source
|
54
54
|
* @defaultValue `{}`
|
55
55
|
*/
|
56
|
-
animation: RenderedEffectSource.
|
56
|
+
animation: RenderedEffectSource.StoredAnimationConfig;
|
57
57
|
|
58
58
|
/**
|
59
59
|
* Track the status of rendering layers
|
@@ -63,7 +63,7 @@ declare class RenderedEffectSource<
|
|
63
63
|
/**
|
64
64
|
* The color of the source as an RGB vector.
|
65
65
|
*/
|
66
|
-
colorRGB:
|
66
|
+
colorRGB: Color.RGBColorVector | null;
|
67
67
|
|
68
68
|
/**
|
69
69
|
* PIXI Geometry generated to draw meshes.
|
@@ -100,29 +100,27 @@ declare class RenderedEffectSource<
|
|
100
100
|
*/
|
101
101
|
get illumination(): PointSourceMesh;
|
102
102
|
|
103
|
-
_initialize(data:
|
103
|
+
protected override _initialize(data: IntentionalPartial<SourceData>): void;
|
104
104
|
|
105
105
|
/**
|
106
106
|
* Decide whether to render soft edges with a blur.
|
107
107
|
*/
|
108
108
|
protected _initializeSoftEdges(): void;
|
109
109
|
|
110
|
-
|
110
|
+
// TODO: Flatten<IntentionalPartial<SourceData>>
|
111
|
+
protected override _configure(changes: AnyObject): void;
|
111
112
|
|
112
113
|
/**
|
113
114
|
* Configure which shaders are used for each rendered layer.
|
114
115
|
* @privateRemarks Foundry marks this as private then overrides it in `PointVisionSource`
|
115
116
|
*/
|
116
|
-
protected _configureShaders():
|
117
|
-
background: AdaptiveLightingShader;
|
118
|
-
coloration: AdaptiveLightingShader;
|
119
|
-
illumination: AdaptiveLightingShader;
|
120
|
-
};
|
117
|
+
protected _configureShaders(): Record<keyof RenderingLayers, AdaptiveLightingShader.AnyConstructor>;
|
121
118
|
|
122
119
|
/**
|
123
120
|
* Specific configuration for a layer.
|
121
|
+
* @remarks Is a no-op in `RenderedEffectSource`
|
124
122
|
*/
|
125
|
-
protected _configureLayer(layer:
|
123
|
+
protected _configureLayer(layer: RenderedEffectSource.SourceLayer, layerId: string): void;
|
126
124
|
|
127
125
|
/**
|
128
126
|
* Create the geometry for the source shape that is used in shaders and compute its bounds for culling purpose.
|
@@ -133,18 +131,16 @@ declare class RenderedEffectSource<
|
|
133
131
|
|
134
132
|
/**
|
135
133
|
* Render the containers used to represent this light source within the LightingLayer
|
134
|
+
* @remarks Will error if called prior to initialization
|
136
135
|
*/
|
137
|
-
drawMeshes():
|
138
|
-
|
139
|
-
coloration: PIXI.Mesh;
|
140
|
-
illumination: PIXI.Mesh;
|
141
|
-
};
|
136
|
+
drawMeshes(): Record<keyof RenderingLayers, PointSourceMesh | null>;
|
137
|
+
|
142
138
|
/**
|
143
139
|
* Create a Mesh for a certain rendered layer of this source.
|
144
140
|
* @param layerId - The layer key in layers to draw
|
145
141
|
* @returns The drawn mesh for this layer, or null if no mesh is required
|
146
142
|
*/
|
147
|
-
protected _drawMesh(layerId: string):
|
143
|
+
protected _drawMesh(layerId: string): PointSourceMesh | null;
|
148
144
|
|
149
145
|
/**
|
150
146
|
* Update shader uniforms used by every rendered layer.
|
@@ -166,24 +162,28 @@ declare class RenderedEffectSource<
|
|
166
162
|
*/
|
167
163
|
protected _updateIlluminationUniforms(): void;
|
168
164
|
|
165
|
+
protected override _destroy(): void;
|
166
|
+
|
169
167
|
/**
|
170
168
|
* Animate the PointSource, if an animation is enabled and if it currently has rendered containers.
|
171
169
|
* @param dt - Delta time.
|
170
|
+
* @privateRemarks In core this will return `void`, as the `this.animation.animation` function will be a {@link foundry.canvas.sources.BaseLightSource.LightAnimationFunction | `BaseLightSource.LightAnimationFunction`}
|
171
|
+
* and in fact most of the time will be {@link foundry.canvas.sources.RenderedEffectSource.animateTime | `RenderedEffectSource#animateTime`}, but it could technically be set to any function
|
172
172
|
*/
|
173
|
-
animate(dt: number): this["animation"]["animation"] extends (...args:
|
173
|
+
animate(dt: number): this["animation"]["animation"] extends (...args: infer _1) => infer Return ? Return : void;
|
174
174
|
|
175
175
|
/**
|
176
176
|
* Generic time-based animation used for Rendered Point Sources.
|
177
177
|
* @param dt - Delta time.
|
178
178
|
* @param options - Options which affect the time animation
|
179
179
|
*/
|
180
|
-
animateTime(dt: number, options?:
|
180
|
+
animateTime(dt: number, options?: RenderedEffectSource.AnimationFunctionOptions): void;
|
181
181
|
|
182
182
|
/**
|
183
183
|
* Get corrected level according to level and active vision mode data.
|
184
184
|
* @returns The corrected level.
|
185
185
|
*/
|
186
|
-
static getCorrectedLevel(level: foundry.CONST.LIGHTING_LEVELS):
|
186
|
+
static getCorrectedLevel(level: foundry.CONST.LIGHTING_LEVELS): foundry.CONST.LIGHTING_LEVELS;
|
187
187
|
|
188
188
|
/**
|
189
189
|
* Get corrected color according to level, dim color, bright color and background color.
|
@@ -192,139 +192,250 @@ declare class RenderedEffectSource<
|
|
192
192
|
level: foundry.CONST.LIGHTING_LEVELS,
|
193
193
|
colorDim: Color,
|
194
194
|
colorBright: Color,
|
195
|
-
colorBackground?: Color,
|
195
|
+
colorBackground?: Color | null,
|
196
196
|
): Color;
|
197
197
|
|
198
198
|
/**
|
199
|
-
* @deprecated since v11
|
199
|
+
* @deprecated since v11, until v13
|
200
|
+
* @remarks "The RenderedEffectSource#preview is deprecated. Use RenderedEffectSource#isPreview instead."
|
200
201
|
*/
|
201
202
|
set preview(preview: boolean);
|
202
203
|
|
203
204
|
/**
|
204
|
-
* @deprecated since v11
|
205
|
+
* @deprecated since v11, until v13
|
206
|
+
* @remarks "The RenderedEffectSource#preview is deprecated. Set RenderedEffectSource#preview as part of RenderedEffectSource#initialize instead."
|
205
207
|
*/
|
206
208
|
get preview(): boolean;
|
207
209
|
}
|
208
210
|
|
209
211
|
declare namespace RenderedEffectSource {
|
210
|
-
|
212
|
+
interface Any extends AnyRenderedEffectSource {}
|
213
|
+
interface AnyConstructor extends Identity<typeof AnyRenderedEffectSource> {}
|
211
214
|
|
212
|
-
interface
|
215
|
+
interface SourceData extends BaseEffectSource.SourceData {
|
213
216
|
/**
|
214
217
|
* An animation configuration for the source
|
218
|
+
* @defaultValue `{}`
|
215
219
|
*/
|
216
|
-
animation:
|
220
|
+
animation: StoredAnimationConfig;
|
221
|
+
|
217
222
|
/**
|
218
223
|
* A color applied to the rendered effect
|
224
|
+
* @defaultValue `null`
|
225
|
+
* @remarks Foundry types as `number`, but it gets passed to `Color.from()`
|
226
|
+
*
|
227
|
+
* If `null`, Foundry will use the associated shader's `.defaultUniforms.color`
|
219
228
|
*/
|
220
|
-
color:
|
229
|
+
color: Color.Source | null;
|
230
|
+
|
221
231
|
/**
|
222
232
|
* An integer seed to synchronize (or de-synchronize) animations
|
233
|
+
* @defaultValue `null`
|
234
|
+
* @remarks This will remain null in `#data` if not specified, which will lead to `Math.floor(Math.random() * 100000)`
|
235
|
+
*
|
236
|
+
* If specified, takes precedence over `RenderedEffectSource#animation.seed`
|
223
237
|
*/
|
224
238
|
seed: number | null;
|
239
|
+
|
225
240
|
/**
|
226
241
|
* Is this source a temporary preview?
|
242
|
+
* @defaultValue `false`
|
227
243
|
*/
|
228
244
|
preview: boolean;
|
229
245
|
}
|
230
246
|
|
231
|
-
|
247
|
+
type AnimationFunction = (
|
248
|
+
this: RenderedEffectSource,
|
249
|
+
/** Delta time */
|
250
|
+
dt: number,
|
251
|
+
options?: AnimationFunctionOptions,
|
252
|
+
) => void;
|
253
|
+
|
254
|
+
/** @internal */
|
255
|
+
type _AnimationFunctionOptions = InexactPartial<{
|
232
256
|
/**
|
233
257
|
* The animation speed, from 0 to 10
|
234
258
|
* @defaultValue `5`
|
259
|
+
* @remarks Can't be `null` as it only has a parameter default
|
235
260
|
*/
|
236
|
-
speed
|
261
|
+
speed: number;
|
237
262
|
|
238
263
|
/**
|
239
264
|
* The animation intensity, from 1 to 10
|
240
265
|
* @defaultValue `5`
|
266
|
+
* @remarks Can't be `null` as it only has a parameter default
|
241
267
|
*/
|
242
|
-
intensity
|
268
|
+
intensity: number;
|
243
269
|
|
244
270
|
/**
|
245
271
|
* Reverse the animation direction
|
246
272
|
* @defaultValue `false`
|
247
273
|
*/
|
248
|
-
reverse
|
249
|
-
}
|
274
|
+
reverse: boolean | null;
|
275
|
+
}>;
|
276
|
+
|
277
|
+
/** Shared options for the {@link RenderedEffectSource.AnimationFunction | `AnimationFunction`}s provided by {@link foundry.canvas.sources.RenderedEffectSource | `RenderedEffectSource`} and subclasses */
|
278
|
+
interface AnimationFunctionOptions extends _AnimationFunctionOptions {}
|
250
279
|
|
251
|
-
|
280
|
+
/**
|
281
|
+
* Properties *every* core-provided config has
|
282
|
+
* @internal
|
283
|
+
*/
|
284
|
+
interface _AnimationConfigBase {
|
252
285
|
/**
|
253
286
|
* The human-readable (localized) label for the animation
|
287
|
+
* @remarks Despite the above, all of the core-provided configs provide a localization
|
288
|
+
* key here, not localized text.
|
254
289
|
*/
|
255
|
-
label
|
290
|
+
label: string;
|
291
|
+
|
256
292
|
/**
|
257
293
|
* The animation function that runs every frame
|
258
|
-
* @privateRemarks
|
294
|
+
* @privateRemarks Eventually called with `animation?.call()`, but at no point is a default provided,
|
295
|
+
* and not having one is nonsensical.
|
259
296
|
*/
|
260
|
-
animation
|
297
|
+
animation: AnimationFunction | BaseLightSource.LightAnimationFunction;
|
298
|
+
}
|
299
|
+
|
300
|
+
/** @internal */
|
301
|
+
type _Seed = NullishProps<{
|
302
|
+
/**
|
303
|
+
* The animation seed
|
304
|
+
* @defaultValue `Math.floor(Math.random() * 100000)`
|
305
|
+
* @remarks No Foundry-provided config specifies this, but it would be respected if set
|
306
|
+
*/
|
307
|
+
seed: number;
|
308
|
+
}>;
|
309
|
+
|
310
|
+
/**
|
311
|
+
* Each Foundry-provided entry in `CONFIG.Canvas.lightAnimations` provides at least a `colorationShader`,
|
312
|
+
* but any properties not provided will be backfilled by `|| this.layers[layer].defaultShader`
|
313
|
+
* @internal
|
314
|
+
*/
|
315
|
+
type _AnimationConfigLightingShaders = NullishProps<{
|
261
316
|
/**
|
262
317
|
* A custom illumination shader used by this animation
|
318
|
+
* @defaultValue `AdaptiveIlluminationShader`
|
263
319
|
*/
|
264
|
-
illuminationShader
|
320
|
+
illuminationShader: AdaptiveIlluminationShader.AnyConstructor;
|
321
|
+
|
265
322
|
/**
|
266
323
|
* A custom coloration shader used by this animation
|
324
|
+
* @defaultValue `AdaptiveColorationShader`
|
267
325
|
*/
|
268
|
-
colorationShader
|
326
|
+
colorationShader: AdaptiveColorationShader.AnyConstructor;
|
327
|
+
|
269
328
|
/**
|
270
329
|
* A custom background shader used by this animation
|
330
|
+
* @defaultValue `AdaptiveBackgroundShader`
|
271
331
|
*/
|
272
|
-
backgroundShader
|
332
|
+
backgroundShader: AdaptiveBackgroundShader.AnyConstructor;
|
333
|
+
}> & { darknessShader?: never };
|
334
|
+
|
335
|
+
/**
|
336
|
+
* Foundry's typedef lists `darknessShader` as required, and every core-provided config
|
337
|
+
* has one specified, but it has a default just like the lighting shaders
|
338
|
+
* @internal
|
339
|
+
*/
|
340
|
+
interface _AnimationConfigDarknessShaders {
|
273
341
|
/**
|
274
342
|
* A custom darkness shader used by this animation
|
343
|
+
* @defaultValue `AdaptiveDarknessShader`
|
275
344
|
*/
|
276
|
-
darknessShader
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
345
|
+
darknessShader: AdaptiveDarknessShader.AnyConstructor;
|
346
|
+
|
347
|
+
illuminationShader?: never;
|
348
|
+
colorationShader?: never;
|
349
|
+
backgroundShader?: never;
|
350
|
+
}
|
351
|
+
|
352
|
+
/**
|
353
|
+
* `this.animation.time` always gets set by `RenderedEffectSource#animateTime`,
|
354
|
+
* which all animation functions end up calling
|
355
|
+
* @internal
|
356
|
+
*/
|
357
|
+
type _AnimationConfigComputed = InexactPartial<{
|
281
358
|
/**
|
282
359
|
* The animation time
|
360
|
+
* @remarks Always computed, never specified in `CONFIG`
|
283
361
|
*/
|
284
|
-
time
|
285
|
-
}
|
362
|
+
time: number;
|
363
|
+
}>;
|
364
|
+
|
365
|
+
interface LightAnimationConfig extends _AnimationConfigBase, _Seed, _AnimationConfigLightingShaders {}
|
366
|
+
|
367
|
+
interface StoredLightAnimationConfig extends IntentionalPartial<LightAnimationConfig>, _AnimationConfigComputed {}
|
286
368
|
|
287
|
-
interface
|
369
|
+
interface DarknessAnimationConfig extends _AnimationConfigBase, _Seed, _AnimationConfigDarknessShaders {}
|
370
|
+
|
371
|
+
interface StoredDarknessAnimationConfig
|
372
|
+
extends IntentionalPartial<DarknessAnimationConfig>,
|
373
|
+
_AnimationConfigComputed {}
|
374
|
+
|
375
|
+
type AnimationConfig = LightAnimationConfig | DarknessAnimationConfig;
|
376
|
+
|
377
|
+
type StoredAnimationConfig = StoredLightAnimationConfig | StoredDarknessAnimationConfig;
|
378
|
+
/**
|
379
|
+
* @remarks The properties `mesh` and `shader` from `LayerConfig` are not documented as being part of the typedef. They are given values
|
380
|
+
* during initialization *if* the Source has a valid `Placeable` as its `object`. `vmUniforms` is only provided a value for `PointVisionSource` layers.
|
381
|
+
*/
|
382
|
+
interface SourceLayer extends LayerConfig {
|
288
383
|
/**
|
289
384
|
* Is this layer actively rendered?
|
290
385
|
*/
|
291
386
|
active: boolean;
|
387
|
+
|
292
388
|
/**
|
293
389
|
* Do uniforms need to be reset?
|
294
390
|
*/
|
295
391
|
reset: boolean;
|
392
|
+
|
296
393
|
/**
|
297
394
|
* Is this layer temporarily suppressed?
|
298
395
|
*/
|
299
396
|
suppressed: boolean;
|
397
|
+
|
300
398
|
/**
|
301
399
|
* The rendered mesh for this layer
|
302
400
|
*/
|
303
|
-
mesh: PointSourceMesh;
|
401
|
+
mesh: PointSourceMesh | undefined;
|
402
|
+
|
304
403
|
/**
|
305
404
|
* The shader instance used for the layer
|
306
405
|
*/
|
307
|
-
shader: AdaptiveLightingShader;
|
406
|
+
shader: AdaptiveLightingShader | undefined;
|
407
|
+
|
408
|
+
/** @remarks Foundry does not include this in the typedef but is in the initialization of `RenderedEffectSource#layers` */
|
409
|
+
vmUniforms: AbstractBaseShader.Uniforms | undefined;
|
308
410
|
}
|
309
411
|
|
310
|
-
interface
|
412
|
+
interface LayerConfig {
|
311
413
|
/**
|
312
414
|
* The default shader used by this layer
|
313
415
|
*/
|
314
|
-
defaultShader: AdaptiveLightingShader;
|
416
|
+
defaultShader: AdaptiveLightingShader.AnyConstructor;
|
417
|
+
|
315
418
|
/**
|
316
419
|
* The blend mode used by this layer
|
317
420
|
*/
|
318
|
-
blendMode: PIXI.BLEND_MODES;
|
421
|
+
blendMode: keyof typeof PIXI.BLEND_MODES;
|
319
422
|
}
|
320
423
|
|
321
|
-
// Interface
|
424
|
+
// Interface would require `RenderingLayers extends ... = InterfaceToObject<Layers>` in every subclass signature
|
322
425
|
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
|
323
426
|
type Layers = {
|
324
|
-
background: RenderedEffectSource.
|
325
|
-
coloration: RenderedEffectSource.
|
326
|
-
illumination: RenderedEffectSource.
|
427
|
+
background: RenderedEffectSource.SourceLayer;
|
428
|
+
coloration: RenderedEffectSource.SourceLayer;
|
429
|
+
illumination: RenderedEffectSource.SourceLayer;
|
327
430
|
};
|
328
431
|
}
|
329
432
|
|
433
|
+
declare abstract class AnyRenderedEffectSource extends RenderedEffectSource<
|
434
|
+
RenderedEffectSource.SourceData,
|
435
|
+
PIXI.Polygon,
|
436
|
+
RenderedEffectSource.Layers
|
437
|
+
> {
|
438
|
+
constructor(...args: never);
|
439
|
+
}
|
440
|
+
|
330
441
|
export default RenderedEffectSource;
|
@@ -1,8 +1,7 @@
|
|
1
1
|
// In Foundry itself this file contains re-exports of these other modules.
|
2
2
|
// Therefore it has a runtime effect and uses `.mjs` instead of `.d.mts`.
|
3
|
-
// While `.mts` could work, to avoid `import/no-unresolved` from erroring `.mjs` is used.
|
4
|
-
/* eslint-disable import/extensions */
|
5
|
-
/* eslint-disable import/no-unresolved */ // TODO: Remove when the files are instantiated
|
3
|
+
// While `.mts` could work, to avoid `import-x/no-unresolved` from erroring `.mjs` is used.
|
4
|
+
/* eslint-disable import-x/extensions */
|
6
5
|
|
7
6
|
export { default as TokenRing } from "./ring.mjs";
|
8
7
|
export { default as TokenRingConfig } from "./ring-config.mjs";
|
@@ -1,3 +1,6 @@
|
|
1
|
+
import type { InitializedOn } from "../../../../utils/index.d.mts";
|
2
|
+
import type DynamicRingData from "./ring-data.d.mts";
|
3
|
+
|
1
4
|
/**
|
2
5
|
* Token Ring configuration Singleton Class.
|
3
6
|
*
|
@@ -72,8 +75,178 @@
|
|
72
75
|
* CONFIG.Token.ring.debugColorBands = true;
|
73
76
|
* ```
|
74
77
|
*/
|
75
|
-
declare class TokenRingConfig {
|
78
|
+
declare class TokenRingConfig {
|
79
|
+
constructor();
|
80
|
+
|
81
|
+
/**
|
82
|
+
* Core token rings used in Foundry VTT.
|
83
|
+
* Each key is a string identifier for a ring, and the value is an object containing the ring's data.
|
84
|
+
* This object is frozen to prevent any modifications.
|
85
|
+
* @remarks The outer object is frozen, but the individual rings' data isn't, and that object gets passed into a {@link DynamicRingData | `DynamicRingData`} constructor, leading to, for example,
|
86
|
+
* ```js
|
87
|
+
* CONFIG.Token.ring.getConfig("coreSteel")._source === TokenRingConfig.CORE_TOKEN_RINGS.coreSteel
|
88
|
+
* ```
|
89
|
+
* after {@link TokenRingConfig.initialize | `initialize`} has been called, which happens between the `setup` and `ready` hooks
|
90
|
+
*/
|
91
|
+
static CORE_TOKEN_RINGS: TokenRingConfig.CoreTokenRings;
|
92
|
+
|
93
|
+
/**
|
94
|
+
* Core token rings fit modes used in Foundry VTT.
|
95
|
+
*/
|
96
|
+
static CORE_TOKEN_RINGS_FIT_MODES: TokenRingConfig.CoreTokenRingsFitModes;
|
97
|
+
|
98
|
+
/**
|
99
|
+
* Register the token ring config and initialize it
|
100
|
+
* @remarks Calls the {@link Hooks.StaticCallbacks.initializeDynamicTokenRingConfig | `initializeDynamicTokenRingConfig`} hook via {@link Hooks.callAll | `Hooks.callAll`}
|
101
|
+
*/
|
102
|
+
static initialize(): void;
|
103
|
+
|
104
|
+
/** Register game settings used by the Token Ring */
|
105
|
+
static registerSettings(): void;
|
106
|
+
|
107
|
+
/**
|
108
|
+
* A mapping of token subject paths where modules or systems have configured subject images.
|
109
|
+
* @defaultValue `{}`
|
110
|
+
* @remarks Not directly used anywhere in this class, essentially just a global cache. The system's `flags.tokenRingSubjectMappings`, if any, get assigned here in {@link Game.initializeConfig | `Game#initializeConfig`},
|
111
|
+
* and they're read in {@link TokenDocument._inferRingSubjectTexture | `TokenDocument#_inferRingSubjectTexture`}
|
112
|
+
*/
|
113
|
+
subjectPaths: Record<string, string>;
|
114
|
+
|
115
|
+
/**
|
116
|
+
* All color bands visual debug flag.
|
117
|
+
* @defaultValue `false`
|
118
|
+
*/
|
119
|
+
debugColorBands: boolean;
|
120
|
+
|
121
|
+
/**
|
122
|
+
* Get the current ring class.
|
123
|
+
* @remarks Since `##currentConfig` is a reference to a `##configs` entry, not a copy, setting this will persist in that config
|
124
|
+
*/
|
125
|
+
get ringClass(): DynamicRingData["framework"]["ringClass"];
|
126
|
+
set ringClass(value);
|
127
|
+
|
128
|
+
/** Get the current effects. */
|
129
|
+
get effects(): DynamicRingData["effects"];
|
130
|
+
|
131
|
+
/** Get the current spritesheet. */
|
132
|
+
get spritesheet(): DynamicRingData["spritesheet"];
|
133
|
+
|
134
|
+
/**
|
135
|
+
* Get the current shader class.
|
136
|
+
* @remarks Since `##currentConfig` is a reference to a `##configs` entry, not a copy, setting this will persist in that config
|
137
|
+
*/
|
138
|
+
get shaderClass(): DynamicRingData["framework"]["shaderClass"];
|
139
|
+
set shaderClass(value);
|
140
|
+
|
141
|
+
/** Get the current localized label */
|
142
|
+
get label(): DynamicRingData["label"];
|
143
|
+
|
144
|
+
/** Get the current id. */
|
145
|
+
get id(): DynamicRingData["id"];
|
146
|
+
|
147
|
+
/**
|
148
|
+
* Is a custom fit mode active?
|
149
|
+
* @remarks Anything other than `subject` is "custom", but the only other fit mode is `grid`
|
150
|
+
*/
|
151
|
+
get isGridFitMode(): boolean;
|
152
|
+
|
153
|
+
/**
|
154
|
+
* Add a new ring configuration.
|
155
|
+
* @param id - The id of the ring configuration.
|
156
|
+
* @param config - The configuration object for the ring.
|
157
|
+
* @throws If called outside a callback for the {@link Hooks.StaticCallbacks.initializeDynamicTokenRingConfig | `initializeDynamicTokenRingConfig`} hook
|
158
|
+
* @remarks The actual error thrown incorrectly refers to a non-existent `registerDynamicTokenRing` hook
|
159
|
+
*/
|
160
|
+
addConfig(id: string, config: DynamicRingData): void;
|
161
|
+
|
162
|
+
/**
|
163
|
+
* Get a ring configuration.
|
164
|
+
* @param id - The id of the ring configuration.
|
165
|
+
* @returns - The ring configuration object.
|
166
|
+
*/
|
167
|
+
getConfig(id: string): DynamicRingData;
|
168
|
+
|
169
|
+
/**
|
170
|
+
* Use a ring configuration.
|
171
|
+
* @param id - The id of the ring configuration to use.
|
172
|
+
* @returns - True if the configuration was successfully set, false otherwise.
|
173
|
+
*/
|
174
|
+
useConfig(id: string): boolean;
|
175
|
+
|
176
|
+
/** Get the IDs of all configurations. */
|
177
|
+
get configIDs(): string[];
|
178
|
+
|
179
|
+
/** Get the labels of all configurations. */
|
180
|
+
get configLabels(): Record<string, string>;
|
181
|
+
|
182
|
+
/**
|
183
|
+
* @deprecated since v12, until v14
|
184
|
+
* @remarks "TokenRingConfig#configNames is deprecated and replaced by TokenRingConfig#configIDs"
|
185
|
+
*
|
186
|
+
* Foundry comment claims deprecated since v11 - possibly a dnd5e-implementation-related deprecation?
|
187
|
+
*/
|
188
|
+
get configNames(): string[];
|
189
|
+
}
|
190
|
+
|
191
|
+
declare namespace TokenRingConfig {
|
192
|
+
interface Any extends AnyTokenRingConfig {}
|
193
|
+
type AnyConstructor = typeof AnyTokenRingConfig;
|
194
|
+
|
195
|
+
/** Token ring fit modes for dynamic token ring visualization */
|
196
|
+
interface RingFitMode {
|
197
|
+
/** The fit mode identifier. */
|
198
|
+
id: string;
|
199
|
+
|
200
|
+
/** The fit mode label. */
|
201
|
+
label: string;
|
202
|
+
}
|
203
|
+
|
204
|
+
/**
|
205
|
+
* Core token rings fit modes used in Foundry VTT.
|
206
|
+
* @remarks Only the two provided core fit modes are checked against, by hardcoded IDs
|
207
|
+
*/
|
208
|
+
interface CoreTokenRingsFitModes {
|
209
|
+
readonly subject: RingFitMode;
|
210
|
+
readonly grid: RingFitMode;
|
211
|
+
}
|
212
|
+
|
213
|
+
type CoreRingIDs = "coreSteel" | "coreBronze";
|
214
|
+
|
215
|
+
/**
|
216
|
+
* @remarks The type of any given {@link TokenRingConfig.CORE_TOKEN_RINGS | `TokenRingConfig.CORE_TOKEN_RINGS`} entry prior to
|
217
|
+
* {@link TokenRingConfig.initialize | `TokenRingConfig#initialize`} being called between the `setup` and `ready` hooks; Plain objects at this point
|
218
|
+
*/
|
219
|
+
interface InitialCoreRingData extends Required<Pick<SourceCoreRingData, "id" | "label" | "spritesheet">> {}
|
220
|
+
|
221
|
+
interface InitialCoreRings extends Record<CoreRingIDs, InitialCoreRingData> {}
|
222
|
+
|
223
|
+
/**
|
224
|
+
* @remarks Due to the way the core configs are initialized, {@link TokenRingConfig.CORE_TOKEN_RINGS | `TokenRingConfig.CORE_TOKEN_RINGS`}
|
225
|
+
* ends up becoming the `_source` of the constructed DataModels in {@link CONFIG.Token.ring | `CONFIG.Token.ring`}, that is:
|
226
|
+
* ```js
|
227
|
+
* CONFIG.Token.ring.getConfig("coreSteel")._source === TokenRingConfig.CORE_TOKEN_RINGS.coreSteel
|
228
|
+
* ```
|
229
|
+
* after {@link TokenRingConfig.initialize | `TokenRingConfig#initialize`} has been called, which happens between the `setup` and `ready` hooks
|
230
|
+
*/
|
231
|
+
interface SourceCoreRingData extends foundry.data.fields.SchemaField.SourceData<DynamicRingData.Schema> {}
|
232
|
+
|
233
|
+
interface SourceCoreRings extends Record<CoreRingIDs, SourceCoreRingData> {}
|
234
|
+
|
235
|
+
/**
|
236
|
+
* Core token rings used in Foundry VTT.
|
237
|
+
* Each key is a string identifier for a ring, and the value is an object containing the ring's data.
|
238
|
+
* This object is frozen to prevent any modifications.
|
239
|
+
* @remarks The outer object is frozen, but the individual rings' data isn't, and that object gets passed into a {@link DynamicRingData | `DynamicRingData`} constructor, leading to, for example,
|
240
|
+
* ```js
|
241
|
+
* CONFIG.Token.ring.getConfig("coreSteel")._source === TokenRingConfig.CORE_TOKEN_RINGS.coreSteel
|
242
|
+
* ```
|
243
|
+
* after {@link TokenRingConfig.initialize | `TokenRingConfig#initialize`} has been called, which happens between the `setup` and `ready` hooks
|
244
|
+
*/
|
245
|
+
type CoreTokenRings = InitializedOn<SourceCoreRings, "ready", InitialCoreRings>;
|
246
|
+
}
|
76
247
|
|
77
|
-
declare
|
248
|
+
declare abstract class AnyTokenRingConfig extends TokenRingConfig {
|
249
|
+
constructor(...args: never);
|
250
|
+
}
|
78
251
|
|
79
252
|
export default TokenRingConfig;
|