From 36ccee25a5e4b62dd1ac15c44f88aed03cc62b72 Mon Sep 17 00:00:00 2001 From: Jonas Karlsson Date: Mon, 13 Jan 2025 21:50:30 +0100 Subject: [PATCH] chore: Start using https://github.com/7H3LaughingMan/foundry-pf2e/tree/main instead of building pf2e types myself. Changes: * Removed the old type files. * Removed a few places where I'd explicitly set TokenPF2e (it complained that actor didn't exist) * Changed a bunch of imports * Added some ts-ignores (with TODO:s to look into later) * Changed vite and ts config * Updated dependencies --- .eslintrc.json | 2 +- build/build-packs.ts | 4 +- package-lock.json | 2236 ++- package.json | 27 +- src/module/feature/conditionHandler/index.ts | 3 +- src/module/feature/cr-scaler/NPCScaler.ts | 3 +- .../feature/cr-scaler/NPCScalerSetup.ts | 2 +- src/module/feature/cr-scaler/Utilities.ts | 2 +- .../feature/damageHandler/dyingHandling.ts | 6 +- src/module/feature/damageHandler/index.ts | 8 +- src/module/feature/initiativeHandler/index.ts | 2 +- .../feature/macros/basicActionMacros.ts | 17 +- .../feature/macros/follow-the-expert.ts | 25 +- src/module/feature/npc-roller/NpcRoller.ts | 5 +- .../qolHandler/handlePrivateSpellcasting.ts | 5 +- src/module/feature/qolHandler/index.ts | 3 +- .../feature/reminders/checkAttackValidity.ts | 7 +- src/module/feature/reminders/index.ts | 10 +- .../feature/reminders/reminderBreathWeapon.ts | 3 +- .../tokenMystificationHandler/index.ts | 16 +- .../traits-name-generator.ts | 6 +- src/module/hooks.ts | 26 +- src/module/keybinds.ts | 7 +- src/module/settings/index.ts | 1 + src/module/settings/menu.ts | 6 +- src/module/utils.ts | 21 +- src/module/xdy-pf2e-workbench.ts | 2 +- static/module.json | 9 +- tsconfig.json | 50 +- types/README.md | 12 - types/build/build-packs.d.ts | 1 - types/build/clean.d.ts | 1 - types/build/conditions.d.ts | 1 - types/build/extract-packs.d.ts | 1 - types/build/lib/compendium-pack.d.ts | 56 - types/build/lib/extractor.d.ts | 28 - types/build/lib/foundry-utils.d.ts | 14 - types/build/lib/helpers.d.ts | 3 - types/build/lib/level-database.d.ts | 44 - types/build/lib/types.d.ts | 6 - types/build/link-foundry.d.ts | 1 - types/build/run-migration.d.ts | 1 - types/src/global.d.ts | 297 - types/src/module/active-effect.d.ts | 7 - types/src/module/actor/actions/base.d.ts | 65 - types/src/module/actor/actions/index.d.ts | 4 - types/src/module/actor/actions/simple.d.ts | 32 - .../module/actor/actions/single-check.d.ts | 74 - types/src/module/actor/actions/types.d.ts | 51 - types/src/module/actor/army/data.d.ts | 110 - types/src/module/actor/army/document.d.ts | 46 - types/src/module/actor/army/sheet.d.ts | 55 - types/src/module/actor/army/types.d.ts | 21 - types/src/module/actor/army/values.d.ts | 31 - types/src/module/actor/base.d.ts | 331 - .../actor/character/apps/attack-popout.d.ts | 39 - .../character/apps/attribute-builder.d.ts | 77 - .../automatic-bonus-progression.d.ts | 27 - types/src/module/actor/character/config.d.ts | 9 - .../actor/character/crafting/ability.d.ts | 83 - .../actor/character/crafting/crafting.d.ts | 22 - .../actor/character/crafting/helpers.d.ts | 6 - .../actor/character/crafting/index.d.ts | 4 - .../actor/character/crafting/types.d.ts | 43 - types/src/module/actor/character/data.d.ts | 482 - .../src/module/actor/character/document.d.ts | 114 - .../actor/character/elemental-blast.d.ts | 103 - .../actor/character/feats/collection.d.ts | 21 - .../module/actor/character/feats/group.d.ts | 50 - .../module/actor/character/feats/index.d.ts | 3 - .../module/actor/character/feats/types.d.ts | 74 - types/src/module/actor/character/helpers.d.ts | 79 - types/src/module/actor/character/index.d.ts | 1 - types/src/module/actor/character/sheet.d.ts | 201 - .../module/actor/character/tab-manager.d.ts | 9 - types/src/module/actor/character/types.d.ts | 24 - types/src/module/actor/character/values.d.ts | 3 - types/src/module/actor/conditions.d.ts | 59 - types/src/module/actor/creature/config.d.ts | 16 - types/src/module/actor/creature/data.d.ts | 194 - types/src/module/actor/creature/document.d.ts | 126 - types/src/module/actor/creature/helpers.d.ts | 17 - types/src/module/actor/creature/index.d.ts | 4 - types/src/module/actor/creature/sense.d.ts | 37 - types/src/module/actor/creature/sheet.d.ts | 56 - .../creature/spell-preparation-sheet.d.ts | 45 - types/src/module/actor/creature/types.d.ts | 29 - types/src/module/actor/creature/values.d.ts | 33 - types/src/module/actor/data/base.d.ts | 273 - types/src/module/actor/data/index.d.ts | 15 - types/src/module/actor/data/iwr.d.ts | 322 - types/src/module/actor/data/model.d.ts | 13 - types/src/module/actor/data/size.d.ts | 79 - types/src/module/actor/familiar/data.d.ts | 78 - types/src/module/actor/familiar/document.d.ts | 45 - types/src/module/actor/familiar/index.d.ts | 1 - types/src/module/actor/familiar/sheet.d.ts | 29 - types/src/module/actor/hazard/data.d.ts | 97 - types/src/module/actor/hazard/document.d.ts | 37 - types/src/module/actor/hazard/index.d.ts | 4 - types/src/module/actor/hazard/sheet.d.ts | 17 - types/src/module/actor/hazard/types.d.ts | 36 - types/src/module/actor/helpers.d.ts | 70 - types/src/module/actor/index.d.ts | 11 - types/src/module/actor/initiative.d.ts | 33 - types/src/module/actor/inventory/bulk.d.ts | 23 - types/src/module/actor/inventory/index.d.ts | 36 - types/src/module/actor/item-transfer.d.ts | 27 - types/src/module/actor/loot/data.d.ts | 43 - types/src/module/actor/loot/document.d.ts | 43 - types/src/module/actor/loot/index.d.ts | 1 - types/src/module/actor/loot/sheet.d.ts | 23 - types/src/module/actor/modifiers.d.ts | 310 - types/src/module/actor/npc/config.d.ts | 12 - types/src/module/actor/npc/data.d.ts | 242 - types/src/module/actor/npc/document.d.ts | 54 - types/src/module/actor/npc/index.d.ts | 3 - types/src/module/actor/npc/sheet.d.ts | 42 - types/src/module/actor/npc/skills-editor.d.ts | 26 - types/src/module/actor/npc/types.d.ts | 132 - types/src/module/actor/party/data.d.ts | 49 - types/src/module/actor/party/document.d.ts | 54 - types/src/module/actor/party/helpers.d.ts | 3 - types/src/module/actor/party/index.d.ts | 2 - .../module/actor/party/kingdom/builder.d.ts | 76 - .../src/module/actor/party/kingdom/chat.d.ts | 9 - .../module/actor/party/kingdom/helpers.d.ts | 15 - .../src/module/actor/party/kingdom/index.d.ts | 2 - .../src/module/actor/party/kingdom/model.d.ts | 65 - .../module/actor/party/kingdom/schema.d.ts | 171 - .../src/module/actor/party/kingdom/sheet.d.ts | 113 - .../src/module/actor/party/kingdom/types.d.ts | 17 - .../module/actor/party/kingdom/values.d.ts | 105 - types/src/module/actor/party/sheet.d.ts | 113 - types/src/module/actor/party/types.d.ts | 37 - types/src/module/actor/roll-context/base.d.ts | 31 - .../src/module/actor/roll-context/check.d.ts | 13 - .../src/module/actor/roll-context/damage.d.ts | 11 - .../src/module/actor/roll-context/types.d.ts | 95 - types/src/module/actor/sheet/base.d.ts | 95 - types/src/module/actor/sheet/data-types.d.ts | 89 - types/src/module/actor/sheet/helpers.d.ts | 13 - .../actor/sheet/item-summary-renderer.d.ts | 37 - .../actor/sheet/popups/add-coins-popup.d.ts | 13 - .../popups/casting-item-create-dialog.d.ts | 26 - .../sheet/popups/distribute-coins-popup.d.ts | 29 - .../actor/sheet/popups/identify-popup.d.ts | 19 - .../sheet/popups/item-transfer-dialog.d.ts | 42 - .../module/actor/sheet/popups/iwr-editor.d.ts | 46 - .../actor/sheet/popups/loot-npcs-popup.d.ts | 16 - .../popups/manage-attack-proficiencies.d.ts | 8 - .../sheet/popups/recall-knowledge-popup.d.ts | 16 - .../sheet/popups/remove-coins-popup.d.ts | 13 - .../actor/sheet/spellcasting-dialog.d.ts | 30 - .../actor/sheet/trick-magic-item-popup.d.ts | 13 - types/src/module/actor/spellcasting.d.ts | 42 - types/src/module/actor/types.d.ts | 126 - types/src/module/actor/values.d.ts | 14 - types/src/module/actor/vehicle/data.d.ts | 77 - types/src/module/actor/vehicle/document.d.ts | 30 - types/src/module/actor/vehicle/index.d.ts | 1 - types/src/module/actor/vehicle/sheet.d.ts | 32 - types/src/module/actor/vehicle/types.d.ts | 2 - .../module/apps/compendium-browser/data.d.ts | 29 - .../module/apps/compendium-browser/index.d.ts | 1 - .../apps/compendium-browser/loader.d.ts | 16 - .../apps/compendium-browser/tabs/action.d.ts | 16 - .../compendium-browser/tabs/base.svelte.d.ts | 83 - .../compendium-browser/tabs/bestiary.d.ts | 18 - .../tabs/campaign-feature.d.ts | 16 - .../apps/compendium-browser/tabs/data.d.ts | 148 - .../compendium-browser/tabs/equipment.d.ts | 18 - .../apps/compendium-browser/tabs/feat.d.ts | 18 - .../apps/compendium-browser/tabs/hazard.d.ts | 18 - .../apps/compendium-browser/tabs/index.d.ts | 7 - .../apps/compendium-browser/tabs/spell.d.ts | 16 - .../apps/compendium-migration-status.d.ts | 15 - types/src/module/apps/effects-panel.d.ts | 35 - types/src/module/apps/hotbar.d.ts | 7 - types/src/module/apps/item-attacher.d.ts | 20 - types/src/module/apps/license-viewer/app.d.ts | 3 - types/src/module/apps/migration-summary.d.ts | 31 - .../src/module/apps/pick-a-thing-prompt.d.ts | 56 - .../module/apps/scene-darkness-adjuster.d.ts | 20 - .../module/apps/sidebar/actor-directory.d.ts | 28 - types/src/module/apps/sidebar/chat-log.d.ts | 19 - .../apps/sidebar/compendium-directory.d.ts | 34 - .../apps/sidebar/encounter-tracker.d.ts | 21 - types/src/module/apps/sidebar/index.d.ts | 5 - .../module/apps/sidebar/item-directory.d.ts | 13 - .../apps/world-clock/animate-darkness.d.ts | 3 - types/src/module/apps/world-clock/app.d.ts | 49 - types/src/module/apps/world-clock/index.d.ts | 1 - .../module/apps/world-clock/time-of-day.d.ts | 26 - types/src/module/canvas/ambient-light.d.ts | 8 - types/src/module/canvas/drop-canvas-data.d.ts | 17 - .../src/module/canvas/effect-area-square.d.ts | 9 - types/src/module/canvas/group/effects.d.ts | 5 - .../src/module/canvas/group/environment.d.ts | 5 - types/src/module/canvas/helpers.d.ts | 21 - types/src/module/canvas/index.d.ts | 13 - types/src/module/canvas/layer/lighting.d.ts | 4 - types/src/module/canvas/layer/template.d.ts | 9 - types/src/module/canvas/layer/token.d.ts | 8 - types/src/module/canvas/layer/visibility.d.ts | 1 - .../src/module/canvas/measured-template.d.ts | 28 - types/src/module/canvas/perception/modes.d.ts | 2 - .../perception/point-vision-source.d.ts | 8 - types/src/module/canvas/region.d.ts | 23 - types/src/module/canvas/ruler.d.ts | 53 - types/src/module/canvas/status-effects.d.ts | 26 - types/src/module/canvas/token/aura/index.d.ts | 2 - types/src/module/canvas/token/aura/map.d.ts | 25 - .../module/canvas/token/aura/renderer.d.ts | 43 - types/src/module/canvas/token/aura/util.d.ts | 11 - .../token/flanking-highlight/renderer.d.ts | 41 - types/src/module/canvas/token/index.d.ts | 1 - types/src/module/canvas/token/object.d.ts | 147 - .../chat-message/crit-fumble-cards.d.ts | 13 - types/src/module/chat-message/data.d.ts | 126 - types/src/module/chat-message/document.d.ts | 55 - types/src/module/chat-message/helpers.d.ts | 22 - types/src/module/chat-message/index.d.ts | 2 - .../module/chat-message/listeners/cards.d.ts | 6 - .../chat-message/listeners/damage-taken.d.ts | 4 - .../listeners/degree-of-success.d.ts | 5 - .../module/chat-message/listeners/index.d.ts | 4 - .../listeners/set-as-initiative.d.ts | 5 - .../module/chat-message/roll-inspector.d.ts | 37 - types/src/module/collection/actors.d.ts | 7 - types/src/module/data.d.ts | 85 - types/src/module/dc.d.ts | 38 - types/src/module/doc-helpers.d.ts | 9 - types/src/module/encounter/combatant.d.ts | 68 - types/src/module/encounter/document.d.ts | 72 - types/src/module/encounter/index.d.ts | 2 - types/src/module/item/abc/data.d.ts | 13 - types/src/module/item/abc/document.d.ts | 22 - types/src/module/item/abc/index.d.ts | 3 - types/src/module/item/abc/sheet.d.ts | 30 - types/src/module/item/ability/data.d.ts | 93 - types/src/module/item/ability/document.d.ts | 33 - types/src/module/item/ability/helpers.d.ts | 39 - types/src/module/item/ability/index.d.ts | 4 - types/src/module/item/ability/sheet.d.ts | 24 - .../module/item/ability/trait-toggles.d.ts | 26 - types/src/module/item/ability/types.d.ts | 3 - .../src/module/item/abstract-effect/data.d.ts | 101 - .../module/item/abstract-effect/document.d.ts | 47 - .../module/item/abstract-effect/helpers.d.ts | 8 - .../module/item/abstract-effect/index.d.ts | 2 - .../module/item/abstract-effect/types.d.ts | 2 - .../module/item/abstract-effect/values.d.ts | 3 - types/src/module/item/affliction/data.d.ts | 62 - .../src/module/item/affliction/document.d.ts | 47 - types/src/module/item/affliction/index.d.ts | 3 - types/src/module/item/affliction/sheet.d.ts | 38 - types/src/module/item/ancestry/data.d.ts | 40 - types/src/module/item/ancestry/document.d.ts | 30 - types/src/module/item/ancestry/index.d.ts | 3 - types/src/module/item/ancestry/sheet.d.ts | 17 - types/src/module/item/armor/data.d.ts | 56 - types/src/module/item/armor/document.d.ts | 38 - types/src/module/item/armor/index.d.ts | 4 - types/src/module/item/armor/sheet.d.ts | 26 - types/src/module/item/armor/types.d.ts | 10 - types/src/module/item/armor/values.d.ts | 4 - types/src/module/item/background/data.d.ts | 21 - .../src/module/item/background/document.d.ts | 15 - types/src/module/item/background/index.d.ts | 2 - types/src/module/item/background/sheet.d.ts | 17 - types/src/module/item/background/types.d.ts | 2 - types/src/module/item/base/data/index.d.ts | 54 - types/src/module/item/base/data/model.d.ts | 40 - types/src/module/item/base/data/system.d.ts | 114 - types/src/module/item/base/data/values.d.ts | 9 - types/src/module/item/base/document.d.ts | 147 - .../module/item/base/sheet/codemirror.d.ts | 17 - types/src/module/item/base/sheet/index.d.ts | 2 - .../sheet/rule-element-form/actor-traits.d.ts | 6 - .../base/sheet/rule-element-form/aura.d.ts | 28 - .../base/sheet/rule-element-form/base.d.ts | 63 - .../sheet/rule-element-form/fast-healing.d.ts | 12 - .../rule-element-form/flat-modifier.d.ts | 22 - .../sheet/rule-element-form/grant-item.d.ts | 12 - .../base/sheet/rule-element-form/index.d.ts | 3 - .../multiple-attack-penalty.d.ts | 7 - .../sheet/rule-element-form/roll-note.d.ts | 13 - .../sheet/rule-element-form/token-image.d.ts | 16 - .../sheet/rule-element-form/token-light.d.ts | 13 - types/src/module/item/base/sheet/sheet.d.ts | 79 - types/src/module/item/base/types.d.ts | 8 - types/src/module/item/book/data.d.ts | 15 - types/src/module/item/book/document.d.ts | 12 - types/src/module/item/book/index.d.ts | 3 - types/src/module/item/book/sheet.d.ts | 4 - .../module/item/campaign-feature/data.d.ts | 33 - .../item/campaign-feature/document.d.ts | 42 - .../module/item/campaign-feature/index.d.ts | 4 - .../module/item/campaign-feature/sheet.d.ts | 21 - .../module/item/campaign-feature/types.d.ts | 5 - .../module/item/campaign-feature/values.d.ts | 27 - types/src/module/item/class/data.d.ts | 58 - types/src/module/item/class/document.d.ts | 31 - types/src/module/item/class/index.d.ts | 2 - types/src/module/item/class/sheet.d.ts | 18 - types/src/module/item/class/types.d.ts | 3 - types/src/module/item/class/values.d.ts | 5 - types/src/module/item/condition/data.d.ts | 59 - types/src/module/item/condition/document.d.ts | 65 - types/src/module/item/condition/index.d.ts | 4 - .../condition/persistent-damage-dialog.d.ts | 39 - types/src/module/item/condition/sheet.d.ts | 8 - types/src/module/item/condition/types.d.ts | 5 - types/src/module/item/condition/values.d.ts | 2 - types/src/module/item/consumable/data.d.ts | 39 - .../src/module/item/consumable/document.d.ts | 35 - types/src/module/item/consumable/index.d.ts | 3 - types/src/module/item/consumable/sheet.d.ts | 25 - .../item/consumable/spell-consumables.d.ts | 20 - types/src/module/item/consumable/types.d.ts | 7 - types/src/module/item/consumable/values.d.ts | 5 - types/src/module/item/container/data.d.ts | 28 - types/src/module/item/container/document.d.ts | 37 - types/src/module/item/container/helpers.d.ts | 11 - types/src/module/item/container/index.d.ts | 3 - types/src/module/item/container/sheet.d.ts | 4 - types/src/module/item/deity/data.d.ts | 30 - types/src/module/item/deity/document.d.ts | 22 - types/src/module/item/deity/index.d.ts | 3 - types/src/module/item/deity/sheet.d.ts | 29 - types/src/module/item/deity/types.d.ts | 4 - types/src/module/item/deity/values.d.ts | 3 - types/src/module/item/effect/data.d.ts | 44 - types/src/module/item/effect/document.d.ts | 40 - types/src/module/item/effect/helpers.d.ts | 4 - types/src/module/item/effect/index.d.ts | 3 - types/src/module/item/effect/sheet.d.ts | 19 - types/src/module/item/equipment/data.d.ts | 19 - types/src/module/item/equipment/document.d.ts | 17 - types/src/module/item/equipment/index.d.ts | 3 - types/src/module/item/equipment/sheet.d.ts | 11 - types/src/module/item/equipment/types.d.ts | 2 - types/src/module/item/feat/data.d.ts | 112 - types/src/module/item/feat/document.d.ts | 59 - types/src/module/item/feat/helpers.d.ts | 11 - types/src/module/item/feat/index.d.ts | 4 - types/src/module/item/feat/sheet.d.ts | 86 - types/src/module/item/feat/types.d.ts | 4 - types/src/module/item/feat/values.d.ts | 4 - types/src/module/item/helpers.d.ts | 30 - types/src/module/item/heritage/data.d.ts | 15 - types/src/module/item/heritage/document.d.ts | 21 - types/src/module/item/heritage/index.d.ts | 2 - types/src/module/item/heritage/sheet.d.ts | 16 - types/src/module/item/identification.d.ts | 16 - types/src/module/item/index.d.ts | 29 - types/src/module/item/kit/data.d.ts | 43 - types/src/module/item/kit/document.d.ts | 24 - types/src/module/item/kit/index.d.ts | 2 - types/src/module/item/kit/sheet.d.ts | 23 - types/src/module/item/lore.d.ts | 33 - types/src/module/item/melee/data.d.ts | 59 - types/src/module/item/melee/document.d.ts | 52 - types/src/module/item/melee/index.d.ts | 3 - types/src/module/item/melee/sheet.d.ts | 18 - types/src/module/item/melee/types.d.ts | 2 - types/src/module/item/physical/bulk.d.ts | 61 - types/src/module/item/physical/coins.d.ts | 32 - types/src/module/item/physical/data.d.ts | 148 - types/src/module/item/physical/document.d.ts | 151 - types/src/module/item/physical/helpers.d.ts | 33 - types/src/module/item/physical/index.d.ts | 9 - types/src/module/item/physical/materials.d.ts | 26 - types/src/module/item/physical/runes.d.ts | 249 - types/src/module/item/physical/schema.d.ts | 21 - types/src/module/item/physical/sheet.d.ts | 59 - types/src/module/item/physical/types.d.ts | 18 - types/src/module/item/physical/usage.d.ts | 31 - types/src/module/item/physical/values.d.ts | 5 - types/src/module/item/shield/data.d.ts | 58 - types/src/module/item/shield/document.d.ts | 41 - types/src/module/item/shield/helpers.d.ts | 4 - types/src/module/item/shield/sheet.d.ts | 28 - types/src/module/item/shield/types.d.ts | 3 - types/src/module/item/shield/values.d.ts | 2 - types/src/module/item/spell/data.d.ts | 129 - types/src/module/item/spell/document.d.ts | 144 - types/src/module/item/spell/helpers.d.ts | 11 - types/src/module/item/spell/index.d.ts | 5 - types/src/module/item/spell/overlay.d.ts | 17 - types/src/module/item/spell/sheet.d.ts | 65 - types/src/module/item/spell/types.d.ts | 5 - types/src/module/item/spell/values.d.ts | 3 - .../item/spellcasting-entry/collection.d.ts | 43 - .../module/item/spellcasting-entry/data.d.ts | 63 - .../item/spellcasting-entry/document.d.ts | 78 - .../item/spellcasting-entry/helpers.d.ts | 12 - .../module/item/spellcasting-entry/index.d.ts | 3 - .../spellcasting-entry/item-spellcasting.d.ts | 47 - .../item/spellcasting-entry/rituals.d.ts | 25 - .../module/item/spellcasting-entry/trick.d.ts | 43 - .../module/item/spellcasting-entry/types.d.ts | 102 - types/src/module/item/treasure/data.d.ts | 23 - types/src/module/item/treasure/document.d.ts | 17 - types/src/module/item/treasure/index.d.ts | 2 - types/src/module/item/treasure/sheet.d.ts | 12 - types/src/module/item/types.d.ts | 34 - types/src/module/item/values.d.ts | 3 - types/src/module/item/weapon/data.d.ts | 186 - types/src/module/item/weapon/document.d.ts | 121 - types/src/module/item/weapon/helpers.d.ts | 11 - types/src/module/item/weapon/index.d.ts | 4 - types/src/module/item/weapon/sheet.d.ts | 51 - .../src/module/item/weapon/trait-toggles.d.ts | 37 - types/src/module/item/weapon/types.d.ts | 21 - types/src/module/item/weapon/values.d.ts | 13 - types/src/module/journal-entry/sheet.d.ts | 5 - types/src/module/macro.d.ts | 4 - types/src/module/migration/base.d.ts | 80 - types/src/module/migration/index.d.ts | 9 - .../migrations/700-single-class-features.d.ts | 11 - .../migrations/701-modifier-name-to-slug.d.ts | 7 - .../702-re-formulas-at-instance-level.d.ts | 8 - .../703-spell-damage-structure.d.ts | 7 - .../704-martial-proficiency-re.d.ts | 7 - .../migrations/705-gunslinger-catch-up.d.ts | 8 - ...las-at-instance-level-everything-else.d.ts | 8 - ...-bracketed-formulas-at-instance-level.d.ts | 4 - .../migrations/708-specific-rule-label.d.ts | 6 - ...9-re-formulas-at-instance-level-redux.d.ts | 9 - .../migrations/710-rarity-to-string.d.ts | 9 - .../migrations/711-heritage-items.d.ts | 9 - .../712-actor-shield-structure.d.ts | 7 - .../migrations/713-fist-to-strike-re.d.ts | 7 - .../migrations/714-range-increment-res.d.ts | 17 - .../migrations/715-dangerous-sorcery.d.ts | 7 - .../716-strike-damage-selector.d.ts | 7 - .../migrations/717-take-feat-limits.d.ts | 9 - .../migration/migrations/718-carry-type.d.ts | 8 - .../migrations/719-shrug-flanking.d.ts | 9 - .../720-update-spell-descriptions.d.ts | 9 - .../migrations/721-set-reload-values.d.ts | 8 - .../migrations/722-crafting-system-data.d.ts | 7 - .../723-cumulative-item-bonuses.d.ts | 17 - .../724-crafting-max-item-level.d.ts | 8 - .../725-quick-climb-rule-elements.d.ts | 8 - .../migrations/726-journal-setting.d.ts | 6 - .../727-trim-self-roll-options.d.ts | 11 - .../728-flatten-physical-properties.d.ts | 10 - .../729-cumulative-item-bonus-cleanup.d.ts | 10 - .../migrations/730-derune-handwraps.d.ts | 7 - .../731-toggle-property-to-roll-option.d.ts | 12 - .../732-fix-dedication-feat-types.d.ts | 8 - .../733-item-bonus-from-equipment.d.ts | 8 - ...34-spell-location-props-and-signature.d.ts | 9 - .../735-firearm-ammo-alchemical.d.ts | 8 - .../736-remove-broken-threshold.d.ts | 8 - .../migrations/737-normalize-re-keys.d.ts | 7 - .../738-update-laughing-shadow.d.ts | 10 - .../migrations/739-recovery-check-dc.d.ts | 9 - .../migrations/740-fix-max-takable.d.ts | 7 - .../741-roll-option-toggle-to-item.d.ts | 7 - .../742-rm-class-ability-boost-levels.d.ts | 7 - .../743-fix-weakness-structure.d.ts | 7 - .../744-migrate-spell-heighten.d.ts | 6 - .../745-effect-target-to-choice-set.d.ts | 9 - .../migrations/746-standardize-pricing.d.ts | 6 - .../migrations/747-fixed-heightening.d.ts | 12 - .../748-batch-consumable-pricing.d.ts | 6 - .../migrations/749-assurance-res.d.ts | 7 - .../migrations/750-fix-corrupted-price.d.ts | 6 - .../migrations/751-reset-roll-options.d.ts | 7 - .../752-strike-vs-weapon-traits.d.ts | 8 - .../migrations/753-weapon-reload-times.d.ts | 8 - .../754-mighty-bulwark-adjust-modifiers.d.ts | 7 - .../migrations/755-grant-ids-to-data.d.ts | 7 - .../756-rm-stored-resource-maxes.d.ts | 13 - .../migrations/757-hillock-halfling.d.ts | 7 - .../migrations/758-prune-pc-attributes.d.ts | 12 - .../migrations/759-crit-spec-re.d.ts | 7 - .../migrations/760-separate-note-title.d.ts | 8 - .../migrations/761-update-shot-rules.d.ts | 8 - .../762-update-background-items.d.ts | 7 - .../763-restore-animal-strike-options.d.ts | 7 - .../migrations/764-panache-vivacious-res.d.ts | 8 - .../765-choice-owned-item-types.d.ts | 7 - .../migrations/766-wipe-url-sources.d.ts | 7 - .../767-convert-voluntary-flaws.d.ts | 6 - .../migrations/768-add-new-auras.d.ts | 8 - .../769-no-universalist-focus-pool.d.ts | 7 - .../migrations/770-re-data-to-system.d.ts | 9 - .../771-spell-variants-to-system.d.ts | 7 - .../772-v10-embedded-spell-data.d.ts | 7 - .../773-religious-symbol-usage.d.ts | 7 - .../774-unpersist-crafting-entries.d.ts | 19 - .../migrations/775-agile-finesse-ranged.d.ts | 8 - .../776-sluggify-condition-overrides.d.ts | 7 - .../777-hand-of-the-apprentice.d.ts | 7 - .../778-rename-feature-effects-refs.d.ts | 7 - .../migration/migrations/779-elite-weak.d.ts | 17 - .../migrations/780-numify-speeds.d.ts | 8 - .../migrations/781-suppress-no-crowbar.d.ts | 8 - .../migrations/782-unnest-actor-traits.d.ts | 18 - .../783-remove-class-skill-ae-likes.d.ts | 7 - .../784-comp-browser-pack-setting.d.ts | 6 - .../migrations/785-abc-kit-items.d.ts | 8 - .../786-remove-identified-data.d.ts | 7 - .../migrations/787-resolvables-to-system.d.ts | 7 - .../788-update-tanglefoot-bags.d.ts | 8 - .../migrations/789-update-precise-strike.d.ts | 8 - .../migrations/790-multiple-class-dcs.d.ts | 10 - .../migrations/791-ruffian-hands.d.ts | 8 - .../migrations/792-remove-token-ae-likes.d.ts | 7 - .../793-make-predicates-arrays.d.ts | 11 - .../794-add-wild-shape-choices.d.ts | 8 - .../795-cleanup-flat-footed-toggle.d.ts | 10 - .../796-item-grants-to-objects.d.ts | 8 - .../migrations/797-metagame-settings.d.ts | 8 - .../798-weapon-to-item-statements.d.ts | 7 - .../799-rm-recall-knowledge-duplicates.d.ts | 8 - .../800-self-effect-panache-rage.d.ts | 8 - .../migrations/801-color-darkvision.d.ts | 8 - .../802-strip-feat-action-category.d.ts | 6 - .../migrations/803-normalize-spell-area.d.ts | 15 - .../804-remove-consumable-properties.d.ts | 6 - .../805-inline-damage-formulas.d.ts | 11 - .../806-torch-improvised-othertags.d.ts | 7 - .../807-rm-activated-effect-fields.d.ts | 14 - .../migrations/808-count-damage-dice.d.ts | 7 - .../809-automaton-enhancements.d.ts | 8 - .../810-loot-description-value.d.ts | 7 - .../811-inline-damage-rolls-persistent.d.ts | 11 - .../migrations/812-restructure-iwr.d.ts | 22 - .../migrations/813-normalize-cold-iron.d.ts | 19 - .../814-calculated-expanded-splash.d.ts | 7 - .../815-consumable-data-cleanup.d.ts | 8 - .../816-alchemist-research-fields.d.ts | 11 - .../817-field-discovery-predicates.d.ts | 7 - .../818-basic-undead-negative-healing.d.ts | 8 - .../819-spin-tale-adventure-specific.d.ts | 7 - .../820-remove-unused-traits-data.d.ts | 7 - .../migrations/821-inline-damage-rolls.d.ts | 11 - .../822-blade-ally-consolidation.d.ts | 8 - .../823-heritage-ancestry-slug.d.ts | 7 - .../824-sneak-attack-damage-source.d.ts | 7 - .../825-khakkhara-feng-huo-lun.d.ts | 7 - .../migrations/826-gut-condition-data.d.ts | 7 - .../migrations/827-fix-tv-shield-traits.d.ts | 7 - .../migrations/828-prune-invalid-traits.d.ts | 9 - .../migrations/829-rm-ritual-entries.d.ts | 9 - .../migrations/830-condense-instincts.d.ts | 8 - .../migrations/831-cleric-doctrines.d.ts | 10 - .../migrations/832-choice-set-flags.d.ts | 7 - .../833-add-rogue-toys-fix-precision.d.ts | 7 - .../migrations/834-feat-categories.d.ts | 8 - .../migrations/835-initiative-longform.d.ts | 7 - .../836-energizing-consolidation.d.ts | 8 - .../837-move-hazard-book-source.d.ts | 17 - .../838-strike-attack-roll-selector.d.ts | 7 - .../migrations/839-action-categories.d.ts | 8 - .../migrations/840-array-wrap-predicates.d.ts | 8 - .../migrations/841-v11-uuid-format.d.ts | 11 - .../842-numify-numeric-settings.d.ts | 6 - .../843-rm-armor-custom-modifiers.d.ts | 7 - .../migrations/844-deity-domains-uuids.d.ts | 10 - .../845-empty-spell-consumables.d.ts | 7 - .../migrations/846-spell-school-optional.d.ts | 6 - .../migrations/847-temp-hp-rule-events.d.ts | 7 - .../848-numeric-armor-properties.d.ts | 21 - .../849-delete-broken-threshold.d.ts | 7 - .../850-flat-footed-to-off-guard.d.ts | 12 - .../migrations/851-just-innovation-id.d.ts | 7 - .../852-ability-scores-to-modifiers.d.ts | 10 - .../migrations/853-remaster-languages.d.ts | 10 - ...bracketed-ability-scores-to-modifiers.d.ts | 7 - .../855-apex-equipment-system-data.d.ts | 7 - .../migrations/856-no-system-dot-custom.d.ts | 7 - .../migrations/857-weapon-spec-re.d.ts | 9 - .../858-fake-weapon-specialization.d.ts | 11 - .../migrations/859-material-type-grade.d.ts | 8 - .../migration/migrations/860-rm-group.d.ts | 13 - .../861-aura-colors-to-appearance.d.ts | 7 - .../migrations/862-specific-magic-armor.d.ts | 8 - ...ix-misspelled-organaizations-property.d.ts | 7 - .../migrations/864-rm-weapon-map.d.ts | 14 - .../migrations/865-vitality-void.d.ts | 10 - .../866-link-to-actor-size-again.d.ts | 8 - .../867-damage-roll-domain-fix.d.ts | 6 - .../migrations/868-strike-re-range.d.ts | 7 - .../869-refresh-mighty-bulwark.d.ts | 8 - .../870-martial-to-proficiencies.d.ts | 10 - .../871-migrate-rollactionmacro-params.d.ts | 7 - .../migrations/872-move-schema-property.d.ts | 10 - .../873-remove-bonus-bulk-limit.d.ts | 8 - .../migrations/874-move-stamina-stuff.d.ts | 10 - .../875-set-innovation-id-early.d.ts | 7 - .../migrations/876-feat-level-taken.d.ts | 8 - .../migrations/877-publication-data.d.ts | 28 - .../migrations/878-take-a-breather.d.ts | 7 - .../879-devise-a-stratagem-and-friends.d.ts | 7 - .../880-split-show-dialogs-setting.d.ts | 6 - .../migrations/881-no-hb-prefix.d.ts | 9 - .../882-spell-data-reorganization.d.ts | 14 - .../migrations/883-banish-alignment.d.ts | 13 - .../migrations/884-unified-spellcasting.d.ts | 8 - .../885-convert-alignment-damage.d.ts | 10 - .../migrations/886-crossbow-group.d.ts | 7 - .../migrations/887-redirect-spell-links.d.ts | 10 - .../888-remaster-languages-heritages.d.ts | 10 - .../889-remove-focus-max-increases.d.ts | 7 - .../890-rm-class-item-class-dc.d.ts | 7 - .../migrations/891-druidic-to-wildsong.d.ts | 9 - .../892-choice-re-adjust-name-value.d.ts | 7 - .../migrations/893-no-hb-prefix-settings.d.ts | 6 - .../894-no-lay-on-hands-vs-undead.d.ts | 9 - .../895-fix-variant-spell-traits.d.ts | 8 - .../migrations/896-healing-domains.d.ts | 7 - .../897-clear-lay-on-hands-damage.d.ts | 7 - .../migration/migrations/898-no-hb-again.d.ts | 9 - .../899-armor-shields-to-shield-shields.d.ts | 8 - .../900-class-spellcasting-proficiency.d.ts | 10 - .../migrations/901-reorganize-bulk-data.d.ts | 8 - .../migrations/902-duskwood-dawnsilver.d.ts | 10 - .../migrations/903-physical-numeric-data.d.ts | 7 - .../904-undercommon-to-sakvroth.d.ts | 10 - .../migrations/905-unpersist-usage.d.ts | 13 - .../migrations/906-limit-stack-group.d.ts | 13 - .../907-restructure-armor-weapon-runes.d.ts | 15 - .../migrations/908-true-gang-up.d.ts | 7 - .../909-refine-consumable-data.d.ts | 8 - .../910-edicts-anathema-arrays.d.ts | 7 - .../migration/migrations/911-coin-bulk.d.ts | 7 - .../912-rm-focus-trait-focus-cantrips.d.ts | 7 - .../migrations/913-spell-sustained-text.d.ts | 7 - .../914-move-perception-senses.d.ts | 10 - .../migrations/915-move-languages.d.ts | 10 - .../migration/migrations/916-new-pc-toys.d.ts | 8 - .../migrations/917-scroll-wand-spell-ids.d.ts | 7 - .../migrations/918-deity-skills.d.ts | 7 - .../919-trait-toggle-structure.d.ts | 8 - .../migrations/920-suboption-selection.d.ts | 8 - .../migrations/921-spell-slot-arrays.d.ts | 7 - .../922-swashbuckler-finisher-suboptions.d.ts | 8 - .../923-kineticist-restructure.d.ts | 8 - .../migrations/924-jiu-huan-dao.d.ts | 8 - .../migrations/925-touch-of-corruption.d.ts | 7 - .../926-remove-vision-feature-links.d.ts | 7 - .../927-class-background-skill-longform.d.ts | 28 - .../928-character-skills-longform.d.ts | 9 - .../929-remove-skill-abbreviations.d.ts | 11 - .../migrations/930-choice-set-medium.d.ts | 7 - .../migrations/931-expand-re-permissions.d.ts | 6 - .../migrations/932-npc-system-skills.d.ts | 7 - .../migrations/933-crafting-ability.d.ts | 11 - .../934-mythic-calling-category.d.ts | 8 - .../migrations/935-deity-icon-paths.d.ts | 13 - .../module/migration/migrations/index.d.ts | 236 - types/src/module/migration/runner/base.d.ts | 36 - types/src/module/migration/runner/index.d.ts | 14 - types/src/module/notes.d.ts | 38 - types/src/module/recall-knowledge.d.ts | 15 - types/src/module/rules/helpers.d.ts | 52 - types/src/module/rules/index.d.ts | 18 - .../rules/rule-element/actor-traits.d.ts | 18 - .../adjust-degree-of-success.d.ts | 25 - .../rules/rule-element/adjust-modifier.d.ts | 41 - .../rules/rule-element/adjust-strike.d.ts | 32 - .../module/rules/rule-element/ae-like.d.ts | 68 - types/src/module/rules/rule-element/aura.d.ts | 122 - .../module/rules/rule-element/base-speed.d.ts | 23 - types/src/module/rules/rule-element/base.d.ts | 212 - .../battle-form/rule-element.d.ts | 28 - .../rule-element/battle-form/schema.d.ts | 41 - .../rules/rule-element/battle-form/types.d.ts | 77 - .../rules/rule-element/choice-set/data.d.ts | 97 - .../rules/rule-element/choice-set/prompt.d.ts | 55 - .../rule-element/choice-set/rule-element.d.ts | 41 - .../rules/rule-element/crafting-ability.d.ts | 64 - .../rules/rule-element/creature-size.d.ts | 34 - .../module/rules/rule-element/crit-spec.d.ts | 60 - .../damage-alteration/alteration.d.ts | 26 - .../damage-alteration/rule-element.d.ts | 29 - .../rules/rule-element/damage-dice.d.ts | 52 - types/src/module/rules/rule-element/data.d.ts | 52 - .../rule-element/dexterity-modifier-cap.d.ts | 18 - .../effect-spinoff/rule-element.d.ts | 51 - .../rule-element/effect-spinoff/spinoff.d.ts | 25 - .../rules/rule-element/ephemeral-effect.d.ts | 22 - .../rules/rule-element/fast-healing.d.ts | 31 - .../rules/rule-element/flat-modifier.d.ts | 81 - .../rule-element/grant-item/helpers.d.ts | 5 - .../rules/rule-element/grant-item/index.d.ts | 1 - .../rule-element/grant-item/rule-element.d.ts | 49 - .../rules/rule-element/grant-item/schema.d.ts | 30 - .../src/module/rules/rule-element/index.d.ts | 3 - .../item-alteration/alteration.d.ts | 29 - .../rule-element/item-alteration/index.d.ts | 1 - .../item-alteration/rule-element.d.ts | 32 - .../rule-element/item-alteration/schemas.d.ts | 204 - .../module/rules/rule-element/iwr/base.d.ts | 57 - .../rules/rule-element/iwr/immunity.d.ts | 22 - .../module/rules/rule-element/iwr/index.d.ts | 3 - .../rules/rule-element/iwr/resistance.d.ts | 23 - .../rules/rule-element/iwr/weakness.d.ts | 22 - .../rules/rule-element/lose-hit-points.d.ts | 29 - .../rule-element/martial-proficiency.d.ts | 32 - .../rule-element/multiple-attack-penalty.d.ts | 18 - .../module/rules/rule-element/roll-note.d.ts | 34 - .../rules/rule-element/roll-option/data.d.ts | 55 - .../roll-option/rule-element.d.ts | 51 - .../module/rules/rule-element/roll-twice.d.ts | 19 - .../src/module/rules/rule-element/sense.d.ts | 24 - .../rules/rule-element/special-resource.d.ts | 51 - .../rules/rule-element/special-statistic.d.ts | 53 - .../src/module/rules/rule-element/strike.d.ts | 112 - .../module/rules/rule-element/striking.d.ts | 17 - .../rules/rule-element/substitute-roll.d.ts | 26 - .../module/rules/rule-element/temp-hp.d.ts | 36 - .../rules/rule-element/token-effect-icon.d.ts | 17 - .../rules/rule-element/token-image.d.ts | 83 - .../rules/rule-element/token-light.d.ts | 29 - .../rules/rule-element/token-mark/prompt.d.ts | 20 - .../rule-element/token-mark/rule-element.d.ts | 20 - .../module/rules/rule-element/token-name.d.ts | 18 - .../rules/rule-element/weapon-potency.d.ts | 21 - types/src/module/rules/synthetics.d.ts | 159 - .../module/scene/ambient-light-document.d.ts | 8 - types/src/module/scene/data.d.ts | 20 - types/src/module/scene/document.d.ts | 49 - types/src/module/scene/helpers.d.ts | 12 - types/src/module/scene/index.d.ts | 7 - .../scene/measured-template-document.d.ts | 31 - .../scene/region-behavior/document.d.ts | 5 - .../region-behavior/environment-feature.d.ts | 14 - .../scene/region-behavior/environment.d.ts | 19 - .../module/scene/region-behavior/index.d.ts | 4 - .../module/scene/region-behavior/types.d.ts | 44 - .../module/scene/region-behavior/values.d.ts | 6 - .../scene/region-document/document.d.ts | 15 - types/src/module/scene/sheet.d.ts | 12 - types/src/module/scene/tile-document.d.ts | 3 - .../scene/token-document/actor-delta.d.ts | 17 - .../scene/token-document/aura/index.d.ts | 37 - .../scene/token-document/aura/types.d.ts | 18 - .../scene/token-document/clown-car.d.ts | 13 - .../src/module/scene/token-document/data.d.ts | 11 - .../module/scene/token-document/document.d.ts | 91 - .../module/scene/token-document/index.d.ts | 2 - .../module/scene/token-document/sheet.d.ts | 25 - types/src/module/sheet/helpers.d.ts | 90 - .../action-macros/acrobatics/balance.d.ts | 5 - .../acrobatics/maneuver-in-flight.d.ts | 5 - .../action-macros/acrobatics/squeeze.d.ts | 5 - .../acrobatics/tumble-through.d.ts | 5 - .../ancestry/automaton/arcane-slam.d.ts | 2 - .../system/action-macros/athletics/climb.d.ts | 5 - .../action-macros/athletics/disarm.d.ts | 15 - .../action-macros/athletics/force-open.d.ts | 5 - .../action-macros/athletics/grapple.d.ts | 15 - .../action-macros/athletics/high-jump.d.ts | 5 - .../action-macros/athletics/long-jump.d.ts | 5 - .../action-macros/athletics/reposition.d.ts | 5 - .../system/action-macros/athletics/shove.d.ts | 15 - .../system/action-macros/athletics/swim.d.ts | 5 - .../system/action-macros/athletics/trip.d.ts | 15 - .../athletics/whirling-throw.d.ts | 2 - .../system/action-macros/basic/aid.d.ts | 7 - .../system/action-macros/basic/crawl.d.ts | 3 - .../system/action-macros/basic/delay.d.ts | 3 - .../action-macros/basic/drop-prone.d.ts | 7 - .../system/action-macros/basic/escape.d.ts | 22 - .../system/action-macros/basic/interact.d.ts | 3 - .../system/action-macros/basic/leap.d.ts | 3 - .../system/action-macros/basic/ready.d.ts | 3 - .../system/action-macros/basic/release.d.ts | 3 - .../system/action-macros/basic/seek.d.ts | 5 - .../action-macros/basic/sense-motive.d.ts | 5 - .../system/action-macros/basic/stand.d.ts | 7 - .../system/action-macros/basic/step.d.ts | 3 - .../system/action-macros/basic/stride.d.ts | 3 - .../action-macros/basic/take-cover.d.ts | 3 - .../action-macros/class/inventor/tamper.d.ts | 2 - .../system/action-macros/crafting/craft.d.ts | 12 - .../crafting/identify-alchemy.d.ts | 3 - .../system/action-macros/crafting/index.d.ts | 3 - .../system/action-macros/crafting/repair.d.ts | 12 - .../action-macros/crafting/select-item.d.ts | 21 - .../deception/create-a-diversion.d.ts | 9 - .../system/action-macros/deception/feint.d.ts | 5 - .../action-macros/deception/impersonate.d.ts | 5 - .../system/action-macros/deception/lie.d.ts | 5 - .../action-macros/diplomacy/bon-mot.d.ts | 2 - .../diplomacy/gather-information.d.ts | 5 - .../diplomacy/make-an-impression.d.ts | 5 - .../action-macros/diplomacy/request.d.ts | 5 - .../exploration/affix-a-talisman.d.ts | 3 - .../exploration/avoid-notice.d.ts | 5 - .../exploration/sense-direction.d.ts | 5 - .../action-macros/exploration/track.d.ts | 5 - .../general/decipher-writing.d.ts | 9 - .../action-macros/general/identify-magic.d.ts | 7 - .../action-macros/general/learn-a-spell.d.ts | 7 - .../general/recall-knowledge.d.ts | 14 - .../system/action-macros/general/subsist.d.ts | 9 - .../module/system/action-macros/helpers.d.ts | 36 - .../module/system/action-macros/index.d.ts | 105 - .../action-macros/intimidation/coerce.d.ts | 5 - .../intimidation/demoralize.d.ts | 5 - .../medicine/administer-first-aid.d.ts | 12 - .../action-macros/medicine/treat-disease.d.ts | 5 - .../action-macros/medicine/treat-poison.d.ts | 5 - .../nature/command-an-animal.d.ts | 5 - .../action-macros/performance/perform.d.ts | 19 - .../action-macros/society/create-forgery.d.ts | 9 - .../specialty-basic/arrest-a-fall.d.ts | 3 - .../specialty-basic/avert-gaze.d.ts | 3 - .../action-macros/specialty-basic/burrow.d.ts | 3 - .../specialty-basic/dismiss.d.ts | 3 - .../action-macros/specialty-basic/fly.d.ts | 3 - .../specialty-basic/grab-an-edge.d.ts | 3 - .../action-macros/specialty-basic/mount.d.ts | 3 - .../specialty-basic/point-out.d.ts | 3 - .../specialty-basic/sustain.d.ts | 3 - .../stealth/conceal-an-object.d.ts | 5 - .../system/action-macros/stealth/hide.d.ts | 5 - .../system/action-macros/stealth/sneak.d.ts | 5 - .../thievery/disable-device.d.ts | 5 - .../thievery/palm-an-object.d.ts | 5 - .../action-macros/thievery/pick-a-lock.d.ts | 5 - .../system/action-macros/thievery/steal.d.ts | 5 - .../module/system/action-macros/types.d.ts | 90 - types/src/module/system/check/check.d.ts | 28 - types/src/module/system/check/dialog.d.ts | 46 - types/src/module/system/check/index.d.ts | 3 - types/src/module/system/check/roll.d.ts | 38 - types/src/module/system/check/types.d.ts | 44 - types/src/module/system/client-backend.d.ts | 6 - types/src/module/system/conditions/index.d.ts | 1 - .../src/module/system/conditions/manager.d.ts | 22 - types/src/module/system/damage/damage.d.ts | 7 - types/src/module/system/damage/dialog.d.ts | 71 - types/src/module/system/damage/formula.d.ts | 27 - types/src/module/system/damage/helpers.d.ts | 70 - types/src/module/system/damage/index.d.ts | 2 - types/src/module/system/damage/iwr.d.ts | 41 - types/src/module/system/damage/roll.d.ts | 127 - types/src/module/system/damage/terms.d.ts | 108 - types/src/module/system/damage/types.d.ts | 137 - types/src/module/system/damage/values.d.ts | 25 - types/src/module/system/damage/weapon.d.ts | 32 - .../src/module/system/degree-of-success.d.ts | 72 - types/src/module/system/effect-tracker.d.ts | 21 - .../system/html-elements/tagify-tags.d.ts | 20 - types/src/module/system/module-art.d.ts | 25 - types/src/module/system/predication.d.ts | 76 - types/src/module/system/progress.d.ts | 25 - types/src/module/system/rolls.d.ts | 70 - .../src/module/system/schema-data-fields.d.ts | 96 - .../module/system/settings/automation.d.ts | 8 - .../system/settings/homebrew/damage.d.ts | 26 - .../module/system/settings/homebrew/data.d.ts | 98 - .../system/settings/homebrew/helpers.d.ts | 15 - .../system/settings/homebrew/index.d.ts | 2 - .../system/settings/homebrew/languages.d.ts | 16 - .../module/system/settings/homebrew/menu.d.ts | 46 - types/src/module/system/settings/index.d.ts | 1 - types/src/module/system/settings/menu.d.ts | 46 - .../src/module/system/settings/metagame.d.ts | 79 - .../module/system/settings/variant-rules.d.ts | 12 - .../module/system/settings/world-clock.d.ts | 32 - .../module/system/statistic/armor-class.d.ts | 22 - types/src/module/system/statistic/base.d.ts | 22 - types/src/module/system/statistic/data.d.ts | 79 - .../module/system/statistic/hit-points.d.ts | 29 - types/src/module/system/statistic/index.d.ts | 6 - .../module/system/statistic/perception.d.ts | 34 - .../module/system/statistic/statistic.d.ts | 147 - .../src/module/system/tag-selector/base.d.ts | 32 - .../src/module/system/tag-selector/basic.d.ts | 40 - .../src/module/system/tag-selector/index.d.ts | 12 - .../module/system/tag-selector/languages.d.ts | 32 - .../module/system/tag-selector/senses.d.ts | 43 - .../module/system/tag-selector/speeds.d.ts | 27 - types/src/module/system/text-editor.d.ts | 57 - types/src/module/user/data.d.ts | 10 - types/src/module/user/document.d.ts | 29 - types/src/module/user/index.d.ts | 1 - types/src/module/user/sheet.d.ts | 25 - types/src/pf2e.d.ts | 1 - types/src/scripts/config/damage.d.ts | 56 - types/src/scripts/config/index.d.ts | 4854 ------ types/src/scripts/config/iwr.d.ts | 244 - types/src/scripts/config/traits.d.ts | 3383 ----- types/src/scripts/dice.d.ts | 54 - types/src/scripts/handlebars.d.ts | 1 - types/src/scripts/hooks/canvas-ready.d.ts | 4 - .../hooks/close-combat-tracker-config.d.ts | 4 - .../hooks/close-world-clock-settings.d.ts | 4 - .../src/scripts/hooks/dice-so-nice-ready.d.ts | 3 - .../hooks/dice-so-nice-roll-start.d.ts | 4 - types/src/scripts/hooks/drop-canvas-data.d.ts | 3 - .../hooks/get-prosemirror-menu-dropdowns.d.ts | 3 - .../hooks/get-scene-control-buttons.d.ts | 4 - types/src/scripts/hooks/i18n-init.d.ts | 3 - types/src/scripts/hooks/index.d.ts | 3 - types/src/scripts/hooks/init.d.ts | 3 - types/src/scripts/hooks/lighting-refresh.d.ts | 3 - types/src/scripts/hooks/load.d.ts | 4 - .../src/scripts/hooks/migration-complete.d.ts | 1 - types/src/scripts/hooks/ready.d.ts | 3 - .../src/scripts/hooks/render-chat-popout.d.ts | 3 - .../hooks/render-combat-tracker-config.d.ts | 3 - types/src/scripts/hooks/render-dialog.d.ts | 3 - .../scripts/hooks/render-region-legend.d.ts | 3 - .../scripts/hooks/render-settings-config.d.ts | 7 - types/src/scripts/hooks/render-settings.d.ts | 4 - types/src/scripts/hooks/render-token-hud.d.ts | 7 - types/src/scripts/hooks/setup.d.ts | 4 - types/src/scripts/hooks/target-token.d.ts | 3 - .../src/scripts/hooks/update-world-time.d.ts | 3 - .../scripts/macros/check-prompt/helpers.d.ts | 4 - .../scripts/macros/check-prompt/index.d.ts | 1 - .../scripts/macros/check-prompt/prompt.d.ts | 2 - .../scripts/macros/earn-income/calculate.d.ts | 50 - .../scripts/macros/earn-income/helpers.d.ts | 13 - .../src/scripts/macros/earn-income/index.d.ts | 2 - .../src/scripts/macros/earn-income/macro.d.ts | 3 - types/src/scripts/macros/edit-persistent.d.ts | 2 - .../src/scripts/macros/encouraging-words.d.ts | 2 - types/src/scripts/macros/hotbar.d.ts | 22 - types/src/scripts/macros/index.d.ts | 14 - .../perception-for-selected-tokens.d.ts | 2 - types/src/scripts/macros/raise-a-shield.d.ts | 3 - .../scripts/macros/rest-for-the-night.d.ts | 8 - .../macros/stealth-for-selected-tokens.d.ts | 2 - .../scripts/macros/steel-your-resolve.d.ts | 2 - types/src/scripts/macros/take-a-breather.d.ts | 2 - types/src/scripts/macros/travel/index.d.ts | 1 - .../macros/travel/travel-speed-sheet.d.ts | 2 - .../scripts/macros/travel/travel-speed.d.ts | 99 - types/src/scripts/macros/treat-wounds.d.ts | 13 - types/src/scripts/macros/xp/dialog.d.ts | 2 - types/src/scripts/macros/xp/index.d.ts | 26 - types/src/scripts/register-fonts.d.ts | 1 - types/src/scripts/register-keybindings.d.ts | 1 - types/src/scripts/register-sheets.d.ts | 1 - types/src/scripts/register-templates.d.ts | 2 - types/src/scripts/set-game-pf2e.d.ts | 6 - types/src/scripts/socket.d.ts | 26 - types/src/scripts/store-versions.d.ts | 2 - .../src/scripts/system/dragstart-handler.d.ts | 5 - types/src/scripts/system/remigrate.d.ts | 5 - types/src/scripts/ui/inline-roll-links.d.ts | 7 - types/src/scripts/ui/user-visibility.d.ts | 14 - .../\360\237\220\265\360\237\251\271.d.ts" | 2 - types/src/util/delegated-collection.d.ts | 26 - types/src/util/destroyables.d.ts | 20 - types/src/util/dom.d.ts | 47 - types/src/util/index.d.ts | 3 - types/src/util/misc.d.ts | 117 - types/src/util/tags.d.ts | 37 - types/src/util/token-actor-utils.d.ts | 16 - types/src/util/uuid.d.ts | 28 - types/tests/mocks/actor.d.ts | 31 - types/tests/mocks/chat-message.d.ts | 4 - types/tests/mocks/collection.d.ts | 31 - types/tests/mocks/item.d.ts | 20 - types/tests/mocks/journal-entry.d.ts | 5 - types/tests/mocks/macro.d.ts | 4 - types/tests/mocks/roll-table.d.ts | 4 - types/tests/mocks/scene.d.ts | 11 - types/tests/mocks/token.d.ts | 15 - types/tests/mocks/user.d.ts | 7 - .../apps/world-clock/time-of-day.test.d.ts | 1 - types/tests/module/dc.test.d.ts | 1 - .../tests/module/degree-of-success.test.d.ts | 1 - types/tests/module/earn-income.test.d.ts | 1 - .../module/gm/travel/travel-speed.test.d.ts | 1 - types/tests/module/lang/en.test.d.ts | 1 - types/tests/module/migration.test.d.ts | 1 - types/tests/module/recall-knowledge.test.d.ts | 1 - .../tests/module/system/predication.test.d.ts | 1 - types/tests/module/utils.test.d.ts | 1 - types/tests/module/xp.test.d.ts | 1 - types/tests/setup.d.ts | 1 - .../build/generate-client-base-mixes.d.ts | 1 - .../build/generate-client-base-mixes.ts | 502 - .../client-esm/applications/_types.d.ts | 171 - .../applications/api/application.d.ts | 388 - .../applications/api/document-sheet.d.ts | 55 - .../api/handlebars-application.ts | 161 - .../client-esm/applications/api/module.d.ts | 6 - .../applications/elements/color-picker.d.ts | 13 - .../applications/elements/document-tags.d.ts | 51 - .../applications/elements/file-picker.d.ts | 40 - .../applications/elements/form-element.d.ts | 94 - .../applications/elements/hue-slider.d.ts | 10 - .../applications/elements/module.d.ts | 9 - .../applications/elements/multi-select.d.ts | 88 - .../elements/prosemirror-editor.d.ts | 29 - .../applications/elements/range-picker.d.ts | 24 - .../applications/elements/string-tags.d.ts | 49 - .../client-esm/applications/forms/fields.d.ts | 173 - .../client-esm/applications/module.d.ts | 15 - .../applications/sheets/item-sheet.d.ts | 15 - .../applications/sheets/module.d.ts | 2 - .../applications/sheets/user-config.d.ts | 31 - .../client-esm/canvas/edges/collision.d.ts | 59 - .../foundry/client-esm/canvas/edges/edge.d.ts | 140 - .../client-esm/canvas/edges/edges.d.ts | 14 - .../client-esm/canvas/edges/module.d.ts | 4 - .../client-esm/canvas/edges/vertex.d.ts | 84 - .../foundry/client-esm/canvas/module.d.ts | 5 - .../client-esm/canvas/regions/geometry.d.ts | 28 - .../client-esm/canvas/regions/mesh.d.ts | 53 - .../client-esm/canvas/regions/module.d.ts | 4 - .../canvas/regions/polygon-tree.d.ts | 103 - .../client-esm/canvas/regions/shape.d.ts | 73 - .../client-esm/canvas/scene-manager.d.ts | 83 - .../canvas/sources/base-effect-source.d.ts | 146 - .../canvas/sources/base-light-source.d.ts | 149 - .../canvas/sources/global-light-source.d.ts | 6 - .../client-esm/canvas/sources/module.d.ts | 9 - .../client-esm/canvas/sources/module.ts | 9 - .../canvas/sources/point-darkness-source.d.ts | 35 - .../sources/point-effect-source-mixes.d.ts | 331 - .../canvas/sources/point-light-source.d.ts | 5 - .../canvas/sources/point-movement-source.d.ts | 8 - .../canvas/sources/point-sound-source.d.ts | 15 - .../canvas/sources/point-vision-source.d.ts | 131 - .../sources/rendered-effect-source.d.ts | 188 - .../client-esm/canvas/tokens/module.d.ts | 1 - .../client-esm/canvas/tokens/module.ts | 1 - .../client-esm/canvas/tokens/ring-config.d.ts | 19 - .../types/foundry/client-esm/data/module.d.ts | 1 - .../adjust-darkness-level.d.ts | 31 - .../data/region-behaviors/base.d.ts | 57 - .../data/region-behaviors/execute-macro.d.ts | 18 - .../data/region-behaviors/execute-script.d.ts | 16 - .../data/region-behaviors/module.d.ts | 8 - .../data/region-behaviors/pause-game.d.ts | 16 - .../region-behaviors/suppress-weather.d.ts | 13 - .../data/region-behaviors/teleport-token.d.ts | 16 - .../region-behaviors/toggle-behavior.d.ts | 20 - .../foundry/client-esm/dice/_types.d.mts | 84 - .../types/foundry/client-esm/dice/module.d.ts | 2 - .../foundry/client-esm/dice/terms/coin.d.ts | 36 - .../client-esm/dice/terms/dice-term.d.ts | 229 - .../foundry/client-esm/dice/terms/die.d.ts | 199 - .../client-esm/dice/terms/fate-die.d.ts | 21 - .../client-esm/dice/terms/function-term.d.ts | 75 - .../foundry/client-esm/dice/terms/module.d.ts | 12 - .../client-esm/dice/terms/numeric-term.d.ts | 40 - .../client-esm/dice/terms/operator-term.d.ts | 29 - .../dice/terms/parenthetical-term.d.ts | 73 - .../client-esm/dice/terms/pool-term.d.ts | 183 - .../client-esm/dice/terms/roll-term.d.ts | 118 - .../client-esm/dice/terms/string-term.d.ts | 22 - .../foundry/client-esm/helpers/_module.d.ts | 2 - .../foundry/client-esm/helpers/_types.d.ts | 24 - .../client-esm/helpers/compendium-art.d.ts | 29 - types/types/foundry/client/apps/app.d.ts | 405 - .../foundry/client/apps/client-settings.d.ts | 9 - .../types/foundry/client/apps/compendium.d.ts | 47 - types/types/foundry/client/apps/form.d.ts | 331 - .../foundry/client/apps/forms/actor.d.ts | 132 - .../client/apps/forms/combat-config.d.ts | 12 - .../client/apps/forms/combatant-config.d.ts | 8 - .../client/apps/forms/effect-config.d.ts | 48 - .../client/apps/forms/folder-edit.d.ts | 14 - .../foundry/client/apps/forms/fonts.d.ts | 119 - .../client/apps/forms/image-popout.d.ts | 57 - .../foundry/client/apps/forms/index.d.ts | 17 - .../types/foundry/client/apps/forms/item.d.ts | 42 - .../client/apps/forms/journal-page-sheet.d.ts | 116 - .../client/apps/forms/journal-sheet.d.ts | 264 - .../client/apps/forms/macro-config.d.ts | 18 - .../client/apps/forms/measured-template.d.ts | 12 - .../client/apps/forms/playlist-config.d.ts | 9 - .../apps/forms/playlist-sound-config.d.ts | 9 - .../client/apps/forms/roll-table-config.d.ts | 7 - .../client/apps/forms/scene-config.d.ts | 5 - .../client/apps/forms/sheet-config.d.ts | 105 - .../foundry/client/apps/hud/chat-bubbles.d.ts | 29 - .../foundry/client/apps/hud/container.d.ts | 22 - .../foundry/client/apps/hud/controls.d.ts | 82 - .../types/foundry/client/apps/hud/hotbar.d.ts | 119 - types/types/foundry/client/apps/hud/hud.d.ts | 110 - .../types/foundry/client/apps/hud/index.d.ts | 9 - types/types/foundry/client/apps/hud/menu.d.ts | 13 - .../foundry/client/apps/hud/navigation.d.ts | 29 - .../types/foundry/client/apps/hud/pause.d.ts | 6 - .../foundry/client/apps/hud/players.d.ts | 53 - types/types/foundry/client/apps/i18n.d.ts | 83 - types/types/foundry/client/apps/index.d.ts | 10 - .../apps/placeables/drawing-config.d.ts | 13 - .../client/apps/placeables/drawing-hud.d.ts | 11 - .../foundry/client/apps/placeables/index.d.ts | 10 - .../client/apps/placeables/light-config.d.ts | 9 - .../client/apps/placeables/note-config.d.ts | 13 - .../client/apps/placeables/sound-config.d.ts | 12 - .../client/apps/placeables/tile-config.d.ts | 7 - .../client/apps/placeables/tile-hud.d.ts | 29 - .../client/apps/placeables/token-config.d.ts | 107 - .../client/apps/placeables/token-hud.d.ts | 63 - .../client/apps/placeables/wall-config.d.ts | 21 - .../client/apps/sidebar/apps/chat-popout.d.ts | 19 - .../client/apps/sidebar/apps/index.d.ts | 2 - .../apps/sidebar/apps/keybindings-config.d.ts | 83 - .../apps/sidebar/document-directory.d.ts | 113 - .../foundry/client/apps/sidebar/index.d.ts | 6 - .../apps/sidebar/package-configuration.d.ts | 42 - .../client/apps/sidebar/sidebar-tab.d.ts | 46 - .../foundry/client/apps/sidebar/sidebar.d.ts | 36 - .../apps/sidebar/tabs/actor-directory.d.ts | 18 - .../client/apps/sidebar/tabs/chat-log.d.ts | 177 - .../apps/sidebar/tabs/combat-tracker.d.ts | 143 - .../sidebar/tabs/compendium-directory.d.ts | 78 - .../client/apps/sidebar/tabs/index.d.ts | 7 - .../apps/sidebar/tabs/item-directory.d.ts | 12 - .../sidebar/tabs/roll-table-directory.d.ts | 4 - .../client/apps/sidebar/tabs/settings.d.ts | 22 - .../types/foundry/client/apps/templates.d.ts | 24 - types/types/foundry/client/config.d.ts | 797 - types/types/foundry/client/core/audio.d.ts | 158 - .../types/foundry/client/core/clipboard.d.ts | 13 - .../foundry/client/core/document-index.d.ts | 154 - .../types/foundry/client/core/game-time.d.ts | 59 - types/types/foundry/client/core/hooks.d.ts | 201 - types/types/foundry/client/core/image.d.ts | 119 - types/types/foundry/client/core/index.d.ts | 11 - types/types/foundry/client/core/packages.d.ts | 243 - .../foundry/client/core/searchfilter.d.ts | 78 - types/types/foundry/client/core/settings.d.ts | 145 - types/types/foundry/client/core/socket.d.ts | 19 - types/types/foundry/client/core/sorting.d.ts | 31 - types/types/foundry/client/core/video.d.ts | 110 - .../client/data/abstract/client-backend.d.ts | 53 - .../data/abstract/directory-collection.ts | 81 - .../data/abstract/document-collection.d.ts | 128 - .../foundry/client/data/abstract/index.d.ts | 4 - .../data/abstract/world-collection.d.ts | 155 - .../client/data/collections/actors.d.ts | 28 - .../data/collections/combat-encounters.d.ts | 30 - .../collections/compendium-collection.d.ts | 271 - .../client/data/collections/folders.d.ts | 16 - .../client/data/collections/index.d.ts | 12 - .../client/data/collections/items.d.ts | 10 - .../client/data/collections/journal.d.ts | 24 - .../client/data/collections/macros.d.ts | 11 - .../client/data/collections/messages.d.ts | 28 - .../client/data/collections/playlists.d.ts | 25 - .../client/data/collections/roll-tables.d.ts | 14 - .../client/data/collections/scenes.d.ts | 63 - .../client/data/collections/users.d.ts | 42 - .../client/data/documents/active-effect.d.ts | 133 - .../client/data/documents/actor-delta.d.ts | 89 - .../foundry/client/data/documents/actor.d.ts | 278 - .../client/data/documents/adventure.d.ts | 51 - .../documents/ambient-light-document.d.ts | 12 - .../documents/ambient-sound-document.d.ts | 9 - .../foundry/client/data/documents/card.d.ts | 105 - .../foundry/client/data/documents/cards.d.ts | 28 - .../client/data/documents/chat-message.d.ts | 237 - .../data/documents/client-base-mixes.d.ts | 12410 ---------------- .../data/documents/client-document.d.ts | 20 - .../foundry/client/data/documents/combat.d.ts | 249 - .../client/data/documents/combatant.d.ts | 86 - .../data/documents/drawing-document.d.ts | 21 - .../data/documents/fog-exploration.d.ts | 25 - .../foundry/client/data/documents/folder.d.ts | 114 - .../foundry/client/data/documents/index.d.ts | 52 - .../foundry/client/data/documents/item.d.ts | 69 - .../data/documents/journal-entry-page.d.ts | 89 - .../client/data/documents/journal-entry.d.ts | 67 - .../foundry/client/data/documents/macro.d.ts | 37 - .../documents/measured-template-document.d.ts | 29 - .../client/data/documents/note-document.d.ts | 25 - .../client/data/documents/playlist-sound.d.ts | 36 - .../client/data/documents/playlist.d.ts | 146 - .../data/documents/region-behavior.d.ts | 45 - .../data/documents/region-document.d.ts | 128 - .../client/data/documents/roll-table.d.ts | 174 - .../foundry/client/data/documents/scene.d.ts | 302 - .../client/data/documents/setting.d.ts | 33 - .../client/data/documents/table-result.d.ts | 19 - .../client/data/documents/tile-document.d.ts | 9 - .../client/data/documents/token-document.d.ts | 230 - .../foundry/client/data/documents/user.d.ts | 105 - .../client/data/documents/wall-document.d.ts | 9 - types/types/foundry/client/data/index.d.ts | 3 - .../foundry/client/foundry/data/index.d.ts | 3 - types/types/foundry/client/foundry/index.d.ts | 23 - types/types/foundry/client/game.d.ts | 242 - types/types/foundry/client/index.d.ts | 22 - .../client/keyboard/client-keybindings.d.ts | 246 - .../types/foundry/client/keyboard/index.d.ts | 2 - .../client/keyboard/keyboard-manager.d.ts | 198 - types/types/foundry/client/pixi/board.d.ts | 448 - .../client/pixi/core/containers/index.d.ts | 3 - .../core/containers/point-source-mesh.d.ts | 39 - .../client/pixi/core/containers/quadtree.d.ts | 158 - .../pixi/core/containers/sprite-mesh.d.ts | 241 - .../types/foundry/client/pixi/core/index.d.ts | 4 - .../core/interaction/canvas-animation.d.ts | 54 - .../client/pixi/core/interaction/index.d.ts | 4 - .../pixi/core/interaction/mouse-handler.d.ts | 212 - .../pixi/core/interaction/render-flags.d.ts | 39 - .../client/pixi/core/interaction/targets.d.ts | 22 - .../foundry/client/pixi/core/loader.d.ts | 129 - .../client/pixi/core/shapes/index.d.ts | 1 - .../pixi/core/shapes/source-polygon.d.ts | 146 - .../foundry/client/pixi/fog-manager.d.ts | 65 - .../client/pixi/groups/canvas-group.d.ts | 69 - .../foundry/client/pixi/groups/effects.d.ts | 123 - .../client/pixi/groups/environment.d.ts | 84 - .../foundry/client/pixi/groups/index.d.ts | 7 - .../foundry/client/pixi/groups/interface.d.ts | 30 - .../foundry/client/pixi/groups/overlay.d.ts | 7 - .../foundry/client/pixi/groups/primary.d.ts | 20 - .../foundry/client/pixi/groups/rendered.d.ts | 6 - .../foundry/client/pixi/groups/rendered.ts | 7 - .../client/pixi/helpers/cached-container.d.ts | 47 - .../client/pixi/helpers/control-icon.d.ts | 20 - .../client/pixi/helpers/door-control.d.ts | 49 - .../client/pixi/helpers/grid-highlight.d.ts | 22 - .../foundry/client/pixi/helpers/index.d.ts | 9 - .../client/pixi/helpers/object-hud.d.ts | 53 - .../client/pixi/helpers/precise-text.d.ts | 21 - .../foundry/client/pixi/helpers/ray/base.d.ts | 76 - .../client/pixi/helpers/ray/index.d.ts | 2 - .../client/pixi/helpers/ray/sight-ray.d.ts | 0 .../client/pixi/helpers/resize-handle.d.ts | 46 - types/types/foundry/client/pixi/index.d.ts | 158 - .../client/pixi/layers/base/canvas-layer.d.ts | 68 - .../client/pixi/layers/base/index.d.ts | 3 - .../pixi/layers/base/interaction-layer.d.ts | 126 - .../pixi/layers/base/placeables-layer.d.ts | 401 - .../client/pixi/layers/controls/index.d.ts | 2 - .../client/pixi/layers/controls/layer.d.ts | 107 - .../client/pixi/layers/controls/ruler.d.ts | 351 - .../client/pixi/layers/effects/index.d.ts | 1 - .../pixi/layers/effects/visibility.d.ts | 134 - .../client/pixi/layers/grid/index.d.ts | 1 - .../client/pixi/layers/grid/layer.d.ts | 121 - .../foundry/client/pixi/layers/index.d.ts | 5 - .../pixi/layers/placeables/drawings.d.ts | 9 - .../client/pixi/layers/placeables/index.d.ts | 8 - .../pixi/layers/placeables/lighting.d.ts | 75 - .../client/pixi/layers/placeables/notes.d.ts | 3 - .../client/pixi/layers/placeables/sounds.d.ts | 7 - .../pixi/layers/placeables/template.d.ts | 42 - .../client/pixi/layers/placeables/tiles.d.ts | 18 - .../client/pixi/layers/placeables/tokens.d.ts | 120 - .../client/pixi/layers/placeables/walls.d.ts | 268 - .../pixi/perception/clockwise-sweep.d.ts | 85 - .../pixi/perception/detection-mode.d.ts | 207 - .../foundry/client/pixi/perception/index.d.ts | 4 - .../pixi/perception/perception-manager.d.ts | 70 - .../client/pixi/perception/vision-mode.d.ts | 135 - .../types/foundry/client/pixi/placeable.d.ts | 428 - .../client/pixi/placeables/drawing.d.ts | 109 - .../foundry/client/pixi/placeables/index.d.ts | 19 - .../foundry/client/pixi/placeables/light.d.ts | 132 - .../foundry/client/pixi/placeables/note.d.ts | 62 - .../primary-canvas-objects/index.d.ts | 3 - .../primary-canvas-object.ts | 212 - .../primary-occludable-object.ts | 137 - .../primary-sprite-mesh.d.ts | 118 - .../client/pixi/placeables/region.d.ts | 147 - .../foundry/client/pixi/placeables/sound.d.ts | 96 - .../client/pixi/placeables/template.d.ts | 164 - .../foundry/client/pixi/placeables/tile.d.ts | 192 - .../foundry/client/pixi/placeables/token.d.ts | 826 - .../foundry/client/pixi/placeables/wall.d.ts | 155 - types/types/foundry/client/pixi/plugins.d.ts | 9 - .../client/pixi/special-effect/base.d.ts | 15 - .../client/pixi/special-effect/index.d.ts | 1 - .../types/foundry/client/pixi/webgl/base.d.ts | 137 - .../pixi/webgl/extensions/batch-renderer.d.ts | 63 - .../extensions/batch-shader-generator.d.ts | 11 - .../client/pixi/webgl/extensions/index.d.ts | 2 - .../client/pixi/webgl/filters/filters.d.ts | 52 - .../client/pixi/webgl/filters/index.d.ts | 1 - .../foundry/client/pixi/webgl/index.d.ts | 4 - .../pixi/webgl/shaders/filters/index.d.ts | 1 - .../webgl/shaders/filters/transition.d.ts | 76 - .../client/pixi/webgl/shaders/index.d.ts | 4 - .../client/pixi/webgl/shaders/region.d.ts | 6 - .../client/pixi/webgl/shaders/sampler.d.ts | 43 - .../webgl/shaders/samplers/base-sampler.d.ts | 103 - .../pixi/webgl/shaders/samplers/depth.d.ts | 86 - .../pixi/webgl/shaders/samplers/index.d.ts | 4 - .../webgl/shaders/samplers/occlusion.d.ts | 87 - .../pixi/webgl/shaders/samplers/primary.d.ts | 19 - types/types/foundry/client/roll.d.ts | 523 - types/types/foundry/client/ui/context.d.ts | 114 - types/types/foundry/client/ui/dialog.d.ts | 201 - types/types/foundry/client/ui/dragdrop.d.ts | 90 - types/types/foundry/client/ui/editor.d.ts | 323 - types/types/foundry/client/ui/filepicker.d.ts | 202 - types/types/foundry/client/ui/index.d.ts | 36 - .../foundry/client/ui/notifications.d.ts | 88 - .../types/foundry/client/ui/prosemirror.d.ts | 154 - types/types/foundry/client/ui/secrets.d.ts | 68 - types/types/foundry/client/ui/tabs.d.ts | 68 - types/types/foundry/client/ui/tooltip.d.ts | 160 - types/types/foundry/client/ui/tour.d.ts | 214 - .../types/foundry/common/abstract/_types.d.ts | 126 - .../foundry/common/abstract/backend.d.ts | 170 - types/types/foundry/common/abstract/data.d.ts | 254 - .../foundry/common/abstract/document.d.ts | 742 - .../common/abstract/embedded-collection.d.ts | 149 - .../types/foundry/common/abstract/module.d.ts | 7 - .../types/foundry/common/abstract/socket.d.ts | 35 - .../foundry/common/abstract/type-data.d.ts | 84 - types/types/foundry/common/constants.d.ts | 934 -- types/types/foundry/common/data/data.d.ts | 356 - types/types/foundry/common/data/fields.d.ts | 1507 -- types/types/foundry/common/data/module.d.ts | 4 - .../common/data/validation-failure.d.ts | 134 - .../types/foundry/common/data/validators.d.ts | 55 - .../common/documents/active-effect.d.ts | 97 - .../foundry/common/documents/actor-delta.d.ts | 90 - .../types/foundry/common/documents/actor.d.ts | 121 - .../foundry/common/documents/adventure.d.ts | 104 - .../common/documents/ambient-light.d.ts | 49 - .../common/documents/ambient-sound.d.ts | 86 - .../types/foundry/common/documents/card.d.ts | 100 - .../types/foundry/common/documents/cards.d.ts | 91 - .../common/documents/chat-message.d.ts | 98 - .../foundry/common/documents/combat.d.ts | 48 - .../foundry/common/documents/combatant.d.ts | 49 - .../foundry/common/documents/drawing.d.ts | 107 - .../common/documents/fog-exploration.d.ts | 55 - .../foundry/common/documents/folder.d.ts | 56 - .../types/foundry/common/documents/item.d.ts | 95 - .../common/documents/journal-entry-page.d.ts | 82 - .../common/documents/journal-entry.d.ts | 55 - .../types/foundry/common/documents/macro.d.ts | 88 - .../common/documents/measured-template.d.ts | 79 - .../foundry/common/documents/module.d.ts | 32 - .../types/foundry/common/documents/note.d.ts | 86 - .../common/documents/playlist-sound.d.ts | 60 - .../foundry/common/documents/playlist.d.ts | 43 - .../common/documents/region-behavior.d.ts | 60 - .../foundry/common/documents/region.d.ts | 62 - .../foundry/common/documents/roll-table.d.ts | 69 - .../types/foundry/common/documents/scene.d.ts | 235 - .../foundry/common/documents/setting.d.ts | 45 - .../common/documents/table-result.d.ts | 64 - .../types/foundry/common/documents/tile.d.ts | 89 - .../types/foundry/common/documents/token.d.ts | 162 - .../types/foundry/common/documents/user.d.ts | 86 - .../types/foundry/common/documents/wall.d.ts | 77 - types/types/foundry/common/grid/base.d.ts | 332 - types/types/foundry/common/grid/grid-hex.d.ts | 51 - types/types/foundry/common/grid/gridless.d.ts | 54 - .../types/foundry/common/grid/hexagonal.d.ts | 167 - types/types/foundry/common/grid/module.d.ts | 5 - types/types/foundry/common/grid/square.d.ts | 83 - types/types/foundry/common/module.d.ts | 3 - .../foundry/common/packages/base-module.d.ts | 28 - .../foundry/common/packages/base-package.d.ts | 309 - .../foundry/common/packages/base-system.d.ts | 48 - .../foundry/common/packages/base-world.d.ts | 46 - .../types/foundry/common/packages/module.d.ts | 6 - .../foundry/common/packages/sub-types.d.ts | 11 - .../foundry/common/primitives/array.d.ts | 46 - .../types/foundry/common/primitives/date.d.ts | 20 - .../types/foundry/common/primitives/math.d.ts | 72 - .../foundry/common/primitives/module.d.ts | 8 - .../foundry/common/primitives/number.d.ts | 75 - .../foundry/common/primitives/regexp.d.ts | 8 - .../types/foundry/common/primitives/set.d.ts | 125 - .../foundry/common/primitives/string.d.ts | 18 - .../types/foundry/common/primitives/url.d.ts | 10 - .../foundry/common/prosemirror/dropdown.d.ts | 54 - .../foundry/common/prosemirror/menu.d.ts | 211 - .../foundry/common/prosemirror/module.d.ts | 9 - .../foundry/common/prosemirror/plugin.d.ts | 20 - types/types/foundry/common/types.d.ts | 207 - .../foundry/common/utils/collection.d.ts | 120 - types/types/foundry/common/utils/color.d.ts | 143 - .../types/foundry/common/utils/geometry.d.ts | 151 - types/types/foundry/common/utils/helpers.d.ts | 339 - types/types/foundry/common/utils/http.d.ts | 37 - types/types/foundry/common/utils/module.d.ts | 5 - types/types/foundry/index.d.ts | 6 - types/types/foundry/package.json | 23 - types/types/foundry/scripts/prose-mirror.d.ts | 20 - types/types/foundry/tsconfig.json | 20 - types/types/foundry/util.d.ts | 37 - types/vite.config.d.ts | 3 - vite.config.ts | 191 +- 1396 files changed, 1039 insertions(+), 83359 deletions(-) delete mode 100644 types/README.md delete mode 100644 types/build/build-packs.d.ts delete mode 100644 types/build/clean.d.ts delete mode 100644 types/build/conditions.d.ts delete mode 100644 types/build/extract-packs.d.ts delete mode 100644 types/build/lib/compendium-pack.d.ts delete mode 100644 types/build/lib/extractor.d.ts delete mode 100644 types/build/lib/foundry-utils.d.ts delete mode 100644 types/build/lib/helpers.d.ts delete mode 100644 types/build/lib/level-database.d.ts delete mode 100644 types/build/lib/types.d.ts delete mode 100644 types/build/link-foundry.d.ts delete mode 100644 types/build/run-migration.d.ts delete mode 100644 types/src/global.d.ts delete mode 100644 types/src/module/active-effect.d.ts delete mode 100644 types/src/module/actor/actions/base.d.ts delete mode 100644 types/src/module/actor/actions/index.d.ts delete mode 100644 types/src/module/actor/actions/simple.d.ts delete mode 100644 types/src/module/actor/actions/single-check.d.ts delete mode 100644 types/src/module/actor/actions/types.d.ts delete mode 100644 types/src/module/actor/army/data.d.ts delete mode 100644 types/src/module/actor/army/document.d.ts delete mode 100644 types/src/module/actor/army/sheet.d.ts delete mode 100644 types/src/module/actor/army/types.d.ts delete mode 100644 types/src/module/actor/army/values.d.ts delete mode 100644 types/src/module/actor/base.d.ts delete mode 100644 types/src/module/actor/character/apps/attack-popout.d.ts delete mode 100644 types/src/module/actor/character/apps/attribute-builder.d.ts delete mode 100644 types/src/module/actor/character/automatic-bonus-progression.d.ts delete mode 100644 types/src/module/actor/character/config.d.ts delete mode 100644 types/src/module/actor/character/crafting/ability.d.ts delete mode 100644 types/src/module/actor/character/crafting/crafting.d.ts delete mode 100644 types/src/module/actor/character/crafting/helpers.d.ts delete mode 100644 types/src/module/actor/character/crafting/index.d.ts delete mode 100644 types/src/module/actor/character/crafting/types.d.ts delete mode 100644 types/src/module/actor/character/data.d.ts delete mode 100644 types/src/module/actor/character/document.d.ts delete mode 100644 types/src/module/actor/character/elemental-blast.d.ts delete mode 100644 types/src/module/actor/character/feats/collection.d.ts delete mode 100644 types/src/module/actor/character/feats/group.d.ts delete mode 100644 types/src/module/actor/character/feats/index.d.ts delete mode 100644 types/src/module/actor/character/feats/types.d.ts delete mode 100644 types/src/module/actor/character/helpers.d.ts delete mode 100644 types/src/module/actor/character/index.d.ts delete mode 100644 types/src/module/actor/character/sheet.d.ts delete mode 100644 types/src/module/actor/character/tab-manager.d.ts delete mode 100644 types/src/module/actor/character/types.d.ts delete mode 100644 types/src/module/actor/character/values.d.ts delete mode 100644 types/src/module/actor/conditions.d.ts delete mode 100644 types/src/module/actor/creature/config.d.ts delete mode 100644 types/src/module/actor/creature/data.d.ts delete mode 100644 types/src/module/actor/creature/document.d.ts delete mode 100644 types/src/module/actor/creature/helpers.d.ts delete mode 100644 types/src/module/actor/creature/index.d.ts delete mode 100644 types/src/module/actor/creature/sense.d.ts delete mode 100644 types/src/module/actor/creature/sheet.d.ts delete mode 100644 types/src/module/actor/creature/spell-preparation-sheet.d.ts delete mode 100644 types/src/module/actor/creature/types.d.ts delete mode 100644 types/src/module/actor/creature/values.d.ts delete mode 100644 types/src/module/actor/data/base.d.ts delete mode 100644 types/src/module/actor/data/index.d.ts delete mode 100644 types/src/module/actor/data/iwr.d.ts delete mode 100644 types/src/module/actor/data/model.d.ts delete mode 100644 types/src/module/actor/data/size.d.ts delete mode 100644 types/src/module/actor/familiar/data.d.ts delete mode 100644 types/src/module/actor/familiar/document.d.ts delete mode 100644 types/src/module/actor/familiar/index.d.ts delete mode 100644 types/src/module/actor/familiar/sheet.d.ts delete mode 100644 types/src/module/actor/hazard/data.d.ts delete mode 100644 types/src/module/actor/hazard/document.d.ts delete mode 100644 types/src/module/actor/hazard/index.d.ts delete mode 100644 types/src/module/actor/hazard/sheet.d.ts delete mode 100644 types/src/module/actor/hazard/types.d.ts delete mode 100644 types/src/module/actor/helpers.d.ts delete mode 100644 types/src/module/actor/index.d.ts delete mode 100644 types/src/module/actor/initiative.d.ts delete mode 100644 types/src/module/actor/inventory/bulk.d.ts delete mode 100644 types/src/module/actor/inventory/index.d.ts delete mode 100644 types/src/module/actor/item-transfer.d.ts delete mode 100644 types/src/module/actor/loot/data.d.ts delete mode 100644 types/src/module/actor/loot/document.d.ts delete mode 100644 types/src/module/actor/loot/index.d.ts delete mode 100644 types/src/module/actor/loot/sheet.d.ts delete mode 100644 types/src/module/actor/modifiers.d.ts delete mode 100644 types/src/module/actor/npc/config.d.ts delete mode 100644 types/src/module/actor/npc/data.d.ts delete mode 100644 types/src/module/actor/npc/document.d.ts delete mode 100644 types/src/module/actor/npc/index.d.ts delete mode 100644 types/src/module/actor/npc/sheet.d.ts delete mode 100644 types/src/module/actor/npc/skills-editor.d.ts delete mode 100644 types/src/module/actor/npc/types.d.ts delete mode 100644 types/src/module/actor/party/data.d.ts delete mode 100644 types/src/module/actor/party/document.d.ts delete mode 100644 types/src/module/actor/party/helpers.d.ts delete mode 100644 types/src/module/actor/party/index.d.ts delete mode 100644 types/src/module/actor/party/kingdom/builder.d.ts delete mode 100644 types/src/module/actor/party/kingdom/chat.d.ts delete mode 100644 types/src/module/actor/party/kingdom/helpers.d.ts delete mode 100644 types/src/module/actor/party/kingdom/index.d.ts delete mode 100644 types/src/module/actor/party/kingdom/model.d.ts delete mode 100644 types/src/module/actor/party/kingdom/schema.d.ts delete mode 100644 types/src/module/actor/party/kingdom/sheet.d.ts delete mode 100644 types/src/module/actor/party/kingdom/types.d.ts delete mode 100644 types/src/module/actor/party/kingdom/values.d.ts delete mode 100644 types/src/module/actor/party/sheet.d.ts delete mode 100644 types/src/module/actor/party/types.d.ts delete mode 100644 types/src/module/actor/roll-context/base.d.ts delete mode 100644 types/src/module/actor/roll-context/check.d.ts delete mode 100644 types/src/module/actor/roll-context/damage.d.ts delete mode 100644 types/src/module/actor/roll-context/types.d.ts delete mode 100644 types/src/module/actor/sheet/base.d.ts delete mode 100644 types/src/module/actor/sheet/data-types.d.ts delete mode 100644 types/src/module/actor/sheet/helpers.d.ts delete mode 100644 types/src/module/actor/sheet/item-summary-renderer.d.ts delete mode 100644 types/src/module/actor/sheet/popups/add-coins-popup.d.ts delete mode 100644 types/src/module/actor/sheet/popups/casting-item-create-dialog.d.ts delete mode 100644 types/src/module/actor/sheet/popups/distribute-coins-popup.d.ts delete mode 100644 types/src/module/actor/sheet/popups/identify-popup.d.ts delete mode 100644 types/src/module/actor/sheet/popups/item-transfer-dialog.d.ts delete mode 100644 types/src/module/actor/sheet/popups/iwr-editor.d.ts delete mode 100644 types/src/module/actor/sheet/popups/loot-npcs-popup.d.ts delete mode 100644 types/src/module/actor/sheet/popups/manage-attack-proficiencies.d.ts delete mode 100644 types/src/module/actor/sheet/popups/recall-knowledge-popup.d.ts delete mode 100644 types/src/module/actor/sheet/popups/remove-coins-popup.d.ts delete mode 100644 types/src/module/actor/sheet/spellcasting-dialog.d.ts delete mode 100644 types/src/module/actor/sheet/trick-magic-item-popup.d.ts delete mode 100644 types/src/module/actor/spellcasting.d.ts delete mode 100644 types/src/module/actor/types.d.ts delete mode 100644 types/src/module/actor/values.d.ts delete mode 100644 types/src/module/actor/vehicle/data.d.ts delete mode 100644 types/src/module/actor/vehicle/document.d.ts delete mode 100644 types/src/module/actor/vehicle/index.d.ts delete mode 100644 types/src/module/actor/vehicle/sheet.d.ts delete mode 100644 types/src/module/actor/vehicle/types.d.ts delete mode 100644 types/src/module/apps/compendium-browser/data.d.ts delete mode 100644 types/src/module/apps/compendium-browser/index.d.ts delete mode 100644 types/src/module/apps/compendium-browser/loader.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/action.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/base.svelte.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/bestiary.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/campaign-feature.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/data.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/equipment.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/feat.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/hazard.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/index.d.ts delete mode 100644 types/src/module/apps/compendium-browser/tabs/spell.d.ts delete mode 100644 types/src/module/apps/compendium-migration-status.d.ts delete mode 100644 types/src/module/apps/effects-panel.d.ts delete mode 100644 types/src/module/apps/hotbar.d.ts delete mode 100644 types/src/module/apps/item-attacher.d.ts delete mode 100644 types/src/module/apps/license-viewer/app.d.ts delete mode 100644 types/src/module/apps/migration-summary.d.ts delete mode 100644 types/src/module/apps/pick-a-thing-prompt.d.ts delete mode 100644 types/src/module/apps/scene-darkness-adjuster.d.ts delete mode 100644 types/src/module/apps/sidebar/actor-directory.d.ts delete mode 100644 types/src/module/apps/sidebar/chat-log.d.ts delete mode 100644 types/src/module/apps/sidebar/compendium-directory.d.ts delete mode 100644 types/src/module/apps/sidebar/encounter-tracker.d.ts delete mode 100644 types/src/module/apps/sidebar/index.d.ts delete mode 100644 types/src/module/apps/sidebar/item-directory.d.ts delete mode 100644 types/src/module/apps/world-clock/animate-darkness.d.ts delete mode 100644 types/src/module/apps/world-clock/app.d.ts delete mode 100644 types/src/module/apps/world-clock/index.d.ts delete mode 100644 types/src/module/apps/world-clock/time-of-day.d.ts delete mode 100644 types/src/module/canvas/ambient-light.d.ts delete mode 100644 types/src/module/canvas/drop-canvas-data.d.ts delete mode 100644 types/src/module/canvas/effect-area-square.d.ts delete mode 100644 types/src/module/canvas/group/effects.d.ts delete mode 100644 types/src/module/canvas/group/environment.d.ts delete mode 100644 types/src/module/canvas/helpers.d.ts delete mode 100644 types/src/module/canvas/index.d.ts delete mode 100644 types/src/module/canvas/layer/lighting.d.ts delete mode 100644 types/src/module/canvas/layer/template.d.ts delete mode 100644 types/src/module/canvas/layer/token.d.ts delete mode 100644 types/src/module/canvas/layer/visibility.d.ts delete mode 100644 types/src/module/canvas/measured-template.d.ts delete mode 100644 types/src/module/canvas/perception/modes.d.ts delete mode 100644 types/src/module/canvas/perception/point-vision-source.d.ts delete mode 100644 types/src/module/canvas/region.d.ts delete mode 100644 types/src/module/canvas/ruler.d.ts delete mode 100644 types/src/module/canvas/status-effects.d.ts delete mode 100644 types/src/module/canvas/token/aura/index.d.ts delete mode 100644 types/src/module/canvas/token/aura/map.d.ts delete mode 100644 types/src/module/canvas/token/aura/renderer.d.ts delete mode 100644 types/src/module/canvas/token/aura/util.d.ts delete mode 100644 types/src/module/canvas/token/flanking-highlight/renderer.d.ts delete mode 100644 types/src/module/canvas/token/index.d.ts delete mode 100644 types/src/module/canvas/token/object.d.ts delete mode 100644 types/src/module/chat-message/crit-fumble-cards.d.ts delete mode 100644 types/src/module/chat-message/data.d.ts delete mode 100644 types/src/module/chat-message/document.d.ts delete mode 100644 types/src/module/chat-message/helpers.d.ts delete mode 100644 types/src/module/chat-message/index.d.ts delete mode 100644 types/src/module/chat-message/listeners/cards.d.ts delete mode 100644 types/src/module/chat-message/listeners/damage-taken.d.ts delete mode 100644 types/src/module/chat-message/listeners/degree-of-success.d.ts delete mode 100644 types/src/module/chat-message/listeners/index.d.ts delete mode 100644 types/src/module/chat-message/listeners/set-as-initiative.d.ts delete mode 100644 types/src/module/chat-message/roll-inspector.d.ts delete mode 100644 types/src/module/collection/actors.d.ts delete mode 100644 types/src/module/data.d.ts delete mode 100644 types/src/module/dc.d.ts delete mode 100644 types/src/module/doc-helpers.d.ts delete mode 100644 types/src/module/encounter/combatant.d.ts delete mode 100644 types/src/module/encounter/document.d.ts delete mode 100644 types/src/module/encounter/index.d.ts delete mode 100644 types/src/module/item/abc/data.d.ts delete mode 100644 types/src/module/item/abc/document.d.ts delete mode 100644 types/src/module/item/abc/index.d.ts delete mode 100644 types/src/module/item/abc/sheet.d.ts delete mode 100644 types/src/module/item/ability/data.d.ts delete mode 100644 types/src/module/item/ability/document.d.ts delete mode 100644 types/src/module/item/ability/helpers.d.ts delete mode 100644 types/src/module/item/ability/index.d.ts delete mode 100644 types/src/module/item/ability/sheet.d.ts delete mode 100644 types/src/module/item/ability/trait-toggles.d.ts delete mode 100644 types/src/module/item/ability/types.d.ts delete mode 100644 types/src/module/item/abstract-effect/data.d.ts delete mode 100644 types/src/module/item/abstract-effect/document.d.ts delete mode 100644 types/src/module/item/abstract-effect/helpers.d.ts delete mode 100644 types/src/module/item/abstract-effect/index.d.ts delete mode 100644 types/src/module/item/abstract-effect/types.d.ts delete mode 100644 types/src/module/item/abstract-effect/values.d.ts delete mode 100644 types/src/module/item/affliction/data.d.ts delete mode 100644 types/src/module/item/affliction/document.d.ts delete mode 100644 types/src/module/item/affliction/index.d.ts delete mode 100644 types/src/module/item/affliction/sheet.d.ts delete mode 100644 types/src/module/item/ancestry/data.d.ts delete mode 100644 types/src/module/item/ancestry/document.d.ts delete mode 100644 types/src/module/item/ancestry/index.d.ts delete mode 100644 types/src/module/item/ancestry/sheet.d.ts delete mode 100644 types/src/module/item/armor/data.d.ts delete mode 100644 types/src/module/item/armor/document.d.ts delete mode 100644 types/src/module/item/armor/index.d.ts delete mode 100644 types/src/module/item/armor/sheet.d.ts delete mode 100644 types/src/module/item/armor/types.d.ts delete mode 100644 types/src/module/item/armor/values.d.ts delete mode 100644 types/src/module/item/background/data.d.ts delete mode 100644 types/src/module/item/background/document.d.ts delete mode 100644 types/src/module/item/background/index.d.ts delete mode 100644 types/src/module/item/background/sheet.d.ts delete mode 100644 types/src/module/item/background/types.d.ts delete mode 100644 types/src/module/item/base/data/index.d.ts delete mode 100644 types/src/module/item/base/data/model.d.ts delete mode 100644 types/src/module/item/base/data/system.d.ts delete mode 100644 types/src/module/item/base/data/values.d.ts delete mode 100644 types/src/module/item/base/document.d.ts delete mode 100644 types/src/module/item/base/sheet/codemirror.d.ts delete mode 100644 types/src/module/item/base/sheet/index.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/actor-traits.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/aura.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/base.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/fast-healing.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/flat-modifier.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/grant-item.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/index.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/multiple-attack-penalty.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/roll-note.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/token-image.d.ts delete mode 100644 types/src/module/item/base/sheet/rule-element-form/token-light.d.ts delete mode 100644 types/src/module/item/base/sheet/sheet.d.ts delete mode 100644 types/src/module/item/base/types.d.ts delete mode 100644 types/src/module/item/book/data.d.ts delete mode 100644 types/src/module/item/book/document.d.ts delete mode 100644 types/src/module/item/book/index.d.ts delete mode 100644 types/src/module/item/book/sheet.d.ts delete mode 100644 types/src/module/item/campaign-feature/data.d.ts delete mode 100644 types/src/module/item/campaign-feature/document.d.ts delete mode 100644 types/src/module/item/campaign-feature/index.d.ts delete mode 100644 types/src/module/item/campaign-feature/sheet.d.ts delete mode 100644 types/src/module/item/campaign-feature/types.d.ts delete mode 100644 types/src/module/item/campaign-feature/values.d.ts delete mode 100644 types/src/module/item/class/data.d.ts delete mode 100644 types/src/module/item/class/document.d.ts delete mode 100644 types/src/module/item/class/index.d.ts delete mode 100644 types/src/module/item/class/sheet.d.ts delete mode 100644 types/src/module/item/class/types.d.ts delete mode 100644 types/src/module/item/class/values.d.ts delete mode 100644 types/src/module/item/condition/data.d.ts delete mode 100644 types/src/module/item/condition/document.d.ts delete mode 100644 types/src/module/item/condition/index.d.ts delete mode 100644 types/src/module/item/condition/persistent-damage-dialog.d.ts delete mode 100644 types/src/module/item/condition/sheet.d.ts delete mode 100644 types/src/module/item/condition/types.d.ts delete mode 100644 types/src/module/item/condition/values.d.ts delete mode 100644 types/src/module/item/consumable/data.d.ts delete mode 100644 types/src/module/item/consumable/document.d.ts delete mode 100644 types/src/module/item/consumable/index.d.ts delete mode 100644 types/src/module/item/consumable/sheet.d.ts delete mode 100644 types/src/module/item/consumable/spell-consumables.d.ts delete mode 100644 types/src/module/item/consumable/types.d.ts delete mode 100644 types/src/module/item/consumable/values.d.ts delete mode 100644 types/src/module/item/container/data.d.ts delete mode 100644 types/src/module/item/container/document.d.ts delete mode 100644 types/src/module/item/container/helpers.d.ts delete mode 100644 types/src/module/item/container/index.d.ts delete mode 100644 types/src/module/item/container/sheet.d.ts delete mode 100644 types/src/module/item/deity/data.d.ts delete mode 100644 types/src/module/item/deity/document.d.ts delete mode 100644 types/src/module/item/deity/index.d.ts delete mode 100644 types/src/module/item/deity/sheet.d.ts delete mode 100644 types/src/module/item/deity/types.d.ts delete mode 100644 types/src/module/item/deity/values.d.ts delete mode 100644 types/src/module/item/effect/data.d.ts delete mode 100644 types/src/module/item/effect/document.d.ts delete mode 100644 types/src/module/item/effect/helpers.d.ts delete mode 100644 types/src/module/item/effect/index.d.ts delete mode 100644 types/src/module/item/effect/sheet.d.ts delete mode 100644 types/src/module/item/equipment/data.d.ts delete mode 100644 types/src/module/item/equipment/document.d.ts delete mode 100644 types/src/module/item/equipment/index.d.ts delete mode 100644 types/src/module/item/equipment/sheet.d.ts delete mode 100644 types/src/module/item/equipment/types.d.ts delete mode 100644 types/src/module/item/feat/data.d.ts delete mode 100644 types/src/module/item/feat/document.d.ts delete mode 100644 types/src/module/item/feat/helpers.d.ts delete mode 100644 types/src/module/item/feat/index.d.ts delete mode 100644 types/src/module/item/feat/sheet.d.ts delete mode 100644 types/src/module/item/feat/types.d.ts delete mode 100644 types/src/module/item/feat/values.d.ts delete mode 100644 types/src/module/item/helpers.d.ts delete mode 100644 types/src/module/item/heritage/data.d.ts delete mode 100644 types/src/module/item/heritage/document.d.ts delete mode 100644 types/src/module/item/heritage/index.d.ts delete mode 100644 types/src/module/item/heritage/sheet.d.ts delete mode 100644 types/src/module/item/identification.d.ts delete mode 100644 types/src/module/item/index.d.ts delete mode 100644 types/src/module/item/kit/data.d.ts delete mode 100644 types/src/module/item/kit/document.d.ts delete mode 100644 types/src/module/item/kit/index.d.ts delete mode 100644 types/src/module/item/kit/sheet.d.ts delete mode 100644 types/src/module/item/lore.d.ts delete mode 100644 types/src/module/item/melee/data.d.ts delete mode 100644 types/src/module/item/melee/document.d.ts delete mode 100644 types/src/module/item/melee/index.d.ts delete mode 100644 types/src/module/item/melee/sheet.d.ts delete mode 100644 types/src/module/item/melee/types.d.ts delete mode 100644 types/src/module/item/physical/bulk.d.ts delete mode 100644 types/src/module/item/physical/coins.d.ts delete mode 100644 types/src/module/item/physical/data.d.ts delete mode 100644 types/src/module/item/physical/document.d.ts delete mode 100644 types/src/module/item/physical/helpers.d.ts delete mode 100644 types/src/module/item/physical/index.d.ts delete mode 100644 types/src/module/item/physical/materials.d.ts delete mode 100644 types/src/module/item/physical/runes.d.ts delete mode 100644 types/src/module/item/physical/schema.d.ts delete mode 100644 types/src/module/item/physical/sheet.d.ts delete mode 100644 types/src/module/item/physical/types.d.ts delete mode 100644 types/src/module/item/physical/usage.d.ts delete mode 100644 types/src/module/item/physical/values.d.ts delete mode 100644 types/src/module/item/shield/data.d.ts delete mode 100644 types/src/module/item/shield/document.d.ts delete mode 100644 types/src/module/item/shield/helpers.d.ts delete mode 100644 types/src/module/item/shield/sheet.d.ts delete mode 100644 types/src/module/item/shield/types.d.ts delete mode 100644 types/src/module/item/shield/values.d.ts delete mode 100644 types/src/module/item/spell/data.d.ts delete mode 100644 types/src/module/item/spell/document.d.ts delete mode 100644 types/src/module/item/spell/helpers.d.ts delete mode 100644 types/src/module/item/spell/index.d.ts delete mode 100644 types/src/module/item/spell/overlay.d.ts delete mode 100644 types/src/module/item/spell/sheet.d.ts delete mode 100644 types/src/module/item/spell/types.d.ts delete mode 100644 types/src/module/item/spell/values.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/collection.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/data.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/document.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/helpers.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/index.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/item-spellcasting.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/rituals.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/trick.d.ts delete mode 100644 types/src/module/item/spellcasting-entry/types.d.ts delete mode 100644 types/src/module/item/treasure/data.d.ts delete mode 100644 types/src/module/item/treasure/document.d.ts delete mode 100644 types/src/module/item/treasure/index.d.ts delete mode 100644 types/src/module/item/treasure/sheet.d.ts delete mode 100644 types/src/module/item/types.d.ts delete mode 100644 types/src/module/item/values.d.ts delete mode 100644 types/src/module/item/weapon/data.d.ts delete mode 100644 types/src/module/item/weapon/document.d.ts delete mode 100644 types/src/module/item/weapon/helpers.d.ts delete mode 100644 types/src/module/item/weapon/index.d.ts delete mode 100644 types/src/module/item/weapon/sheet.d.ts delete mode 100644 types/src/module/item/weapon/trait-toggles.d.ts delete mode 100644 types/src/module/item/weapon/types.d.ts delete mode 100644 types/src/module/item/weapon/values.d.ts delete mode 100644 types/src/module/journal-entry/sheet.d.ts delete mode 100644 types/src/module/macro.d.ts delete mode 100644 types/src/module/migration/base.d.ts delete mode 100644 types/src/module/migration/index.d.ts delete mode 100644 types/src/module/migration/migrations/700-single-class-features.d.ts delete mode 100644 types/src/module/migration/migrations/701-modifier-name-to-slug.d.ts delete mode 100644 types/src/module/migration/migrations/702-re-formulas-at-instance-level.d.ts delete mode 100644 types/src/module/migration/migrations/703-spell-damage-structure.d.ts delete mode 100644 types/src/module/migration/migrations/704-martial-proficiency-re.d.ts delete mode 100644 types/src/module/migration/migrations/705-gunslinger-catch-up.d.ts delete mode 100644 types/src/module/migration/migrations/706-formulas-at-instance-level-everything-else.d.ts delete mode 100644 types/src/module/migration/migrations/707-bracketed-formulas-at-instance-level.d.ts delete mode 100644 types/src/module/migration/migrations/708-specific-rule-label.d.ts delete mode 100644 types/src/module/migration/migrations/709-re-formulas-at-instance-level-redux.d.ts delete mode 100644 types/src/module/migration/migrations/710-rarity-to-string.d.ts delete mode 100644 types/src/module/migration/migrations/711-heritage-items.d.ts delete mode 100644 types/src/module/migration/migrations/712-actor-shield-structure.d.ts delete mode 100644 types/src/module/migration/migrations/713-fist-to-strike-re.d.ts delete mode 100644 types/src/module/migration/migrations/714-range-increment-res.d.ts delete mode 100644 types/src/module/migration/migrations/715-dangerous-sorcery.d.ts delete mode 100644 types/src/module/migration/migrations/716-strike-damage-selector.d.ts delete mode 100644 types/src/module/migration/migrations/717-take-feat-limits.d.ts delete mode 100644 types/src/module/migration/migrations/718-carry-type.d.ts delete mode 100644 types/src/module/migration/migrations/719-shrug-flanking.d.ts delete mode 100644 types/src/module/migration/migrations/720-update-spell-descriptions.d.ts delete mode 100644 types/src/module/migration/migrations/721-set-reload-values.d.ts delete mode 100644 types/src/module/migration/migrations/722-crafting-system-data.d.ts delete mode 100644 types/src/module/migration/migrations/723-cumulative-item-bonuses.d.ts delete mode 100644 types/src/module/migration/migrations/724-crafting-max-item-level.d.ts delete mode 100644 types/src/module/migration/migrations/725-quick-climb-rule-elements.d.ts delete mode 100644 types/src/module/migration/migrations/726-journal-setting.d.ts delete mode 100644 types/src/module/migration/migrations/727-trim-self-roll-options.d.ts delete mode 100644 types/src/module/migration/migrations/728-flatten-physical-properties.d.ts delete mode 100644 types/src/module/migration/migrations/729-cumulative-item-bonus-cleanup.d.ts delete mode 100644 types/src/module/migration/migrations/730-derune-handwraps.d.ts delete mode 100644 types/src/module/migration/migrations/731-toggle-property-to-roll-option.d.ts delete mode 100644 types/src/module/migration/migrations/732-fix-dedication-feat-types.d.ts delete mode 100644 types/src/module/migration/migrations/733-item-bonus-from-equipment.d.ts delete mode 100644 types/src/module/migration/migrations/734-spell-location-props-and-signature.d.ts delete mode 100644 types/src/module/migration/migrations/735-firearm-ammo-alchemical.d.ts delete mode 100644 types/src/module/migration/migrations/736-remove-broken-threshold.d.ts delete mode 100644 types/src/module/migration/migrations/737-normalize-re-keys.d.ts delete mode 100644 types/src/module/migration/migrations/738-update-laughing-shadow.d.ts delete mode 100644 types/src/module/migration/migrations/739-recovery-check-dc.d.ts delete mode 100644 types/src/module/migration/migrations/740-fix-max-takable.d.ts delete mode 100644 types/src/module/migration/migrations/741-roll-option-toggle-to-item.d.ts delete mode 100644 types/src/module/migration/migrations/742-rm-class-ability-boost-levels.d.ts delete mode 100644 types/src/module/migration/migrations/743-fix-weakness-structure.d.ts delete mode 100644 types/src/module/migration/migrations/744-migrate-spell-heighten.d.ts delete mode 100644 types/src/module/migration/migrations/745-effect-target-to-choice-set.d.ts delete mode 100644 types/src/module/migration/migrations/746-standardize-pricing.d.ts delete mode 100644 types/src/module/migration/migrations/747-fixed-heightening.d.ts delete mode 100644 types/src/module/migration/migrations/748-batch-consumable-pricing.d.ts delete mode 100644 types/src/module/migration/migrations/749-assurance-res.d.ts delete mode 100644 types/src/module/migration/migrations/750-fix-corrupted-price.d.ts delete mode 100644 types/src/module/migration/migrations/751-reset-roll-options.d.ts delete mode 100644 types/src/module/migration/migrations/752-strike-vs-weapon-traits.d.ts delete mode 100644 types/src/module/migration/migrations/753-weapon-reload-times.d.ts delete mode 100644 types/src/module/migration/migrations/754-mighty-bulwark-adjust-modifiers.d.ts delete mode 100644 types/src/module/migration/migrations/755-grant-ids-to-data.d.ts delete mode 100644 types/src/module/migration/migrations/756-rm-stored-resource-maxes.d.ts delete mode 100644 types/src/module/migration/migrations/757-hillock-halfling.d.ts delete mode 100644 types/src/module/migration/migrations/758-prune-pc-attributes.d.ts delete mode 100644 types/src/module/migration/migrations/759-crit-spec-re.d.ts delete mode 100644 types/src/module/migration/migrations/760-separate-note-title.d.ts delete mode 100644 types/src/module/migration/migrations/761-update-shot-rules.d.ts delete mode 100644 types/src/module/migration/migrations/762-update-background-items.d.ts delete mode 100644 types/src/module/migration/migrations/763-restore-animal-strike-options.d.ts delete mode 100644 types/src/module/migration/migrations/764-panache-vivacious-res.d.ts delete mode 100644 types/src/module/migration/migrations/765-choice-owned-item-types.d.ts delete mode 100644 types/src/module/migration/migrations/766-wipe-url-sources.d.ts delete mode 100644 types/src/module/migration/migrations/767-convert-voluntary-flaws.d.ts delete mode 100644 types/src/module/migration/migrations/768-add-new-auras.d.ts delete mode 100644 types/src/module/migration/migrations/769-no-universalist-focus-pool.d.ts delete mode 100644 types/src/module/migration/migrations/770-re-data-to-system.d.ts delete mode 100644 types/src/module/migration/migrations/771-spell-variants-to-system.d.ts delete mode 100644 types/src/module/migration/migrations/772-v10-embedded-spell-data.d.ts delete mode 100644 types/src/module/migration/migrations/773-religious-symbol-usage.d.ts delete mode 100644 types/src/module/migration/migrations/774-unpersist-crafting-entries.d.ts delete mode 100644 types/src/module/migration/migrations/775-agile-finesse-ranged.d.ts delete mode 100644 types/src/module/migration/migrations/776-sluggify-condition-overrides.d.ts delete mode 100644 types/src/module/migration/migrations/777-hand-of-the-apprentice.d.ts delete mode 100644 types/src/module/migration/migrations/778-rename-feature-effects-refs.d.ts delete mode 100644 types/src/module/migration/migrations/779-elite-weak.d.ts delete mode 100644 types/src/module/migration/migrations/780-numify-speeds.d.ts delete mode 100644 types/src/module/migration/migrations/781-suppress-no-crowbar.d.ts delete mode 100644 types/src/module/migration/migrations/782-unnest-actor-traits.d.ts delete mode 100644 types/src/module/migration/migrations/783-remove-class-skill-ae-likes.d.ts delete mode 100644 types/src/module/migration/migrations/784-comp-browser-pack-setting.d.ts delete mode 100644 types/src/module/migration/migrations/785-abc-kit-items.d.ts delete mode 100644 types/src/module/migration/migrations/786-remove-identified-data.d.ts delete mode 100644 types/src/module/migration/migrations/787-resolvables-to-system.d.ts delete mode 100644 types/src/module/migration/migrations/788-update-tanglefoot-bags.d.ts delete mode 100644 types/src/module/migration/migrations/789-update-precise-strike.d.ts delete mode 100644 types/src/module/migration/migrations/790-multiple-class-dcs.d.ts delete mode 100644 types/src/module/migration/migrations/791-ruffian-hands.d.ts delete mode 100644 types/src/module/migration/migrations/792-remove-token-ae-likes.d.ts delete mode 100644 types/src/module/migration/migrations/793-make-predicates-arrays.d.ts delete mode 100644 types/src/module/migration/migrations/794-add-wild-shape-choices.d.ts delete mode 100644 types/src/module/migration/migrations/795-cleanup-flat-footed-toggle.d.ts delete mode 100644 types/src/module/migration/migrations/796-item-grants-to-objects.d.ts delete mode 100644 types/src/module/migration/migrations/797-metagame-settings.d.ts delete mode 100644 types/src/module/migration/migrations/798-weapon-to-item-statements.d.ts delete mode 100644 types/src/module/migration/migrations/799-rm-recall-knowledge-duplicates.d.ts delete mode 100644 types/src/module/migration/migrations/800-self-effect-panache-rage.d.ts delete mode 100644 types/src/module/migration/migrations/801-color-darkvision.d.ts delete mode 100644 types/src/module/migration/migrations/802-strip-feat-action-category.d.ts delete mode 100644 types/src/module/migration/migrations/803-normalize-spell-area.d.ts delete mode 100644 types/src/module/migration/migrations/804-remove-consumable-properties.d.ts delete mode 100644 types/src/module/migration/migrations/805-inline-damage-formulas.d.ts delete mode 100644 types/src/module/migration/migrations/806-torch-improvised-othertags.d.ts delete mode 100644 types/src/module/migration/migrations/807-rm-activated-effect-fields.d.ts delete mode 100644 types/src/module/migration/migrations/808-count-damage-dice.d.ts delete mode 100644 types/src/module/migration/migrations/809-automaton-enhancements.d.ts delete mode 100644 types/src/module/migration/migrations/810-loot-description-value.d.ts delete mode 100644 types/src/module/migration/migrations/811-inline-damage-rolls-persistent.d.ts delete mode 100644 types/src/module/migration/migrations/812-restructure-iwr.d.ts delete mode 100644 types/src/module/migration/migrations/813-normalize-cold-iron.d.ts delete mode 100644 types/src/module/migration/migrations/814-calculated-expanded-splash.d.ts delete mode 100644 types/src/module/migration/migrations/815-consumable-data-cleanup.d.ts delete mode 100644 types/src/module/migration/migrations/816-alchemist-research-fields.d.ts delete mode 100644 types/src/module/migration/migrations/817-field-discovery-predicates.d.ts delete mode 100644 types/src/module/migration/migrations/818-basic-undead-negative-healing.d.ts delete mode 100644 types/src/module/migration/migrations/819-spin-tale-adventure-specific.d.ts delete mode 100644 types/src/module/migration/migrations/820-remove-unused-traits-data.d.ts delete mode 100644 types/src/module/migration/migrations/821-inline-damage-rolls.d.ts delete mode 100644 types/src/module/migration/migrations/822-blade-ally-consolidation.d.ts delete mode 100644 types/src/module/migration/migrations/823-heritage-ancestry-slug.d.ts delete mode 100644 types/src/module/migration/migrations/824-sneak-attack-damage-source.d.ts delete mode 100644 types/src/module/migration/migrations/825-khakkhara-feng-huo-lun.d.ts delete mode 100644 types/src/module/migration/migrations/826-gut-condition-data.d.ts delete mode 100644 types/src/module/migration/migrations/827-fix-tv-shield-traits.d.ts delete mode 100644 types/src/module/migration/migrations/828-prune-invalid-traits.d.ts delete mode 100644 types/src/module/migration/migrations/829-rm-ritual-entries.d.ts delete mode 100644 types/src/module/migration/migrations/830-condense-instincts.d.ts delete mode 100644 types/src/module/migration/migrations/831-cleric-doctrines.d.ts delete mode 100644 types/src/module/migration/migrations/832-choice-set-flags.d.ts delete mode 100644 types/src/module/migration/migrations/833-add-rogue-toys-fix-precision.d.ts delete mode 100644 types/src/module/migration/migrations/834-feat-categories.d.ts delete mode 100644 types/src/module/migration/migrations/835-initiative-longform.d.ts delete mode 100644 types/src/module/migration/migrations/836-energizing-consolidation.d.ts delete mode 100644 types/src/module/migration/migrations/837-move-hazard-book-source.d.ts delete mode 100644 types/src/module/migration/migrations/838-strike-attack-roll-selector.d.ts delete mode 100644 types/src/module/migration/migrations/839-action-categories.d.ts delete mode 100644 types/src/module/migration/migrations/840-array-wrap-predicates.d.ts delete mode 100644 types/src/module/migration/migrations/841-v11-uuid-format.d.ts delete mode 100644 types/src/module/migration/migrations/842-numify-numeric-settings.d.ts delete mode 100644 types/src/module/migration/migrations/843-rm-armor-custom-modifiers.d.ts delete mode 100644 types/src/module/migration/migrations/844-deity-domains-uuids.d.ts delete mode 100644 types/src/module/migration/migrations/845-empty-spell-consumables.d.ts delete mode 100644 types/src/module/migration/migrations/846-spell-school-optional.d.ts delete mode 100644 types/src/module/migration/migrations/847-temp-hp-rule-events.d.ts delete mode 100644 types/src/module/migration/migrations/848-numeric-armor-properties.d.ts delete mode 100644 types/src/module/migration/migrations/849-delete-broken-threshold.d.ts delete mode 100644 types/src/module/migration/migrations/850-flat-footed-to-off-guard.d.ts delete mode 100644 types/src/module/migration/migrations/851-just-innovation-id.d.ts delete mode 100644 types/src/module/migration/migrations/852-ability-scores-to-modifiers.d.ts delete mode 100644 types/src/module/migration/migrations/853-remaster-languages.d.ts delete mode 100644 types/src/module/migration/migrations/854-bracketed-ability-scores-to-modifiers.d.ts delete mode 100644 types/src/module/migration/migrations/855-apex-equipment-system-data.d.ts delete mode 100644 types/src/module/migration/migrations/856-no-system-dot-custom.d.ts delete mode 100644 types/src/module/migration/migrations/857-weapon-spec-re.d.ts delete mode 100644 types/src/module/migration/migrations/858-fake-weapon-specialization.d.ts delete mode 100644 types/src/module/migration/migrations/859-material-type-grade.d.ts delete mode 100644 types/src/module/migration/migrations/860-rm-group.d.ts delete mode 100644 types/src/module/migration/migrations/861-aura-colors-to-appearance.d.ts delete mode 100644 types/src/module/migration/migrations/862-specific-magic-armor.d.ts delete mode 100644 types/src/module/migration/migrations/863-fix-misspelled-organaizations-property.d.ts delete mode 100644 types/src/module/migration/migrations/864-rm-weapon-map.d.ts delete mode 100644 types/src/module/migration/migrations/865-vitality-void.d.ts delete mode 100644 types/src/module/migration/migrations/866-link-to-actor-size-again.d.ts delete mode 100644 types/src/module/migration/migrations/867-damage-roll-domain-fix.d.ts delete mode 100644 types/src/module/migration/migrations/868-strike-re-range.d.ts delete mode 100644 types/src/module/migration/migrations/869-refresh-mighty-bulwark.d.ts delete mode 100644 types/src/module/migration/migrations/870-martial-to-proficiencies.d.ts delete mode 100644 types/src/module/migration/migrations/871-migrate-rollactionmacro-params.d.ts delete mode 100644 types/src/module/migration/migrations/872-move-schema-property.d.ts delete mode 100644 types/src/module/migration/migrations/873-remove-bonus-bulk-limit.d.ts delete mode 100644 types/src/module/migration/migrations/874-move-stamina-stuff.d.ts delete mode 100644 types/src/module/migration/migrations/875-set-innovation-id-early.d.ts delete mode 100644 types/src/module/migration/migrations/876-feat-level-taken.d.ts delete mode 100644 types/src/module/migration/migrations/877-publication-data.d.ts delete mode 100644 types/src/module/migration/migrations/878-take-a-breather.d.ts delete mode 100644 types/src/module/migration/migrations/879-devise-a-stratagem-and-friends.d.ts delete mode 100644 types/src/module/migration/migrations/880-split-show-dialogs-setting.d.ts delete mode 100644 types/src/module/migration/migrations/881-no-hb-prefix.d.ts delete mode 100644 types/src/module/migration/migrations/882-spell-data-reorganization.d.ts delete mode 100644 types/src/module/migration/migrations/883-banish-alignment.d.ts delete mode 100644 types/src/module/migration/migrations/884-unified-spellcasting.d.ts delete mode 100644 types/src/module/migration/migrations/885-convert-alignment-damage.d.ts delete mode 100644 types/src/module/migration/migrations/886-crossbow-group.d.ts delete mode 100644 types/src/module/migration/migrations/887-redirect-spell-links.d.ts delete mode 100644 types/src/module/migration/migrations/888-remaster-languages-heritages.d.ts delete mode 100644 types/src/module/migration/migrations/889-remove-focus-max-increases.d.ts delete mode 100644 types/src/module/migration/migrations/890-rm-class-item-class-dc.d.ts delete mode 100644 types/src/module/migration/migrations/891-druidic-to-wildsong.d.ts delete mode 100644 types/src/module/migration/migrations/892-choice-re-adjust-name-value.d.ts delete mode 100644 types/src/module/migration/migrations/893-no-hb-prefix-settings.d.ts delete mode 100644 types/src/module/migration/migrations/894-no-lay-on-hands-vs-undead.d.ts delete mode 100644 types/src/module/migration/migrations/895-fix-variant-spell-traits.d.ts delete mode 100644 types/src/module/migration/migrations/896-healing-domains.d.ts delete mode 100644 types/src/module/migration/migrations/897-clear-lay-on-hands-damage.d.ts delete mode 100644 types/src/module/migration/migrations/898-no-hb-again.d.ts delete mode 100644 types/src/module/migration/migrations/899-armor-shields-to-shield-shields.d.ts delete mode 100644 types/src/module/migration/migrations/900-class-spellcasting-proficiency.d.ts delete mode 100644 types/src/module/migration/migrations/901-reorganize-bulk-data.d.ts delete mode 100644 types/src/module/migration/migrations/902-duskwood-dawnsilver.d.ts delete mode 100644 types/src/module/migration/migrations/903-physical-numeric-data.d.ts delete mode 100644 types/src/module/migration/migrations/904-undercommon-to-sakvroth.d.ts delete mode 100644 types/src/module/migration/migrations/905-unpersist-usage.d.ts delete mode 100644 types/src/module/migration/migrations/906-limit-stack-group.d.ts delete mode 100644 types/src/module/migration/migrations/907-restructure-armor-weapon-runes.d.ts delete mode 100644 types/src/module/migration/migrations/908-true-gang-up.d.ts delete mode 100644 types/src/module/migration/migrations/909-refine-consumable-data.d.ts delete mode 100644 types/src/module/migration/migrations/910-edicts-anathema-arrays.d.ts delete mode 100644 types/src/module/migration/migrations/911-coin-bulk.d.ts delete mode 100644 types/src/module/migration/migrations/912-rm-focus-trait-focus-cantrips.d.ts delete mode 100644 types/src/module/migration/migrations/913-spell-sustained-text.d.ts delete mode 100644 types/src/module/migration/migrations/914-move-perception-senses.d.ts delete mode 100644 types/src/module/migration/migrations/915-move-languages.d.ts delete mode 100644 types/src/module/migration/migrations/916-new-pc-toys.d.ts delete mode 100644 types/src/module/migration/migrations/917-scroll-wand-spell-ids.d.ts delete mode 100644 types/src/module/migration/migrations/918-deity-skills.d.ts delete mode 100644 types/src/module/migration/migrations/919-trait-toggle-structure.d.ts delete mode 100644 types/src/module/migration/migrations/920-suboption-selection.d.ts delete mode 100644 types/src/module/migration/migrations/921-spell-slot-arrays.d.ts delete mode 100644 types/src/module/migration/migrations/922-swashbuckler-finisher-suboptions.d.ts delete mode 100644 types/src/module/migration/migrations/923-kineticist-restructure.d.ts delete mode 100644 types/src/module/migration/migrations/924-jiu-huan-dao.d.ts delete mode 100644 types/src/module/migration/migrations/925-touch-of-corruption.d.ts delete mode 100644 types/src/module/migration/migrations/926-remove-vision-feature-links.d.ts delete mode 100644 types/src/module/migration/migrations/927-class-background-skill-longform.d.ts delete mode 100644 types/src/module/migration/migrations/928-character-skills-longform.d.ts delete mode 100644 types/src/module/migration/migrations/929-remove-skill-abbreviations.d.ts delete mode 100644 types/src/module/migration/migrations/930-choice-set-medium.d.ts delete mode 100644 types/src/module/migration/migrations/931-expand-re-permissions.d.ts delete mode 100644 types/src/module/migration/migrations/932-npc-system-skills.d.ts delete mode 100644 types/src/module/migration/migrations/933-crafting-ability.d.ts delete mode 100644 types/src/module/migration/migrations/934-mythic-calling-category.d.ts delete mode 100644 types/src/module/migration/migrations/935-deity-icon-paths.d.ts delete mode 100644 types/src/module/migration/migrations/index.d.ts delete mode 100644 types/src/module/migration/runner/base.d.ts delete mode 100644 types/src/module/migration/runner/index.d.ts delete mode 100644 types/src/module/notes.d.ts delete mode 100644 types/src/module/recall-knowledge.d.ts delete mode 100644 types/src/module/rules/helpers.d.ts delete mode 100644 types/src/module/rules/index.d.ts delete mode 100644 types/src/module/rules/rule-element/actor-traits.d.ts delete mode 100644 types/src/module/rules/rule-element/adjust-degree-of-success.d.ts delete mode 100644 types/src/module/rules/rule-element/adjust-modifier.d.ts delete mode 100644 types/src/module/rules/rule-element/adjust-strike.d.ts delete mode 100644 types/src/module/rules/rule-element/ae-like.d.ts delete mode 100644 types/src/module/rules/rule-element/aura.d.ts delete mode 100644 types/src/module/rules/rule-element/base-speed.d.ts delete mode 100644 types/src/module/rules/rule-element/base.d.ts delete mode 100644 types/src/module/rules/rule-element/battle-form/rule-element.d.ts delete mode 100644 types/src/module/rules/rule-element/battle-form/schema.d.ts delete mode 100644 types/src/module/rules/rule-element/battle-form/types.d.ts delete mode 100644 types/src/module/rules/rule-element/choice-set/data.d.ts delete mode 100644 types/src/module/rules/rule-element/choice-set/prompt.d.ts delete mode 100644 types/src/module/rules/rule-element/choice-set/rule-element.d.ts delete mode 100644 types/src/module/rules/rule-element/crafting-ability.d.ts delete mode 100644 types/src/module/rules/rule-element/creature-size.d.ts delete mode 100644 types/src/module/rules/rule-element/crit-spec.d.ts delete mode 100644 types/src/module/rules/rule-element/damage-alteration/alteration.d.ts delete mode 100644 types/src/module/rules/rule-element/damage-alteration/rule-element.d.ts delete mode 100644 types/src/module/rules/rule-element/damage-dice.d.ts delete mode 100644 types/src/module/rules/rule-element/data.d.ts delete mode 100644 types/src/module/rules/rule-element/dexterity-modifier-cap.d.ts delete mode 100644 types/src/module/rules/rule-element/effect-spinoff/rule-element.d.ts delete mode 100644 types/src/module/rules/rule-element/effect-spinoff/spinoff.d.ts delete mode 100644 types/src/module/rules/rule-element/ephemeral-effect.d.ts delete mode 100644 types/src/module/rules/rule-element/fast-healing.d.ts delete mode 100644 types/src/module/rules/rule-element/flat-modifier.d.ts delete mode 100644 types/src/module/rules/rule-element/grant-item/helpers.d.ts delete mode 100644 types/src/module/rules/rule-element/grant-item/index.d.ts delete mode 100644 types/src/module/rules/rule-element/grant-item/rule-element.d.ts delete mode 100644 types/src/module/rules/rule-element/grant-item/schema.d.ts delete mode 100644 types/src/module/rules/rule-element/index.d.ts delete mode 100644 types/src/module/rules/rule-element/item-alteration/alteration.d.ts delete mode 100644 types/src/module/rules/rule-element/item-alteration/index.d.ts delete mode 100644 types/src/module/rules/rule-element/item-alteration/rule-element.d.ts delete mode 100644 types/src/module/rules/rule-element/item-alteration/schemas.d.ts delete mode 100644 types/src/module/rules/rule-element/iwr/base.d.ts delete mode 100644 types/src/module/rules/rule-element/iwr/immunity.d.ts delete mode 100644 types/src/module/rules/rule-element/iwr/index.d.ts delete mode 100644 types/src/module/rules/rule-element/iwr/resistance.d.ts delete mode 100644 types/src/module/rules/rule-element/iwr/weakness.d.ts delete mode 100644 types/src/module/rules/rule-element/lose-hit-points.d.ts delete mode 100644 types/src/module/rules/rule-element/martial-proficiency.d.ts delete mode 100644 types/src/module/rules/rule-element/multiple-attack-penalty.d.ts delete mode 100644 types/src/module/rules/rule-element/roll-note.d.ts delete mode 100644 types/src/module/rules/rule-element/roll-option/data.d.ts delete mode 100644 types/src/module/rules/rule-element/roll-option/rule-element.d.ts delete mode 100644 types/src/module/rules/rule-element/roll-twice.d.ts delete mode 100644 types/src/module/rules/rule-element/sense.d.ts delete mode 100644 types/src/module/rules/rule-element/special-resource.d.ts delete mode 100644 types/src/module/rules/rule-element/special-statistic.d.ts delete mode 100644 types/src/module/rules/rule-element/strike.d.ts delete mode 100644 types/src/module/rules/rule-element/striking.d.ts delete mode 100644 types/src/module/rules/rule-element/substitute-roll.d.ts delete mode 100644 types/src/module/rules/rule-element/temp-hp.d.ts delete mode 100644 types/src/module/rules/rule-element/token-effect-icon.d.ts delete mode 100644 types/src/module/rules/rule-element/token-image.d.ts delete mode 100644 types/src/module/rules/rule-element/token-light.d.ts delete mode 100644 types/src/module/rules/rule-element/token-mark/prompt.d.ts delete mode 100644 types/src/module/rules/rule-element/token-mark/rule-element.d.ts delete mode 100644 types/src/module/rules/rule-element/token-name.d.ts delete mode 100644 types/src/module/rules/rule-element/weapon-potency.d.ts delete mode 100644 types/src/module/rules/synthetics.d.ts delete mode 100644 types/src/module/scene/ambient-light-document.d.ts delete mode 100644 types/src/module/scene/data.d.ts delete mode 100644 types/src/module/scene/document.d.ts delete mode 100644 types/src/module/scene/helpers.d.ts delete mode 100644 types/src/module/scene/index.d.ts delete mode 100644 types/src/module/scene/measured-template-document.d.ts delete mode 100644 types/src/module/scene/region-behavior/document.d.ts delete mode 100644 types/src/module/scene/region-behavior/environment-feature.d.ts delete mode 100644 types/src/module/scene/region-behavior/environment.d.ts delete mode 100644 types/src/module/scene/region-behavior/index.d.ts delete mode 100644 types/src/module/scene/region-behavior/types.d.ts delete mode 100644 types/src/module/scene/region-behavior/values.d.ts delete mode 100644 types/src/module/scene/region-document/document.d.ts delete mode 100644 types/src/module/scene/sheet.d.ts delete mode 100644 types/src/module/scene/tile-document.d.ts delete mode 100644 types/src/module/scene/token-document/actor-delta.d.ts delete mode 100644 types/src/module/scene/token-document/aura/index.d.ts delete mode 100644 types/src/module/scene/token-document/aura/types.d.ts delete mode 100644 types/src/module/scene/token-document/clown-car.d.ts delete mode 100644 types/src/module/scene/token-document/data.d.ts delete mode 100644 types/src/module/scene/token-document/document.d.ts delete mode 100644 types/src/module/scene/token-document/index.d.ts delete mode 100644 types/src/module/scene/token-document/sheet.d.ts delete mode 100644 types/src/module/sheet/helpers.d.ts delete mode 100644 types/src/module/system/action-macros/acrobatics/balance.d.ts delete mode 100644 types/src/module/system/action-macros/acrobatics/maneuver-in-flight.d.ts delete mode 100644 types/src/module/system/action-macros/acrobatics/squeeze.d.ts delete mode 100644 types/src/module/system/action-macros/acrobatics/tumble-through.d.ts delete mode 100644 types/src/module/system/action-macros/ancestry/automaton/arcane-slam.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/climb.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/disarm.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/force-open.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/grapple.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/high-jump.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/long-jump.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/reposition.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/shove.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/swim.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/trip.d.ts delete mode 100644 types/src/module/system/action-macros/athletics/whirling-throw.d.ts delete mode 100644 types/src/module/system/action-macros/basic/aid.d.ts delete mode 100644 types/src/module/system/action-macros/basic/crawl.d.ts delete mode 100644 types/src/module/system/action-macros/basic/delay.d.ts delete mode 100644 types/src/module/system/action-macros/basic/drop-prone.d.ts delete mode 100644 types/src/module/system/action-macros/basic/escape.d.ts delete mode 100644 types/src/module/system/action-macros/basic/interact.d.ts delete mode 100644 types/src/module/system/action-macros/basic/leap.d.ts delete mode 100644 types/src/module/system/action-macros/basic/ready.d.ts delete mode 100644 types/src/module/system/action-macros/basic/release.d.ts delete mode 100644 types/src/module/system/action-macros/basic/seek.d.ts delete mode 100644 types/src/module/system/action-macros/basic/sense-motive.d.ts delete mode 100644 types/src/module/system/action-macros/basic/stand.d.ts delete mode 100644 types/src/module/system/action-macros/basic/step.d.ts delete mode 100644 types/src/module/system/action-macros/basic/stride.d.ts delete mode 100644 types/src/module/system/action-macros/basic/take-cover.d.ts delete mode 100644 types/src/module/system/action-macros/class/inventor/tamper.d.ts delete mode 100644 types/src/module/system/action-macros/crafting/craft.d.ts delete mode 100644 types/src/module/system/action-macros/crafting/identify-alchemy.d.ts delete mode 100644 types/src/module/system/action-macros/crafting/index.d.ts delete mode 100644 types/src/module/system/action-macros/crafting/repair.d.ts delete mode 100644 types/src/module/system/action-macros/crafting/select-item.d.ts delete mode 100644 types/src/module/system/action-macros/deception/create-a-diversion.d.ts delete mode 100644 types/src/module/system/action-macros/deception/feint.d.ts delete mode 100644 types/src/module/system/action-macros/deception/impersonate.d.ts delete mode 100644 types/src/module/system/action-macros/deception/lie.d.ts delete mode 100644 types/src/module/system/action-macros/diplomacy/bon-mot.d.ts delete mode 100644 types/src/module/system/action-macros/diplomacy/gather-information.d.ts delete mode 100644 types/src/module/system/action-macros/diplomacy/make-an-impression.d.ts delete mode 100644 types/src/module/system/action-macros/diplomacy/request.d.ts delete mode 100644 types/src/module/system/action-macros/exploration/affix-a-talisman.d.ts delete mode 100644 types/src/module/system/action-macros/exploration/avoid-notice.d.ts delete mode 100644 types/src/module/system/action-macros/exploration/sense-direction.d.ts delete mode 100644 types/src/module/system/action-macros/exploration/track.d.ts delete mode 100644 types/src/module/system/action-macros/general/decipher-writing.d.ts delete mode 100644 types/src/module/system/action-macros/general/identify-magic.d.ts delete mode 100644 types/src/module/system/action-macros/general/learn-a-spell.d.ts delete mode 100644 types/src/module/system/action-macros/general/recall-knowledge.d.ts delete mode 100644 types/src/module/system/action-macros/general/subsist.d.ts delete mode 100644 types/src/module/system/action-macros/helpers.d.ts delete mode 100644 types/src/module/system/action-macros/index.d.ts delete mode 100644 types/src/module/system/action-macros/intimidation/coerce.d.ts delete mode 100644 types/src/module/system/action-macros/intimidation/demoralize.d.ts delete mode 100644 types/src/module/system/action-macros/medicine/administer-first-aid.d.ts delete mode 100644 types/src/module/system/action-macros/medicine/treat-disease.d.ts delete mode 100644 types/src/module/system/action-macros/medicine/treat-poison.d.ts delete mode 100644 types/src/module/system/action-macros/nature/command-an-animal.d.ts delete mode 100644 types/src/module/system/action-macros/performance/perform.d.ts delete mode 100644 types/src/module/system/action-macros/society/create-forgery.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/arrest-a-fall.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/avert-gaze.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/burrow.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/dismiss.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/fly.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/grab-an-edge.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/mount.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/point-out.d.ts delete mode 100644 types/src/module/system/action-macros/specialty-basic/sustain.d.ts delete mode 100644 types/src/module/system/action-macros/stealth/conceal-an-object.d.ts delete mode 100644 types/src/module/system/action-macros/stealth/hide.d.ts delete mode 100644 types/src/module/system/action-macros/stealth/sneak.d.ts delete mode 100644 types/src/module/system/action-macros/thievery/disable-device.d.ts delete mode 100644 types/src/module/system/action-macros/thievery/palm-an-object.d.ts delete mode 100644 types/src/module/system/action-macros/thievery/pick-a-lock.d.ts delete mode 100644 types/src/module/system/action-macros/thievery/steal.d.ts delete mode 100644 types/src/module/system/action-macros/types.d.ts delete mode 100644 types/src/module/system/check/check.d.ts delete mode 100644 types/src/module/system/check/dialog.d.ts delete mode 100644 types/src/module/system/check/index.d.ts delete mode 100644 types/src/module/system/check/roll.d.ts delete mode 100644 types/src/module/system/check/types.d.ts delete mode 100644 types/src/module/system/client-backend.d.ts delete mode 100644 types/src/module/system/conditions/index.d.ts delete mode 100644 types/src/module/system/conditions/manager.d.ts delete mode 100644 types/src/module/system/damage/damage.d.ts delete mode 100644 types/src/module/system/damage/dialog.d.ts delete mode 100644 types/src/module/system/damage/formula.d.ts delete mode 100644 types/src/module/system/damage/helpers.d.ts delete mode 100644 types/src/module/system/damage/index.d.ts delete mode 100644 types/src/module/system/damage/iwr.d.ts delete mode 100644 types/src/module/system/damage/roll.d.ts delete mode 100644 types/src/module/system/damage/terms.d.ts delete mode 100644 types/src/module/system/damage/types.d.ts delete mode 100644 types/src/module/system/damage/values.d.ts delete mode 100644 types/src/module/system/damage/weapon.d.ts delete mode 100644 types/src/module/system/degree-of-success.d.ts delete mode 100644 types/src/module/system/effect-tracker.d.ts delete mode 100644 types/src/module/system/html-elements/tagify-tags.d.ts delete mode 100644 types/src/module/system/module-art.d.ts delete mode 100644 types/src/module/system/predication.d.ts delete mode 100644 types/src/module/system/progress.d.ts delete mode 100644 types/src/module/system/rolls.d.ts delete mode 100644 types/src/module/system/schema-data-fields.d.ts delete mode 100644 types/src/module/system/settings/automation.d.ts delete mode 100644 types/src/module/system/settings/homebrew/damage.d.ts delete mode 100644 types/src/module/system/settings/homebrew/data.d.ts delete mode 100644 types/src/module/system/settings/homebrew/helpers.d.ts delete mode 100644 types/src/module/system/settings/homebrew/index.d.ts delete mode 100644 types/src/module/system/settings/homebrew/languages.d.ts delete mode 100644 types/src/module/system/settings/homebrew/menu.d.ts delete mode 100644 types/src/module/system/settings/index.d.ts delete mode 100644 types/src/module/system/settings/menu.d.ts delete mode 100644 types/src/module/system/settings/metagame.d.ts delete mode 100644 types/src/module/system/settings/variant-rules.d.ts delete mode 100644 types/src/module/system/settings/world-clock.d.ts delete mode 100644 types/src/module/system/statistic/armor-class.d.ts delete mode 100644 types/src/module/system/statistic/base.d.ts delete mode 100644 types/src/module/system/statistic/data.d.ts delete mode 100644 types/src/module/system/statistic/hit-points.d.ts delete mode 100644 types/src/module/system/statistic/index.d.ts delete mode 100644 types/src/module/system/statistic/perception.d.ts delete mode 100644 types/src/module/system/statistic/statistic.d.ts delete mode 100644 types/src/module/system/tag-selector/base.d.ts delete mode 100644 types/src/module/system/tag-selector/basic.d.ts delete mode 100644 types/src/module/system/tag-selector/index.d.ts delete mode 100644 types/src/module/system/tag-selector/languages.d.ts delete mode 100644 types/src/module/system/tag-selector/senses.d.ts delete mode 100644 types/src/module/system/tag-selector/speeds.d.ts delete mode 100644 types/src/module/system/text-editor.d.ts delete mode 100644 types/src/module/user/data.d.ts delete mode 100644 types/src/module/user/document.d.ts delete mode 100644 types/src/module/user/index.d.ts delete mode 100644 types/src/module/user/sheet.d.ts delete mode 100644 types/src/pf2e.d.ts delete mode 100644 types/src/scripts/config/damage.d.ts delete mode 100644 types/src/scripts/config/index.d.ts delete mode 100644 types/src/scripts/config/iwr.d.ts delete mode 100644 types/src/scripts/config/traits.d.ts delete mode 100644 types/src/scripts/dice.d.ts delete mode 100644 types/src/scripts/handlebars.d.ts delete mode 100644 types/src/scripts/hooks/canvas-ready.d.ts delete mode 100644 types/src/scripts/hooks/close-combat-tracker-config.d.ts delete mode 100644 types/src/scripts/hooks/close-world-clock-settings.d.ts delete mode 100644 types/src/scripts/hooks/dice-so-nice-ready.d.ts delete mode 100644 types/src/scripts/hooks/dice-so-nice-roll-start.d.ts delete mode 100644 types/src/scripts/hooks/drop-canvas-data.d.ts delete mode 100644 types/src/scripts/hooks/get-prosemirror-menu-dropdowns.d.ts delete mode 100644 types/src/scripts/hooks/get-scene-control-buttons.d.ts delete mode 100644 types/src/scripts/hooks/i18n-init.d.ts delete mode 100644 types/src/scripts/hooks/index.d.ts delete mode 100644 types/src/scripts/hooks/init.d.ts delete mode 100644 types/src/scripts/hooks/lighting-refresh.d.ts delete mode 100644 types/src/scripts/hooks/load.d.ts delete mode 100644 types/src/scripts/hooks/migration-complete.d.ts delete mode 100644 types/src/scripts/hooks/ready.d.ts delete mode 100644 types/src/scripts/hooks/render-chat-popout.d.ts delete mode 100644 types/src/scripts/hooks/render-combat-tracker-config.d.ts delete mode 100644 types/src/scripts/hooks/render-dialog.d.ts delete mode 100644 types/src/scripts/hooks/render-region-legend.d.ts delete mode 100644 types/src/scripts/hooks/render-settings-config.d.ts delete mode 100644 types/src/scripts/hooks/render-settings.d.ts delete mode 100644 types/src/scripts/hooks/render-token-hud.d.ts delete mode 100644 types/src/scripts/hooks/setup.d.ts delete mode 100644 types/src/scripts/hooks/target-token.d.ts delete mode 100644 types/src/scripts/hooks/update-world-time.d.ts delete mode 100644 types/src/scripts/macros/check-prompt/helpers.d.ts delete mode 100644 types/src/scripts/macros/check-prompt/index.d.ts delete mode 100644 types/src/scripts/macros/check-prompt/prompt.d.ts delete mode 100644 types/src/scripts/macros/earn-income/calculate.d.ts delete mode 100644 types/src/scripts/macros/earn-income/helpers.d.ts delete mode 100644 types/src/scripts/macros/earn-income/index.d.ts delete mode 100644 types/src/scripts/macros/earn-income/macro.d.ts delete mode 100644 types/src/scripts/macros/edit-persistent.d.ts delete mode 100644 types/src/scripts/macros/encouraging-words.d.ts delete mode 100644 types/src/scripts/macros/hotbar.d.ts delete mode 100644 types/src/scripts/macros/index.d.ts delete mode 100644 types/src/scripts/macros/perception-for-selected-tokens.d.ts delete mode 100644 types/src/scripts/macros/raise-a-shield.d.ts delete mode 100644 types/src/scripts/macros/rest-for-the-night.d.ts delete mode 100644 types/src/scripts/macros/stealth-for-selected-tokens.d.ts delete mode 100644 types/src/scripts/macros/steel-your-resolve.d.ts delete mode 100644 types/src/scripts/macros/take-a-breather.d.ts delete mode 100644 types/src/scripts/macros/travel/index.d.ts delete mode 100644 types/src/scripts/macros/travel/travel-speed-sheet.d.ts delete mode 100644 types/src/scripts/macros/travel/travel-speed.d.ts delete mode 100644 types/src/scripts/macros/treat-wounds.d.ts delete mode 100644 types/src/scripts/macros/xp/dialog.d.ts delete mode 100644 types/src/scripts/macros/xp/index.d.ts delete mode 100644 types/src/scripts/register-fonts.d.ts delete mode 100644 types/src/scripts/register-keybindings.d.ts delete mode 100644 types/src/scripts/register-sheets.d.ts delete mode 100644 types/src/scripts/register-templates.d.ts delete mode 100644 types/src/scripts/set-game-pf2e.d.ts delete mode 100644 types/src/scripts/socket.d.ts delete mode 100644 types/src/scripts/store-versions.d.ts delete mode 100644 types/src/scripts/system/dragstart-handler.d.ts delete mode 100644 types/src/scripts/system/remigrate.d.ts delete mode 100644 types/src/scripts/ui/inline-roll-links.d.ts delete mode 100644 types/src/scripts/ui/user-visibility.d.ts delete mode 100644 "types/src/scripts/\360\237\220\265\360\237\251\271.d.ts" delete mode 100644 types/src/util/delegated-collection.d.ts delete mode 100644 types/src/util/destroyables.d.ts delete mode 100644 types/src/util/dom.d.ts delete mode 100644 types/src/util/index.d.ts delete mode 100644 types/src/util/misc.d.ts delete mode 100644 types/src/util/tags.d.ts delete mode 100644 types/src/util/token-actor-utils.d.ts delete mode 100644 types/src/util/uuid.d.ts delete mode 100644 types/tests/mocks/actor.d.ts delete mode 100644 types/tests/mocks/chat-message.d.ts delete mode 100644 types/tests/mocks/collection.d.ts delete mode 100644 types/tests/mocks/item.d.ts delete mode 100644 types/tests/mocks/journal-entry.d.ts delete mode 100644 types/tests/mocks/macro.d.ts delete mode 100644 types/tests/mocks/roll-table.d.ts delete mode 100644 types/tests/mocks/scene.d.ts delete mode 100644 types/tests/mocks/token.d.ts delete mode 100644 types/tests/mocks/user.d.ts delete mode 100644 types/tests/module/apps/world-clock/time-of-day.test.d.ts delete mode 100644 types/tests/module/dc.test.d.ts delete mode 100644 types/tests/module/degree-of-success.test.d.ts delete mode 100644 types/tests/module/earn-income.test.d.ts delete mode 100644 types/tests/module/gm/travel/travel-speed.test.d.ts delete mode 100644 types/tests/module/lang/en.test.d.ts delete mode 100644 types/tests/module/migration.test.d.ts delete mode 100644 types/tests/module/recall-knowledge.test.d.ts delete mode 100644 types/tests/module/system/predication.test.d.ts delete mode 100644 types/tests/module/utils.test.d.ts delete mode 100644 types/tests/module/xp.test.d.ts delete mode 100644 types/tests/setup.d.ts delete mode 100644 types/types/foundry/build/generate-client-base-mixes.d.ts delete mode 100644 types/types/foundry/build/generate-client-base-mixes.ts delete mode 100644 types/types/foundry/client-esm/applications/_types.d.ts delete mode 100644 types/types/foundry/client-esm/applications/api/application.d.ts delete mode 100644 types/types/foundry/client-esm/applications/api/document-sheet.d.ts delete mode 100644 types/types/foundry/client-esm/applications/api/handlebars-application.ts delete mode 100644 types/types/foundry/client-esm/applications/api/module.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/color-picker.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/document-tags.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/file-picker.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/form-element.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/hue-slider.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/module.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/multi-select.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/prosemirror-editor.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/range-picker.d.ts delete mode 100644 types/types/foundry/client-esm/applications/elements/string-tags.d.ts delete mode 100644 types/types/foundry/client-esm/applications/forms/fields.d.ts delete mode 100644 types/types/foundry/client-esm/applications/module.d.ts delete mode 100644 types/types/foundry/client-esm/applications/sheets/item-sheet.d.ts delete mode 100644 types/types/foundry/client-esm/applications/sheets/module.d.ts delete mode 100644 types/types/foundry/client-esm/applications/sheets/user-config.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/edges/collision.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/edges/edge.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/edges/edges.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/edges/module.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/edges/vertex.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/module.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/regions/geometry.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/regions/mesh.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/regions/module.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/regions/polygon-tree.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/regions/shape.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/scene-manager.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/base-effect-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/base-light-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/global-light-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/module.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/module.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/point-darkness-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/point-effect-source-mixes.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/point-light-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/point-movement-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/point-sound-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/point-vision-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/sources/rendered-effect-source.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/tokens/module.d.ts delete mode 100644 types/types/foundry/client-esm/canvas/tokens/module.ts delete mode 100644 types/types/foundry/client-esm/canvas/tokens/ring-config.d.ts delete mode 100644 types/types/foundry/client-esm/data/module.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/base.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/execute-macro.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/execute-script.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/module.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/pause-game.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/suppress-weather.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/teleport-token.d.ts delete mode 100644 types/types/foundry/client-esm/data/region-behaviors/toggle-behavior.d.ts delete mode 100644 types/types/foundry/client-esm/dice/_types.d.mts delete mode 100644 types/types/foundry/client-esm/dice/module.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/coin.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/dice-term.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/die.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/fate-die.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/function-term.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/module.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/numeric-term.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/operator-term.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/parenthetical-term.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/pool-term.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/roll-term.d.ts delete mode 100644 types/types/foundry/client-esm/dice/terms/string-term.d.ts delete mode 100644 types/types/foundry/client-esm/helpers/_module.d.ts delete mode 100644 types/types/foundry/client-esm/helpers/_types.d.ts delete mode 100644 types/types/foundry/client-esm/helpers/compendium-art.d.ts delete mode 100644 types/types/foundry/client/apps/app.d.ts delete mode 100644 types/types/foundry/client/apps/client-settings.d.ts delete mode 100644 types/types/foundry/client/apps/compendium.d.ts delete mode 100644 types/types/foundry/client/apps/form.d.ts delete mode 100644 types/types/foundry/client/apps/forms/actor.d.ts delete mode 100644 types/types/foundry/client/apps/forms/combat-config.d.ts delete mode 100644 types/types/foundry/client/apps/forms/combatant-config.d.ts delete mode 100644 types/types/foundry/client/apps/forms/effect-config.d.ts delete mode 100644 types/types/foundry/client/apps/forms/folder-edit.d.ts delete mode 100644 types/types/foundry/client/apps/forms/fonts.d.ts delete mode 100644 types/types/foundry/client/apps/forms/image-popout.d.ts delete mode 100644 types/types/foundry/client/apps/forms/index.d.ts delete mode 100644 types/types/foundry/client/apps/forms/item.d.ts delete mode 100644 types/types/foundry/client/apps/forms/journal-page-sheet.d.ts delete mode 100644 types/types/foundry/client/apps/forms/journal-sheet.d.ts delete mode 100644 types/types/foundry/client/apps/forms/macro-config.d.ts delete mode 100644 types/types/foundry/client/apps/forms/measured-template.d.ts delete mode 100644 types/types/foundry/client/apps/forms/playlist-config.d.ts delete mode 100644 types/types/foundry/client/apps/forms/playlist-sound-config.d.ts delete mode 100644 types/types/foundry/client/apps/forms/roll-table-config.d.ts delete mode 100644 types/types/foundry/client/apps/forms/scene-config.d.ts delete mode 100644 types/types/foundry/client/apps/forms/sheet-config.d.ts delete mode 100644 types/types/foundry/client/apps/hud/chat-bubbles.d.ts delete mode 100644 types/types/foundry/client/apps/hud/container.d.ts delete mode 100644 types/types/foundry/client/apps/hud/controls.d.ts delete mode 100644 types/types/foundry/client/apps/hud/hotbar.d.ts delete mode 100644 types/types/foundry/client/apps/hud/hud.d.ts delete mode 100644 types/types/foundry/client/apps/hud/index.d.ts delete mode 100644 types/types/foundry/client/apps/hud/menu.d.ts delete mode 100644 types/types/foundry/client/apps/hud/navigation.d.ts delete mode 100644 types/types/foundry/client/apps/hud/pause.d.ts delete mode 100644 types/types/foundry/client/apps/hud/players.d.ts delete mode 100644 types/types/foundry/client/apps/i18n.d.ts delete mode 100644 types/types/foundry/client/apps/index.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/drawing-config.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/drawing-hud.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/index.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/light-config.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/note-config.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/sound-config.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/tile-config.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/tile-hud.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/token-config.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/token-hud.d.ts delete mode 100644 types/types/foundry/client/apps/placeables/wall-config.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/apps/chat-popout.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/apps/index.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/apps/keybindings-config.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/document-directory.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/index.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/package-configuration.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/sidebar-tab.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/sidebar.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/tabs/actor-directory.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/tabs/chat-log.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/tabs/combat-tracker.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/tabs/compendium-directory.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/tabs/index.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/tabs/item-directory.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/tabs/roll-table-directory.d.ts delete mode 100644 types/types/foundry/client/apps/sidebar/tabs/settings.d.ts delete mode 100644 types/types/foundry/client/apps/templates.d.ts delete mode 100644 types/types/foundry/client/config.d.ts delete mode 100644 types/types/foundry/client/core/audio.d.ts delete mode 100644 types/types/foundry/client/core/clipboard.d.ts delete mode 100644 types/types/foundry/client/core/document-index.d.ts delete mode 100644 types/types/foundry/client/core/game-time.d.ts delete mode 100644 types/types/foundry/client/core/hooks.d.ts delete mode 100644 types/types/foundry/client/core/image.d.ts delete mode 100644 types/types/foundry/client/core/index.d.ts delete mode 100644 types/types/foundry/client/core/packages.d.ts delete mode 100644 types/types/foundry/client/core/searchfilter.d.ts delete mode 100644 types/types/foundry/client/core/settings.d.ts delete mode 100644 types/types/foundry/client/core/socket.d.ts delete mode 100644 types/types/foundry/client/core/sorting.d.ts delete mode 100644 types/types/foundry/client/core/video.d.ts delete mode 100644 types/types/foundry/client/data/abstract/client-backend.d.ts delete mode 100644 types/types/foundry/client/data/abstract/directory-collection.ts delete mode 100644 types/types/foundry/client/data/abstract/document-collection.d.ts delete mode 100644 types/types/foundry/client/data/abstract/index.d.ts delete mode 100644 types/types/foundry/client/data/abstract/world-collection.d.ts delete mode 100644 types/types/foundry/client/data/collections/actors.d.ts delete mode 100644 types/types/foundry/client/data/collections/combat-encounters.d.ts delete mode 100644 types/types/foundry/client/data/collections/compendium-collection.d.ts delete mode 100644 types/types/foundry/client/data/collections/folders.d.ts delete mode 100644 types/types/foundry/client/data/collections/index.d.ts delete mode 100644 types/types/foundry/client/data/collections/items.d.ts delete mode 100644 types/types/foundry/client/data/collections/journal.d.ts delete mode 100644 types/types/foundry/client/data/collections/macros.d.ts delete mode 100644 types/types/foundry/client/data/collections/messages.d.ts delete mode 100644 types/types/foundry/client/data/collections/playlists.d.ts delete mode 100644 types/types/foundry/client/data/collections/roll-tables.d.ts delete mode 100644 types/types/foundry/client/data/collections/scenes.d.ts delete mode 100644 types/types/foundry/client/data/collections/users.d.ts delete mode 100644 types/types/foundry/client/data/documents/active-effect.d.ts delete mode 100644 types/types/foundry/client/data/documents/actor-delta.d.ts delete mode 100644 types/types/foundry/client/data/documents/actor.d.ts delete mode 100644 types/types/foundry/client/data/documents/adventure.d.ts delete mode 100644 types/types/foundry/client/data/documents/ambient-light-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/ambient-sound-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/card.d.ts delete mode 100644 types/types/foundry/client/data/documents/cards.d.ts delete mode 100644 types/types/foundry/client/data/documents/chat-message.d.ts delete mode 100644 types/types/foundry/client/data/documents/client-base-mixes.d.ts delete mode 100644 types/types/foundry/client/data/documents/client-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/combat.d.ts delete mode 100644 types/types/foundry/client/data/documents/combatant.d.ts delete mode 100644 types/types/foundry/client/data/documents/drawing-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/fog-exploration.d.ts delete mode 100644 types/types/foundry/client/data/documents/folder.d.ts delete mode 100644 types/types/foundry/client/data/documents/index.d.ts delete mode 100644 types/types/foundry/client/data/documents/item.d.ts delete mode 100644 types/types/foundry/client/data/documents/journal-entry-page.d.ts delete mode 100644 types/types/foundry/client/data/documents/journal-entry.d.ts delete mode 100644 types/types/foundry/client/data/documents/macro.d.ts delete mode 100644 types/types/foundry/client/data/documents/measured-template-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/note-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/playlist-sound.d.ts delete mode 100644 types/types/foundry/client/data/documents/playlist.d.ts delete mode 100644 types/types/foundry/client/data/documents/region-behavior.d.ts delete mode 100644 types/types/foundry/client/data/documents/region-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/roll-table.d.ts delete mode 100644 types/types/foundry/client/data/documents/scene.d.ts delete mode 100644 types/types/foundry/client/data/documents/setting.d.ts delete mode 100644 types/types/foundry/client/data/documents/table-result.d.ts delete mode 100644 types/types/foundry/client/data/documents/tile-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/token-document.d.ts delete mode 100644 types/types/foundry/client/data/documents/user.d.ts delete mode 100644 types/types/foundry/client/data/documents/wall-document.d.ts delete mode 100644 types/types/foundry/client/data/index.d.ts delete mode 100644 types/types/foundry/client/foundry/data/index.d.ts delete mode 100644 types/types/foundry/client/foundry/index.d.ts delete mode 100644 types/types/foundry/client/game.d.ts delete mode 100644 types/types/foundry/client/index.d.ts delete mode 100644 types/types/foundry/client/keyboard/client-keybindings.d.ts delete mode 100644 types/types/foundry/client/keyboard/index.d.ts delete mode 100644 types/types/foundry/client/keyboard/keyboard-manager.d.ts delete mode 100644 types/types/foundry/client/pixi/board.d.ts delete mode 100644 types/types/foundry/client/pixi/core/containers/index.d.ts delete mode 100644 types/types/foundry/client/pixi/core/containers/point-source-mesh.d.ts delete mode 100644 types/types/foundry/client/pixi/core/containers/quadtree.d.ts delete mode 100644 types/types/foundry/client/pixi/core/containers/sprite-mesh.d.ts delete mode 100644 types/types/foundry/client/pixi/core/index.d.ts delete mode 100644 types/types/foundry/client/pixi/core/interaction/canvas-animation.d.ts delete mode 100644 types/types/foundry/client/pixi/core/interaction/index.d.ts delete mode 100644 types/types/foundry/client/pixi/core/interaction/mouse-handler.d.ts delete mode 100644 types/types/foundry/client/pixi/core/interaction/render-flags.d.ts delete mode 100644 types/types/foundry/client/pixi/core/interaction/targets.d.ts delete mode 100644 types/types/foundry/client/pixi/core/loader.d.ts delete mode 100644 types/types/foundry/client/pixi/core/shapes/index.d.ts delete mode 100644 types/types/foundry/client/pixi/core/shapes/source-polygon.d.ts delete mode 100644 types/types/foundry/client/pixi/fog-manager.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/canvas-group.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/effects.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/environment.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/index.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/interface.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/overlay.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/primary.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/rendered.d.ts delete mode 100644 types/types/foundry/client/pixi/groups/rendered.ts delete mode 100644 types/types/foundry/client/pixi/helpers/cached-container.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/control-icon.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/door-control.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/grid-highlight.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/index.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/object-hud.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/precise-text.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/ray/base.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/ray/index.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/ray/sight-ray.d.ts delete mode 100644 types/types/foundry/client/pixi/helpers/resize-handle.d.ts delete mode 100644 types/types/foundry/client/pixi/index.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/base/canvas-layer.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/base/index.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/base/interaction-layer.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/base/placeables-layer.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/controls/index.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/controls/layer.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/controls/ruler.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/effects/index.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/effects/visibility.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/grid/index.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/grid/layer.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/index.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/drawings.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/index.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/lighting.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/notes.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/sounds.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/template.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/tiles.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/tokens.d.ts delete mode 100644 types/types/foundry/client/pixi/layers/placeables/walls.d.ts delete mode 100644 types/types/foundry/client/pixi/perception/clockwise-sweep.d.ts delete mode 100644 types/types/foundry/client/pixi/perception/detection-mode.d.ts delete mode 100644 types/types/foundry/client/pixi/perception/index.d.ts delete mode 100644 types/types/foundry/client/pixi/perception/perception-manager.d.ts delete mode 100644 types/types/foundry/client/pixi/perception/vision-mode.d.ts delete mode 100644 types/types/foundry/client/pixi/placeable.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/drawing.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/index.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/light.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/note.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/primary-canvas-objects/index.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.ts delete mode 100644 types/types/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.ts delete mode 100644 types/types/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/region.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/sound.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/template.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/tile.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/token.d.ts delete mode 100644 types/types/foundry/client/pixi/placeables/wall.d.ts delete mode 100644 types/types/foundry/client/pixi/plugins.d.ts delete mode 100644 types/types/foundry/client/pixi/special-effect/base.d.ts delete mode 100644 types/types/foundry/client/pixi/special-effect/index.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/base.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/extensions/batch-renderer.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/extensions/index.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/filters/filters.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/filters/index.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/index.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/filters/index.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/filters/transition.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/index.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/region.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/sampler.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/samplers/depth.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/samplers/index.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.ts delete mode 100644 types/types/foundry/client/pixi/webgl/shaders/samplers/primary.d.ts delete mode 100644 types/types/foundry/client/roll.d.ts delete mode 100644 types/types/foundry/client/ui/context.d.ts delete mode 100644 types/types/foundry/client/ui/dialog.d.ts delete mode 100644 types/types/foundry/client/ui/dragdrop.d.ts delete mode 100644 types/types/foundry/client/ui/editor.d.ts delete mode 100644 types/types/foundry/client/ui/filepicker.d.ts delete mode 100644 types/types/foundry/client/ui/index.d.ts delete mode 100644 types/types/foundry/client/ui/notifications.d.ts delete mode 100644 types/types/foundry/client/ui/prosemirror.d.ts delete mode 100644 types/types/foundry/client/ui/secrets.d.ts delete mode 100644 types/types/foundry/client/ui/tabs.d.ts delete mode 100644 types/types/foundry/client/ui/tooltip.d.ts delete mode 100644 types/types/foundry/client/ui/tour.d.ts delete mode 100644 types/types/foundry/common/abstract/_types.d.ts delete mode 100644 types/types/foundry/common/abstract/backend.d.ts delete mode 100644 types/types/foundry/common/abstract/data.d.ts delete mode 100644 types/types/foundry/common/abstract/document.d.ts delete mode 100644 types/types/foundry/common/abstract/embedded-collection.d.ts delete mode 100644 types/types/foundry/common/abstract/module.d.ts delete mode 100644 types/types/foundry/common/abstract/socket.d.ts delete mode 100644 types/types/foundry/common/abstract/type-data.d.ts delete mode 100644 types/types/foundry/common/constants.d.ts delete mode 100644 types/types/foundry/common/data/data.d.ts delete mode 100644 types/types/foundry/common/data/fields.d.ts delete mode 100644 types/types/foundry/common/data/module.d.ts delete mode 100644 types/types/foundry/common/data/validation-failure.d.ts delete mode 100644 types/types/foundry/common/data/validators.d.ts delete mode 100644 types/types/foundry/common/documents/active-effect.d.ts delete mode 100644 types/types/foundry/common/documents/actor-delta.d.ts delete mode 100644 types/types/foundry/common/documents/actor.d.ts delete mode 100644 types/types/foundry/common/documents/adventure.d.ts delete mode 100644 types/types/foundry/common/documents/ambient-light.d.ts delete mode 100644 types/types/foundry/common/documents/ambient-sound.d.ts delete mode 100644 types/types/foundry/common/documents/card.d.ts delete mode 100644 types/types/foundry/common/documents/cards.d.ts delete mode 100644 types/types/foundry/common/documents/chat-message.d.ts delete mode 100644 types/types/foundry/common/documents/combat.d.ts delete mode 100644 types/types/foundry/common/documents/combatant.d.ts delete mode 100644 types/types/foundry/common/documents/drawing.d.ts delete mode 100644 types/types/foundry/common/documents/fog-exploration.d.ts delete mode 100644 types/types/foundry/common/documents/folder.d.ts delete mode 100644 types/types/foundry/common/documents/item.d.ts delete mode 100644 types/types/foundry/common/documents/journal-entry-page.d.ts delete mode 100644 types/types/foundry/common/documents/journal-entry.d.ts delete mode 100644 types/types/foundry/common/documents/macro.d.ts delete mode 100644 types/types/foundry/common/documents/measured-template.d.ts delete mode 100644 types/types/foundry/common/documents/module.d.ts delete mode 100644 types/types/foundry/common/documents/note.d.ts delete mode 100644 types/types/foundry/common/documents/playlist-sound.d.ts delete mode 100644 types/types/foundry/common/documents/playlist.d.ts delete mode 100644 types/types/foundry/common/documents/region-behavior.d.ts delete mode 100644 types/types/foundry/common/documents/region.d.ts delete mode 100644 types/types/foundry/common/documents/roll-table.d.ts delete mode 100644 types/types/foundry/common/documents/scene.d.ts delete mode 100644 types/types/foundry/common/documents/setting.d.ts delete mode 100644 types/types/foundry/common/documents/table-result.d.ts delete mode 100644 types/types/foundry/common/documents/tile.d.ts delete mode 100644 types/types/foundry/common/documents/token.d.ts delete mode 100644 types/types/foundry/common/documents/user.d.ts delete mode 100644 types/types/foundry/common/documents/wall.d.ts delete mode 100644 types/types/foundry/common/grid/base.d.ts delete mode 100644 types/types/foundry/common/grid/grid-hex.d.ts delete mode 100644 types/types/foundry/common/grid/gridless.d.ts delete mode 100644 types/types/foundry/common/grid/hexagonal.d.ts delete mode 100644 types/types/foundry/common/grid/module.d.ts delete mode 100644 types/types/foundry/common/grid/square.d.ts delete mode 100644 types/types/foundry/common/module.d.ts delete mode 100644 types/types/foundry/common/packages/base-module.d.ts delete mode 100644 types/types/foundry/common/packages/base-package.d.ts delete mode 100644 types/types/foundry/common/packages/base-system.d.ts delete mode 100644 types/types/foundry/common/packages/base-world.d.ts delete mode 100644 types/types/foundry/common/packages/module.d.ts delete mode 100644 types/types/foundry/common/packages/sub-types.d.ts delete mode 100644 types/types/foundry/common/primitives/array.d.ts delete mode 100644 types/types/foundry/common/primitives/date.d.ts delete mode 100644 types/types/foundry/common/primitives/math.d.ts delete mode 100644 types/types/foundry/common/primitives/module.d.ts delete mode 100644 types/types/foundry/common/primitives/number.d.ts delete mode 100644 types/types/foundry/common/primitives/regexp.d.ts delete mode 100644 types/types/foundry/common/primitives/set.d.ts delete mode 100644 types/types/foundry/common/primitives/string.d.ts delete mode 100644 types/types/foundry/common/primitives/url.d.ts delete mode 100644 types/types/foundry/common/prosemirror/dropdown.d.ts delete mode 100644 types/types/foundry/common/prosemirror/menu.d.ts delete mode 100644 types/types/foundry/common/prosemirror/module.d.ts delete mode 100644 types/types/foundry/common/prosemirror/plugin.d.ts delete mode 100644 types/types/foundry/common/types.d.ts delete mode 100644 types/types/foundry/common/utils/collection.d.ts delete mode 100644 types/types/foundry/common/utils/color.d.ts delete mode 100644 types/types/foundry/common/utils/geometry.d.ts delete mode 100644 types/types/foundry/common/utils/helpers.d.ts delete mode 100644 types/types/foundry/common/utils/http.d.ts delete mode 100644 types/types/foundry/common/utils/module.d.ts delete mode 100644 types/types/foundry/index.d.ts delete mode 100644 types/types/foundry/package.json delete mode 100644 types/types/foundry/scripts/prose-mirror.d.ts delete mode 100644 types/types/foundry/tsconfig.json delete mode 100644 types/types/foundry/util.d.ts delete mode 100644 types/vite.config.d.ts diff --git a/.eslintrc.json b/.eslintrc.json index da514ce1a..69f442e4d 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -11,7 +11,7 @@ "prettier" ], "parserOptions": { - "ecmaVersion": 2018, + "ecmaVersion": 2023, "sourceType": "module", "project": "./tsconfig.json" }, diff --git a/build/build-packs.ts b/build/build-packs.ts index e08c15b3e..092ccb663 100644 --- a/build/build-packs.ts +++ b/build/build-packs.ts @@ -4,8 +4,8 @@ import fs from "fs-extra"; import path from "path"; import { compilePack } from "@foundryvtt/foundryvtt-cli"; -import type { MacroSource } from "common/documents/macro.d.ts"; -import type { DocumentStatsData } from "common/data/fields.d.ts"; +import { MacroSource } from "foundry-pf2e/foundry/common/documents/macro.js"; +import { DocumentStatsData } from "foundry-pf2e/foundry/common/data/fields.js"; // We can't import this from xdy-pf2e-workbench.ts because nodejs can't run that file const MODULENAME = "xdy-pf2e-workbench"; diff --git a/package-lock.json b/package-lock.json index 167d6c44f..334a9524e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,14 +11,16 @@ "dependencies": { "@codemirror/autocomplete": "^6.18.4", "@codemirror/lang-json": "^6.0.1", - "@yaireo/tagify": "^4.33.0", + "@yaireo/tagify": "^4.33.1", "codemirror": "^6.0.1", + "foundry-pf2e": "github:7H3LaughingMan/foundry-pf2e", "luxon": "^3.5.0", "minisearch": "^7.1.1", "nouislider": "^15.8.1", - "remeda": "^2.19.0", + "remeda": "^2.19.1", + "showdown": "^2.1.0", "sortablejs": "^1.15.6", - "uuid": "^11.0.3" + "uuid": "^11.0.5" }, "devDependencies": { "@eslint/eslintrc": "^3.2.0", @@ -26,6 +28,9 @@ "@foundryvtt/foundryvtt-cli": "github:xyzzy42/foundryvtt-cli#objects", "@pixi/graphics-smooth": "^1.1.1", "@pixi/particle-emitter": "5.0.8", + "@rollup/plugin-alias": "^5.1.1", + "@rollup/plugin-node-resolve": "^16.0.0", + "@rollup/plugin-typescript": "^12.1.2", "@semantic-release/changelog": "^6.0.3", "@semantic-release/commit-analyzer": "^13.0.1", "@semantic-release/exec": "^6.0.3", @@ -38,18 +43,18 @@ "@types/jquery": "^3.5.32", "@types/jsdom": "^21.1.7", "@types/luxon": "^3.4.2", - "@types/node": "^20.17.11", + "@types/node": "^20.17.12", "@types/prompts": "^2.4.9", "@types/showdown": "^2.0.6", "@types/sortablejs": "^1.15.8", "@types/tooltipster": "^0.0.35", "@types/uuid": "^10.0.0", "@types/yaireo__tagify": "^4.27.0", - "@typescript-eslint/eslint-plugin": "^8.19.0", - "@typescript-eslint/parser": "^8.19.0", + "@typescript-eslint/eslint-plugin": "^8.20.0", + "@typescript-eslint/parser": "^8.20.0", "classic-level": "^1.4.1", "es-jest": "^2.1.0", - "eslint": "^9.17.0", + "eslint": "^9.18.0", "eslint-config-prettier": "^9.1.0", "eslint-import-resolver-typescript": "^3.7.0", "eslint-plugin-import": "^2.31.0", @@ -67,15 +72,16 @@ "prompts": "^2.4.2", "prosemirror-commands": "^1.6.2", "prosemirror-view": "^1.37.1", - "sass": "^1.83.0", + "rollup-plugin-tsconfig-paths": "^1.5.2", + "sass": "^1.83.4", "semantic-release": "^24.2.1", "socket.io": "^4.8.1", "socket.io-client": "^4.8.1", "tinymce": "^7.6.0", "tsconfig-paths": "^4.2.0", "tsx": "^4.19.2", - "typescript": "^5.7.2", - "vite": "^5.4.11", + "typescript": "^5.7.3", + "vite": "^6.0.7", "vite-plugin-checker": "^0.8.0", "vite-plugin-static-copy": "^2.2.0", "vite-tsconfig-paths": "^5.1.4", @@ -85,6 +91,33 @@ "node": ">=20.15.0" } }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@asamuzakjp/css-color": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-2.8.2.tgz", + "integrity": "sha512-RtWv9jFN2/bLExuZgFFZ0I3pWWeezAHGgrmjqGGWclATl1aDe3yhCUaI0Ilkp6OCk9zX7+FjvDasEX8Q9Rxc5w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@csstools/css-calc": "^2.1.1", + "@csstools/css-color-parser": "^3.0.7", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^11.0.2" + } + }, "node_modules/@babel/code-frame": { "version": "7.26.2", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", @@ -123,9 +156,9 @@ } }, "node_modules/@codemirror/commands": { - "version": "6.7.1", - "resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-6.7.1.tgz", - "integrity": "sha512-llTrboQYw5H4THfhN4U3qCnSZ1SOJ60ohhz+SzU0ADGtwlc533DtklQP0vSFaQuCPDn3BPpOd1GbbnUtwNjsrw==", + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/@codemirror/commands/-/commands-6.8.0.tgz", + "integrity": "sha512-q8VPEFaEP4ikSlt6ZxjB3zW72+7osfAYW9i8Zu943uqbKuz6utc1+F170hyLUCUltXORjQXRyYQNfkckzA/bPQ==", "license": "MIT", "dependencies": { "@codemirror/language": "^6.0.0", @@ -181,18 +214,18 @@ } }, "node_modules/@codemirror/state": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.5.0.tgz", - "integrity": "sha512-MwBHVK60IiIHDcoMet78lxt6iw5gJOGSbNbOIVBHWVXIH4/Nq1+GQgLLGgI1KlnN86WDXsPudVaqYHKBIx7Eyw==", + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@codemirror/state/-/state-6.5.1.tgz", + "integrity": "sha512-3rA9lcwciEB47ZevqvD8qgbzhM9qMb8vCcQCNmDfVRPQG4JT9mSb0Jg8H7YjKGGQcFnLN323fj9jdnG59Kx6bg==", "license": "MIT", "dependencies": { "@marijn/find-cluster-break": "^1.0.0" } }, "node_modules/@codemirror/view": { - "version": "6.36.1", - "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.36.1.tgz", - "integrity": "sha512-miD1nyT4m4uopZaDdO2uXU/LLHliKNYL9kB1C1wJHrunHLm/rpkb5QVSokqgw9hFqEZakrdlb/VGWX8aYZTslQ==", + "version": "6.36.2", + "resolved": "https://registry.npmjs.org/@codemirror/view/-/view-6.36.2.tgz", + "integrity": "sha512-DZ6ONbs8qdJK0fdN7AB82CgI6tYXf4HWk1wSVa0+9bhVznCuuvhQtX8bFBoy3dv8rZSQqUd8GvhVAcielcidrA==", "license": "MIT", "dependencies": { "@codemirror/state": "^6.5.0", @@ -211,6 +244,121 @@ "node": ">=0.1.90" } }, + "node_modules/@csstools/color-helpers": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.1.tgz", + "integrity": "sha512-MKtmkA0BX87PKaO1NFRTFH+UnkgnmySQOvNxJubsadusqPEC2aJ9MOQiMceZJJ6oitUl/i0L6u0M1IrmAOmgBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + } + }, + "node_modules/@csstools/css-calc": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.1.tgz", + "integrity": "sha512-rL7kaUnTkL9K+Cvo2pnCieqNpTKgQzy5f+N+5Iuko9HAoasP+xgprVh7KN/MaJVvVL1l0EzQq2MoqBHKSrDrag==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3" + } + }, + "node_modules/@csstools/css-color-parser": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.7.tgz", + "integrity": "sha512-nkMp2mTICw32uE5NN+EsJ4f5N+IGFeCFu4bGpiKgb2Pq/7J/MpyLBeQ5ry4KKtRFZaYs6sTmcMYrSRIyj5DFKA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/color-helpers": "^5.0.1", + "@csstools/css-calc": "^2.1.1" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.4.tgz", + "integrity": "sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.3" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.3.tgz", + "integrity": "sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.24.2", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", @@ -681,9 +829,9 @@ } }, "node_modules/@eslint/core": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.9.1.tgz", - "integrity": "sha512-GuUdqkyyzQI5RMIWkHhvTWLCyLo1jNK3vzkSyaExH5kHPDHcuL2VOpHjmMY+y3+NC69qAKToBqldTBgYeLSr9Q==", + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.10.0.tgz", + "integrity": "sha512-gFHJ+xBOo4G3WRlR1e/3G8A6/KZAH6zcE/hkLRCZTi/B9avAG365QhFA8uOGzTMqgTghpn7/fSnscW++dpMSAw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -718,9 +866,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.17.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.17.0.tgz", - "integrity": "sha512-Sxc4hqcs1kTu0iID3kcZDW3JHq2a77HO9P8CP6YEA/FpH3Ll8UXE2r/86Rz9YJLKme39S9vU5OWNjC6Xl0Cr3w==", + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.18.0.tgz", + "integrity": "sha512-fK6L7rxcq6/z+AaQMtiFTkvbHkBLNlwyRxHpKawP0x3u9+NC6MQTnFW+AdpwC6gfHTW0051cokQgtTN2FqlxQA==", "dev": true, "license": "MIT", "engines": { @@ -738,12 +886,13 @@ } }, "node_modules/@eslint/plugin-kit": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.4.tgz", - "integrity": "sha512-zSkKow6H5Kdm0ZUQUB2kV5JIXqoG0+uH5YADhaEHswm664N9Db8dXSi0nMJpacpMf+MyyglF1vnZohpEg5yUtg==", + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.5.tgz", + "integrity": "sha512-lB05FkqEdUg2AA0xEbUz0SnkXT1LcCTa438W4IWTUh4hdOnVbQyOJ81OrDXsJk/LSiJHubgGEFoR5EHq1NsH1A==", "dev": true, "license": "Apache-2.0", "dependencies": { + "@eslint/core": "^0.10.0", "levn": "^0.4.1" }, "engines": { @@ -837,6 +986,54 @@ "url": "https://github.com/sponsors/nzakas" } }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", + "integrity": "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==", + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, "node_modules/@lezer/common": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/@lezer/common/-/common-1.2.3.tgz", @@ -985,20 +1182,20 @@ } }, "node_modules/@octokit/openapi-types": { - "version": "22.2.0", - "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-22.2.0.tgz", - "integrity": "sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==", + "version": "23.0.1", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-23.0.1.tgz", + "integrity": "sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g==", "dev": true, "license": "MIT" }, "node_modules/@octokit/plugin-paginate-rest": { - "version": "11.3.6", - "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.3.6.tgz", - "integrity": "sha512-zcvqqf/+TicbTCa/Z+3w4eBJcAxCFymtc0UAIsR3dEVoNilWld4oXdscQ3laXamTszUZdusw97K8+DrbFiOwjw==", + "version": "11.4.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-11.4.0.tgz", + "integrity": "sha512-ttpGck5AYWkwMkMazNCZMqxKqIq1fJBNxBfsFwwfyYKTf914jKkLF0POMS3YkPBwp5g1c2Y4L79gDz01GhSr1g==", "dev": true, "license": "MIT", "dependencies": { - "@octokit/types": "^13.6.2" + "@octokit/types": "^13.7.0" }, "engines": { "node": ">= 18" @@ -1008,14 +1205,14 @@ } }, "node_modules/@octokit/plugin-retry": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-7.1.2.tgz", - "integrity": "sha512-XOWnPpH2kJ5VTwozsxGurw+svB2e61aWlmk5EVIYZPwFK5F9h4cyPyj9CIKRyMXMHSwpIsI3mPOdpMmrRhe7UQ==", + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-7.1.3.tgz", + "integrity": "sha512-8nKOXvYWnzv89gSyIvgFHmCBAxfQAOPRlkacUHL9r5oWtp5Whxl8Skb2n3ACZd+X6cYijD6uvmrQuPH/UCL5zQ==", "dev": true, "license": "MIT", "dependencies": { - "@octokit/request-error": "^6.0.0", - "@octokit/types": "^13.0.0", + "@octokit/request-error": "^6.1.6", + "@octokit/types": "^13.6.2", "bottleneck": "^2.15.3" }, "engines": { @@ -1026,20 +1223,20 @@ } }, "node_modules/@octokit/plugin-throttling": { - "version": "9.3.2", - "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-9.3.2.tgz", - "integrity": "sha512-FqpvcTpIWFpMMwIeSoypoJXysSAQ3R+ALJhXXSG1HTP3YZOIeLmcNcimKaXxTcws+Sh6yoRl13SJ5r8sXc1Fhw==", + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-throttling/-/plugin-throttling-9.4.0.tgz", + "integrity": "sha512-IOlXxXhZA4Z3m0EEYtrrACkuHiArHLZ3CvqWwOez/pURNqRuwfoFlTPbN5Muf28pzFuztxPyiUiNwz8KctdZaQ==", "dev": true, "license": "MIT", "dependencies": { - "@octokit/types": "^13.0.0", + "@octokit/types": "^13.7.0", "bottleneck": "^2.15.3" }, "engines": { "node": ">= 18" }, "peerDependencies": { - "@octokit/core": "^6.0.0" + "@octokit/core": "^6.1.3" } }, "node_modules/@octokit/request": { @@ -1073,13 +1270,13 @@ } }, "node_modules/@octokit/types": { - "version": "13.6.2", - "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.6.2.tgz", - "integrity": "sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==", + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.7.0.tgz", + "integrity": "sha512-BXfRP+3P3IN6fd4uF3SniaHKOO4UXWBfkdR3vA8mIvaoO/wLjGN5qivUtW0QRitBHHMcfC41SLhNVYIZZE+wkA==", "dev": true, "license": "MIT", "dependencies": { - "@octokit/openapi-types": "^22.2.0" + "@octokit/openapi-types": "^23.0.1" } }, "node_modules/@parcel/watcher": { @@ -1409,7 +1606,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/accessibility/-/accessibility-7.4.2.tgz", "integrity": "sha512-R6VEolm8uyy1FB1F2qaLKxVbzXAFTZCF2ka8fl9lsz7We6ZfO4QpXv9ur7DvzratjCQUQVCKo0/V7xL5q1EV/g==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1421,7 +1617,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/app/-/app-7.4.2.tgz", "integrity": "sha512-ugkH3kOgjT8P1mTMY29yCOgEh+KuVMAn8uBxeY0aMqaUgIMysfpnFv+Aepp2CtvI9ygr22NC+OiKl+u+eEaQHw==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1432,7 +1627,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/assets/-/assets-7.4.2.tgz", "integrity": "sha512-anxho59H9egZwoaEdM5aLvYyxoz6NCy3CaQIvNHD1bbGg8L16Ih0e26QSBR5fu53jl8OjT6M7s+p6n7uu4+fGA==", - "dev": true, "license": "MIT", "dependencies": { "@types/css-font-loading-module": "^0.0.12" @@ -1445,7 +1639,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/color/-/color-7.4.2.tgz", "integrity": "sha512-av1LOvhHsiaW8+T4n/FgnOKHby55/w7VcA1HzPIHRBtEcsmxvSCDanT1HU2LslNhrxLPzyVx18nlmalOyt5OBg==", - "dev": true, "license": "MIT", "dependencies": { "@pixi/colord": "^2.9.6" @@ -1455,14 +1648,12 @@ "version": "2.9.6", "resolved": "https://registry.npmjs.org/@pixi/colord/-/colord-2.9.6.tgz", "integrity": "sha512-nezytU2pw587fQstUu1AsJZDVEynjskwOL+kibwcdxsMBFqPsFFNA7xl0ii/gXuDi6M0xj3mfRJj8pBSc2jCfA==", - "dev": true, "license": "MIT" }, "node_modules/@pixi/compressed-textures": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/compressed-textures/-/compressed-textures-7.4.2.tgz", "integrity": "sha512-VJrt7el6O4ZJSWkeOGXwrhJaiLg1UBhHB3fj42VR4YloYkAxpfd9K6s6IcbcVz7n9L48APKBMgHyaB2pX2Ck/A==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/assets": "7.4.2", @@ -1473,14 +1664,12 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-7.4.2.tgz", "integrity": "sha512-N9vn6Wpz5WIQg7ugUg2+SdqD2u2+NM0QthE8YzLJ4tLH2Iz+/TrnPKUJzeyIqbg3sxJG5ZpGGPiacqIBpy1KyA==", - "dev": true, "license": "MIT" }, "node_modules/@pixi/core": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/core/-/core-7.4.2.tgz", "integrity": "sha512-UbMtgSEnyCOFPzbE6ThB9qopXxbZ5GCof2ArB4FXOC5Xi/83MOIIYg5kf5M8689C5HJMhg2SrJu3xLKppF+CMg==", - "dev": true, "license": "MIT", "dependencies": { "@pixi/color": "7.4.2", @@ -1501,7 +1690,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/display/-/display-7.4.2.tgz", "integrity": "sha512-DaD0J7gIlNlzO0Fdlby/0OH+tB5LtCY6rgFeCBKVDnzmn8wKW3zYZRenWBSFJ0Psx6vLqXYkSIM/rcokaKviIw==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2" @@ -1511,7 +1699,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/events/-/events-7.4.2.tgz", "integrity": "sha512-Jw/w57heZjzZShIXL0bxOvKB+XgGIevyezhGtfF2ZSzQoSBWo+Fj1uE0QwKd0RIaXegZw/DhSmiMJSbNmcjifA==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1522,14 +1709,12 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/extensions/-/extensions-7.4.2.tgz", "integrity": "sha512-Hmx2+O0yZ8XIvgomHM9GZEGcy9S9Dd8flmtOK5Aa3fXs/8v7xD08+ANQpN9ZqWU2Xs+C6UBlpqlt2BWALvKKKA==", - "dev": true, "license": "MIT" }, "node_modules/@pixi/extract": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/extract/-/extract-7.4.2.tgz", "integrity": "sha512-JOX27TRWjVEjauGBbF8PU7/g6LYXnivehdgqS5QlVDv1CNHTOrz/j3MdKcVWOhyZPbH5c9sh7lxyRxvd9AIuTQ==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2" @@ -1539,7 +1724,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/filter-alpha/-/filter-alpha-7.4.2.tgz", "integrity": "sha512-9OsKJ+yvY2wIcQXwswj5HQBiwNGymwmqdxfp7mo+nZSBoDmxUqvMZzE9UNJ3eUlswuNvNRO8zNOsQvwdz7WFww==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2" @@ -1549,7 +1733,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/filter-blur/-/filter-blur-7.4.2.tgz", "integrity": "sha512-gOXBbIUx6CRZP1fmsis2wLzzSsofrqmIHhbf1gIkZMIQaLsc9T7brj+PaLTTiOiyJgnvGN5j20RZnkERWWKV0Q==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2" @@ -1559,7 +1742,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/filter-color-matrix/-/filter-color-matrix-7.4.2.tgz", "integrity": "sha512-ykZiR59Gvj80UKs9qm7jeUTKvn+wWk6HBVJOmJbK9jFK5juakDWp7BbH26U78Q61EWj97kI1FdfcbMkuQ7rqkA==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2" @@ -1569,7 +1751,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/filter-displacement/-/filter-displacement-7.4.2.tgz", "integrity": "sha512-QS/eWp/ivsxef3xapNeGwpPX7vrqQQeo99Fux4k5zsvplnNEsf91t6QYJLG776AbZEu/qh8VYRBA5raIVY/REw==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2" @@ -1579,7 +1760,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/filter-fxaa/-/filter-fxaa-7.4.2.tgz", "integrity": "sha512-U/ptJgDsfs/r8y2a6gCaiPfDu2IFAxpQ4wtfmBpz6vRhqeE4kI8yNIUx5dZbui57zlsJaW0BNacOQxHU0vLkyQ==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2" @@ -1589,7 +1769,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/filter-noise/-/filter-noise-7.4.2.tgz", "integrity": "sha512-Vy9ViBFhZEGh6xKkd3kFWErolZTwv1Y5Qb1bV7qPIYbvBECYsqzlR4uCrrjBV6KKm0PufpG/+NKC5vICZaqKzg==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2" @@ -1599,7 +1778,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-7.4.2.tgz", "integrity": "sha512-jH4/Tum2RqWzHGzvlwEr7HIVduoLO57Ze705N2zQPkUD57TInn5911aGUeoua7f/wK8cTLGzgB9BzSo2kTdcHw==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1611,7 +1789,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/@pixi/graphics-smooth/-/graphics-smooth-1.1.1.tgz", "integrity": "sha512-9xIFWZhHGEb6KCnyWL6TVPYG/QkF0YDM/yDU5EvjTQbaj/1cITrXtI5P3tBkB5H0DQi+8J8/QS38MjfqNEJAYQ==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "^7.2.0", @@ -1623,14 +1800,12 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/math/-/math-7.4.2.tgz", "integrity": "sha512-7jHmCQoYk6e0rfSKjdNFOPl0wCcdgoraxgteXJTTHv3r0bMNx2pHD9FJ0VvocEUG7XHfj55O3+u7yItOAx0JaQ==", - "dev": true, "license": "MIT" }, "node_modules/@pixi/mesh": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/mesh/-/mesh-7.4.2.tgz", "integrity": "sha512-mEkKyQvvMrYXC3pahvH5WBIKtrtB63WixRr91ANFI7zXD+ESG6Ap6XtxMCJmXDQPwBDNk7SWVMiCflYuchG7kA==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1641,7 +1816,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/mesh-extras/-/mesh-extras-7.4.2.tgz", "integrity": "sha512-vNR/7wjxjs7sv9fGoKkHyU91ZAD+7EnMHBS5F3CVISlOIFxLi96NNZCB81oUIdky/90pHw40johd/4izR5zTyw==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1652,7 +1826,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/mixin-cache-as-bitmap/-/mixin-cache-as-bitmap-7.4.2.tgz", "integrity": "sha512-6dgthi2ruUT/lervSrFDQ7vXkEsHo6CxdgV7W/wNdW1dqgQlKfDvO6FhjXzyIMRLSooUf5FoeluVtfsjkUIYrw==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1664,7 +1837,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/mixin-get-child-by-name/-/mixin-get-child-by-name-7.4.2.tgz", "integrity": "sha512-0Cfw8JpQhsixprxiYph4Lj+B5n83Kk4ftNMXgM5xtZz+tVLz5s91qR0MqcdzwTGTJ7utVygiGmS4/3EfR/duRQ==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/display": "7.4.2" @@ -1674,7 +1846,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/mixin-get-global-position/-/mixin-get-global-position-7.4.2.tgz", "integrity": "sha512-LcsahbVdX4DFS2IcGfNp4KaXuu7SjAwUp/flZSGIfstyKOKb5FWFgihtqcc9ZT4coyri3gs2JbILZub/zPZj1w==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1685,7 +1856,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/particle-container/-/particle-container-7.4.2.tgz", "integrity": "sha512-B78Qq86kt0lEa5WtB2YFIm3+PjhKfw9La9R++GBSgABl+g13s2UaZ6BIPxvY3JxWMdxPm4iPrQPFX1QWRN68mw==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1697,7 +1867,6 @@ "version": "5.0.8", "resolved": "https://registry.npmjs.org/@pixi/particle-emitter/-/particle-emitter-5.0.8.tgz", "integrity": "sha512-OzuZ4+esQo+zJ0u3htuNHHMAE8Ixmr3nz3tEfrTGZHje1vnGyie3ANQj9F0V4OM47oi9jd70njVCmeb7bTkS9A==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/constants": ">=6.0.4 <8.0.0", @@ -1715,22 +1884,10 @@ ] } }, - "node_modules/@pixi/polyfill": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/polyfill/-/polyfill-6.5.2.tgz", - "integrity": "sha512-gFEOVOJDB5yAxwF7u1IqobjG4z+/T2Ip4NZXqH1175FLOh49XyeskvtZpbeKz0LC9zCSur3FMsjkosPyLMUQYA==", - "dev": true, - "license": "MIT", - "dependencies": { - "object-assign": "^4.1.1", - "promise-polyfill": "^8.2.0" - } - }, "node_modules/@pixi/prepare": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/prepare/-/prepare-7.4.2.tgz", "integrity": "sha512-PugyMzReCHXUzc3so9PPJj2OdHwibpUNWyqG4mWY2UUkb6c8NAGK1AnAPiscOvLilJcv/XQSFoNhX+N1jrvJEg==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1743,14 +1900,12 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-7.4.2.tgz", "integrity": "sha512-LPBpwym4vdyyDY5ucF4INQccaGyxztERyLTY1YN6aqJyyMmnc7iqXlIKt+a0euMBtNoLoxy6MWMvIuZj0JfFPA==", - "dev": true, "license": "MIT" }, "node_modules/@pixi/settings": { "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-7.4.2.tgz", "integrity": "sha512-pMN+L6aWgvUbwhFIL/BTHKe2ShYGPZ8h9wlVBnFHMtUcJcFLMF1B3lzuvCayZRepOphs6RY0TqvnDvVb585JhQ==", - "dev": true, "license": "MIT", "dependencies": { "@pixi/constants": "7.4.2", @@ -1762,7 +1917,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-7.4.2.tgz", "integrity": "sha512-Ccf/OVQsB+HQV0Fyf5lwD+jk1jeU7uSIqEjbxenNNssmEdB7S5qlkTBV2EJTHT83+T6Z9OMOHsreJZerydpjeg==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1773,7 +1927,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/sprite-animated/-/sprite-animated-7.4.2.tgz", "integrity": "sha512-QPT6yxCUGOBN+98H3pyIZ1ZO6Y7BN1o0Q2IMZEsD1rNfZJrTYS3Q8VlCG5t2YlFlcB8j5iBo24bZb6FUxLOmsQ==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1784,7 +1937,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/sprite-tiling/-/sprite-tiling-7.4.2.tgz", "integrity": "sha512-Z8PP6ewy3nuDYL+NeEdltHAhuucVgia33uzAitvH3OqqRSx6a6YRBFbNLUM9Sx+fBO2Lk3PpV1g6QZX+NE5LOg==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1796,7 +1948,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/spritesheet/-/spritesheet-7.4.2.tgz", "integrity": "sha512-YIvHdpXW+AYp8vD0NkjJmrdnVHTZKidCnx6k8ATSuuvCT6O5Tuh2N/Ul2oDj4/QaePy0lVhyhAbZpJW00Jr7mQ==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/assets": "7.4.2", @@ -1807,7 +1958,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/text/-/text-7.4.2.tgz", "integrity": "sha512-rZZWpJNsIQ8WoCWrcVg8Gi6L/PDakB941clo6dO3XjoII2ucoOUcnpe5HIkudxi2xPvS/8Bfq990gFEx50TP5A==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1818,7 +1968,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/text-bitmap/-/text-bitmap-7.4.2.tgz", "integrity": "sha512-lPBMJ83JnpFVL+6ckQ8KO8QmwdPm0z9Zs/M0NgFKH2F+BcjelRNnk80NI3O0qBDYSEDQIE+cFbKoZ213kf7zwA==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/assets": "7.4.2", @@ -1832,7 +1981,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/text-html/-/text-html-7.4.2.tgz", "integrity": "sha512-duOu8oDYeDNuyPozj2DAsQ5VZBbRiwIXy78Gn7H2pCiEAefw/Uv5jJYwdgneKME0e1tOxz1eOUGKPcI6IJnZjw==", - "dev": true, "license": "MIT", "peerDependencies": { "@pixi/core": "7.4.2", @@ -1845,7 +1993,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-7.4.2.tgz", "integrity": "sha512-cAvxCh/KI6IW4m3tp2b+GQIf+DoSj9NNmPJmsOeEJ7LzvruG8Ps7SKI6CdjQob5WbceL1apBTDbqZ/f77hFDiQ==", - "dev": true, "license": "MIT", "dependencies": { "@pixi/extensions": "7.4.2", @@ -1857,7 +2004,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-7.4.2.tgz", "integrity": "sha512-aU/itcyMC4TxFbmdngmak6ey4kC5c16Y5ntIYob9QnjNAfD/7GTsYIBnP6FqEAyO1eq0MjkAALxdONuay1BG3g==", - "dev": true, "license": "MIT", "dependencies": { "@pixi/color": "7.4.2", @@ -1927,10 +2073,103 @@ "node": ">=12" } }, + "node_modules/@rollup/plugin-alias": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-5.1.1.tgz", + "integrity": "sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-16.0.0.tgz", + "integrity": "sha512-0FPvAeVUT/zdWoO0jnb/V5BlBsUSNfkIOtFHzMO4H9MOklrmQFY6FduVHKucNb/aTFxvnGhj4MNj/T1oNdDfNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-typescript": { + "version": "12.1.2", + "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-12.1.2.tgz", + "integrity": "sha512-cdtSp154H5sv637uMr1a8OTWB0L1SWDSm1rDGiyfcGcvQ6cuTs4MDk2BVEBGysUWago4OJN4EQZqOTl/QY3Jgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.1.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.14.0||^3.0.0||^4.0.0", + "tslib": "*", + "typescript": ">=3.7.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + }, + "tslib": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.29.1.tgz", - "integrity": "sha512-ssKhA8RNltTZLpG6/QNkCSge+7mBQGUqJRisZ2MDQcEGaK93QESEgWK2iOpIDZ7k9zPVkG5AS3ksvD5ZWxmItw==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.30.1.tgz", + "integrity": "sha512-pSWY+EVt3rJ9fQ3IqlrEUtXh3cGqGtPDH1FQlNZehO2yYxCHEX1SPsz1M//NXwYfbTlcKr9WObLnJX9FsS9K1Q==", "cpu": [ "arm" ], @@ -1942,9 +2181,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.29.1.tgz", - "integrity": "sha512-CaRfrV0cd+NIIcVVN/jx+hVLN+VRqnuzLRmfmlzpOzB87ajixsN/+9L5xNmkaUUvEbI5BmIKS+XTwXsHEb65Ew==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.30.1.tgz", + "integrity": "sha512-/NA2qXxE3D/BRjOJM8wQblmArQq1YoBVJjrjoTSBS09jgUisq7bqxNHJ8kjCHeV21W/9WDGwJEWSN0KQ2mtD/w==", "cpu": [ "arm64" ], @@ -1956,9 +2195,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.29.1.tgz", - "integrity": "sha512-2ORr7T31Y0Mnk6qNuwtyNmy14MunTAMx06VAPI6/Ju52W10zk1i7i5U3vlDRWjhOI5quBcrvhkCHyF76bI7kEw==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.30.1.tgz", + "integrity": "sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==", "cpu": [ "arm64" ], @@ -1970,9 +2209,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.29.1.tgz", - "integrity": "sha512-j/Ej1oanzPjmN0tirRd5K2/nncAhS9W6ICzgxV+9Y5ZsP0hiGhHJXZ2JQ53iSSjj8m6cRY6oB1GMzNn2EUt6Ng==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.30.1.tgz", + "integrity": "sha512-x78BavIwSH6sqfP2xeI1hd1GpHL8J4W2BXcVM/5KYKoAD3nNsfitQhvWSw+TFtQTLZ9OmlF+FEInEHyubut2OA==", "cpu": [ "x64" ], @@ -1984,9 +2223,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.29.1.tgz", - "integrity": "sha512-91C//G6Dm/cv724tpt7nTyP+JdN12iqeXGFM1SqnljCmi5yTXriH7B1r8AD9dAZByHpKAumqP1Qy2vVNIdLZqw==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.30.1.tgz", + "integrity": "sha512-HYTlUAjbO1z8ywxsDFWADfTRfTIIy/oUlfIDmlHYmjUP2QRDTzBuWXc9O4CXM+bo9qfiCclmHk1x4ogBjOUpUQ==", "cpu": [ "arm64" ], @@ -1998,9 +2237,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.29.1.tgz", - "integrity": "sha512-hEioiEQ9Dec2nIRoeHUP6hr1PSkXzQaCUyqBDQ9I9ik4gCXQZjJMIVzoNLBRGet+hIUb3CISMh9KXuCcWVW/8w==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.30.1.tgz", + "integrity": "sha512-1MEdGqogQLccphhX5myCJqeGNYTNcmTyaic9S7CG3JhwuIByJ7J05vGbZxsizQthP1xpVx7kd3o31eOogfEirw==", "cpu": [ "x64" ], @@ -2012,9 +2251,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.29.1.tgz", - "integrity": "sha512-Py5vFd5HWYN9zxBv3WMrLAXY3yYJ6Q/aVERoeUFwiDGiMOWsMs7FokXihSOaT/PMWUty/Pj60XDQndK3eAfE6A==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.30.1.tgz", + "integrity": "sha512-PaMRNBSqCx7K3Wc9QZkFx5+CX27WFpAMxJNiYGAXfmMIKC7jstlr32UhTgK6T07OtqR+wYlWm9IxzennjnvdJg==", "cpu": [ "arm" ], @@ -2026,9 +2265,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.29.1.tgz", - "integrity": "sha512-RiWpGgbayf7LUcuSNIbahr0ys2YnEERD4gYdISA06wa0i8RALrnzflh9Wxii7zQJEB2/Eh74dX4y/sHKLWp5uQ==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.30.1.tgz", + "integrity": "sha512-B8Rcyj9AV7ZlEFqvB5BubG5iO6ANDsRKlhIxySXcF1axXYUyqwBok+XZPgIYGBgs7LDXfWfifxhw0Ik57T0Yug==", "cpu": [ "arm" ], @@ -2040,9 +2279,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.29.1.tgz", - "integrity": "sha512-Z80O+taYxTQITWMjm/YqNoe9d10OX6kDh8X5/rFCMuPqsKsSyDilvfg+vd3iXIqtfmp+cnfL1UrYirkaF8SBZA==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.30.1.tgz", + "integrity": "sha512-hqVyueGxAj3cBKrAI4aFHLV+h0Lv5VgWZs9CUGqr1z0fZtlADVV1YPOij6AhcK5An33EXaxnDLmJdQikcn5NEw==", "cpu": [ "arm64" ], @@ -2054,9 +2293,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.29.1.tgz", - "integrity": "sha512-fOHRtF9gahwJk3QVp01a/GqS4hBEZCV1oKglVVq13kcK3NeVlS4BwIFzOHDbmKzt3i0OuHG4zfRP0YoG5OF/rA==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.30.1.tgz", + "integrity": "sha512-i4Ab2vnvS1AE1PyOIGp2kXni69gU2DAUVt6FSXeIqUCPIR3ZlheMW3oP2JkukDfu3PsexYRbOiJrY+yVNSk9oA==", "cpu": [ "arm64" ], @@ -2068,9 +2307,9 @@ ] }, "node_modules/@rollup/rollup-linux-loongarch64-gnu": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.29.1.tgz", - "integrity": "sha512-5a7q3tnlbcg0OodyxcAdrrCxFi0DgXJSoOuidFUzHZ2GixZXQs6Tc3CHmlvqKAmOs5eRde+JJxeIf9DonkmYkw==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.30.1.tgz", + "integrity": "sha512-fARcF5g296snX0oLGkVxPmysetwUk2zmHcca+e9ObOovBR++9ZPOhqFUM61UUZ2EYpXVPN1redgqVoBB34nTpQ==", "cpu": [ "loong64" ], @@ -2082,9 +2321,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.29.1.tgz", - "integrity": "sha512-9b4Mg5Yfz6mRnlSPIdROcfw1BU22FQxmfjlp/CShWwO3LilKQuMISMTtAu/bxmmrE6A902W2cZJuzx8+gJ8e9w==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.30.1.tgz", + "integrity": "sha512-GLrZraoO3wVT4uFXh67ElpwQY0DIygxdv0BNW9Hkm3X34wu+BkqrDrkcsIapAY+N2ATEbvak0XQ9gxZtCIA5Rw==", "cpu": [ "ppc64" ], @@ -2096,9 +2335,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.29.1.tgz", - "integrity": "sha512-G5pn0NChlbRM8OJWpJFMX4/i8OEU538uiSv0P6roZcbpe/WfhEO+AT8SHVKfp8qhDQzaz7Q+1/ixMy7hBRidnQ==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.30.1.tgz", + "integrity": "sha512-0WKLaAUUHKBtll0wvOmh6yh3S0wSU9+yas923JIChfxOaaBarmb/lBKPF0w/+jTVozFnOXJeRGZ8NvOxvk/jcw==", "cpu": [ "riscv64" ], @@ -2110,9 +2349,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.29.1.tgz", - "integrity": "sha512-WM9lIkNdkhVwiArmLxFXpWndFGuOka4oJOZh8EP3Vb8q5lzdSCBuhjavJsw68Q9AKDGeOOIHYzYm4ZFvmWez5g==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.30.1.tgz", + "integrity": "sha512-GWFs97Ruxo5Bt+cvVTQkOJ6TIx0xJDD/bMAOXWJg8TCSTEK8RnFeOeiFTxKniTc4vMIaWvCplMAFBt9miGxgkA==", "cpu": [ "s390x" ], @@ -2124,9 +2363,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.29.1.tgz", - "integrity": "sha512-87xYCwb0cPGZFoGiErT1eDcssByaLX4fc0z2nRM6eMtV9njAfEE6OW3UniAoDhX4Iq5xQVpE6qO9aJbCFumKYQ==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.30.1.tgz", + "integrity": "sha512-UtgGb7QGgXDIO+tqqJ5oZRGHsDLO8SlpE4MhqpY9Llpzi5rJMvrK6ZGhsRCST2abZdBqIBeXW6WPD5fGK5SDwg==", "cpu": [ "x64" ], @@ -2138,9 +2377,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.29.1.tgz", - "integrity": "sha512-xufkSNppNOdVRCEC4WKvlR1FBDyqCSCpQeMMgv9ZyXqqtKBfkw1yfGMTUTs9Qsl6WQbJnsGboWCp7pJGkeMhKA==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.30.1.tgz", + "integrity": "sha512-V9U8Ey2UqmQsBT+xTOeMzPzwDzyXmnAoO4edZhL7INkwQcaW1Ckv3WJX3qrrp/VHaDkEWIBWhRwP47r8cdrOow==", "cpu": [ "x64" ], @@ -2152,9 +2391,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.29.1.tgz", - "integrity": "sha512-F2OiJ42m77lSkizZQLuC+jiZ2cgueWQL5YC9tjo3AgaEw+KJmVxHGSyQfDUoYR9cci0lAywv2Clmckzulcq6ig==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.30.1.tgz", + "integrity": "sha512-WabtHWiPaFF47W3PkHnjbmWawnX/aE57K47ZDT1BXTS5GgrBUEpvOzq0FI0V/UYzQJgdb8XlhVNH8/fwV8xDjw==", "cpu": [ "arm64" ], @@ -2166,9 +2405,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.29.1.tgz", - "integrity": "sha512-rYRe5S0FcjlOBZQHgbTKNrqxCBUmgDJem/VQTCcTnA2KCabYSWQDrytOzX7avb79cAAweNmMUb/Zw18RNd4mng==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.30.1.tgz", + "integrity": "sha512-pxHAU+Zv39hLUTdQQHUVHf4P+0C47y/ZloorHpzs2SXMRqeAWmGghzAhfOlzFHHwjvgokdFAhC4V+6kC1lRRfw==", "cpu": [ "ia32" ], @@ -2180,9 +2419,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.29.1.tgz", - "integrity": "sha512-+10CMg9vt1MoHj6x1pxyjPSMjHTIlqs8/tBztXvPAx24SKs9jwVnKqHJumlH/IzhaPUaj3T6T6wfZr8okdXaIg==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.30.1.tgz", + "integrity": "sha512-D6qjsXGcvhTjv0kI4fU8tUuBDF/Ueee4SVX79VfNDXZa64TfCW1Slkb6Z7O1p7vflqZjcmOVdZlqf8gvJxc6og==", "cpu": [ "x64" ], @@ -2735,21 +2974,18 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.2.tgz", "integrity": "sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==", - "dev": true, "license": "MIT" }, "node_modules/@types/cookie": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", - "dev": true, "license": "MIT" }, "node_modules/@types/cors": { "version": "2.8.17", "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz", "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==", - "dev": true, "license": "MIT", "dependencies": { "@types/node": "*" @@ -2759,14 +2995,12 @@ "version": "0.0.12", "resolved": "https://registry.npmjs.org/@types/css-font-loading-module/-/css-font-loading-module-0.0.12.tgz", "integrity": "sha512-x2tZZYkSxXqWvTDgveSynfjq/T2HyiZHXb00j/+gy19yp70PHCizM48XFdjBCWH7eHBD0R5i/pw9yMBP/BH5uA==", - "dev": true, "license": "MIT" }, "node_modules/@types/earcut": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/@types/earcut/-/earcut-2.1.4.tgz", "integrity": "sha512-qp3m9PPz4gULB9MhjGID7wpo3gJ4bTGXm7ltNDsmOvsPduTeHp8wSW9YckBj3mljeOh4F0m2z/0JKAALRKbmLQ==", - "dev": true, "license": "MIT" }, "node_modules/@types/eslint": { @@ -2794,7 +3028,6 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", - "dev": true, "license": "MIT" }, "node_modules/@types/fs-extra": { @@ -2823,7 +3056,6 @@ "version": "3.5.32", "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.32.tgz", "integrity": "sha512-b9Xbf4CkMqS02YH8zACqN1xzdxc3cO735Qe5AbSUFmyOiaWAbcpqh9Wna+Uk0vgACvoQHpWDg2rGdHkYPLmCiQ==", - "dev": true, "license": "MIT", "dependencies": { "@types/sizzle": "*" @@ -2869,7 +3101,6 @@ "version": "3.4.2", "resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-3.4.2.tgz", "integrity": "sha512-TifLZlFudklWlMBfhubvgqTXRzLDI5pCbGa4P8a3wPyUQSW+1xQ5eDsreP9DWHX3tjq1ke96uYG/nwundroWcA==", - "dev": true, "license": "MIT" }, "node_modules/@types/minimatch": { @@ -2889,10 +3120,9 @@ "peer": true }, "node_modules/@types/node": { - "version": "20.17.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.11.tgz", - "integrity": "sha512-Ept5glCK35R8yeyIeYlRIZtX6SLRyqMhOFTgj5SOkMpLTdw3SEHI9fHx60xaUZ+V1aJxQJODE+7/j5ocZydYTg==", - "dev": true, + "version": "20.17.12", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.12.tgz", + "integrity": "sha512-vo/wmBgMIiEA23A/knMfn/cf37VnuF52nZh5ZoW0GWt4e4sxNquibrMRJ7UQsA06+MBx9r/H1jsI9grYjQCQlw==", "license": "MIT", "dependencies": { "undici-types": "~6.19.2" @@ -2905,13 +3135,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/offscreencanvas": { - "version": "2019.7.3", - "resolved": "https://registry.npmjs.org/@types/offscreencanvas/-/offscreencanvas-2019.7.3.tgz", - "integrity": "sha512-ieXiYmgSRXUDeOntE1InxjWyvEelZGP63M+cGuquuRLuIKKT1osnkXjxev9B7d1nXSug5vpunx+gNlbVxMlC9A==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/prompts": { "version": "2.4.9", "resolved": "https://registry.npmjs.org/@types/prompts/-/prompts-2.4.9.tgz", @@ -2924,15 +3147,21 @@ } }, "node_modules/@types/react": { - "version": "19.0.2", - "resolved": "https://registry.npmjs.org/@types/react/-/react-19.0.2.tgz", - "integrity": "sha512-USU8ZI/xyKJwFTpjSVIrSeHBVAGagkHQKPNbxeWwql/vDmnTIBgx+TJnhFnj1NXgz8XfprU0egV2dROLGpsBEg==", - "dev": true, + "version": "19.0.7", + "resolved": "https://registry.npmjs.org/@types/react/-/react-19.0.7.tgz", + "integrity": "sha512-MoFsEJKkAtZCrC1r6CM8U22GzhG7u2Wir8ons/aCKH6MBdD1ibV24zOSSkdZVUKqN5i396zG5VKLYZ3yaUZdLA==", "license": "MIT", "dependencies": { "csstype": "^3.0.2" } }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/semver": { "version": "7.5.8", "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz", @@ -2944,28 +3173,24 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/@types/showdown/-/showdown-2.0.6.tgz", "integrity": "sha512-pTvD/0CIeqe4x23+YJWlX2gArHa8G0J0Oh6GKaVXV7TAeickpkkZiNOgFcFcmLQ5lB/K0qBJL1FtRYltBfbGCQ==", - "dev": true, "license": "MIT" }, "node_modules/@types/sizzle": { "version": "2.3.9", "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.9.tgz", "integrity": "sha512-xzLEyKB50yqCUPUJkIsrVvoWNfFUbIZI+RspLWt8u+tIW/BetMBZtgV2LY/2o+tYH8dRvQ+eoPf3NdhQCcLE2w==", - "dev": true, "license": "MIT" }, "node_modules/@types/sortablejs": { "version": "1.15.8", "resolved": "https://registry.npmjs.org/@types/sortablejs/-/sortablejs-1.15.8.tgz", "integrity": "sha512-b79830lW+RZfwaztgs1aVPgbasJ8e7AXtZYHTELNXZPsERt4ymJdjV4OccDbHQAvHrCcFpbF78jkm0R6h/pZVg==", - "dev": true, "license": "MIT" }, "node_modules/@types/tooltipster": { "version": "0.0.35", "resolved": "https://registry.npmjs.org/@types/tooltipster/-/tooltipster-0.0.35.tgz", "integrity": "sha512-vYbL732eEigtw16rBHvOBUGUY5gk0ZGcE5Y08PAcHi/Pg4eZrIvRQ3FNP03Z/apobm97ByaXuTp3PV4TAsqRgQ==", - "dev": true, "license": "MIT", "dependencies": { "@types/jquery": "*" @@ -2996,21 +3221,21 @@ } }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.19.0.tgz", - "integrity": "sha512-NggSaEZCdSrFddbctrVjkVZvFC6KGfKfNK0CU7mNK/iKHGKbzT4Wmgm08dKpcZECBu9f5FypndoMyRHkdqfT1Q==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.20.0.tgz", + "integrity": "sha512-naduuphVw5StFfqp4Gq4WhIBE2gN1GEmMUExpJYknZJdRnc+2gDzB8Z3+5+/Kv33hPQRDGzQO/0opHE72lZZ6A==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.19.0", - "@typescript-eslint/type-utils": "8.19.0", - "@typescript-eslint/utils": "8.19.0", - "@typescript-eslint/visitor-keys": "8.19.0", + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/type-utils": "8.20.0", + "@typescript-eslint/utils": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3026,16 +3251,16 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.19.0.tgz", - "integrity": "sha512-6M8taKyOETY1TKHp0x8ndycipTVgmp4xtg5QpEZzXxDhNvvHOJi5rLRkLr8SK3jTgD5l4fTlvBiRdfsuWydxBw==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.20.0.tgz", + "integrity": "sha512-gKXG7A5HMyjDIedBi6bUrDcun8GIjnI8qOwVLiY3rx6T/sHP/19XLJOnIq/FgQvWLHja5JN/LSE7eklNBr612g==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/scope-manager": "8.19.0", - "@typescript-eslint/types": "8.19.0", - "@typescript-eslint/typescript-estree": "8.19.0", - "@typescript-eslint/visitor-keys": "8.19.0", + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/typescript-estree": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "debug": "^4.3.4" }, "engines": { @@ -3051,14 +3276,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.19.0.tgz", - "integrity": "sha512-hkoJiKQS3GQ13TSMEiuNmSCvhz7ujyqD1x3ShbaETATHrck+9RaDdUbt+osXaUuns9OFwrDTTrjtwsU8gJyyRA==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.20.0.tgz", + "integrity": "sha512-J7+VkpeGzhOt3FeG1+SzhiMj9NzGD/M6KoGn9f4dbz3YzK9hvbhVTmLj/HiTp9DazIzJ8B4XcM80LrR9Dm1rJw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.19.0", - "@typescript-eslint/visitor-keys": "8.19.0" + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3069,16 +3294,16 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.19.0.tgz", - "integrity": "sha512-TZs0I0OSbd5Aza4qAMpp1cdCYVnER94IziudE3JU328YUHgWu9gwiwhag+fuLeJ2LkWLXI+F/182TbG+JaBdTg==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.20.0.tgz", + "integrity": "sha512-bPC+j71GGvA7rVNAHAtOjbVXbLN5PkwqMvy1cwGeaxUoRQXVuKCebRoLzm+IPW/NtFFpstn1ummSIasD5t60GA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.19.0", - "@typescript-eslint/utils": "8.19.0", + "@typescript-eslint/typescript-estree": "8.20.0", + "@typescript-eslint/utils": "8.20.0", "debug": "^4.3.4", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3093,9 +3318,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.19.0.tgz", - "integrity": "sha512-8XQ4Ss7G9WX8oaYvD4OOLCjIQYgRQxO+qCiR2V2s2GxI9AUpo7riNwo6jDhKtTcaJjT8PY54j2Yb33kWtSJsmA==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.20.0.tgz", + "integrity": "sha512-cqaMiY72CkP+2xZRrFt3ExRBu0WmVitN/rYPZErA80mHjHx/Svgp8yfbzkJmDoQ/whcytOPO9/IZXnOc+wigRA==", "dev": true, "license": "MIT", "engines": { @@ -3107,20 +3332,20 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.19.0.tgz", - "integrity": "sha512-WW9PpDaLIFW9LCbucMSdYUuGeFUz1OkWYS/5fwZwTA+l2RwlWFdJvReQqMUMBw4yJWJOfqd7An9uwut2Oj8sLw==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.20.0.tgz", + "integrity": "sha512-Y7ncuy78bJqHI35NwzWol8E0X7XkRVS4K4P4TCyzWkOJih5NDvtoRDW4Ba9YJJoB2igm9yXDdYI/+fkiiAxPzA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.19.0", - "@typescript-eslint/visitor-keys": "8.19.0", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/visitor-keys": "8.20.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", "minimatch": "^9.0.4", "semver": "^7.6.0", - "ts-api-utils": "^1.3.0" + "ts-api-utils": "^2.0.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3160,16 +3385,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.19.0.tgz", - "integrity": "sha512-PTBG+0oEMPH9jCZlfg07LCB2nYI0I317yyvXGfxnvGvw4SHIOuRnQ3kadyyXY6tGdChusIHIbM5zfIbp4M6tCg==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.20.0.tgz", + "integrity": "sha512-dq70RUw6UK9ei7vxc4KQtBRk7qkHZv447OUZ6RPQMQl71I3NZxQJX/f32Smr+iqWrB02pHKn2yAdHBb0KNrRMA==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.19.0", - "@typescript-eslint/types": "8.19.0", - "@typescript-eslint/typescript-estree": "8.19.0" + "@typescript-eslint/scope-manager": "8.20.0", + "@typescript-eslint/types": "8.20.0", + "@typescript-eslint/typescript-estree": "8.20.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -3184,13 +3409,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.19.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.19.0.tgz", - "integrity": "sha512-mCFtBbFBJDCNCWUl5y6sZSCHXw1DEFEk3c/M3nRK2a4XUB8StGFtmcEMizdjKuBzB6e/smJAAWYug3VrdLMr1w==", + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.20.0.tgz", + "integrity": "sha512-v/BpkeeYAsPkKCkR8BDwcno0llhzWVqPOamQrAEMdpZav2Y9OVjd9dwJyBLJWwf335B5DmlifECIkZRJCaGaHA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.19.0", + "@typescript-eslint/types": "8.20.0", "eslint-visitor-keys": "^4.2.0" }, "engines": { @@ -3215,9 +3440,9 @@ } }, "node_modules/@yaireo/tagify": { - "version": "4.33.0", - "resolved": "https://registry.npmjs.org/@yaireo/tagify/-/tagify-4.33.0.tgz", - "integrity": "sha512-8MQF26Q5NIJXXLETAMOSFv2d6Jj5DH0xwUM6kCelQ9CMG7oIA4HIdQ6sMy5dF95IBLqCJOF9MM4vfiyQIcrejA==", + "version": "4.33.1", + "resolved": "https://registry.npmjs.org/@yaireo/tagify/-/tagify-4.33.1.tgz", + "integrity": "sha512-V+jMHsGVCLIn5vgF+UaC413VThsXzwVyMp4TiUyjXzWwXXubmObLJ/LgokN5LXkQJNAzzpHWLILzvoQV7GmNog==", "license": "MIT", "engines": { "node": ">=16.15.0", @@ -3252,7 +3477,6 @@ "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", - "dev": true, "license": "MIT", "dependencies": { "mime-types": "~2.1.34", @@ -3266,7 +3490,6 @@ "version": "8.14.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", - "dev": true, "license": "MIT", "bin": { "acorn": "bin/acorn" @@ -3285,9 +3508,18 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/agent-base": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", + "node_modules/acorn-typescript": { + "version": "1.4.13", + "resolved": "https://registry.npmjs.org/acorn-typescript/-/acorn-typescript-1.4.13.tgz", + "integrity": "sha512-xsc9Xv0xlVfwp2o7sQ+GCQ1PgbkdcpWdTzrwXxO3xDMTAywVS3oXVOcOHuRjAPkS4P9b+yc/qNF15460v+jp4Q==", + "license": "MIT", + "peerDependencies": { + "acorn": ">=8.9.0" + } + }, + "node_modules/agent-base": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.3.tgz", "integrity": "sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==", "dev": true, "license": "MIT", @@ -3392,6 +3624,19 @@ "node": ">= 8" } }, + "node_modules/anymatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -3406,6 +3651,15 @@ "dev": true, "license": "MIT" }, + "node_modules/aria-query": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/array-buffer-byte-length": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", @@ -3567,6 +3821,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/axobject-query": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", + "license": "Apache-2.0", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -3599,7 +3862,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", - "dev": true, "license": "MIT", "engines": { "node": "^4.5.0 || >= 5.9" @@ -3704,7 +3966,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz", "integrity": "sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==", - "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -3718,7 +3979,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", - "dev": true, "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.1", @@ -3958,6 +4218,15 @@ "node": ">=12" } }, + "node_modules/clsx": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", + "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/codemirror": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-6.0.1.tgz", @@ -4147,7 +4416,6 @@ "version": "0.7.2", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -4164,7 +4432,6 @@ "version": "2.8.5", "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", - "dev": true, "license": "MIT", "dependencies": { "object-assign": "^4", @@ -4252,23 +4519,30 @@ } }, "node_modules/cssstyle": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", - "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.2.1.tgz", + "integrity": "sha512-9+vem03dMXG7gDmZ62uqmRiMRNtinIZ9ZyuF6BdxzfOD+FdN5hretzynkn0ReS2DO2GSw76RWHs0UmJPI2zUjw==", "dev": true, "license": "MIT", "dependencies": { - "rrweb-cssom": "^0.7.1" + "@asamuzakjp/css-color": "^2.8.2", + "rrweb-cssom": "^0.8.0" }, "engines": { "node": ">=18" } }, + "node_modules/cssstyle/node_modules/rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==", + "dev": true, + "license": "MIT" + }, "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "dev": true, "license": "MIT" }, "node_modules/data-urls": { @@ -4424,6 +4698,16 @@ "dev": true, "license": "MIT" }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/define-data-property": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", @@ -4527,7 +4811,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "dev": true, "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.1", @@ -4552,7 +4835,6 @@ "version": "2.2.4", "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.4.tgz", "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==", - "dev": true, "license": "ISC" }, "node_modules/emoji-regex": { @@ -4573,7 +4855,6 @@ "version": "6.6.2", "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.2.tgz", "integrity": "sha512-gmNvsYi9C8iErnZdVcJnvCpSKbWTt1E8+JZo8b+daLninywUWi5NQ5STSHZ9rFjFO7imNcvb8Pc5pe/wMR5xEw==", - "dev": true, "license": "MIT", "dependencies": { "@types/cookie": "^0.4.1", @@ -4595,7 +4876,6 @@ "version": "6.6.2", "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.6.2.tgz", "integrity": "sha512-TAr+NKeoVTjEVW8P3iHguO1LO6RlUz9O5Y8o7EY0fU+gY1NYqas7NN3slpFtbXEsLMHk0h90fJMfKjRkQ0qUIw==", - "dev": true, "license": "MIT", "dependencies": { "@socket.io/component-emitter": "~3.1.0", @@ -4609,7 +4889,6 @@ "version": "4.3.7", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -4627,7 +4906,6 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=10.0.0" @@ -4649,7 +4927,6 @@ "version": "5.2.3", "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.3.tgz", "integrity": "sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=10.0.0" @@ -4659,7 +4936,6 @@ "version": "4.3.7", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -4677,7 +4953,6 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=10.0.0" @@ -4983,7 +5258,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -4993,7 +5267,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -5013,10 +5286,9 @@ } }, "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", - "dev": true, + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.0.tgz", + "integrity": "sha512-Ujz8Al/KfOVR7fkaghAB1WvnLsdYxHDWmfoi2vlA2jZWRg31XhIC1a4B+/I24muD8iSbHxJ1JkrfqmWb65P/Mw==", "license": "MIT", "dependencies": { "es-errors": "^1.3.0" @@ -5134,19 +5406,19 @@ } }, "node_modules/eslint": { - "version": "9.17.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.17.0.tgz", - "integrity": "sha512-evtlNcpJg+cZLcnVKwsai8fExnqjGPicK7gnUtlNuzu+Fv9bI0aLpND5T44VLQtoMEnI57LoXO9XAkIXwohKrA==", + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.18.0.tgz", + "integrity": "sha512-+waTfRWQlSbpt3KWE+CjrPPYnbq9kfZIYUqapc0uBXyjTp8aYXZDsUH16m39Ryq3NjAVP4tjuF7KaukeqoCoaA==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.19.0", - "@eslint/core": "^0.9.0", + "@eslint/core": "^0.10.0", "@eslint/eslintrc": "^3.2.0", - "@eslint/js": "9.17.0", - "@eslint/plugin-kit": "^0.2.3", + "@eslint/js": "9.18.0", + "@eslint/plugin-kit": "^0.2.5", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", "@humanwhocodes/retry": "^0.4.1", @@ -5487,6 +5759,12 @@ "node": ">=6" } }, + "node_modules/esm-env": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/esm-env/-/esm-env-1.2.2.tgz", + "integrity": "sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==", + "license": "MIT" + }, "node_modules/espree": { "version": "10.3.0", "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", @@ -5531,6 +5809,15 @@ "node": ">=0.10" } }, + "node_modules/esrap": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/esrap/-/esrap-1.4.3.tgz", + "integrity": "sha512-Xddc1RsoFJ4z9nR7W7BFaEPIp4UXoeQ0+077UdWLxbafMQFyU79sQJMk7kxNgRwQ9/aVgaKacCHC2pUACGwmYw==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + } + }, "node_modules/esrecurse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", @@ -5554,6 +5841,13 @@ "node": ">=4.0" } }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -5568,7 +5862,6 @@ "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true, "license": "MIT" }, "node_modules/execa": { @@ -5640,9 +5933,9 @@ "license": "Apache-2.0" }, "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.3.tgz", + "integrity": "sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==", "dev": true, "license": "MIT", "dependencies": { @@ -5650,7 +5943,7 @@ "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "micromatch": "^4.0.8" }, "engines": { "node": ">=8.6.0" @@ -5828,6 +6121,42 @@ "node": ">= 6" } }, + "node_modules/foundry-pf2e": { + "version": "1.0.0", + "resolved": "git+ssh://git@github.com/7H3LaughingMan/foundry-pf2e.git#1b52cdeb0d72814306ddd043954eb024c5140335", + "license": "Apache-2.0", + "dependencies": { + "@pixi/graphics-smooth": "^1.1.0", + "@pixi/particle-emitter": "5.0.8", + "@types/jquery": "^3.5.31", + "@types/luxon": "^3.4.2", + "@types/showdown": "^2.0.6", + "@types/sortablejs": "^1.15.8", + "@types/tooltipster": "^0.0.35", + "@types/yaireo__tagify": "4.17.0", + "pixi.js": "^7.4.2", + "socket.io": "^4.5.1", + "socket.io-client": "^4.5.1", + "svelte": "^5.2.2", + "tinymce": "^6.1.2" + } + }, + "node_modules/foundry-pf2e/node_modules/@types/yaireo__tagify": { + "version": "4.17.0", + "resolved": "https://registry.npmjs.org/@types/yaireo__tagify/-/yaireo__tagify-4.17.0.tgz", + "integrity": "sha512-UT/6MhrWAKiI825mUxpDM9HgKA6cWEcW7meOkdPEmFRIl83UXAZsyhpekEgPAWJkn8WP8nHKl5v0UsDi24Ajiw==", + "license": "MIT", + "dependencies": { + "@types/react": "*", + "@types/yaireo__tagify": "*" + } + }, + "node_modules/foundry-pf2e/node_modules/tinymce": { + "version": "6.8.5", + "resolved": "https://registry.npmjs.org/tinymce/-/tinymce-6.8.5.tgz", + "integrity": "sha512-qAL/FxL7cwZHj4BfaF818zeJJizK9jU5IQzTcSLL4Rj5MaJdiVblEj7aDr80VCV1w9h4Lak9hlnALhq/kVtN1g==", + "license": "MIT" + }, "node_modules/foundry-types": { "resolved": "types/types/foundry", "link": true @@ -5877,7 +6206,6 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" @@ -5941,7 +6269,6 @@ "version": "1.2.7", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", - "dev": true, "license": "MIT", "dependencies": { "call-bind-apply-helpers": "^1.0.1", @@ -5966,7 +6293,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", - "dev": true, "license": "MIT", "dependencies": { "dunder-proto": "^1.0.1", @@ -6123,7 +6449,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -6243,7 +6568,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -6272,7 +6596,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", - "dev": true, "license": "MIT", "dependencies": { "function-bind": "^1.1.2" @@ -6317,6 +6640,13 @@ "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/hosted-git-info/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, "node_modules/html-encoding-sniffer": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", @@ -6833,6 +7163,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true, + "license": "MIT" + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -6889,6 +7226,15 @@ "dev": true, "license": "MIT" }, + "node_modules/is-reference": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-3.0.3.tgz", + "integrity": "sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.6" + } + }, "node_modules/is-regex": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", @@ -7078,7 +7424,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-1.1.1.tgz", "integrity": "sha512-VaFW53yt8QO61k2WJui0dHf4SlL8lxBofUuUmwBo0ljPk0Drz2TiuDW4jo3wDcv41qy/SxrJ+VAzJ/qYqsmzRw==", - "dev": true, "license": "MIT" }, "node_modules/issue-parser": { @@ -7370,6 +7715,12 @@ "lie": "3.1.1" } }, + "node_modules/locate-character": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-character/-/locate-character-3.0.0.tgz", + "integrity": "sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==", + "license": "MIT" + }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -7456,11 +7807,14 @@ } }, "node_modules/lru-cache": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz", + "integrity": "sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==", "dev": true, - "license": "ISC" + "license": "ISC", + "engines": { + "node": "20 || >=22" + } }, "node_modules/luxon": { "version": "3.5.0", @@ -7471,6 +7825,15 @@ "node": ">=12" } }, + "node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, "node_modules/map-obj": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", @@ -7525,7 +7888,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -7654,6 +8016,19 @@ "node": ">=8.6" } }, + "node_modules/micromatch/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/mime": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/mime/-/mime-4.0.6.tgz", @@ -7674,7 +8049,6 @@ "version": "1.52.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -7684,7 +8058,6 @@ "version": "2.1.35", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", - "dev": true, "license": "MIT", "dependencies": { "mime-db": "1.52.0" @@ -7791,7 +8164,6 @@ "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true, "license": "MIT" }, "node_modules/mz": { @@ -7853,7 +8225,6 @@ "version": "0.6.3", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" @@ -10747,7 +11118,6 @@ "version": "1.13.3", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.4" @@ -11141,13 +11511,13 @@ "license": "ISC" }, "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", "dev": true, "license": "MIT", "engines": { - "node": ">=8.6" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/jonschlinkert" @@ -11167,7 +11537,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/pixi.js/-/pixi.js-7.4.2.tgz", "integrity": "sha512-TifqgHGNofO7UCEbdZJOpUu7dUnpu4YZ0o76kfCqxDa4RS8ITc9zjECCbtalmuNXkVhSEZmBKQvE7qhHMqw/xg==", - "dev": true, "license": "MIT", "dependencies": { "@pixi/accessibility": "7.4.2", @@ -11294,9 +11663,9 @@ } }, "node_modules/postcss": { - "version": "8.4.49", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", - "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz", + "integrity": "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==", "dev": true, "funding": [ { @@ -11314,7 +11683,7 @@ ], "license": "MIT", "dependencies": { - "nanoid": "^3.3.7", + "nanoid": "^3.3.8", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, @@ -11384,13 +11753,6 @@ "dev": true, "license": "MIT" }, - "node_modules/promise-polyfill": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-8.3.0.tgz", - "integrity": "sha512-H5oELycFml5yto/atYqmjyigJoAo3+OXwolYiH7OfQuYlAqhxNvTfiNMbV9hsC6Yp83yE5r2KTVmtrG6R9i6Pg==", - "dev": true, - "license": "MIT" - }, "node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -11494,7 +11856,6 @@ "version": "6.13.1", "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.1.tgz", "integrity": "sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==", - "dev": true, "license": "BSD-3-Clause", "dependencies": { "side-channel": "^1.0.6" @@ -11842,13 +12203,13 @@ } }, "node_modules/readdirp": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", - "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.1.tgz", + "integrity": "sha512-h80JrZu/MHUZCyHu5ciuoI0+WxsCxzxJTILn6Fs8rxSnFPh+UVHYfeIxK1nVGugMqkfC4vJcBOYbkfkwYK0+gw==", "dev": true, "license": "MIT", "engines": { - "node": ">= 14.16.0" + "node": ">= 14.18.0" }, "funding": { "type": "individual", @@ -11929,9 +12290,9 @@ } }, "node_modules/remeda": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/remeda/-/remeda-2.19.0.tgz", - "integrity": "sha512-B/2+zHNPXu0BAopJU8ZrqMjA0u56M/l6BUxDq8AcU+3LWlOYVuf98I6qpYrB5BeeEICunpmXPcQl2ReGXkiQyw==", + "version": "2.19.1", + "resolved": "https://registry.npmjs.org/remeda/-/remeda-2.19.1.tgz", + "integrity": "sha512-IZ1NwntA2xwksQgn6zRFZB9lsVWW1GoRZZno3UIHE0tUh1B62ZSIhFIDIRssUfgqOBG2kL7g3GXx4e+CK59OPw==", "license": "MIT", "dependencies": { "type-fest": "^4.30.0" @@ -12000,9 +12361,9 @@ } }, "node_modules/rollup": { - "version": "4.29.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.29.1.tgz", - "integrity": "sha512-RaJ45M/kmJUzSWDs1Nnd5DdV4eerC98idtUOVr6FfKcgxqvjwHmxc5upLF9qZU9EpsVzzhleFahrT3shLuJzIw==", + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.30.1.tgz", + "integrity": "sha512-mlJ4glW020fPuLi7DkM/lN97mYEZGWeqBnrljzN0gs7GLctqX3lNWxKQ7Gl712UAX+6fog/L3jh4gb7R6aVi3w==", "dev": true, "license": "MIT", "dependencies": { @@ -12016,28 +12377,41 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.29.1", - "@rollup/rollup-android-arm64": "4.29.1", - "@rollup/rollup-darwin-arm64": "4.29.1", - "@rollup/rollup-darwin-x64": "4.29.1", - "@rollup/rollup-freebsd-arm64": "4.29.1", - "@rollup/rollup-freebsd-x64": "4.29.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.29.1", - "@rollup/rollup-linux-arm-musleabihf": "4.29.1", - "@rollup/rollup-linux-arm64-gnu": "4.29.1", - "@rollup/rollup-linux-arm64-musl": "4.29.1", - "@rollup/rollup-linux-loongarch64-gnu": "4.29.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.29.1", - "@rollup/rollup-linux-riscv64-gnu": "4.29.1", - "@rollup/rollup-linux-s390x-gnu": "4.29.1", - "@rollup/rollup-linux-x64-gnu": "4.29.1", - "@rollup/rollup-linux-x64-musl": "4.29.1", - "@rollup/rollup-win32-arm64-msvc": "4.29.1", - "@rollup/rollup-win32-ia32-msvc": "4.29.1", - "@rollup/rollup-win32-x64-msvc": "4.29.1", + "@rollup/rollup-android-arm-eabi": "4.30.1", + "@rollup/rollup-android-arm64": "4.30.1", + "@rollup/rollup-darwin-arm64": "4.30.1", + "@rollup/rollup-darwin-x64": "4.30.1", + "@rollup/rollup-freebsd-arm64": "4.30.1", + "@rollup/rollup-freebsd-x64": "4.30.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.30.1", + "@rollup/rollup-linux-arm-musleabihf": "4.30.1", + "@rollup/rollup-linux-arm64-gnu": "4.30.1", + "@rollup/rollup-linux-arm64-musl": "4.30.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.30.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.30.1", + "@rollup/rollup-linux-riscv64-gnu": "4.30.1", + "@rollup/rollup-linux-s390x-gnu": "4.30.1", + "@rollup/rollup-linux-x64-gnu": "4.30.1", + "@rollup/rollup-linux-x64-musl": "4.30.1", + "@rollup/rollup-win32-arm64-msvc": "4.30.1", + "@rollup/rollup-win32-ia32-msvc": "4.30.1", + "@rollup/rollup-win32-x64-msvc": "4.30.1", "fsevents": "~2.3.2" } }, + "node_modules/rollup-plugin-tsconfig-paths": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/rollup-plugin-tsconfig-paths/-/rollup-plugin-tsconfig-paths-1.5.2.tgz", + "integrity": "sha512-tyS7u2Md0eXKwbDfTuDDa1izciwqhOZsHzX7zYc5gKC1L7q5ozdSt+q1jjtD1dDqWyjrt8lZoiLtOQGhMHh1OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "typescript-paths": "^1.5.1" + }, + "peerDependencies": { + "rollup": "^2 || ^3 || ^4" + } + }, "node_modules/rrweb-cssom": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.7.1.tgz", @@ -12153,9 +12527,9 @@ "license": "MIT" }, "node_modules/sass": { - "version": "1.83.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.0.tgz", - "integrity": "sha512-qsSxlayzoOjdvXMVLkzF84DJFc2HZEL/rFyGIKbbilYtAvlCxyuzUeff9LawTn4btVnLKg75Z8MMr1lxU1lfGw==", + "version": "1.83.4", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.4.tgz", + "integrity": "sha512-B1bozCeNQiOgDcLd33e2Cs2U60wZwjUUXzh900ZyQF5qUasvMdDZYbQ566LJu7cqR+sAHlAfO6RMkaID5s6qpA==", "dev": true, "license": "MIT", "dependencies": { @@ -12425,6 +12799,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/semantic-release/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "dev": true, + "license": "ISC" + }, "node_modules/semantic-release/node_modules/npm-run-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-6.0.0.tgz", @@ -12631,11 +13012,35 @@ "node": ">=8" } }, + "node_modules/showdown": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/showdown/-/showdown-2.1.0.tgz", + "integrity": "sha512-/6NVYu4U819R2pUIk79n67SYgJHWCce0a5xTP979WbNp0FL9MN1I1QK662IDU1b6JzKTvmhgI7T7JYIxBi3kMQ==", + "license": "MIT", + "dependencies": { + "commander": "^9.0.0" + }, + "bin": { + "showdown": "bin/showdown.js" + }, + "funding": { + "type": "individual", + "url": "https://www.paypal.me/tiviesantos" + } + }, + "node_modules/showdown/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "license": "MIT", + "engines": { + "node": "^12.20.0 || >=14" + } + }, "node_modules/side-channel": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", - "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -12655,7 +13060,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", - "dev": true, "license": "MIT", "dependencies": { "es-errors": "^1.3.0", @@ -12672,7 +13076,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", - "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -12691,7 +13094,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", - "dev": true, "license": "MIT", "dependencies": { "call-bound": "^1.0.2", @@ -12857,7 +13259,6 @@ "version": "4.8.1", "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.1.tgz", "integrity": "sha512-oZ7iUCxph8WYRHHcjBEc9unw3adt5CmSNlppj/5Q4k2RIrhl8Z5yY2Xr4j9zj0+wzVZ0bxmYoGSzKJnRl6A4yg==", - "dev": true, "license": "MIT", "dependencies": { "accepts": "~1.3.4", @@ -12876,7 +13277,6 @@ "version": "2.5.5", "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.5.tgz", "integrity": "sha512-eLDQas5dzPgOWCk9GuuJC2lBqItuhKI4uxGgo9aIV7MYbk2h9Q6uULEh8WBzThoI7l+qU9Ast9fVUmkqPP9wYg==", - "dev": true, "license": "MIT", "dependencies": { "debug": "~4.3.4", @@ -12887,7 +13287,6 @@ "version": "4.3.7", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -12905,7 +13304,6 @@ "version": "8.17.1", "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz", "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=10.0.0" @@ -12927,7 +13325,6 @@ "version": "4.8.1", "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.8.1.tgz", "integrity": "sha512-hJVXfu3E28NmzGk8o1sHhN3om52tRvwYeidbj7xKy2eIIse5IoKX3USlS6Tqt3BHAtflLIkCQBkzVrEEfWUyYQ==", - "dev": true, "license": "MIT", "dependencies": { "@socket.io/component-emitter": "~3.1.0", @@ -12943,7 +13340,6 @@ "version": "4.3.7", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -12961,7 +13357,6 @@ "version": "4.2.4", "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", - "dev": true, "license": "MIT", "dependencies": { "@socket.io/component-emitter": "~3.1.0", @@ -12975,7 +13370,6 @@ "version": "4.3.7", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -12993,7 +13387,6 @@ "version": "4.3.7", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", - "dev": true, "license": "MIT", "dependencies": { "ms": "^2.1.3" @@ -13335,6 +13728,31 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/svelte": { + "version": "5.17.4", + "resolved": "https://registry.npmjs.org/svelte/-/svelte-5.17.4.tgz", + "integrity": "sha512-ne4IhhVBwzpUByjo1ocxQnqRoWsRilc9Ry1j+0uPWhHmg4jS/nnlSwYYfx7Ium8okCZ4hYM89rg0B5G0hQzk+g==", + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.3.0", + "@jridgewell/sourcemap-codec": "^1.5.0", + "@types/estree": "^1.0.5", + "acorn": "^8.12.1", + "acorn-typescript": "^1.4.13", + "aria-query": "^5.3.1", + "axobject-query": "^4.1.0", + "clsx": "^2.1.1", + "esm-env": "^1.2.1", + "esrap": "^1.4.2", + "is-reference": "^3.0.3", + "locate-character": "^3.0.0", + "magic-string": "^0.30.11", + "zimmerframe": "^1.1.2" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", @@ -13489,22 +13907,22 @@ "license": "GPL-2.0-or-later" }, "node_modules/tldts": { - "version": "6.1.70", - "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.70.tgz", - "integrity": "sha512-/W1YVgYVJd9ZDjey5NXadNh0mJXkiUMUue9Zebd0vpdo1sU+H4zFFTaJ1RKD4N6KFoHfcXy6l+Vu7bh+bdWCzA==", + "version": "6.1.71", + "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.71.tgz", + "integrity": "sha512-LQIHmHnuzfZgZWAf2HzL83TIIrD8NhhI0DVxqo9/FdOd4ilec+NTNZOlDZf7EwrTNoutccbsHjvWHYXLAtvxjw==", "dev": true, "license": "MIT", "dependencies": { - "tldts-core": "^6.1.70" + "tldts-core": "^6.1.71" }, "bin": { "tldts": "bin/cli.js" } }, "node_modules/tldts-core": { - "version": "6.1.70", - "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.70.tgz", - "integrity": "sha512-RNnIXDB1FD4T9cpQRErEqw6ZpjLlGdMOitdV+0xtbsnwr4YFka1zpc7D4KD+aAn8oSG5JyFrdasZTE04qDE9Yg==", + "version": "6.1.71", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.71.tgz", + "integrity": "sha512-LRbChn2YRpic1KxY+ldL1pGXN/oVvKfCVufwfVzEQdFYNo39uF7AJa/WXdo+gYO7PTvdfkCPCed6Hkvz/kR7jg==", "dev": true, "license": "MIT" }, @@ -13522,9 +13940,9 @@ } }, "node_modules/tough-cookie": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.0.0.tgz", - "integrity": "sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.0.tgz", + "integrity": "sha512-rvZUv+7MoBYTiDmFPBrhL7Ujx9Sk+q9wwm22x8c8T5IJaR+Wsyc7TNxbVxo84kZoRJZZMazowFLqpankBEQrGg==", "dev": true, "license": "BSD-3-Clause", "dependencies": { @@ -13573,16 +13991,16 @@ } }, "node_modules/ts-api-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.4.3.tgz", - "integrity": "sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.0.0.tgz", + "integrity": "sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==", "dev": true, "license": "MIT", "engines": { - "node": ">=16" + "node": ">=18.12" }, "peerDependencies": { - "typescript": ">=4.2.0" + "typescript": ">=4.8.4" } }, "node_modules/tsconfck": { @@ -14110,9 +14528,9 @@ } }, "node_modules/type-fest": { - "version": "4.31.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.31.0.tgz", - "integrity": "sha512-yCxltHW07Nkhv/1F6wWBr8kz+5BGMfP+RbRSYFnegVb0qV/UMT0G0ElBloPVerqn4M2ZV80Ir1FtCcYv1cT6vQ==", + "version": "4.32.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.32.0.tgz", + "integrity": "sha512-rfgpoi08xagF3JSdtJlCwMq9DGNDE0IMh3Mkpc1wUypg9vPi786AiqeBBKcqvIkq42azsBM85N490fyZjeUftw==", "license": "(MIT OR CC0-1.0)", "engines": { "node": ">=16" @@ -14200,9 +14618,9 @@ } }, "node_modules/typescript": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", - "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", + "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", "dev": true, "license": "Apache-2.0", "bin": { @@ -14213,6 +14631,16 @@ "node": ">=14.17" } }, + "node_modules/typescript-paths": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/typescript-paths/-/typescript-paths-1.5.1.tgz", + "integrity": "sha512-lYErSLCON2MSplVV5V/LBgD4UNjMgY3guATdFCZY2q1Nr6OZEu4q6zX/rYMsG1TaWqqQSszg6C9EU7AGWMDrIw==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "typescript": "^4.7.2 || ^5" + } + }, "node_modules/uglify-js": { "version": "3.19.3", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", @@ -14250,7 +14678,6 @@ "version": "6.19.8", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", - "dev": true, "license": "MIT" }, "node_modules/unicode-emoji-modifier-base": { @@ -14323,7 +14750,6 @@ "version": "0.11.4", "resolved": "https://registry.npmjs.org/url/-/url-0.11.4.tgz", "integrity": "sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==", - "dev": true, "license": "MIT", "dependencies": { "punycode": "^1.4.1", @@ -14347,7 +14773,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", - "dev": true, "license": "MIT" }, "node_modules/util": { @@ -14372,9 +14797,9 @@ "license": "MIT" }, "node_modules/uuid": { - "version": "11.0.3", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.3.tgz", - "integrity": "sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==", + "version": "11.0.5", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.0.5.tgz", + "integrity": "sha512-508e6IcKLrhxKdBbcA2b4KQZlLVp2+J5UwQ6F7Drckkc5N9ZJwFa4TgWtsww9UG8fGHbm6gbV19TdM5pQ4GaIA==", "funding": [ "https://github.com/sponsors/broofa", "https://github.com/sponsors/ctavan" @@ -14399,28 +14824,27 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", - "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" } }, "node_modules/vite": { - "version": "5.4.11", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", - "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/vite/-/vite-6.0.7.tgz", + "integrity": "sha512-RDt8r/7qx9940f8FcOIAH9PTViRrghKaK2K1jY3RaAURrEUbm9Du1mJ72G+jlhtG3WwodnfzY8ORQZbBavZEAQ==", "dev": true, "license": "MIT", "dependencies": { - "esbuild": "^0.21.3", - "postcss": "^8.4.43", - "rollup": "^4.20.0" + "esbuild": "^0.24.2", + "postcss": "^8.4.49", + "rollup": "^4.23.0" }, "bin": { "vite": "bin/vite.js" }, "engines": { - "node": "^18.0.0 || >=20.0.0" + "node": "^18.0.0 || ^20.0.0 || >=22.0.0" }, "funding": { "url": "https://github.com/vitejs/vite?sponsor=1" @@ -14429,19 +14853,25 @@ "fsevents": "~2.3.3" }, "peerDependencies": { - "@types/node": "^18.0.0 || >=20.0.0", + "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", + "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", - "terser": "^5.4.0" + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" }, "peerDependenciesMeta": { "@types/node": { "optional": true }, + "jiti": { + "optional": true + }, "less": { "optional": true }, @@ -14462,6 +14892,12 @@ }, "terser": { "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true } } }, @@ -14613,6 +15049,19 @@ "node": ">= 6" } }, + "node_modules/vite-plugin-checker/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/vite-plugin-checker/node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -14696,467 +15145,50 @@ "node": ">= 6" } }, - "node_modules/vite-plugin-static-copy/node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, - "license": "MIT", - "dependencies": { - "picomatch": "^2.2.1" - }, - "engines": { - "node": ">=8.10.0" - } - }, - "node_modules/vite-tsconfig-paths": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz", - "integrity": "sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==", - "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.1.1", - "globrex": "^0.1.2", - "tsconfck": "^3.0.3" - }, - "peerDependencies": { - "vite": "*" - }, - "peerDependenciesMeta": { - "vite": { - "optional": true - } - } - }, - "node_modules/vite/node_modules/@esbuild/aix-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", - "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/android-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", - "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/android-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", - "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/android-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", - "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/darwin-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", - "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/darwin-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", - "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/freebsd-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", - "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/freebsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", - "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-arm": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", - "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", - "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", - "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-loong64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", - "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", - "cpu": [ - "loong64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-mips64el": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", - "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-ppc64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", - "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-riscv64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", - "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-s390x": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", - "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/linux-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", - "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/netbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", - "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/openbsd-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", - "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/sunos-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", - "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/win32-arm64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", - "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/vite/node_modules/@esbuild/win32-ia32": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", - "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", - "cpu": [ - "ia32" - ], + "node_modules/vite-plugin-static-copy/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], "engines": { - "node": ">=12" + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "node_modules/vite/node_modules/@esbuild/win32-x64": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", - "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", - "cpu": [ - "x64" - ], + "node_modules/vite-plugin-static-copy/node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], + "dependencies": { + "picomatch": "^2.2.1" + }, "engines": { - "node": ">=12" + "node": ">=8.10.0" } }, - "node_modules/vite/node_modules/esbuild": { - "version": "0.21.5", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", - "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "node_modules/vite-tsconfig-paths": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz", + "integrity": "sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w==", "dev": true, - "hasInstallScript": true, "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" + "dependencies": { + "debug": "^4.1.1", + "globrex": "^0.1.2", + "tsconfck": "^3.0.3" }, - "engines": { - "node": ">=12" + "peerDependencies": { + "vite": "*" }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.21.5", - "@esbuild/android-arm": "0.21.5", - "@esbuild/android-arm64": "0.21.5", - "@esbuild/android-x64": "0.21.5", - "@esbuild/darwin-arm64": "0.21.5", - "@esbuild/darwin-x64": "0.21.5", - "@esbuild/freebsd-arm64": "0.21.5", - "@esbuild/freebsd-x64": "0.21.5", - "@esbuild/linux-arm": "0.21.5", - "@esbuild/linux-arm64": "0.21.5", - "@esbuild/linux-ia32": "0.21.5", - "@esbuild/linux-loong64": "0.21.5", - "@esbuild/linux-mips64el": "0.21.5", - "@esbuild/linux-ppc64": "0.21.5", - "@esbuild/linux-riscv64": "0.21.5", - "@esbuild/linux-s390x": "0.21.5", - "@esbuild/linux-x64": "0.21.5", - "@esbuild/netbsd-x64": "0.21.5", - "@esbuild/openbsd-x64": "0.21.5", - "@esbuild/sunos-x64": "0.21.5", - "@esbuild/win32-arm64": "0.21.5", - "@esbuild/win32-ia32": "0.21.5", - "@esbuild/win32-x64": "0.21.5" + "peerDependenciesMeta": { + "vite": { + "optional": true + } } }, "node_modules/vscode-json-languageservice": { @@ -15512,7 +15544,6 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.1.2.tgz", "integrity": "sha512-TEU+nJVUUnA4CYJFLvK5X9AOeH4KvDvhIfm0vV1GaQRtchnG0hgK5p8hw/xjv8cunWYCsiPCSDzObPyhEwq3KQ==", - "dev": true, "engines": { "node": ">=0.4.0" } @@ -15611,533 +15642,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "types/types/foundry": { - "name": "foundry-types", - "version": "4.4.2", - "dev": true, - "license": "Apache-2.0", - "devDependencies": { - "@types/jquery": "^3.5.32", - "@types/node": "^18.11.12", - "pixi.js": "6.5.2", - "socket.io": "^4.8.1", - "socket.io-client": "^4.8.1", - "tinymce": "^6.1.2", - "typescript": "^5.7.2" - } - }, - "types/types/foundry/node_modules/@pixi/accessibility": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/accessibility/-/accessibility-6.5.2.tgz", - "integrity": "sha512-iA/0NlhdugsDiOlJjINkNLmGALh+irwEKNPMJuyPctHsnb/WCmsr1hPNMYUDHbqwU20zWg9//JsYe0ali/3Cdw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/app": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/app/-/app-6.5.2.tgz", - "integrity": "sha512-y/d+d9M668fa2ztY16C6xkiYACqZu59f6FOkaIzqClwRz7Ws7xGe6llFUa5d3vN/J/O1l4SyPOlPFjSflj3aOg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/compressed-textures": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/compressed-textures/-/compressed-textures-6.5.2.tgz", - "integrity": "sha512-/mNHv769TPdriCxeMFkoHQM6k3gp2QtzwPfcMFAdecWpiKNu2dKkwgKpuaI56W1z/NmovgbruSCeEbyVZY0h9A==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/loaders": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/constants": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/constants/-/constants-6.5.2.tgz", - "integrity": "sha512-tlX9uv/mi3O7XL2CJnjvRkJpCCvm5prYXL4RApXeg5rYCGOk/Qj3Zm5aPKUaq7Je4PoEyPy5vC9/geV8nFzmAQ==", - "dev": true, - "license": "MIT" - }, - "types/types/foundry/node_modules/@pixi/core": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/core/-/core-6.5.2.tgz", - "integrity": "sha512-Km//zq2KBqEE9R3IRSaRRsIQkGctxBZpwmJaEly4VTAWVQAfd2HCQqYTu0js+9jdSLwFexiFNjKBYf8BQEbBdg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/offscreencanvas": "^2019.6.4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/pixijs" - }, - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/extensions": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/runner": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/ticker": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/display": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/display/-/display-6.5.2.tgz", - "integrity": "sha512-EuRH9x/EW/ds1DJ08L1B5Yiz3vCViNYyJvyBOeCCsnHiMPXxT3cfIW+PkZOMR+hyzqQhioFFjiQS8KsXPojmfg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/math": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/extensions": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/extensions/-/extensions-6.5.2.tgz", - "integrity": "sha512-pLCUcDZS9RQsz4AkLYhOB40JB4qSqrAQrWXp8OkQ8bhwNxiI1BupCwh2+cpxdE46iGtH6tgvUWPnuQxq5SfSYw==", - "dev": true, - "license": "MIT" - }, - "types/types/foundry/node_modules/@pixi/extract": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/extract/-/extract-6.5.2.tgz", - "integrity": "sha512-14u/PqXOnQOZoRshEI6hAy6CTRMcoH6eKxMvV7NuGATKgbAyiJZm3K6qN+DkbrSKwOmuABQYB9FPcyB8yUl0+A==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/filter-alpha": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/filter-alpha/-/filter-alpha-6.5.2.tgz", - "integrity": "sha512-FJbOTbllZ2BrGNr95jmzW6viWeo2ooMCF/dDZDaSN8ptDYwO3QTH+FIqprffrw+nR1s95opZ1T1Mmisbxvulpw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/filter-blur": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/filter-blur/-/filter-blur-6.5.2.tgz", - "integrity": "sha512-MCFYg35hOUHmc/IxS4zyLbMeWuCKmSI/9mSb4NwQdVIJRCKj22ra0gMrhO4qNyfi3tnaR4rrk4uMDSkCiQ9Lmg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/settings": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/filter-color-matrix": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/filter-color-matrix/-/filter-color-matrix-6.5.2.tgz", - "integrity": "sha512-hC8iWUikfvU3LbyKnrPL1MAei9nhrUdbL636Ryk5inOmwPZd33TsC0a+WUzXacj3dFcTUHC1ghYpkbWR7s4n5g==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/filter-displacement": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/filter-displacement/-/filter-displacement-6.5.2.tgz", - "integrity": "sha512-VpcXd1j32VP+ylbrHw75J+pJwxtDNISKAzz+nfD9aGm3IfJW7vq696qrz09acD1Mr2buLc7G930d79eploOJ+Q==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/math": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/filter-fxaa": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/filter-fxaa/-/filter-fxaa-6.5.2.tgz", - "integrity": "sha512-z9UXnqIWSLlcUuTkpwz6xi3uAGMNTbiaCL9k3bDwKmvxfa6nZlTfI9QOG6Cj3L5J6bZgltax4V1V+kHzQWMujg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/filter-noise": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/filter-noise/-/filter-noise-6.5.2.tgz", - "integrity": "sha512-26YyKXxcuoDiZ6DRaqrAZdwQFp2pS2FVVQBb0BtzB9ruwkEC4w4R1cLZKva1PM58M11Zrgbn6/tNTupBLZKTJg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/graphics": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/graphics/-/graphics-6.5.2.tgz", - "integrity": "sha512-NLPds0Mz0gfozAi3ZIs5bjEa2vw/7kiYpqZsPWWttlBOOk1ij6YxefDcRpKnBkuCsoK0f8Ts3NgohFKKTP0goQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/sprite": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/interaction": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/interaction/-/interaction-6.5.2.tgz", - "integrity": "sha512-3maSzaQT4DAwxU0f9kP7iNPsgXBa2Z/MRND7nbYIx92Rc4USsX0CyEFJmIb1K4MvpgvR/Xej3S99OZoCn3rt+w==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/ticker": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/loaders": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/loaders/-/loaders-6.5.2.tgz", - "integrity": "sha512-pmnz02Lw6FvmH0G/JkOr6iq0XS5v0HNJjepm9t1zK5rsXnpKvLJ7aAQRRR15hTF8Krd83aEISRVrHc2AgGhHRw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/math": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/math/-/math-6.5.2.tgz", - "integrity": "sha512-nSLEDWrcdxWTkgJSjxWlt6PLTH8ysj0v487EBEv/OB1zihiZSIBVuja7LsrD52Yv31D2MxNWrgfnmwSOMuuRTg==", - "dev": true, - "license": "MIT" - }, - "types/types/foundry/node_modules/@pixi/mesh": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/mesh/-/mesh-6.5.2.tgz", - "integrity": "sha512-L3CYGoXwjGTv+gr4CFd/djYB2WmNWQrNzmW9VeUZ9G00uvPIjLj233y3eyF/ty5ye75r6lUCJiNSfxw6m9W55Q==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/mesh-extras": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/mesh-extras/-/mesh-extras-6.5.2.tgz", - "integrity": "sha512-fRVPZSOurR0Au1Dm40DOmYMEV4QEMMRv5KiyBobYkpNx36khTTklA1l+7xX+JHVifezXSHSSu248jfbb4PleZg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/mesh": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/mixin-cache-as-bitmap": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/mixin-cache-as-bitmap/-/mixin-cache-as-bitmap-6.5.2.tgz", - "integrity": "sha512-V1hDUKxaQupWnsPY4f2p0Yh0kHCzoPoMKgEhm/+xYcx+F9Em5IF9AYV9MJY0s6uz7nsbRG67+IRzNoI5Pq1SOw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/sprite": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/mixin-get-child-by-name": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/mixin-get-child-by-name/-/mixin-get-child-by-name-6.5.2.tgz", - "integrity": "sha512-SHuZXyA0PaRddyKxE2JgCRcCaiy4ow3RRERFPmtwfqCdXRodtdZqpJP0bSwHgjMs4Sd5NMaK4wIggtNX00Ewiw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/display": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/mixin-get-global-position": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/mixin-get-global-position/-/mixin-get-global-position-6.5.2.tgz", - "integrity": "sha512-wm0Wg55wIhEL8QapsrmNfCcSaNr7oAVdTuGjc0sobRPDfOwjyNA2yd2OwlCJayLUIOyHwe6GymflJ0mEpsYQog==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/display": "6.5.2", - "@pixi/math": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/particle-container": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/particle-container/-/particle-container-6.5.2.tgz", - "integrity": "sha512-B9S7j12T/2sAj3ksMhhd15l2ZdXc/1j6+oBG31H6k4lAmxVLVCg/CF6iBNenBsBuhm153E7FvqNxuzYg/7kdZQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/sprite": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/prepare": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/prepare/-/prepare-6.5.2.tgz", - "integrity": "sha512-w9eBzB2zd5K51ZozLviHby1rZwgZReUkNZ3IGWovp2skfSpfecevTCzdO+B7GAcO12JTegjM86U1os8HPXGKng==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/graphics": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/text": "6.5.2", - "@pixi/ticker": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/runner": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/runner/-/runner-6.5.2.tgz", - "integrity": "sha512-ygRO5UpPJCbk1KGwwaO2/7zCqVQI+cEoMSefsi+Dbn2XfZjCHKoza4pPnD1BTr7erjqJGL4Z5AViopEl8Ad7Jg==", - "dev": true, - "license": "MIT" - }, - "types/types/foundry/node_modules/@pixi/settings": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/settings/-/settings-6.5.2.tgz", - "integrity": "sha512-6sgjEoldOzqbMN/iHs0Uv2x8O769QW9Fqw4f2JwYajTjLVYOx3pReBd8Zqubf2ZEZRRiSMjM3VQQdL36iShnQQ==", - "dev": true, - "license": "MIT" - }, - "types/types/foundry/node_modules/@pixi/sprite": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/sprite/-/sprite-6.5.2.tgz", - "integrity": "sha512-zEKZKjv/RTq09iZ5I+xxOntWA/Y7EglABTM5nExXKwq+n6zsMroA3mXja+Nm3CuaGHNbkhIMgR6CeNnUPYpvkQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/sprite-animated": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/sprite-animated/-/sprite-animated-6.5.2.tgz", - "integrity": "sha512-6SZK6YxN+IBvmfBZcUnpvnPv4Z4pvx9sWdGjA7fv4TfgFBhO1dP++Ixf7pAm/4XDIlQshEFVRHqGUvf9s58ISg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/sprite": "6.5.2", - "@pixi/ticker": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/sprite-tiling": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/sprite-tiling/-/sprite-tiling-6.5.2.tgz", - "integrity": "sha512-Y/85moGBp3UiRBg7GNhnTqrn4cOckw/mBnWk+M+iWWLOAp3kXe/Fr4LA0yxXmMQAAQmhTuVDo9kQSChtkggKnw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/sprite": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/spritesheet": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/spritesheet/-/spritesheet-6.5.2.tgz", - "integrity": "sha512-bN6m7RkDprgMc5BiPeoAAE8lidHMzBkmWlYt3xThCP8nAdIjuCAUUhev6KWMNv981UBCRIX0qtfufOkDLhlWqA==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/loaders": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/text": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/text/-/text-6.5.2.tgz", - "integrity": "sha512-84fFJ4usQljdm0RDgSmuu773I8M1zlRMImqz9oqNHc9KdQzBqG7yVv6zy6EjQC3VS18SMj0NsIneM4dAhuIJYQ==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/core": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/sprite": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/text-bitmap": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/text-bitmap/-/text-bitmap-6.5.2.tgz", - "integrity": "sha512-oIfRqlYmPElYLge2Ui+MVzeb/RzAVX1lswaDApIuq+gCtoLCvBJD8SMm32/45pm+RIwwYecYNZQjoDzMNon8gw==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/loaders": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/mesh": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/text": "6.5.2", - "@pixi/utils": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/ticker": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/ticker/-/ticker-6.5.2.tgz", - "integrity": "sha512-fPSUmpNVLVJljPr5tTPcvx5Lxh2nXhql1pKihAs9UzAeuVkFHg/h7V0e/ZwqEi3FQ2yPX5q6Zo1/Lsuz5KJuwA==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "@pixi/extensions": "6.5.2", - "@pixi/settings": "6.5.2" - } - }, - "types/types/foundry/node_modules/@pixi/utils": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/@pixi/utils/-/utils-6.5.2.tgz", - "integrity": "sha512-TbShwvp6l8sfue9tClt0jogk5g991uj59wvAgMgGiabTDqrcrosuNvpPxMIJrLtEZccpDy29inY2mTJ5oWnPaQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/earcut": "^2.1.0", - "earcut": "^2.2.4", - "eventemitter3": "^3.1.0", - "url": "^0.11.0" - }, - "peerDependencies": { - "@pixi/constants": "6.5.2", - "@pixi/settings": "6.5.2" - } - }, - "types/types/foundry/node_modules/@types/node": { - "version": "18.19.69", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.69.tgz", - "integrity": "sha512-ECPdY1nlaiO/Y6GUnwgtAAhLNaQ53AyIVz+eILxpEo5OvuqE6yWkqWBIb5dU0DqhKQtMeny+FBD3PK6lm7L5xQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "types/types/foundry/node_modules/eventemitter3": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.2.tgz", - "integrity": "sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==", - "dev": true, - "license": "MIT" - }, - "types/types/foundry/node_modules/pixi.js": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/pixi.js/-/pixi.js-6.5.2.tgz", - "integrity": "sha512-9Chz2ruwJTjsfKzhnDGiPJzJywxx6fVTBbBCoe0w0YLM0dgldkoEE2TsJSvnD0T9DaUv5x+fIMneniGdspXZjQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@pixi/accessibility": "6.5.2", - "@pixi/app": "6.5.2", - "@pixi/compressed-textures": "6.5.2", - "@pixi/constants": "6.5.2", - "@pixi/core": "6.5.2", - "@pixi/display": "6.5.2", - "@pixi/extensions": "6.5.2", - "@pixi/extract": "6.5.2", - "@pixi/filter-alpha": "6.5.2", - "@pixi/filter-blur": "6.5.2", - "@pixi/filter-color-matrix": "6.5.2", - "@pixi/filter-displacement": "6.5.2", - "@pixi/filter-fxaa": "6.5.2", - "@pixi/filter-noise": "6.5.2", - "@pixi/graphics": "6.5.2", - "@pixi/interaction": "6.5.2", - "@pixi/loaders": "6.5.2", - "@pixi/math": "6.5.2", - "@pixi/mesh": "6.5.2", - "@pixi/mesh-extras": "6.5.2", - "@pixi/mixin-cache-as-bitmap": "6.5.2", - "@pixi/mixin-get-child-by-name": "6.5.2", - "@pixi/mixin-get-global-position": "6.5.2", - "@pixi/particle-container": "6.5.2", - "@pixi/polyfill": "6.5.2", - "@pixi/prepare": "6.5.2", - "@pixi/runner": "6.5.2", - "@pixi/settings": "6.5.2", - "@pixi/sprite": "6.5.2", - "@pixi/sprite-animated": "6.5.2", - "@pixi/sprite-tiling": "6.5.2", - "@pixi/spritesheet": "6.5.2", - "@pixi/text": "6.5.2", - "@pixi/text-bitmap": "6.5.2", - "@pixi/ticker": "6.5.2", - "@pixi/utils": "6.5.2" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/pixijs" - } - }, - "types/types/foundry/node_modules/tinymce": { - "version": "6.8.5", - "resolved": "https://registry.npmjs.org/tinymce/-/tinymce-6.8.5.tgz", - "integrity": "sha512-qAL/FxL7cwZHj4BfaF818zeJJizK9jU5IQzTcSLL4Rj5MaJdiVblEj7aDr80VCV1w9h4Lak9hlnALhq/kVtN1g==", - "dev": true, + "node_modules/zimmerframe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/zimmerframe/-/zimmerframe-1.1.2.tgz", + "integrity": "sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==", "license": "MIT" }, - "types/types/foundry/node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "dev": true, - "license": "MIT" + "types/types/foundry": { + "dev": true } } } diff --git a/package.json b/package.json index 86c787371..01fb2b78b 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,6 @@ "build:packs-json-xdy-pf2e-workbench-macros": "fvtt package pack --id xdy-pf2e-workbench --type Module -n xdy-pf2e-workbench-macros --in=./src/packs/leveldb/xdy-pf2e-workbench-macros --out=./dist/packs xdy-pf2e-workbench-macros", "clean": "rm -rf dist/*", "watch": "npm run clean && npm run build:packs && vite build --watch --mode development", - "hot": "vite serve", "lint": "npm run lint:ts && npm run lint:json && npm run prettier:scss", "lint:ts": "eslint ./build ./src --ext .ts", "prettier:scss": "prettier --check src/styles", @@ -32,6 +31,9 @@ "@foundryvtt/foundryvtt-cli": "github:xyzzy42/foundryvtt-cli#objects", "@pixi/graphics-smooth": "^1.1.1", "@pixi/particle-emitter": "5.0.8", + "@rollup/plugin-alias": "^5.1.1", + "@rollup/plugin-node-resolve": "^16.0.0", + "@rollup/plugin-typescript": "^12.1.2", "@semantic-release/changelog": "^6.0.3", "@semantic-release/commit-analyzer": "^13.0.1", "@semantic-release/exec": "^6.0.3", @@ -44,18 +46,18 @@ "@types/jquery": "^3.5.32", "@types/jsdom": "^21.1.7", "@types/luxon": "^3.4.2", - "@types/node": "^20.17.11", + "@types/node": "^20.17.12", "@types/prompts": "^2.4.9", "@types/showdown": "^2.0.6", "@types/sortablejs": "^1.15.8", "@types/tooltipster": "^0.0.35", "@types/uuid": "^10.0.0", "@types/yaireo__tagify": "^4.27.0", - "@typescript-eslint/eslint-plugin": "^8.19.0", - "@typescript-eslint/parser": "^8.19.0", + "@typescript-eslint/eslint-plugin": "^8.20.0", + "@typescript-eslint/parser": "^8.20.0", "classic-level": "^1.4.1", "es-jest": "^2.1.0", - "eslint": "^9.17.0", + "eslint": "^9.18.0", "eslint-config-prettier": "^9.1.0", "eslint-import-resolver-typescript": "^3.7.0", "eslint-plugin-import": "^2.31.0", @@ -73,15 +75,16 @@ "prompts": "^2.4.2", "prosemirror-commands": "^1.6.2", "prosemirror-view": "^1.37.1", - "sass": "^1.83.0", + "rollup-plugin-tsconfig-paths": "^1.5.2", + "sass": "^1.83.4", "semantic-release": "^24.2.1", "socket.io": "^4.8.1", "socket.io-client": "^4.8.1", "tinymce": "^7.6.0", "tsconfig-paths": "^4.2.0", "tsx": "^4.19.2", - "typescript": "^5.7.2", - "vite": "^5.4.11", + "typescript": "^5.7.3", + "vite": "^6.0.7", "vite-plugin-checker": "^0.8.0", "vite-plugin-static-copy": "^2.2.0", "vite-tsconfig-paths": "^5.1.4", @@ -90,14 +93,16 @@ "dependencies": { "@codemirror/autocomplete": "^6.18.4", "@codemirror/lang-json": "^6.0.1", - "@yaireo/tagify": "^4.33.0", + "@yaireo/tagify": "^4.33.1", "codemirror": "^6.0.1", + "foundry-pf2e": "github:7H3LaughingMan/foundry-pf2e", "luxon": "^3.5.0", "minisearch": "^7.1.1", "nouislider": "^15.8.1", - "remeda": "^2.19.0", + "remeda": "^2.19.1", + "showdown": "^2.1.0", "sortablejs": "^1.15.6", - "uuid": "^11.0.3" + "uuid": "^11.0.5" }, "homepage": "https://github.com/xdy/xdy-pf2e-workbench", "repository": { diff --git a/src/module/feature/conditionHandler/index.ts b/src/module/feature/conditionHandler/index.ts index 27134d327..a7ca434d1 100644 --- a/src/module/feature/conditionHandler/index.ts +++ b/src/module/feature/conditionHandler/index.ts @@ -1,6 +1,5 @@ -import { ActorPF2e } from "@actor"; +import { ActorPF2e, CombatantPF2e } from "foundry-pf2e"; import { minionsInCurrentScene, shouldIHandleThis } from "../../utils.js"; -import { CombatantPF2e } from "@module/encounter/index.js"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; export async function reduceFrightened(combatant: CombatantPF2e, userId: string) { diff --git a/src/module/feature/cr-scaler/NPCScaler.ts b/src/module/feature/cr-scaler/NPCScaler.ts index ffd32e6dc..50e96487b 100644 --- a/src/module/feature/cr-scaler/NPCScaler.ts +++ b/src/module/feature/cr-scaler/NPCScaler.ts @@ -17,8 +17,7 @@ import { IDataUpdates, IHandledItemType } from "./NPCScalerTypes.js"; import { getActor, getFolder, getFolderInFolder } from "./Utilities.js"; import { getAreaDamageData, getDamageData, getHPData, getLeveledData, getMinMaxData } from "./NPCScalerUtil.js"; -import { ActorPF2e, NPCPF2e } from "@actor"; -import { NPCSystemData } from "@actor/npc/data.js"; +import { ActorPF2e, NPCPF2e, NPCSystemData } from "foundry-pf2e"; import { logDebug } from "../../utils.js"; /** diff --git a/src/module/feature/cr-scaler/NPCScalerSetup.ts b/src/module/feature/cr-scaler/NPCScalerSetup.ts index 3b9b84568..2787e7bbf 100644 --- a/src/module/feature/cr-scaler/NPCScalerSetup.ts +++ b/src/module/feature/cr-scaler/NPCScalerSetup.ts @@ -15,7 +15,7 @@ */ import { scaleNPCToLevel } from "./NPCScaler.js"; -import { ActorPF2e } from "@actor"; +import { ActorPF2e } from "foundry-pf2e"; export function onScaleNPCContextHook(_html, buttons: any[]) { if (game.user?.isGM) { diff --git a/src/module/feature/cr-scaler/Utilities.ts b/src/module/feature/cr-scaler/Utilities.ts index 72d065034..2413e7d04 100644 --- a/src/module/feature/cr-scaler/Utilities.ts +++ b/src/module/feature/cr-scaler/Utilities.ts @@ -14,7 +14,7 @@ * limitations under the License. */ -import { ActorPF2e } from "@actor"; +import { ActorPF2e } from "foundry-pf2e"; export function getFolder(name: string) { return game.folders?.getName(name); diff --git a/src/module/feature/damageHandler/dyingHandling.ts b/src/module/feature/damageHandler/dyingHandling.ts index 99038afaa..4295de3a8 100644 --- a/src/module/feature/damageHandler/dyingHandling.ts +++ b/src/module/feature/damageHandler/dyingHandling.ts @@ -1,10 +1,7 @@ import { isFirstGM, logDebug, shouldIHandleThis, shouldIHandleThisMessage } from "../../utils.js"; import { CHARACTER_TYPE, MODULENAME, NPC_TYPE } from "../../xdy-pf2e-workbench.js"; -import { ItemPF2e } from "@item/base/document.js"; -import { ActorPF2e } from "@actor/index.js"; -import { ActorSystemData } from "@actor/data/base.js"; +import { ActorPF2e, ActorSystemData, ChatMessagePF2e, ItemPF2e } from "foundry-pf2e"; import { moveOnZeroHP } from "../initiativeHandler/index.js"; -import { ChatMessagePF2e } from "@module/chat-message/index.js"; export function dyingHandlingPreUpdateActorHook( actor, @@ -253,6 +250,7 @@ function filterMessagesByContextType(messages: ChatMessagePF2e[], contextType: s } function filterMessagesByStrikeDamaging(messages: ChatMessagePF2e[]): ChatMessagePF2e[] { + // @ts-ignore TODO Add to types return messages.filter((message) => message.flags.pf2e.strike?.damaging); } diff --git a/src/module/feature/damageHandler/index.ts b/src/module/feature/damageHandler/index.ts index 577e0691f..a6f71988b 100644 --- a/src/module/feature/damageHandler/index.ts +++ b/src/module/feature/damageHandler/index.ts @@ -5,10 +5,8 @@ import { objectHasKey, shouldIHandleThisMessage, } from "../../utils.ts"; -import { ActorFlagsPF2e, RollOptionFlags } from "@actor/data/base.js"; -import { ChatMessagePF2e } from "@module/chat-message/index.js"; -import { SpellPF2e } from "@item/spell/document.js"; -import type { DamageRoll } from "@system/damage/roll.d.ts"; +import type { DamageRoll } from "foundry-pf2e"; +import { ActorFlagsPF2e, ChatMessagePF2e, RollOptionFlags, SpellPF2e } from "foundry-pf2e"; export async function autoRollDamage(message: ChatMessagePF2e) { const numberOfMessagesToCheck = 10; @@ -73,6 +71,7 @@ export async function autoRollDamage(message: ChatMessagePF2e) { const targetHelperWillAutoroll = targetHelperActive && game.settings.get("pf2e-target-helper", "multipleTargetRollDamage") !== "no"; const letTargetHelperAutorollDamage = + // @ts-ignore TODO FIX (flags["pf2e-target-helper"]?.targets ?? 0) > 1 && targetHelperWillAutoroll; if ( @@ -82,6 +81,7 @@ export async function autoRollDamage(message: ChatMessagePF2e) { (rollForAttackSpell && isSuccess)) && !letTargetHelperAutorollDamage ) { + // @ts-ignore TODO FIX await handleSpell(pf2eFlags, numberOfMessagesToCheck, originUuid, origin, message, degreeOfSuccess); } else if (actor && rollForNonSpellAttack && isSuccess) { await handleNonSpell(actor, message, degreeOfSuccess); diff --git a/src/module/feature/initiativeHandler/index.ts b/src/module/feature/initiativeHandler/index.ts index 32d57964b..69ff6fda8 100644 --- a/src/module/feature/initiativeHandler/index.ts +++ b/src/module/feature/initiativeHandler/index.ts @@ -1,4 +1,4 @@ -import { ActorPF2e } from "@actor"; +import { ActorPF2e } from "foundry-pf2e"; import { shouldIHandleThis } from "../../utils.js"; /** diff --git a/src/module/feature/macros/basicActionMacros.ts b/src/module/feature/macros/basicActionMacros.ts index ebbbae8ce..6305c7cfd 100644 --- a/src/module/feature/macros/basicActionMacros.ts +++ b/src/module/feature/macros/basicActionMacros.ts @@ -5,13 +5,9 @@ import * as R from "remeda"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; -import { ActorPF2e } from "@actor"; -import type { SkillSlug } from "@actor/types.ts"; -import { Action, ActionUseOptions, ActionVariant } from "@actor/actions/types.js"; -import type { MacroPF2e } from "@module/macro.d.ts"; -import { Statistic } from "@system/statistic/statistic.js"; +import type { MacroPF2e, SkillSlug } from "foundry-pf2e"; +import { AbilityTrait, Action, ActionUseOptions, ActionVariant, ActorPF2e, Statistic } from "foundry-pf2e"; import { followTheExpert } from "./follow-the-expert.ts"; -import { AbilityTrait } from "@item/ability/types.js"; declare global { interface Window { @@ -101,6 +97,7 @@ type MacroAction = { // Path to icon icon: string; // Object to use when action is selected + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type TODO FIX action: Function | Action | ActionVariant | undefined; // Optional parameters for an Action.use() call for Action or ActionVariant type actions options?: Partial; @@ -701,10 +698,10 @@ export async function basicActionMacros() { const actionsToUse = prepareActions(selectedActor, bamActions); const actors: ActorPF2e[] = game?.scenes?.current?.tokens - .map((actor) => actor.actor) - .filter((actor) => { - return supportedActorTypes.includes(actor?.type ?? "unknown"); - }) || []; + .map((actor) => actor.actor) + .filter((actor) => { + return supportedActorTypes.includes(actor?.type ?? "unknown"); + }) || []; const party = game.actors?.party?.members || []; const partyIds = party.map((actor) => actor?.id) || []; diff --git a/src/module/feature/macros/follow-the-expert.ts b/src/module/feature/macros/follow-the-expert.ts index ac87858ff..6858001d3 100644 --- a/src/module/feature/macros/follow-the-expert.ts +++ b/src/module/feature/macros/follow-the-expert.ts @@ -1,14 +1,19 @@ -import type { Action, ActionMessageOptions, ActionUseOptions, ActionVariant } from "@actor/actions/types.d.ts"; -import type { ActorPF2e } from "@actor"; -import type { ChatMessagePF2e } from "@module/chat-message/document.d.ts"; -import type { EffectPF2e } from "@item"; -import type { EffectSource } from "@item/effect/data.d.ts"; -import type { RuleElementSource } from "@module/rules/rule-element/data.d.ts"; -import type { ChoiceSetSource } from "@module/rules/rule-element/choice-set/data.d.ts"; -import type { PickableThing } from "@module/apps/pick-a-thing-prompt.d.ts"; -import type { RawPredicate } from "@system/predication.d.ts"; +import type { + Action, + ActionMessageOptions, + ActionUseOptions, + ActionVariant, + ActorPF2e, + ChatMessagePF2e, + ChoiceSetSource, + EffectPF2e, + EffectSource, + PickableThing, + RawPredicate, + RuleElementSource, +} from "foundry-pf2e"; +import { AbilityTrait } from "foundry-pf2e"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; -import { AbilityTrait } from "@item/ability/types.js"; // IDK why choices isn't in ChoiceSetSource interface ChoiceSetSourceWithChoices extends ChoiceSetSource { diff --git a/src/module/feature/npc-roller/NpcRoller.ts b/src/module/feature/npc-roller/NpcRoller.ts index 2297b6aec..865ca424c 100644 --- a/src/module/feature/npc-roller/NpcRoller.ts +++ b/src/module/feature/npc-roller/NpcRoller.ts @@ -1,6 +1,5 @@ import { MODULENAME } from "../../xdy-pf2e-workbench.js"; import { SCALE_APP_DATA } from "../NPCScaleData.js"; -import { TokenPF2e } from "@module/canvas/token/object.js"; export async function registerNpcRollerHandlebarsTemplates() { await loadTemplates([ @@ -66,9 +65,7 @@ class NpcRoller extends Application { levels: fu.deepClone(SCALE_APP_DATA), }; - data["data"]["selected"] = canvas.tokens?.controlled.map( - (token: TokenPF2e) => token.actor?.system["details"].level.value, - ); + data["data"]["selected"] = canvas.tokens?.controlled.map((token) => token.actor?.system["details"].level.value); return data; } diff --git a/src/module/feature/qolHandler/handlePrivateSpellcasting.ts b/src/module/feature/qolHandler/handlePrivateSpellcasting.ts index 04e0abab1..4fd34bfcc 100644 --- a/src/module/feature/qolHandler/handlePrivateSpellcasting.ts +++ b/src/module/feature/qolHandler/handlePrivateSpellcasting.ts @@ -1,6 +1,5 @@ -import { ChatMessagePF2e } from "@module/chat-message/index.js"; +import { ChatMessagePF2e, SpellPF2e } from "foundry-pf2e"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; -import { SpellPF2e } from "@item/spell/document.js"; export async function handlePrivateSpellcasting(data: any, message: ChatMessagePF2e) { const spellUUID = message.flags?.pf2e.origin?.uuid; @@ -79,7 +78,7 @@ async function generateMessageData(message: ChatMessagePF2e, origin, spellUUID: "xdy-pf2e-workbench": { privateSpell: { originUuid: message.flags?.pf2e.origin?.uuid, - originCastRank: message.flags.pf2e.origin.castRank, + originCastRank: message.flags?.pf2e?.origin?.castRank, }, }, }; diff --git a/src/module/feature/qolHandler/index.ts b/src/module/feature/qolHandler/index.ts index 3c68f2aa3..44431de0c 100644 --- a/src/module/feature/qolHandler/index.ts +++ b/src/module/feature/qolHandler/index.ts @@ -1,7 +1,6 @@ import { MODULENAME } from "../../xdy-pf2e-workbench.js"; import { isActuallyDamageRoll } from "../../utils.js"; -import { PhysicalItemPF2e } from "@item"; -import { ChatMessagePF2e } from "@module/chat-message/index.js"; +import { ChatMessagePF2e, PhysicalItemPF2e } from "foundry-pf2e"; export function chatCardDescriptionCollapse(html: HTMLElement) { const hasCardContent = html.querySelectorAll(".card-content:not(span.flavor-text *)"); diff --git a/src/module/feature/reminders/checkAttackValidity.ts b/src/module/feature/reminders/checkAttackValidity.ts index a39d10157..80fbac425 100644 --- a/src/module/feature/reminders/checkAttackValidity.ts +++ b/src/module/feature/reminders/checkAttackValidity.ts @@ -1,8 +1,6 @@ -import { ChatMessagePF2e } from "@module/chat-message/index.js"; -import { TokenDocumentPF2e } from "@scene/index.js"; +import { ActorFlagsPF2e, ChatMessagePF2e, TokenDocumentPF2e } from "foundry-pf2e"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; import { shouldIHandleThis } from "../../utils.js"; -import { ActorFlagsPF2e } from "@actor/data/base.js"; function ignoreDeadEidolon(actor) { return actor?.traits.has("eidolon") && game.settings.get(MODULENAME, "reminderCannotAttackIgnoreDeadEidolon"); @@ -15,10 +13,12 @@ export function checkAttackValidity(message: ChatMessagePF2e, cancelAttack: bool const reason = getAttackReason( token, + // @ts-ignore TODO Fix message?.flags?.pf2e?.context?.options.filter((o) => o.startsWith("action:")), ); if (reason) { + // @ts-ignore TODO FIX notifyUser(token, reason, message?.flags?.pf2e?.context?.title, cancelAttack); return false; } @@ -32,6 +32,7 @@ function getSpeakerToken(message: ChatMessagePF2e): TokenDocumentPF2e { function shouldBeChecked(message: ChatMessagePF2e): boolean { const context = message?.flags?.pf2e?.context ?? {}; + // @ts-ignore TODO FIX const traits = context?.traits; return ( diff --git a/src/module/feature/reminders/index.ts b/src/module/feature/reminders/index.ts index c4fabdf0c..1cf0116f2 100644 --- a/src/module/feature/reminders/index.ts +++ b/src/module/feature/reminders/index.ts @@ -1,9 +1,6 @@ import { minionsInCurrentScene, shouldIHandleThis } from "../../utils.js"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; -import { CombatantPF2e } from "@module/encounter/index.js"; -import { ActorPF2e } from "@actor/base.js"; -import { ChatMessagePF2e } from "@module/chat-message/index.js"; -import { UserPF2e } from "@module/user/document.js"; +import { ActorPF2e, ChatContextFlag, ChatMessagePF2e, CombatantPF2e, UserPF2e } from "foundry-pf2e"; export function actionsReminder(combatant: CombatantPF2e, reduction = 0) { const actor = combatant.actor; @@ -73,7 +70,7 @@ export async function autoReduceStunned(combatant, userId: string): Promisemessage?.flags?.pf2e?.context; if ( message.actor && @@ -84,7 +81,8 @@ export function reminderTargeting(message: ChatMessagePF2e, setting: string): bo ) { const targets = (message.author).targets; if (!targets || targets.size === 0) { - const title = context.title; + // @ts-ignore TODO FIX + const title = context?.title; if (setting === "reminder") { const info = game.i18n.format(`${MODULENAME}.SETTINGS.reminderTargeting.info`, { title }); diff --git a/src/module/feature/reminders/reminderBreathWeapon.ts b/src/module/feature/reminders/reminderBreathWeapon.ts index d86fa900d..125acdf5a 100644 --- a/src/module/feature/reminders/reminderBreathWeapon.ts +++ b/src/module/feature/reminders/reminderBreathWeapon.ts @@ -1,6 +1,5 @@ -import { ChatMessagePF2e } from "@module/chat-message/index.js"; import { isFirstGM, myRandomId } from "../../utils.js"; -import { TokenDocumentPF2e } from "@scene/index.js"; +import { ChatMessagePF2e, TokenDocumentPF2e } from "foundry-pf2e"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; export async function reminderBreathWeapon(message: ChatMessagePF2e) { diff --git a/src/module/feature/tokenMystificationHandler/index.ts b/src/module/feature/tokenMystificationHandler/index.ts index 649535876..22349148c 100644 --- a/src/module/feature/tokenMystificationHandler/index.ts +++ b/src/module/feature/tokenMystificationHandler/index.ts @@ -1,19 +1,17 @@ -import { ScenePF2e, TokenDocumentPF2e } from "@scene"; +import { ActorSystemData, ScenePF2e, TokenDocumentPF2e } from "foundry-pf2e"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; -import { ActorSystemData } from "@actor/data/base.js"; import { mystifyModifierKey, mystifyRandomPropertyType } from "../../settings/index.js"; import { generateNameFromTraits } from "./traits-name-generator.js"; import { logError } from "../../utils.js"; -import { TokenPF2e } from "@module/canvas/token/object.js"; -function shouldSkipRandomProperty(token: TokenPF2e | TokenDocumentPF2e) { +function shouldSkipRandomProperty(token) { return ( game.settings.get(MODULENAME, "npcMystifierRandomPropertySkipForUnique") && (token?.actor?.system)?.traits?.rarity === "unique" ); } -function hasRandomProperty(token: TokenPF2e | TokenDocumentPF2e) { +function hasRandomProperty(token) { switch (mystifyRandomPropertyType) { case "numberPostfix": case "wordPrefix": @@ -59,7 +57,7 @@ async function fetchRandomWordPrefix(): Promise { } export async function buildTokenName( - token: TokenPF2e | TokenDocumentPF2e | null, + token, isMystified: boolean, ): Promise { let tokenName = ""; @@ -156,7 +154,7 @@ export async function tokenCreateMystification(token: any) { } } -export function isTokenMystified(token: TokenPF2e | TokenDocumentPF2e | null): boolean { +export function isTokenMystified(token): boolean { const tokenName = token?.name; const prototypeTokenName = token?.actor?.prototypeToken.name ?? ""; @@ -179,7 +177,7 @@ export async function doMystificationFromToken(tokenId: string, active: boolean) } } -export async function doMystification(token: TokenPF2e, active: boolean) { +export async function doMystification(token, active: boolean) { if (!token?.actor) { return; } @@ -218,7 +216,7 @@ export async function doMystification(token: TokenPF2e, active: boolean) { } export function renderNameHud(data: TokenDocumentPF2e, html: HTMLElement) { - let token: TokenPF2e | null; + let token; if (canvas && canvas.tokens) { token = canvas.tokens.get(data._id) ?? null; diff --git a/src/module/feature/tokenMystificationHandler/traits-name-generator.ts b/src/module/feature/tokenMystificationHandler/traits-name-generator.ts index 06759d7f2..508ad6916 100644 --- a/src/module/feature/tokenMystificationHandler/traits-name-generator.ts +++ b/src/module/feature/tokenMystificationHandler/traits-name-generator.ts @@ -1,7 +1,5 @@ -import { TokenDocumentPF2e } from "@scene"; import { CREATURE_IDENTIFICATION_TRAITS, ELITE_WEAK } from "../../xdy-pf2e-constants.js"; import { MODULENAME } from "../../xdy-pf2e-workbench.js"; -import { TokenPF2e } from "@module/canvas/token/object.js"; let TRAITS: { SIZES: string[]; @@ -128,13 +126,13 @@ function filterTraitList(traitsList: string[], prefix: string, postfix: string): */ export async function generateNameFromTraitsForToken(tokenId: string) { // @ts-ignore - const token = (game.scenes?.current?.tokens?.get(tokenId)); + const token = game.scenes?.current?.tokens?.get(tokenId); if (token) { return generateNameFromTraits(token); } } -export async function generateNameFromTraits(token: TokenPF2e | TokenDocumentPF2e) { +export async function generateNameFromTraits(token) { let result: any; const traits = token?.actor?.system?.traits; if (!TRAITS) { diff --git a/src/module/hooks.ts b/src/module/hooks.ts index 6b34ffed8..e1f841db5 100644 --- a/src/module/hooks.ts +++ b/src/module/hooks.ts @@ -1,8 +1,20 @@ import { housepatcher, isActuallyDamageRoll, logDebug, shouldIHandleThis } from "./utils.js"; -import { ActorPF2e, CreaturePF2e } from "@actor"; -import { TokenDocumentPF2e } from "@scene"; +import { + ActorPF2e, + ActorSheetPF2e, + ActorSystemData, + ChatMessagePF2e, + CheckRoll, + CombatantPF2e, + CreaturePF2e, + EncounterPF2e, + FeatPF2e, + ItemPF2e, + PhysicalItemPF2e, + TokenDocumentPF2e, + UserPF2e, +} from "foundry-pf2e"; import { CHARACTER_TYPE, MODULENAME, NPC_TYPE } from "./xdy-pf2e-workbench.js"; -import { UserPF2e } from "@module/user/index.js"; import { actionsReminder, autoReduceStunned, reminderTargeting } from "./feature/reminders/index.js"; import { chatActionCardDescriptionCollapse, @@ -14,13 +26,6 @@ import { import { autoRollDamage, persistentDamageHealing } from "./feature/damageHandler/index.js"; import { reduceFrightened } from "./feature/conditionHandler/index.js"; import { renderNameHud, tokenCreateMystification } from "./feature/tokenMystificationHandler/index.js"; -import { ItemPF2e } from "@item/base/document.js"; -import { CombatantPF2e, EncounterPF2e } from "@module/encounter/index.js"; -import { ChatMessagePF2e } from "@module/chat-message/index.js"; -import { CheckRoll } from "@module/system/check/roll.js"; -import { PhysicalItemPF2e } from "@item/physical/document.js"; -import { ActorSystemData } from "@actor/data/base.js"; -import { ActorSheetPF2e } from "@actor/sheet/base.js"; import { dyingHandlingCreateChatMessageHook, dyingHandlingPreUpdateActorHook, @@ -33,7 +38,6 @@ import { handlePrivateSpellcasting, hideSpellNameInDamageroll, } from "./feature/qolHandler/handlePrivateSpellcasting.js"; -import { FeatPF2e } from "@item/feat/document.js"; export const preCreateChatMessageHook = (message: ChatMessagePF2e, data: any, _options, _user: UserPF2e) => { let proceed = true; diff --git a/src/module/keybinds.ts b/src/module/keybinds.ts index 4e6a774dc..883b5845a 100644 --- a/src/module/keybinds.ts +++ b/src/module/keybinds.ts @@ -3,7 +3,6 @@ import { MODULENAME } from "./xdy-pf2e-workbench.js"; import { canMystify, doMystification, isTokenMystified } from "./feature/tokenMystificationHandler/index.js"; import { calcRemainingMinutes, heroPointHandler, HPHState } from "./feature/heroPointHandler/index.js"; import { moveSelectedAheadOfCurrent } from "./feature/initiativeHandler/index.js"; -import { TokenPF2e } from "@module/canvas/token/object.js"; export function registerWorkbenchKeybindings() { logInfo(`${MODULENAME} | registerKeybindings`); @@ -35,10 +34,10 @@ export function registerWorkbenchKeybindings() { content, buttons: { addFor: { - icon: '', + icon: "", label: game.i18n.localize(`${MODULENAME}.SETTINGS.addUserTargets.addFor`), callback: async (html) => { - const targets: TokenPF2e[] = ( + const targets: any[] = ( Array.from(canvas.tokens?.controlled).concat( canvas.tokens.placeables.filter((it) => it.mouseInteractionManager.state === 1), ) @@ -55,7 +54,7 @@ export function registerWorkbenchKeybindings() { }, }, clearFor: { - icon: '', + icon: "", label: game.i18n.localize(`${MODULENAME}.SETTINGS.addUserTargets.clearFor`), callback: async (html: JQuery) => { const user: any = game.users.find( diff --git a/src/module/settings/index.ts b/src/module/settings/index.ts index f2b7a8405..7c1e16dc0 100644 --- a/src/module/settings/index.ts +++ b/src/module/settings/index.ts @@ -152,6 +152,7 @@ export function registerWorkbenchSettings() { config: true, default: "", type: String, + // @ts-ignore TODO FIX (pr to foundry-pf2e) filePicker: "image", onChange: () => updateHooks(), }); diff --git a/src/module/settings/menu.ts b/src/module/settings/menu.ts index cb6c738f0..aa7c4059e 100644 --- a/src/module/settings/menu.ts +++ b/src/module/settings/menu.ts @@ -62,11 +62,11 @@ export class SettingsMenuPF2eWorkbench extends FormApplication { } } - static hideForm(form: HTMLElement, boolean: Boolean): void { + static hideForm(form: HTMLElement, boolean: boolean): void { form.style.display = !boolean ? "none" : ""; } - static readonly hidelist: Object = {} as HideListTemplateData; + static readonly hidelist: object = {} as HideListTemplateData; // @ts-ignore static hook(...args: any): HookCallback { @@ -126,9 +126,11 @@ export class SettingsMenuPF2eWorkbench extends FormApplication { key, value, isCheckbox: setting.type === Boolean, + // @ts-ignore TODO FIX (pr to foundry-pf2e) isFilepicker: setting.type === String && setting.filePicker, isNumber: setting.type === Number, isSelect: !!setting.choices, + // @ts-ignore TODO FIX (pr to foundry-pf2e) isText: setting.type === String && !setting.filePicker, }; }); diff --git a/src/module/utils.ts b/src/module/utils.ts index e10e91e42..7c4141a7c 100644 --- a/src/module/utils.ts +++ b/src/module/utils.ts @@ -1,8 +1,6 @@ -import { ChatMessagePF2e } from "@module/chat-message/index.js"; +import { ActorFlagsPF2e, ActorPF2e, ChatMessagePF2e } from "foundry-pf2e"; import { MODULENAME, Phase, phase } from "./xdy-pf2e-workbench.js"; -import { ActorFlagsPF2e } from "@actor/data/base.js"; -import { ActorPF2e } from "@actor/index.js"; -import BaseUser from "foundry-types/common/documents/user.js"; +import BaseUser from "foundry-pf2e/foundry/common/documents/user.js"; function shouldIHandleThisMessage(message: ChatMessagePF2e, playerCondition = true, gmCondition = true) { const amIMessageSender = message.author?.id === game.user?.id; @@ -19,7 +17,7 @@ function degreeOfSuccessWithRerollHandling(message: ChatMessagePF2e): string { const flags = message.flags.pf2e; let degreeOfSuccess = flags.context?.outcome ?? ""; if (flags?.context?.isReroll) { - const match = message.flavor?.match('Result: = Phase.READY) { + // eslint-disable-next-line no-constant-binary-expression number = Number(game.settings.get(MODULENAME, "logLevel")) ?? 2; } @@ -131,7 +130,7 @@ export function pushNotification(message: any, type: string = "info") { export function unflatten(object) { const result = {}; - Object.keys(object).forEach(function (k) { + Object.keys(object).forEach(function(k) { setValue(result, k, object[k]); }); return result; @@ -141,7 +140,7 @@ export function setValue(object, path, value) { const split = path.split("."); const top = split.pop(); - split.reduce(function (o, k, i, kk) { + split.reduce(function(o, k, i, kk) { return (o[k] = o[k] || (isFinite(i + 1 in kk ? kk[i + 1] : top) ? [] : {})); }, object)[top] = value; } @@ -205,10 +204,10 @@ export async function housepatcher(housepatcher) { export function minionsInCurrentScene(actor: ActorPF2e): ActorPF2e[] { return actor.isOfType("character") ? game.scenes.current?.tokens - ?.filter(() => !game.user.isGM) - ?.filter((token) => token.canUserModify((game.user), "update")) - ?.map((token) => token.actor) - ?.filter((x) => x?.traits.has("minion")) : []; + ?.filter(() => !game.user.isGM) + ?.filter((token) => token.canUserModify((game.user), "update")) + ?.map((token) => token.actor) + ?.filter((x) => x?.traits.has("minion")) : []; } export function setFlag(doc, flag, value) { diff --git a/src/module/xdy-pf2e-workbench.ts b/src/module/xdy-pf2e-workbench.ts index 3d0676e8c..e6dc88d78 100644 --- a/src/module/xdy-pf2e-workbench.ts +++ b/src/module/xdy-pf2e-workbench.ts @@ -10,7 +10,7 @@ // TODO Make the button post a chat message with a properly set up RK roll that players can click, as well as a gm-only button on the message that the gm can use to actually unmystify. import { preloadTemplates } from "./preloadTemplates.js"; import { registerWorkbenchKeybindings } from "./keybinds.js"; -import { ActorPF2e } from "@actor"; +import { ActorPF2e } from "foundry-pf2e"; import { isFirstGM, logInfo } from "./utils.js"; import { enableNpcRollerButton, registerNpcRollerHandlebarsTemplates } from "./feature/npc-roller/NpcRoller.js"; diff --git a/static/module.json b/static/module.json index 94e6c1290..d5f7eef3c 100644 --- a/static/module.json +++ b/static/module.json @@ -15,19 +15,18 @@ "type": "system", "manifest": "https://github.com/foundryvtt/pf2e/releases/download/latest/system.json", "compatibility": { - "minimum": "6.8.0", - "verified": "6.8.0" + "minimum": "6.8.1", + "verified": "6.8.1" } } ] }, "esmodules": [ - "vendor.mjs", - "xdy-pf2e-workbench.mjs" + "xdy-pf2e-workbench.js" ], "scripts": [], "styles": [ - "styles/xdy-pf2e-workbench.css" + "xdy-pf2e-workbench.css" ], "socket": true, "packFolders": [ diff --git a/tsconfig.json b/tsconfig.json index d463003a4..d89098a62 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,15 +1,16 @@ { "compilerOptions": { - // "allowSyntheticDefaultImports": true, //Do I need this? + "allowSyntheticDefaultImports": true, "allowImportingTsExtensions": true, "allowUnusedLabels": false, "baseUrl": ".", "esModuleInterop": true, "forceConsistentCasingInFileNames": true, + "isolatedModules": true, "lib": [ - "dom", - "dom.iterable", - "esnext" + "ESNext", + "DOM", + "dom.iterable" ], "module": "NodeNext", "moduleResolution": "NodeNext", @@ -21,41 +22,6 @@ "noUnusedLocals": true, "noUnusedParameters": true, "outDir": "dist", - "paths": { - "@actor": [ - "types/src/module/actor/index.js" - ], - "@actor/*": [ - "types/src/module/actor/*" - ], - "@item": [ - "types/src/module/item/index.js" - ], - "@item/*": [ - "types/src/module/item/*" - ], - "@module/*": [ - "types/src/module/*" - ], - "@scene": [ - "types/src/module/scene/index.js" - ], - "@scene/*": [ - "types/src/module/scene/*" - ], - "@scripts/*": [ - "types/src/scripts/*" - ], - "@system/*": [ - "types/src/module/system/*" - ], - "@util": [ - "types/src/util/index.js" - ], - "@util/*": [ - "types/src/util/*" - ] - }, "removeComments": false, "resolveJsonModule": true, "rootDir": ".", @@ -65,7 +31,7 @@ "strictFunctionTypes": false, "strictNullChecks": true, "strictPropertyInitialization": true, - "target": "ES2022", + "target": "ESNext", "typeRoots": [ "node_modules/@types", "types/types/foundry" @@ -73,13 +39,13 @@ "types": [ "jquery", "node", - "tooltipster", + "tooltipster" ], "useDefineForClassFields": true }, "watchOptions": { "excludeDirectories": [ - "packs/data/", + "packs/data/", "static/packs/" ] } diff --git a/types/README.md b/types/README.md deleted file mode 100644 index 6b82a3a98..000000000 --- a/types/README.md +++ /dev/null @@ -1,12 +0,0 @@ -This directory contains types generated from the pathfinder 2 system by running this in the pf2e git folder and then copying the dist/types folder: - -``` -npm run clean && npm ci && npm run build && node_modules/.bin/tsc --declaration true --emitDeclarationOnly true --noemit false --outdir dist/types --newLine lf > ~/t.txt -``` - -It also has these files and directories taken as-is from the pf2e system: -* foundryvtt/forks/pf2e/types/foundry/** -> types/types/foundry - -Fix any problems indicated by this, then build as usual. -```npx tsc --noEmit --skipLibCheck -``` diff --git a/types/build/build-packs.d.ts b/types/build/build-packs.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/build/build-packs.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/build/clean.d.ts b/types/build/clean.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/build/clean.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/build/conditions.d.ts b/types/build/conditions.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/build/conditions.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/build/extract-packs.d.ts b/types/build/extract-packs.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/build/extract-packs.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/build/lib/compendium-pack.d.ts b/types/build/lib/compendium-pack.d.ts deleted file mode 100644 index aceaec390..000000000 --- a/types/build/lib/compendium-pack.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -import type { ActorSourcePF2e } from "@actor/data/index.ts"; -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { RuleElementSource } from "@module/rules/index.ts"; -import "./foundry-utils.ts"; -import { PackError } from "./helpers.ts"; -import { DBFolder } from "./level-database.ts"; -import { PackEntry } from "./types.ts"; - -interface PackMetadata { - system: string; - name: string; - path: string; - type: CompendiumDocumentType; -} -/** A rule element, possibly an Aura, ChoiceSet, GrantItem */ -interface REMaybeWithUUIDs extends RuleElementSource { - effects?: unknown[]; - choices?: Record; - uuid?: unknown; -} -declare function isActorSource(docSource: PackEntry): docSource is ActorSourcePF2e; -declare function isItemSource(docSource: PackEntry): docSource is ItemSourcePF2e; -declare class CompendiumPack { - #private; - packId: string; - packDir: string; - documentType: CompendiumDocumentType; - systemId: string; - data: PackEntry[]; - folders: DBFolder[]; - static outDir: string; - static LINK_PATTERNS: { - world: RegExp; - compendium: RegExp; - uuid: RegExp; - }; - constructor(packDir: string, parsedData: unknown[], parsedFolders: unknown[]); - static loadJSON(dirPath: string): CompendiumPack; - finalizeAll(): PackEntry[]; - /** Convert UUIDs in REs to resemble links by name or back again */ - static convertUUIDs(source: ItemSourcePF2e, { to, map }: { - to: "ids" | "names"; - map: Map>; - }): void; - static convertUUID(uuid: TUUID, { to, map }: ConvertUUIDOptions): TUUID; - save(asJson?: boolean): Promise; - saveAsJSON(): Promise; -} -interface ConvertUUIDOptions { - to: "id" | "name"; - map: Map>; -} -export { CompendiumPack, PackError, isActorSource, isItemSource }; -export type { PackMetadata, REMaybeWithUUIDs }; diff --git a/types/build/lib/extractor.d.ts b/types/build/lib/extractor.d.ts deleted file mode 100644 index ac763621b..000000000 --- a/types/build/lib/extractor.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -declare global { - interface Global { - document: Document; - window: Window; - navigator: Navigator; - } -} -interface ExtractArgs { - packDb: string; - disablePresort?: boolean; - logWarnings?: boolean; -} -declare class PackExtractor { - #private; - /** The DB file to extract, with a special value of "all" */ - readonly packDB: string; - /** Whether to emit warnings on some events */ - readonly emitWarnings: boolean; - readonly dataPath: string; - readonly tempDataPath: string; - readonly packsMetadata: CompendiumMetadata[]; - disablePresort: boolean; - constructor(params: ExtractArgs); - /** Extract one or all packs */ - run(): Promise; - extractPack(filePath: string, packDirectory: string): Promise; -} -export { PackExtractor, type ExtractArgs }; diff --git a/types/build/lib/foundry-utils.d.ts b/types/build/lib/foundry-utils.d.ts deleted file mode 100644 index a372196e9..000000000 --- a/types/build/lib/foundry-utils.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -/** - * Learn the underlying data type of some variable. Supported identifiable types include: - * undefined, null, number, string, boolean, function, Array, Set, Map, Promise, Error, - * HTMLElement (client side only), Object (catchall for other object types) - * @param variable A provided variable - * @return The named type of the token - */ -export declare function getType(variable: unknown): string; -/** - * Test whether a value is empty-like; either undefined or a content-less object. - * @param value The value to test - * @returns Is the value empty-like? - */ -export declare function isEmpty(value: unknown): boolean; diff --git a/types/build/lib/helpers.d.ts b/types/build/lib/helpers.d.ts deleted file mode 100644 index 0edf03bdd..000000000 --- a/types/build/lib/helpers.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare const PackError: (message: string) => void; -declare const getFilesRecursively: (directory: string, filePaths?: string[]) => string[]; -export { getFilesRecursively, PackError }; diff --git a/types/build/lib/level-database.d.ts b/types/build/lib/level-database.d.ts deleted file mode 100644 index c01894a8f..000000000 --- a/types/build/lib/level-database.d.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { ClassicLevel, type DatabaseOptions } from "classic-level"; -import type { JournalEntryPageSchema } from "types/foundry/common/documents/journal-entry-page.d.ts"; -import type { TableResultSource } from "types/foundry/common/documents/module.d.ts"; -import { PackEntry } from "./types.ts"; -declare class LevelDatabase extends ClassicLevel { - #private; - constructor(location: string, options: LevelDatabaseOptions); - createPack(docSources: DBEntry[], folders: DBFolder[]): Promise; - getEntries(): Promise<{ - packSources: PackEntry[]; - folders: DBFolder[]; - }>; -} -type EmbeddedEntry = ItemSourcePF2e | SourceFromSchema | TableResultSource; -type DBEntry = Omit & { - folder?: string | null; - items?: (EmbeddedEntry | string)[]; - pages?: (EmbeddedEntry | string)[]; - results?: (EmbeddedEntry | string)[]; -}; -interface DBFolder { - name: string; - sorting: string; - folder: string | null; - type: CompendiumDocumentType; - _id: string; - sort: number; - color: string | null; - flags: object; - _stats: { - systemId: string | null; - systemVersion: string | null; - coreVersion: string | null; - createdTime: number | null; - modifiedTime: number | null; - lastModifiedBy: string | null; - }; -} -interface LevelDatabaseOptions { - packName: string; - dbOptions?: DatabaseOptions; -} -export { LevelDatabase, type DBFolder }; diff --git a/types/build/lib/types.d.ts b/types/build/lib/types.d.ts deleted file mode 100644 index 722fd62db..000000000 --- a/types/build/lib/types.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import type { MacroPF2e } from "@module/macro.ts"; -type CompendiumDocumentPF2e = ActorPF2e | ItemPF2e | JournalEntry | MacroPF2e | RollTable; -type PackEntry = CompendiumDocumentPF2e["_source"]; -export type { PackEntry }; diff --git a/types/build/link-foundry.d.ts b/types/build/link-foundry.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/build/link-foundry.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/build/run-migration.d.ts b/types/build/run-migration.d.ts deleted file mode 100644 index 3b806c0dd..000000000 --- a/types/build/run-migration.d.ts +++ /dev/null @@ -1 +0,0 @@ -import "./lib/foundry-utils.ts"; diff --git a/types/src/global.d.ts b/types/src/global.d.ts deleted file mode 100644 index 63543518d..000000000 --- a/types/src/global.d.ts +++ /dev/null @@ -1,297 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { Action } from "@actor/actions/index.ts"; -import type { AutomaticBonusProgression } from "@actor/character/automatic-bonus-progression.ts"; -import type { ElementalBlast } from "@actor/character/elemental-blast.ts"; -import type { FeatGroupData } from "@actor/character/feats/index.ts"; -import type { CheckModifier, ModifierPF2e, ModifierType, StatisticModifier } from "@actor/modifiers.ts"; -import type { ItemPF2e, PhysicalItemPF2e } from "@item"; -import type { ConditionSource } from "@item/condition/data.ts"; -import type { CoinsPF2e } from "@item/physical/helpers.ts"; -import type { ActiveEffectPF2e } from "@module/active-effect.ts"; -import type { - CompendiumBrowser, - CompendiumBrowserSettings, - CompendiumBrowserSources, -} from "@module/apps/compendium-browser/browser.ts"; -import type { EffectsPanel } from "@module/apps/effects-panel.ts"; -import type { HotbarPF2e } from "@module/apps/hotbar.ts"; -import type { LicenseViewer } from "@module/apps/license-viewer/app.ts"; -import type { - ActorDirectoryPF2e, - ChatLogPF2e, - CompendiumDirectoryPF2e, - EncounterTrackerPF2e, -} from "@module/apps/sidebar/index.ts"; -import type { WorldClock } from "@module/apps/world-clock/app.ts"; -import type { CanvasPF2e, EffectsCanvasGroupPF2e } from "@module/canvas/index.ts"; -import type { StatusEffects } from "@module/canvas/status-effects.ts"; -import type { ChatMessagePF2e } from "@module/chat-message/index.ts"; -import type { ActorsPF2e } from "@module/collection/actors.ts"; -import type { CombatantPF2e, EncounterPF2e } from "@module/encounter/index.ts"; -import type { MacroPF2e } from "@module/macro.ts"; -import type { RuleElementPF2e, RuleElements } from "@module/rules/index.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { - AmbientLightDocumentPF2e, - MeasuredTemplateDocumentPF2e, - RegionBehaviorPF2e, - RegionDocumentPF2e, - ScenePF2e, - TileDocumentPF2e, - TokenDocumentPF2e, -} from "@scene"; -import type { ActorDeltaPF2e } from "@scene/token-document/actor-delta.ts"; -import type { PF2ECONFIG, StatusEffectIconTheme } from "@scripts/config/index.ts"; -import type { DicePF2e } from "@scripts/dice.ts"; -import type { - calculateXP, - checkPrompt, - editPersistent, - launchTravelSheet, - perceptionForSelected, - rollActionMacro, - rollItemMacro, - stealthForSelected, - xpFromEncounter, -} from "@scripts/macros/index.ts"; -import type { remigrate } from "@scripts/system/remigrate.ts"; -import type { CheckPF2e } from "@system/check/index.ts"; -import type { ConditionManager } from "@system/conditions/manager.ts"; -import type { EffectTracker } from "@system/effect-tracker.ts"; -import type { ModuleArt } from "@system/module-art.ts"; -import type { Predicate } from "@system/predication.ts"; -import type { - CustomDamageData, - HomebrewTag, - HomebrewTraitSettingsKey, - LanguageSettings, -} from "@system/settings/homebrew/index.ts"; -import type { TextEditorPF2e } from "@system/text-editor.ts"; -import type { sluggify } from "@util"; -import type EnJSON from "static/lang/en.json"; - -interface GamePF2e extends Game, ActorsPF2e>, ChatMessagePF2e, EncounterPF2e, ItemPF2e, MacroPF2e, ScenePF2e, UserPF2e> { - pf2e: { - actions: Record & Collection; - compendiumBrowser: CompendiumBrowser; - licenseViewer: LicenseViewer; - worldClock: WorldClock; - effectPanel: EffectsPanel; - effectTracker: EffectTracker; - rollActionMacro: typeof rollActionMacro; - rollItemMacro: typeof rollItemMacro; - gm: { - calculateXP: typeof calculateXP; - checkPrompt: typeof checkPrompt; - editPersistent: typeof editPersistent; - launchTravelSheet: typeof launchTravelSheet; - perceptionForSelected: typeof perceptionForSelected; - stealthForSelected: typeof stealthForSelected; - xpFromEncounter: typeof xpFromEncounter; - }; - system: { - moduleArt: ModuleArt; - remigrate: typeof remigrate; - sluggify: typeof sluggify; - generateItemName: (item: PhysicalItemPF2e) => string; - }; - variantRules: { - AutomaticBonusProgression: typeof AutomaticBonusProgression; - }; - Check: typeof CheckPF2e; - CheckModifier: typeof CheckModifier; - Coins: typeof CoinsPF2e; - ConditionManager: typeof ConditionManager; - Dice: typeof DicePF2e; - ElementalBlast: typeof ElementalBlast; - Modifier: typeof ModifierPF2e; - ModifierType: { - [K in Uppercase]: Lowercase; - }; - Predicate: typeof Predicate; - RuleElement: typeof RuleElementPF2e; - RuleElements: typeof RuleElements; - StatisticModifier: typeof StatisticModifier; - StatusEffects: typeof StatusEffects; - TextEditor: typeof TextEditorPF2e; - /** Cached values of frequently-checked settings */ - settings: { - automation: { - /** Flanking detection */ - flanking: boolean; - }; - /** Campaign feat slots */ - campaign: { - feats: { - enabled: boolean; - sections: FeatGroupData[]; - }; - languages: LanguageSettings; - mythic: "disabled" | "enabled" | "variant-tiers"; - type: string | null; - }; - critFumble: { - buttons: boolean; - cards: boolean; - }; - dragMeasurement: "always" | "encounters" | "never"; - /** Encumbrance automation */ - encumbrance: boolean; - gmVision: boolean; - /** Immunities, weaknesses, and resistances */ - iwr: boolean; - metagame: { - breakdowns: boolean; - dcs: boolean; - secretChecks: boolean; - partyStats: boolean; - partyVision: boolean; - results: boolean; - }; - /** Rules-based vision */ - rbv: boolean; - tokens: { - /** Automatic scaling of tokens belong to small actor */ - autoscale: boolean; - /** Token nameplate visibility sets name visibility in encounter tracker */ - nameVisibility: boolean; - /** Nath Mode */ - nathMode: boolean; - }; - /** Theater-of-the-mind toggles */ - totm: boolean; - /** Variant urles */ - variants: { - /** Automatic Bonus Progression */ - abp: "noABP" | "ABPFundamentalPotency" | "ABPRulesAsWritten"; - /** Free Archetype */ - fa: boolean; - /** Gradual Ability Boosts */ - gab: boolean; - /** Proficiency without Level */ - pwol: { - enabled: boolean; - /** Modifiers for each proficiency rank */ - modifiers: [number, number, number, number, number]; - }; - /** Stamina */ - stamina: boolean; - }; - }; - }; -} -type ConfiguredConfig = Config, ActiveEffectPF2e, ActorPF2e, ActorDeltaPF2e, ChatLogPF2e, ChatMessagePF2e, EncounterPF2e, CombatantPF2e, EncounterTrackerPF2e, CompendiumDirectoryPF2e, HotbarPF2e, ItemPF2e, MacroPF2e, MeasuredTemplateDocumentPF2e, RegionDocumentPF2e, RegionBehaviorPF2e, TileDocumentPF2e, TokenDocumentPF2e, WallDocument, ScenePF2e, UserPF2e, EffectsCanvasGroupPF2e>; -declare global { - interface ConfigPF2e extends ConfiguredConfig { - debug: ConfiguredConfig["debug"] & { - ruleElement: boolean; - }; - PF2E: typeof PF2ECONFIG; - time: { - roundTime: number; - }; - } - const CONFIG: ConfigPF2e; - const canvas: CanvasPF2e; - namespace globalThis { - var game: GamePF2e; - var fu: typeof foundry.utils; - var ui: FoundryUI>, ChatLogPF2e, CompendiumDirectoryPF2e, EncounterTrackerPF2e, HotbarPF2e>; - interface Math { - eq: (a: number, b: number) => boolean; - gt: (a: number, b: number) => boolean; - gte: (a: number, b: number) => boolean; - lt: (a: number, b: number) => boolean; - lte: (a: number, b: number) => boolean; - ne: (a: number, b: number) => boolean; - ternary: (condition: boolean | number, ifTrue: number, ifFalse: number) => number; - } - } - interface Window { - AutomaticBonusProgression: typeof AutomaticBonusProgression; - } - interface ClientSettings { - get(module: "pf2e", setting: "automation.actorsDeadAtZero"): "neither" | "npcsOnly" | "pcsOnly" | "both"; - get(module: "pf2e", setting: "automation.effectExpiration"): boolean; - get(module: "pf2e", setting: "automation.encumbrance"): boolean; - get(module: "pf2e", setting: "automation.flankingDetection"): boolean; - get(module: "pf2e", setting: "automation.iwr"): boolean; - get(module: "pf2e", setting: "automation.lootableNPCs"): boolean; - get(module: "pf2e", setting: "automation.removeExpiredEffects"): boolean; - get(module: "pf2e", setting: "automation.rulesBasedVision"): boolean; - get(module: "pf2e", setting: "gradualBoostsVariant"): boolean; - get(module: "pf2e", setting: "automaticBonusVariant"): "noABP" | "ABPFundamentalPotency" | "ABPRulesAsWritten"; - get(module: "pf2e", setting: "freeArchetypeVariant"): boolean; - get(module: "pf2e", setting: "proficiencyVariant"): boolean; - get(module: "pf2e", setting: "staminaVariant"): boolean; - get(module: "pf2e", setting: "proficiencyUntrainedModifier"): number; - get(module: "pf2e", setting: "proficiencyTrainedModifier"): number; - get(module: "pf2e", setting: "proficiencyExpertModifier"): number; - get(module: "pf2e", setting: "proficiencyMasterModifier"): number; - get(module: "pf2e", setting: "proficiencyLegendaryModifier"): number; - get(module: "pf2e", setting: "metagame_partyVision"): boolean; - get(module: "pf2e", setting: "metagame_secretCondition"): boolean; - get(module: "pf2e", setting: "metagame_secretDamage"): boolean; - get(module: "pf2e", setting: "metagame_showBreakdowns"): boolean; - get(module: "pf2e", setting: "metagame_showDC"): boolean; - get(module: "pf2e", setting: "metagame_showPartyStats"): boolean; - get(module: "pf2e", setting: "metagame_showResults"): boolean; - get(module: "pf2e", setting: "metagame_tokenSetsNameVisibility"): boolean; - get(module: "pf2e", setting: "metagame_secretChecks"): boolean; - get(module: "pf2e", setting: "tokens.autoscale"): boolean; - get(module: "pf2e", setting: "worldClock.dateTheme"): "AR" | "IC" | "AD" | "CE"; - get(module: "pf2e", setting: "worldClock.playersCanView"): boolean; - get(module: "pf2e", setting: "worldClock.showClockButton"): boolean; - get(module: "pf2e", setting: "worldClock.syncDarkness"): boolean; - get(module: "pf2e", setting: "worldClock.timeConvention"): 24 | 12; - get(module: "pf2e", setting: "worldClock.worldCreatedOn"): string; - get(module: "pf2e", setting: "campaignFeats"): boolean; - get(module: "pf2e", setting: "campaignFeatSections"): FeatGroupData[]; - get(module: "pf2e", setting: "campaignType"): string; - get(module: "pf2e", setting: "mythic"): "disabled" | "enabled" | "variant-tiers"; - get(module: "pf2e", setting: "activeParty"): string; - get(module: "pf2e", setting: "activePartyFolderState"): boolean; - get(module: "pf2e", setting: "createdFirstParty"): boolean; - get(module: "pf2e", setting: "homebrew.languages"): HomebrewTag<"languages">[]; - get(module: "pf2e", setting: "homebrew.weaponCategories"): HomebrewTag<"weaponCategories">[]; - get(module: "pf2e", setting: HomebrewTraitSettingsKey): HomebrewTag[]; - get(module: "pf2e", setting: "homebrew.damageTypes"): CustomDamageData[]; - get(module: "pf2e", setting: "homebrew.languageRarities"): LanguageSettings; - get(module: "pf2e", setting: "compendiumBrowserPacks"): CompendiumBrowserSettings; - get(module: "pf2e", setting: "compendiumBrowserSources"): CompendiumBrowserSources; - get(module: "pf2e", setting: "critFumbleButtons"): boolean; - get(module: "pf2e", setting: "critRule"): "doubledamage" | "doubledice"; - get(module: "pf2e", setting: "deathIcon"): ImageFilePath; - get(module: "pf2e", setting: "dragMeasurement"): "always" | "encounters" | "never"; - get(module: "pf2e", setting: "drawCritFumble"): boolean; - get(module: "pf2e", setting: "gmVision"): boolean; - get(module: "pf2e", setting: "identifyMagicNotMatchingTraditionModifier"): 0 | 2 | 5 | 10; - get(module: "pf2e", setting: "minimumRulesUI"): Exclude; - get(module: "pf2e", setting: "nathMode"): boolean; - get(module: "pf2e", setting: "seenRemasterJournalEntry"): boolean; - get(module: "pf2e", setting: "statusEffectType"): StatusEffectIconTheme; - get(module: "pf2e", setting: "totmToggles"): boolean; - get(module: "pf2e", setting: "worldSchemaVersion"): number; - get(module: "pf2e", setting: "worldSystemVersion"): string; - } - interface ClientSettingsMap { - get(key: "pf2e.worldClock.worldCreatedOn"): SettingConfig & { - default: string; - }; - } - interface RollMathProxy { - eq: (a: number, b: number) => boolean; - gt: (a: number, b: number) => boolean; - gte: (a: number, b: number) => boolean; - lt: (a: number, b: number) => boolean; - lte: (a: number, b: number) => boolean; - ne: (a: number, b: number) => boolean; - ternary: (condition: boolean | number, ifTrue: number, ifFalse: number) => number; - } - const BUILD_MODE: "development" | "production"; - const CONDITION_SOURCES: ConditionSource[]; - const EN_JSON: typeof EnJSON; - const ROLL_PARSER: string; - const UUID_REDIRECTS: Record; -} -export {}; diff --git a/types/src/module/active-effect.d.ts b/types/src/module/active-effect.d.ts deleted file mode 100644 index a346b2bb2..000000000 --- a/types/src/module/active-effect.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { AbstractEffectPF2e, ItemPF2e } from "@item"; -export declare class ActiveEffectPF2e extends ActiveEffect { - /** Create an active effect from an (abstract) effect for use in token effect icons */ - static fromEffect(effect: AbstractEffectPF2e): ActiveEffectPF2e; - protected _preCreate(data: this["_source"], operation: DatabaseCreateOperation, user: User): Promise; -} diff --git a/types/src/module/actor/actions/base.d.ts b/types/src/module/actor/actions/base.d.ts deleted file mode 100644 index 08f1f65b5..000000000 --- a/types/src/module/actor/actions/base.d.ts +++ /dev/null @@ -1,65 +0,0 @@ -import type { AbilityTrait } from "@item/ability/index.ts"; -import type { ProficiencyRank } from "@item/base/data/index.ts"; -import { ChatMessagePF2e } from "@module/chat-message/document.ts"; -import { - Action, - ActionCost, - ActionMessageOptions, - ActionSection, - ActionUseOptions, - ActionVariant, - ActionVariantUseOptions, -} from "./types.ts"; - -interface BaseActionVariantData { - cost?: ActionCost; - description?: string; - name?: string; - slug?: string; - traits?: AbilityTrait[]; -} -interface BaseActionData { - cost?: ActionCost; - description: string; - img?: string; - name: string; - sampleTasks?: Partial>; - section?: ActionSection; - slug?: string | null; - traits?: AbilityTrait[]; - variants?: ActionVariantDataType | ActionVariantDataType[]; -} -declare abstract class BaseActionVariant implements ActionVariant { - #private; - readonly name?: string; - protected constructor(action: BaseAction, data?: BaseActionVariantData); - get cost(): ActionCost | undefined; - get description(): string | undefined; - get glyph(): string; - get slug(): string; - get traits(): AbilityTrait[]; - toMessage(options?: Partial): Promise; - abstract use(options?: Partial): Promise; -} -declare abstract class BaseAction implements Action { - #private; - readonly cost?: ActionCost; - readonly description?: string; - readonly img?: string; - readonly name: string; - readonly sampleTasks?: Partial>; - readonly section?: ActionSection; - readonly slug: string; - readonly traits: AbilityTrait[]; - protected constructor(data: BaseActionData); - get glyph(): string; - get variants(): Collection; - protected getDefaultVariant(options?: { - variant?: string; - }): TAction; - toMessage(options?: Partial): Promise; - use(options?: Partial): Promise; - protected abstract toActionVariant(data?: TData): TAction; -} -export { BaseAction, BaseActionVariant }; -export type { BaseActionData, BaseActionVariantData }; diff --git a/types/src/module/actor/actions/index.d.ts b/types/src/module/actor/actions/index.d.ts deleted file mode 100644 index e8b31e21f..000000000 --- a/types/src/module/actor/actions/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./types.ts"; -export * from "./base.ts"; -export * from "./simple.ts"; -export * from "./single-check.ts"; diff --git a/types/src/module/actor/actions/simple.d.ts b/types/src/module/actor/actions/simple.d.ts deleted file mode 100644 index 7b8fde846..000000000 --- a/types/src/module/actor/actions/simple.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { EffectPF2e } from "@item"; -import { BaseAction, BaseActionData, BaseActionVariant, BaseActionVariantData } from "./base.ts"; -import { ActionCost, ActionUseOptions } from "./types.ts"; -interface SimpleActionVariantData extends BaseActionVariantData { - effect?: string | EffectPF2e; -} -interface SimpleActionData extends BaseActionData { - effect?: string | EffectPF2e; -} -interface SimpleActionUseOptions extends ActionUseOptions { - cost: ActionCost; - effect: string | EffectPF2e | false; -} -interface SimpleActionResult { - actor: ActorPF2e; - effect?: EffectPF2e; - message?: ChatMessage; -} -declare class SimpleActionVariant extends BaseActionVariant { - #private; - constructor(action: SimpleAction, data?: SimpleActionVariantData); - get effect(): string | EffectPF2e | undefined; - use(options?: Partial): Promise; -} -declare class SimpleAction extends BaseAction { - readonly effect?: string | EffectPF2e; - constructor(data: SimpleActionData); - protected toActionVariant(data?: SimpleActionVariantData): SimpleActionVariant; -} -export { SimpleAction, SimpleActionVariant }; -export type { SimpleActionResult, SimpleActionUseOptions, SimpleActionVariantData }; diff --git a/types/src/module/actor/actions/single-check.d.ts b/types/src/module/actor/actions/single-check.d.ts deleted file mode 100644 index 5c03a466f..000000000 --- a/types/src/module/actor/actions/single-check.d.ts +++ /dev/null @@ -1,74 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { ModifierPF2e, RawModifier } from "@actor/modifiers.ts"; -import { DCSlug } from "@actor/types.ts"; -import type { ItemPF2e } from "@item"; -import { RollNoteSource } from "@module/notes.ts"; -import { CheckContextData, CheckContextOptions, CheckMacroContext, CheckResultCallback } from "@system/action-macros/types.ts"; -import { CheckDC } from "@system/degree-of-success.ts"; -import { BaseAction, BaseActionData, BaseActionVariant, BaseActionVariantData } from "./base.ts"; -import { ActionUseOptions } from "./types.ts"; -type SingleCheckActionRollNoteData = Omit & { - selector?: string; -}; -interface SingleCheckActionVariantData extends BaseActionVariantData { - difficultyClass?: CheckDC | DCSlug; - modifiers?: RawModifier[]; - notes?: SingleCheckActionRollNoteData[]; - rollOptions?: string[]; - statistic?: string | string[]; -} -interface SingleCheckActionData extends BaseActionData { - difficultyClass?: CheckDC | DCSlug; - modifiers?: RawModifier[]; - notes?: SingleCheckActionRollNoteData[]; - rollOptions?: string[]; - statistic: string | string[]; -} -interface ActionVariantCheckPreviewOptions { - actor: ActorPF2e; -} -interface ActionCheckPreviewOptions extends ActionVariantCheckPreviewOptions { - variant: string; -} -interface ActionCheckPreview { - label: string; - modifier?: number; - slug: string; -} -interface SingleCheckActionUseOptions extends ActionUseOptions { - difficultyClass: CheckDC | DCSlug | number; - modifiers: ModifierPF2e[]; - multipleAttackPenalty: number; - notes: SingleCheckActionRollNoteData[]; - rollOptions: string[]; - statistic: string; -} -declare class SingleCheckActionVariant extends BaseActionVariant { - #private; - constructor(action: SingleCheckAction, data?: SingleCheckActionVariantData); - get difficultyClass(): CheckDC | DCSlug | undefined; - get modifiers(): RawModifier[]; - get notes(): RollNoteSource[]; - get rollOptions(): string[]; - get statistic(): string | string[]; - preview(options?: Partial): ActionCheckPreview[]; - use(options?: Partial): Promise; - protected checkContext>(opts: CheckContextOptions, data: CheckContextData): CheckMacroContext | undefined; - protected toActionCheckPreview(args: { - actor?: ActorPF2e; - rollOptions: string[]; - slug: string; - }): ActionCheckPreview | null; -} -declare class SingleCheckAction extends BaseAction { - readonly difficultyClass?: CheckDC | DCSlug; - readonly modifiers: RawModifier[]; - readonly notes: RollNoteSource[]; - readonly rollOptions: string[]; - readonly statistic: string | string[]; - constructor(data: SingleCheckActionData); - preview(options?: Partial): ActionCheckPreview[]; - protected toActionVariant(data?: SingleCheckActionVariantData): SingleCheckActionVariant; -} -export { SingleCheckAction, SingleCheckActionVariant }; -export type { ActionCheckPreview, SingleCheckActionUseOptions, SingleCheckActionVariantData }; diff --git a/types/src/module/actor/actions/types.d.ts b/types/src/module/actor/actions/types.d.ts deleted file mode 100644 index 6da9ad4e3..000000000 --- a/types/src/module/actor/actions/types.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { AbilityTrait } from "@item/ability/index.ts"; -import type { ProficiencyRank } from "@item/base/data/index.ts"; -import type { TokenPF2e } from "@module/canvas/index.ts"; -import type { ChatMessagePF2e } from "@module/chat-message/document.ts"; - -type ActionCost = "free" | "reaction" | 0 | 1 | 2 | 3; -type ActionSection = "basic" | "skill" | "specialty-basic"; -interface ActionMessageOptions { - blind: boolean; - variant: string; - whisper: string[]; -} -interface ActionVariantUseOptions extends Record { - actors: ActorPF2e | ActorPF2e[]; - event: Event; - message: { - create?: boolean; - }; - traits: AbilityTrait[]; - target: ActorPF2e | TokenPF2e; -} -interface ActionVariant { - cost?: ActionCost; - description?: string; - glyph?: string; - name?: string; - slug: string; - traits: AbilityTrait[]; - toMessage(options?: Partial): Promise; - use(options?: Partial): Promise; -} -interface ActionUseOptions extends ActionVariantUseOptions { - variant: string; -} -interface Action { - cost?: ActionCost; - description?: string; - glyph?: string; - img?: string; - name: string; - sampleTasks?: Partial>; - section?: ActionSection; - slug: string; - traits: AbilityTrait[]; - variants: Collection; - toMessage(options?: Partial): Promise; - /** Uses the default variant for this action, which will usually be the first one in the collection. */ - use(options?: Partial): Promise; -} -export type { Action, ActionCost, ActionMessageOptions, ActionSection, ActionUseOptions, ActionVariant, ActionVariantUseOptions, }; diff --git a/types/src/module/actor/army/data.d.ts b/types/src/module/actor/army/data.d.ts deleted file mode 100644 index 03a3f715f..000000000 --- a/types/src/module/actor/army/data.d.ts +++ /dev/null @@ -1,110 +0,0 @@ -import { ActorSystemSource, BaseActorSourcePF2e } from "@actor/data/base.ts"; -import { Immunity, ImmunitySource, Resistance, ResistanceSource, Weakness, WeaknessSource } from "@actor/data/iwr.ts"; -import { ActorSystemModel, ActorSystemSchema } from "@actor/data/model.ts"; -import { InitiativeTraceData } from "@actor/initiative.ts"; -import { ActorAlliance } from "@actor/types.ts"; -import { Rarity, ValueAndMax } from "@module/data.ts"; -import { AutoChangeEntry } from "@module/rules/rule-element/ae-like.ts"; -import { PerceptionTraceData } from "@system/statistic/perception.ts"; -import { ArmyPF2e } from "./document.ts"; -import { ArmyType } from "./types.ts"; -import fields = foundry.data.fields; - -declare class ArmySystemData extends ActorSystemModel { - static defineSchema(): ArmySystemSchema; -} -interface ArmySystemData extends ActorSystemModel, ModelPropsFromSchema { - attributes: ModelPropsFromSchema & { - hp: { - max: number; - negativeHealing: boolean; - unrecoverable: number; - details: string; - }; - immunities: Immunity[]; - weaknesses: Weakness[]; - resistances: Resistance[]; - flanking: never; - }; - initiative: InitiativeTraceData; - details: ModelPropsFromSchema & { - alliance: ActorAlliance; - }; - perception: Pick; - traits: ModelPropsFromSchema & { - size?: never; - }; - resources: { - ammunition: ValueAndMax; - potions: ValueAndMax; - } & Record; - /** An audit log of automatic, non-modifier changes applied to various actor data nodes */ - autoChanges: Record; -} -type ArmySystemSchema = Omit & { - ac: fields.SchemaField<{ - value: fields.NumberField; - potency: fields.NumberField; - }>; - attributes: fields.SchemaField; - details: fields.SchemaField; - consumption: fields.NumberField; - scouting: fields.NumberField; - recruitmentDC: fields.NumberField; - saves: fields.SchemaField<{ - maneuver: fields.NumberField; - morale: fields.NumberField; - }>; - weapons: fields.SchemaField<{ - ranged: fields.SchemaField, ModelPropsFromSchema, true, true, true>; - melee: fields.SchemaField, ModelPropsFromSchema, true, true, true>; - }>; - resources: fields.SchemaField<{ - /** How often this army can use ranged attacks */ - ammunition: fields.SchemaField<{ - value: fields.NumberField; - }>; - potions: fields.SchemaField<{ - value: fields.NumberField; - }>; - }>; - traits: fields.SchemaField; -}; -type ArmyAttributesSchema = { - hp: fields.SchemaField<{ - value: fields.NumberField; - temp: fields.NumberField; - max: fields.NumberField; - routThreshold: fields.NumberField; - }>; -}; -type ArmyDetailsSchema = { - level: fields.SchemaField<{ - value: fields.NumberField; - }>; -}; -type ArmyTraitsSchema = { - value: fields.ArrayField>; - rarity: fields.StringField; - type: fields.StringField; -}; -type ArmyWeaponSchema = { - name: fields.StringField; - potency: fields.NumberField; -}; -type ArmySystemSource = SourceFromSchema & { - attributes: { - immunities?: ImmunitySource[]; - weaknesses?: WeaknessSource[]; - resistances?: ResistanceSource[]; - flanking: never; - hp: { - details: string; - }; - }; - /** Legacy location of `MigrationRecord` */ - schema?: ActorSystemSource["schema"]; -}; -type ArmySource = BaseActorSourcePF2e<"army", ArmySystemSource>; -export { ArmySystemData }; -export type { ArmySource }; diff --git a/types/src/module/actor/army/document.d.ts b/types/src/module/actor/army/document.d.ts deleted file mode 100644 index f7ec2a0c9..000000000 --- a/types/src/module/actor/army/document.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -import { FeatGroup } from "@actor/character/feats/index.ts"; -import { Kingdom } from "@actor/party/kingdom/model.ts"; -import { type CampaignFeaturePF2e } from "@item"; -import type { ItemSourcePF2e, ItemType } from "@item/base/data/index.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { TokenDocumentPF2e } from "@scene/index.ts"; -import { ArmorStatistic, Statistic, StatisticDifficultyClass } from "@system/statistic/index.ts"; -import { ActorPF2e, type ActorUpdateOperation, type HitPointsSummary } from "../base.ts"; -import type { ArmySource, ArmySystemData } from "./data.ts"; -import type { ArmyStrike } from "./types.ts"; - -declare class ArmyPF2e extends ActorPF2e { - scouting: Statistic; - maneuver: Statistic; - morale: Statistic; - tactics: FeatGroup; - bonusTactics: FeatGroup; - strikes: Record; - get allowedItemTypes(): (ItemType | "physical")[]; - get underRoutThreshold(): boolean; - /** Gets the active kingdom. Later this should be configurable based on alliance */ - get kingdom(): Kingdom | null; - get maxTactics(): number; - get strongSave(): "maneuver" | "morale"; - prepareData(): void; - prepareBaseData(): void; - /** Run rule elements */ - prepareEmbeddedDocuments(): void; - prepareDerivedData(): void; - usePotion(): Promise; - prepareArmyStrike(type: "melee" | "ranged"): ArmyStrike | null; - /** Updates the army's level, scaling all attributes that are intended to scale as the army levels up */ - updateLevel(newLevel: number): Promise; - /** Prevent addition of invalid tactic types */ - checkItemValidity(source: PreCreate): boolean; - getStatistic(slug: string): Statistic | null; - _preUpdate(changed: DeepPartial, operation: ActorUpdateOperation, user: UserPF2e): Promise; - _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface ArmyPF2e extends ActorPF2e { - readonly _source: ArmySource; - armorClass: StatisticDifficultyClass; - system: ArmySystemData; - get hitPoints(): HitPointsSummary; -} -export { ArmyPF2e }; diff --git a/types/src/module/actor/army/sheet.d.ts b/types/src/module/actor/army/sheet.d.ts deleted file mode 100644 index 035046e5c..000000000 --- a/types/src/module/actor/army/sheet.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -/// -/// -/// -import { ActorSheetPF2e, SheetClickActionHandlers } from "@actor/sheet/base.ts"; -import { ActorSheetDataPF2e } from "@actor/sheet/data-types.ts"; -import { ItemSummaryRenderer } from "@actor/sheet/item-summary-renderer.ts"; -import { CampaignFeaturePF2e, ItemPF2e } from "@item"; -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { DropCanvasItemDataPF2e } from "@module/canvas/drop-canvas-data.ts"; -import { AdjustedValue } from "@module/sheet/helpers.ts"; -import type { ArmyPF2e } from "./document.ts"; - -declare class ArmySheetPF2e extends ActorSheetPF2e { - #private; - /** Basic war actions are sheet data. Note that they cannot ever work with rule elements */ - basicWarActions: CampaignFeaturePF2e[]; - itemRenderer: ArmyItemRenderer; - static get defaultOptions(): ActorSheetOptions; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; - protected _onDropItem(event: DragEvent, data: DropCanvasItemDataPF2e): Promise; - /** Handle a drop event for an existing Owned Item to sort that item */ - protected _onSortItem(event: DragEvent, itemSource: ItemSourcePF2e): Promise; -} -declare class ArmyItemRenderer extends ItemSummaryRenderer { - protected getItemFromElement(element: HTMLElement): Promise; -} -interface ArmySheetData extends ActorSheetDataPF2e { - ac: { - value: number; - breakdown: string; - adjustmentClass: string | null; - }; - consumption: AdjustedValue; - hitPoints: { - value: number; - max: AdjustedValue; - routThreshold: AdjustedValue; - }; - linked: boolean; - armyTypes: Record; - rarityTraits: Record; - saves: ArmySaveSheetData[]; - basicWarActions: CampaignFeaturePF2e[]; - warActions: CampaignFeaturePF2e[]; -} -interface ArmySaveSheetData { - slug: string; - label: string; - mod: number; - breakdown: string; - adjustmentClass: string | null; -} -export { ArmySheetPF2e }; diff --git a/types/src/module/actor/army/types.d.ts b/types/src/module/actor/army/types.d.ts deleted file mode 100644 index 8ad0b36f7..000000000 --- a/types/src/module/actor/army/types.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { DamageRollFunction, RollFunction } from "@actor/data/base.ts"; -import { AttackRollParams } from "@system/rolls.ts"; -import { ARMY_TYPES } from "./values.ts"; - -/** Data for an army strike. Deals 1 damage on a hit, 2 on a crit (usually) */ -interface ArmyStrike { - slug: string; - label: string; - type: "strike"; - /** The glyph for this strike (how many actions it takes, reaction, etc). */ - glyph: string; - /** Roll to attack with the given strike (with no MAP; see `variants` for MAPs.) */ - variants: { - mod: number; - roll: RollFunction; - }[]; - damage: DamageRollFunction; - critical: DamageRollFunction; -} -type ArmyType = (typeof ARMY_TYPES)[number]; -export type { ArmyStrike, ArmyType }; diff --git a/types/src/module/actor/army/values.d.ts b/types/src/module/actor/army/values.d.ts deleted file mode 100644 index 2e3e52f00..000000000 --- a/types/src/module/actor/army/values.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { AbilityTrait } from "@item/ability/types.ts"; -import type { KingmakerTrait } from "@item/campaign-feature/types.ts"; - -declare const BASIC_WAR_ACTIONS_FOLDER = "Vqp8b64uH35zkncy"; -declare const ARMY_TYPES: readonly ["infantry", "cavalry", "siege", "skirmisher"]; -declare const ARMY_STATS: { - scouting: number[]; - standardDC: number[]; - ac: number[]; - strongSave: number[]; - weakSave: number[]; - attack: number[]; - maxTactics: number[]; -}; -interface ArmyGearData { - img: string; - name: string; - traits: (KingmakerTrait | AbilityTrait)[]; - description: string; - price?: number; - level?: number; - ranks?: { - name: string; - description: string; - price: number; - level: number; - }[]; -} -type ArmyGearType = "melee" | "ranged" | "additional-melee" | "additional-ranged" | "potions" | "armor"; -declare function getArmyGearData(): Record; -export { ARMY_STATS, ARMY_TYPES, BASIC_WAR_ACTIONS_FOLDER, getArmyGearData }; diff --git a/types/src/module/actor/base.d.ts b/types/src/module/actor/base.d.ts deleted file mode 100644 index 7cef519a8..000000000 --- a/types/src/module/actor/base.d.ts +++ /dev/null @@ -1,331 +0,0 @@ -import { - ActorAlliance, - ActorDimensions, - ActorInstances, - ApplyDamageParams, - AuraData, - EmbeddedItemInstances, - SaveType, -} from "@actor/types.ts"; -import type { AbstractEffectPF2e, ConditionPF2e, ContainerPF2e, PhysicalItemPF2e, ShieldPF2e } from "@item"; -import { ItemPF2e } from "@item"; -import type { ItemSourcePF2e, ItemType, PhysicalItemSource } from "@item/base/data/index.ts"; -import type { ConditionKey, ConditionSlug, ConditionSource } from "@item/condition/index.ts"; -import type { EffectSource } from "@item/effect/data.ts"; -import { ActiveEffectPF2e } from "@module/active-effect.ts"; -import type { TokenPF2e } from "@module/canvas/index.ts"; -import type { AppliedDamageFlag } from "@module/chat-message/index.ts"; -import type { Size } from "@module/data.ts"; -import { CombatantPF2e, EncounterPF2e } from "@module/encounter/index.ts"; -import type { RuleElementSynthetics } from "@module/rules/index.ts"; -import type { RuleElementPF2e } from "@module/rules/rule-element/base.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import type { ScenePF2e } from "@scene/document.ts"; -import { TokenDocumentPF2e } from "@scene/token-document/document.ts"; -import type { DamageType } from "@system/damage/types.ts"; -import type { - ArmorStatistic, - PerceptionStatistic, - Statistic, - StatisticDifficultyClass, -} from "@system/statistic/index.ts"; -import { EnrichmentOptionsPF2e } from "@system/text-editor.ts"; -import { ActorConditions } from "./conditions.ts"; -import { Abilities, VisionLevel } from "./creature/data.ts"; -import type { GetReachParameters, ModeOfBeing, ResourceData } from "./creature/types.ts"; -import { ActorFlagsPF2e, ActorSystemData, PrototypeTokenPF2e, RollOptionFlags } from "./data/base.ts"; -import type { ActorSourcePF2e } from "./data/index.ts"; -import type { ActorInitiative } from "./initiative.ts"; -import { ActorInventory } from "./inventory/index.ts"; -import type { ActorSheetPF2e } from "./sheet/base.ts"; -import type { ActorSpellcasting } from "./spellcasting.ts"; -import type { ActorRechargeData, ActorType } from "./types.ts"; - -/** - * Extend the base Actor class to implement additional logic specialized for PF2e. - * @category Actor - */ -declare class ActorPF2e extends Actor { - /** Has this document completed `DataModel` initialization? */ - initialized: boolean; - /** A UUIDv5 hash digest of the foundry UUID */ - signature: string; - /** Handles rolling initiative for the current actor */ - initiative: ActorInitiative | null; - /** A separate collection of owned physical items for convenient access */ - inventory: ActorInventory; - armorClass: StatisticDifficultyClass | null; - /** A separate collection of owned spellcasting entries for convenience */ - spellcasting: ActorSpellcasting | null; - /** Rule elements drawn from owned items */ - rules: RuleElementPF2e[]; - synthetics: RuleElementSynthetics; - /** Saving throw statistics */ - saves?: { - [K in SaveType]?: Statistic; - }; - /** Data from rule elements for auras this actor may be emanating */ - auras: Map; - /** A collection of this actor's conditions */ - conditions: ActorConditions; - perception?: PerceptionStatistic; - /** Skill checks for the actor if supported by the actor type */ - skills?: Record>; - /** A cached copy of `Actor#itemTypes`, lazily regenerated every data preparation cycle */ - private _itemTypes; - constructor(data: PreCreate, context?: DocumentConstructionContext); - static getDefaultArtwork(actorData: foundry.documents.ActorSource): { - img: ImageFilePath; - texture: { - src: ImageFilePath | VideoFilePath; - }; - }; - /** Cache the return data before passing it to the caller */ - get itemTypes(): EmbeddedItemInstances; - get allowedItemTypes(): (ItemType | "physical")[]; - /** Returns true if this actor allows synthetic tokens to be created */ - get allowSynthetics(): boolean; - /** The UUID of the actor from which this one was copied (or is identical to if a compendium actor) **/ - get sourceId(): ActorUUID | null; - /** The recorded schema version of this actor, updated after each data migration */ - get schemaVersion(): number | null; - /** Get an active GM or, failing that, a player who can update this actor */ - get primaryUpdater(): UserPF2e | null; - get abilities(): Abilities | null; - /** Shortcut to system-data attributes */ - get attributes(): this["system"]["attributes"]; - get hitPoints(): HitPointsSummary | null; - get traits(): Set; - get level(): number; - get size(): Size; - /** - * With the exception of vehicles, actor heights aren't specified. For the purpose of three-dimensional - * token-distance measurement, however, the system will generally treat actors as cubes. - */ - get dimensions(): ActorDimensions; - /** - * Whether the actor can see, given its token placement in the current scene. - * A meaningful implementation is found in `CreaturePF2e`. - */ - get canSee(): boolean; - /** Whether this actor can execute actions: meaningful implementations are found in `CreaturePF2e`. */ - get canAct(): boolean; - /** Whether this actor can attack: meaningful implementations are found in `CreaturePF2e` and `HazardPF2e`. */ - get canAttack(): boolean; - get isDead(): boolean; - get modeOfBeing(): ModeOfBeing; - get visionLevel(): VisionLevel; - /** Does this creature emit sound? False unless a subclass overrides it */ - get emitsSound(): boolean; - get rollOptions(): RollOptionFlags; - /** Get the actor's held shield. Meaningful implementation in `CreaturePF2e`'s override. */ - get heldShield(): ShieldPF2e | null; - /** The actor's hardness: zero with the exception of some hazards and NPCs */ - get hardness(): number; - /** Most actor types can host rule elements */ - get canHostRuleElements(): boolean; - get alliance(): ActorAlliance; - get combatant(): CombatantPF2e | null; - /** Add effect icons from effect items and rule elements */ - get temporaryEffects(): ActiveEffectPF2e[]; - /** A means of checking this actor's type without risk of circular import references */ - isOfType(...types: T[]): this is ActorInstances[T]; - /** Whether this actor is an ally of the provided actor */ - isAllyOf(actor: ActorPF2e): boolean; - /** Whether this actor is an enemy of the provided actor */ - isEnemyOf(actor: ActorPF2e): boolean; - /** Whether this actor is immune to an effect of a certain type */ - isImmuneTo(effect: AbstractEffectPF2e | ConditionSource | EffectSource | ConditionSlug): boolean; - /** Whether this actor is affected by damage of a certain type despite lack of explicit immunity */ - isAffectedBy(damage: DamageType | ConditionPF2e): boolean; - /** Checks if the item can be added to this actor by checking the valid item types. */ - checkItemValidity(source: PreCreate): boolean; - /** Get (almost) any statistic by slug: handling expands in `ActorPF2e` subclasses */ - getStatistic(slug: string): Statistic | null; - /** Returns a resource by slug or by key */ - getResource(_resource: string): ResourceData | null; - /** Get roll options from this actor's effects, traits, and other properties */ - getSelfRollOptions(prefix?: "self" | "target" | "origin"): string[]; - /** The actor's reach: a meaningful implementation is found in `CreaturePF2e` and `HazardPF2e`. */ - getReach(_options: GetReachParameters): number; - /** Create a clone of this actor to recalculate its statistics with ephemeral effects and roll options included */ - getContextualClone(rollOptions: string[], ephemeralEffects?: (ConditionSource | EffectSource)[]): this; - /** Apply effects from an aura: will later be expanded to handle effects from measured templates */ - applyAreaEffects(aura: AuraData, origin: { - actor: ActorPF2e; - token: TokenDocumentPF2e; - }): Promise; - /** Recharges all abilities after some time has elapsed. */ - recharge(options: RechargeOptions): Promise>; - /** Don't allow the user to create in-development actor types. */ - static createDialog(this: ConstructorOf, data?: Record, context?: { - parent?: TDocument["parent"]; - pack?: Collection | null; - types?: ActorType[]; - } & Partial): Promise; - /** - * As of Foundry 0.8: All subclasses of ActorPF2e need to use this factory method rather than having their own - * overrides, since Foundry itself will call `ActorPF2e.create` when a new actor is created from the sidebar. - */ - static createDocuments(this: ConstructorOf, data?: (TDocument | PreCreate)[], operation?: Partial>): Promise; - static updateDocuments(this: ConstructorOf, updates?: Record[], operation?: Partial>): Promise; - /** Set module art if available */ - protected _initializeSource(source: Record, options?: DocumentConstructionContext): this["_source"]; - protected _initialize(options?: Record): void; - /** - * Never prepare data except as part of `DataModel` initialization. If embedded, don't prepare data if the parent is - * not yet initialized. See https://github.com/foundryvtt/foundryvtt/issues/7987 - * @todo remove in V13 - */ - prepareData(): void; - /** Prepare baseline ephemeral data applicable to all actor types */ - prepareBaseData(): void; - /** Prepare the physical-item collection on this actor, item-sibling data, and rule elements */ - prepareEmbeddedDocuments(): void; - /** Prepare data among owned items as well as actor-data preparation performed by items */ - protected prepareDataFromItems(): void; - protected prepareRuleElements(): RuleElementPF2e[]; - /** Collect all rule element output */ - protected prepareSynthetics(): void; - /** Set traits as roll options */ - prepareDerivedData(): void; - /** Set defaults for this actor's prototype token */ - private preparePrototypeToken; - /** Toggle the provided roll option (swapping it from true to false or vice versa). */ - toggleRollOption(domain: string, option: string, value?: boolean): Promise; - toggleRollOption(domain: string, option: string, itemId?: string | null, value?: boolean, suboption?: string | null): Promise; - /** - * Handle how changes to a Token attribute bar are applied to the Actor. - * - * If the attribute bar is for hp and the change is in delta form, defer to the applyDamage method. Otherwise, do - * nothing special. - * @param attribute The attribute path - * @param value The target attribute value - * @param isDelta Whether the number represents a relative change (true) or an absolute change (false) - * @param isBar Whether the new value is part of an attribute bar, or just a direct value - */ - modifyTokenAttribute(attribute: string, value: number, isDelta?: boolean, isBar?: boolean): Promise; - /** - * Apply rolled dice damage to the token or tokens which are currently controlled. - * This allows for damage to be scaled by a multiplier to account for healing, critical hits, or resistance - * @param finalDamage The amount of damage inflicted - * @param token The applicable token for this actor - * @param shieldBlockRequest Whether the user has toggled the Shield Block button - */ - applyDamage({ damage, token, item, rollOptions, skipIWR, shieldBlockRequest, breakdown, notes, outcome, final, }: ApplyDamageParams): Promise; - /** Revert applied actor damage based on the AppliedDamageFlag stored in a damage chat message */ - undoDamage(appliedDamage: AppliedDamageFlag): Promise; - /** Can a user loot this actor? Same as update modification permission but overridable by subclasses */ - isLootableBy(user: UserPF2e): boolean; - /** - * Moves an item to another actor's inventory. - * @param targetActor Instance of actor to be receiving the item. - * @param item Instance of the item being transferred. - * @param quantity Number of items to move. - * @param containerId Id of the container that will contain the item. - * @return The target item, if the transfer is successful, or otherwise `null`. - */ - transferItemToActor(targetActor: ActorPF2e, item: ItemPF2e, quantity: number, containerId?: string, newStack?: boolean, isPurchase?: boolean | null): Promise | null>; - addToInventory(itemSource: PhysicalItemSource, container?: ContainerPF2e, newStack?: boolean): Promise | null>; - /** Move an item into the inventory into or out of a container */ - stowOrUnstow(item: PhysicalItemPF2e, container?: ContainerPF2e): Promise; - /** Determine actor updates for applying damage/healing across temporary hit points, stamina, and then hit points */ - private calculateHealthDelta; - /** - * Retrieve all roll option from the requested domains. Micro-optimized in an excessively verbose for-loop. - * @param domains The domains of discourse from which to pull options. Always includes the "all" domain. - */ - getRollOptions(domains?: string[]): string[]; - /** This allows @actor.level and such to work for macros and inline rolls */ - getRollData(): NonNullable; - /** Gets an active condition on the actor or a list of conditions sorted by descending value. */ - getCondition(slugOrKey: ConditionKey, { all }: { - all: true; - }): ConditionPF2e[]; - getCondition(slugOrKey: ConditionKey, { all }: { - all?: false; - }): ConditionPF2e | null; - getCondition(slugOrKey: ConditionKey): ConditionPF2e | null; - getCondition(slugOrKey: ConditionKey, { all }: { - all?: boolean; - }): ConditionPF2e[] | ConditionPF2e | null; - /** - * Does this actor have any of the provided condition? - * @param slugs Slug(s) of the queried condition(s) - */ - hasCondition(...slugs: ConditionSlug[]): boolean; - /** Decrease the value of condition or remove it entirely */ - decreaseCondition(conditionSlug: ConditionKey | ConditionPF2e, { forceRemove }?: { - forceRemove: boolean; - }): Promise; - /** Increase a valued condition, or create a new one if not present */ - increaseCondition(conditionSlug: ConditionSlug | ConditionPF2e, { max, value }?: { - max?: number; - value?: number | null; - }): Promise | null>; - /** Toggle a condition as present or absent. If a valued condition is toggled on, it will be set to a value of 1. */ - toggleCondition(conditionSlug: ConditionSlug, options?: { - active?: boolean; - }): Promise; - /** Redirect to `toggleCondition` if possible. */ - toggleStatusEffect(statusId: string, options?: { - active?: boolean; - overlay?: boolean; - }): Promise>; - /** Assess and pre-process this JSON data, ensuring it's importable and fully migrated */ - importFromJSON(json: string): Promise; - protected _applyDefaultTokenSettings(data: this["_source"], options?: { - fromCompendium?: boolean; - }): DeepPartial; - protected _preUpdate(changed: DeepPartial, operation: ActorUpdateOperation, user: UserPF2e): Promise; - protected _onUpdate(changed: DeepPartial, operation: ActorUpdateOperation, userId: string): void; - /** Unregister all effects possessed by this actor */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface ActorPF2e extends Actor { - flags: ActorFlagsPF2e; - readonly _source: ActorSourcePF2e; - readonly effects: foundry.abstract.EmbeddedCollection>; - readonly items: foundry.abstract.EmbeddedCollection>; - system: ActorSystemData; - prototypeToken: PrototypeTokenPF2e; - get sheet(): ActorSheetPF2e; - update(data: Record, operation?: Partial>): Promise; - getActiveTokens(linked: boolean | undefined, document: true): TokenDocumentPF2e[]; - getActiveTokens(linked?: boolean | undefined, document?: false): TokenPF2e>[]; - getActiveTokens(linked?: boolean, document?: boolean): TokenDocumentPF2e[] | TokenPF2e>[]; - /** See implementation in class */ - createEmbeddedDocuments(embeddedName: "ActiveEffect", data: PreCreate[], operation?: Partial>): Promise[]>; - createEmbeddedDocuments(embeddedName: "Item", data: PreCreate[], operation?: Partial>): Promise[]>; - createEmbeddedDocuments(embeddedName: "ActiveEffect" | "Item", data: PreCreate[] | PreCreate[], operation?: Partial>): Promise[] | ItemPF2e[]>; - /** See implementation in class */ - updateEmbeddedDocuments(embeddedName: "ActiveEffect", updateData: EmbeddedDocumentUpdateData[], operation?: Partial>): Promise[]>; - updateEmbeddedDocuments(embeddedName: "Item", updateData: EmbeddedDocumentUpdateData[], operation?: Partial>): Promise[]>; - updateEmbeddedDocuments(embeddedName: "ActiveEffect" | "Item", updateData: EmbeddedDocumentUpdateData[], operation?: Partial>): Promise[] | ItemPF2e[]>; - /** Added as debounced method */ - checkAreaEffects(): void; -} -interface HitPointsSummary { - value: number; - max: number; - temp: number; - unrecoverable: number; - negativeHealing: boolean; -} -interface ActorUpdateOperation extends DatabaseUpdateOperation { - damageTaken?: number; - finePowder?: boolean; - damageUndo?: boolean; -} -interface EmbeddedItemUpdateOperation extends DatabaseUpdateOperation { - checkHP?: boolean; -} -interface RechargeOptions { - /** How much time elapsed as a delta operation */ - duration: "turn" | "round" | "day"; - commit?: boolean; -} -/** A `Proxy` to to get Foundry to construct `ActorPF2e` subclasses */ -declare const ActorProxyPF2e: typeof ActorPF2e; -export { ActorPF2e, ActorProxyPF2e }; -export type { ActorUpdateOperation, HitPointsSummary }; diff --git a/types/src/module/actor/character/apps/attack-popout.d.ts b/types/src/module/actor/character/apps/attack-popout.d.ts deleted file mode 100644 index acf70fc12..000000000 --- a/types/src/module/actor/character/apps/attack-popout.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -/// -/// -/// -import type { EffectTrait } from "@item/abstract-effect/types.ts"; -import type { CharacterStrike } from "../data.ts"; -import type { CharacterPF2e } from "../document.ts"; -import { type CharacterSheetData, CharacterSheetPF2e } from "../sheet.ts"; - -declare class AttackPopout extends CharacterSheetPF2e { - #private; - type: "strike" | "blast"; - get template(): string; - get id(): string; - static get defaultOptions(): ActorSheetOptions; - get label(): string | null; - constructor(object: TActor, options: AttackPopoutOptions); - getData(options: ActorSheetOptions): Promise>; - activateListeners($html: JQuery): void; - protected _getHeaderButtons(): ApplicationHeaderButton[]; -} -interface BaseAttackPopoutOptions extends Partial { - type: string; -} -interface StrikePopoutOptions extends BaseAttackPopoutOptions { - type: "strike"; - strikeSlug?: string; - strikeItemId?: string; -} -interface BlastPopoutOptions extends BaseAttackPopoutOptions { - type: "blast"; - elementTrait?: EffectTrait; -} -type AttackPopoutOptions = StrikePopoutOptions | BlastPopoutOptions; -interface AttackPopoutData extends CharacterSheetData { - strike?: CharacterStrike; - strikeIndex?: number; - popoutType: AttackPopoutOptions["type"]; -} -export { AttackPopout }; diff --git a/types/src/module/actor/character/apps/attribute-builder.d.ts b/types/src/module/actor/character/apps/attribute-builder.d.ts deleted file mode 100644 index 7011e9cc8..000000000 --- a/types/src/module/actor/character/apps/attribute-builder.d.ts +++ /dev/null @@ -1,77 +0,0 @@ -/// -/// -/// -import type { CharacterPF2e } from "@actor"; -import type { AttributeString } from "@actor/types.ts"; -import type { AncestryPF2e, BackgroundPF2e, ClassPF2e } from "@item"; - -declare class AttributeBuilder extends Application { - #private; - actor: CharacterPF2e; - constructor(actor: CharacterPF2e); - static get defaultOptions(): ApplicationOptions; - get id(): string; - getData(options?: Partial): Promise; - /** Maintain focus on manual entry inputs */ - protected _render(force?: boolean, options?: RenderOptions): Promise; - /** Remove this application from the actor's apps on close */ - close(options?: { - force?: boolean; - }): Promise; - activateListeners($html: JQuery): void; -} -interface AttributeBuilderSheetData { - actor: CharacterPF2e; - attributeModifiers: Record; - manualKeyAttribute: AttributeString; - attributes: Record; - ancestry: AncestryPF2e | null; - background: BackgroundPF2e | null; - class: ClassPF2e | null; - manual: boolean; - ancestryBoosts: AncestryBoosts | null; - voluntaryFlaws: VoluntaryFlaws | null; - backgroundBoosts: BackgroundBoosts | null; - keyOptions: AttributeString[] | null; - levelBoosts: LevelBoostData[]; - legacyFlaws: boolean; -} -interface BoostFlawState { - ability: string; - flaw?: BuilderButton; - boost?: BuilderButton; -} -interface BuilderButton { - selected?: boolean; - locked?: boolean; - disabled?: boolean; - partial?: boolean; - second?: Omit; -} -interface BoostFlawRow { - buttons: Record; - remaining: number; - isApex?: boolean; -} -interface AncestryBoosts extends BoostFlawRow { - alternate: boolean; - labels: string[]; - flawLabels: string[]; -} -interface VoluntaryFlaws extends BoostFlawRow { - voluntaryBoostsRemaining: number; - labels: string[]; -} -interface BackgroundBoosts extends BoostFlawRow { - labels: string[]; - tooltip: string | null; -} -interface LevelBoostData extends BoostFlawRow { - level: number; - eligible: boolean; - minLevel: number; -} -export { AttributeBuilder, type BoostFlawState }; diff --git a/types/src/module/actor/character/automatic-bonus-progression.d.ts b/types/src/module/actor/character/automatic-bonus-progression.d.ts deleted file mode 100644 index 6ea399108..000000000 --- a/types/src/module/actor/character/automatic-bonus-progression.d.ts +++ /dev/null @@ -1,27 +0,0 @@ -import type { ActorPF2e, CharacterPF2e } from "@actor"; -import type { ArmorPF2e, WeaponPF2e } from "@item"; -import { ZeroToThree } from "@module/data.ts"; -import type { FlatModifierRuleElement } from "@module/rules/rule-element/flat-modifier.ts"; -declare class AutomaticBonusProgression { - /** Whether the ABP variant is enabled and also not selectively disabled for a particular actor */ - static isEnabled(actor: ActorPF2e | null): boolean; - /** Get striking damage dice according to character level */ - static getStrikingDice(level: number): ZeroToThree; - /** - * @param level The name of this collection of statistic modifiers. - * @param synthetics All relevant modifiers for this statistic. - */ - static concatModifiers(actor: CharacterPF2e): void; - /** Remove stored runes from specific magic weapons or otherwise set prior to enabling ABP */ - static cleanupRunes(item: ArmorPF2e | WeaponPF2e): void; - /** - * Determine whether a rule element can be applied to an actor. - * @param rule The rule element to assess - * @returns Whether the rule element is to be ignored - */ - static suppressRuleElement(rule: FlatModifierRuleElement, value: number): boolean; - static getAttackPotency(level: number): ZeroToThree; - static getDefensePotency(level: number): ZeroToThree; - private static abpValues; -} -export { AutomaticBonusProgression }; diff --git a/types/src/module/actor/character/config.d.ts b/types/src/module/actor/character/config.d.ts deleted file mode 100644 index 9c53e6854..000000000 --- a/types/src/module/actor/character/config.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { CreatureConfig, CreatureConfigData } from "@actor/creature/config.ts"; -import { CharacterPF2e } from "./document.ts"; -export declare class CharacterConfig extends CreatureConfig { - getData(options?: Partial): Promise; -} -interface PCConfigData extends CreatureConfigData { - showBasicUnarmed: boolean; -} -export {}; diff --git a/types/src/module/actor/character/crafting/ability.d.ts b/types/src/module/actor/character/crafting/ability.d.ts deleted file mode 100644 index 60edc044b..000000000 --- a/types/src/module/actor/character/crafting/ability.d.ts +++ /dev/null @@ -1,83 +0,0 @@ -import type { CharacterPF2e } from "@actor"; -import { ResourceData } from "@actor/creature/index.ts"; -import { PhysicalItemPF2e } from "@item"; -import { PhysicalItemSource } from "@item/base/data/index.ts"; -import { Predicate } from "@system/predication.ts"; -import type { - CraftableItemDefinition, - CraftingAbilityData, - CraftingFormula, - PreparedFormula, - PreparedFormulaData, -} from "./types.ts"; - -declare class CraftingAbility implements CraftingAbilityData { - #private; - /** This crafting ability's parent actor */ - actor: CharacterPF2e; - slug: string; - /** A label for this crafting entry to display on sheets */ - label: string; - resource: string | null; - preparedFormulaData: PreparedFormulaData[]; - isAlchemical: boolean; - isDailyPrep: boolean; - isPrepared: boolean; - maxSlots: number; - fieldDiscovery: Predicate | null; - fieldDiscoveryBatchSize: number; - batchSize: number; - maxItemLevel: number; - /** All craftable item definitions, sorted from biggest batch to smallest batch size */ - craftableItems: CraftableItemDefinition[]; - constructor(actor: CharacterPF2e); - /** Initializes this crafting ability with data. Call during actor data preparation. */ - initialize(data: CraftingAbilityData): void; - getPreparedCraftingFormulas(): Promise; - getSheetData(): Promise; - calculateResourceCost(): Promise; - /** Returns true if the item can be created by this ability, which requires it to pass predication and be of sufficient level */ - canCraft(item: PhysicalItemPF2e, { warn }?: { - warn?: boolean | undefined; - }): boolean; - prepareFormula(formula: CraftingFormula): Promise; - unprepareFormula(indexOrUuid: number | ItemUUID): Promise; - setFormulaQuantity(index: number, value: "increase" | "decrease" | number): Promise; - toggleFormulaExpended(index: number, value?: boolean): Promise; - toggleSignatureItem(itemUUID: string): Promise; - updateFormulas(formulas: PreparedFormulaData[], operation?: Partial> | undefined): Promise; - craft(itemOrUUIDOrIndex: PhysicalItemPF2e | ItemUUID | number, { consume, destination }?: CraftParameters): Promise; - /** Returns what items should be created by this ability during daily preparation, and what the resource expenditure should be */ - calculateDailyCrafting(): Promise; -} -interface CraftingAbilitySheetData { - slug: string; - label: string; - isAlchemical: boolean; - isPrepared: boolean; - isDailyPrep: boolean; - /** This is true if we do not have sufficient slots or resources to craft this ability */ - insufficient: boolean; - maxSlots: number; - maxItemLevel: number; - resource: ResourceData | null; - resourceCost: number; - remainingSlots: number; - prepared: PreparedFormula[]; -} -interface DailyCraftingResult { - items: PreCreate[]; - resource: { - slug: string; - cost: number; - } | null; - /** True if this item is internally insufficient. It does not compare with other crafting abilties */ - insufficient: boolean; -} -interface CraftParameters { - /** If set to true, will craft by consuming the required resource */ - consume?: boolean; - destination?: "hand"; -} -export { CraftingAbility }; -export type { CraftingAbilitySheetData, PreparedFormulaData }; diff --git a/types/src/module/actor/character/crafting/crafting.d.ts b/types/src/module/actor/character/crafting/crafting.d.ts deleted file mode 100644 index 1a790a548..000000000 --- a/types/src/module/actor/character/crafting/crafting.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import type { CharacterPF2e } from "../document.ts"; -import { CraftingAbility } from "./ability.ts"; -import type { CraftingFormula } from "./types.ts"; - -/** Caches and performs operations on elements related to crafting */ -declare class CharacterCrafting { - #private; - actor: CharacterPF2e; - abilities: Collection; - constructor(actor: CharacterPF2e); - /** Initializes the crafting data. Must be called every data preparation */ - initialize(): void; - /** - * Retrieves all formulas this actor knows including their associated items. - * The result is cached until next data prep. - */ - getFormulas(): Promise; - /** Removes all infused items and un-expends all prepared items */ - resetDailyCrafting(): Promise; - performDailyCrafting(): Promise; -} -export { CharacterCrafting }; diff --git a/types/src/module/actor/character/crafting/helpers.d.ts b/types/src/module/actor/character/crafting/helpers.d.ts deleted file mode 100644 index 5214931f7..000000000 --- a/types/src/module/actor/character/crafting/helpers.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ConsumablePF2e, PhysicalItemPF2e } from "@item"; -import { CheckRoll } from "@system/check/index.ts"; -export declare function craftItem(item: PhysicalItemPF2e, itemQuantity: number, actor: ActorPF2e, infused?: boolean): Promise; -export declare function craftSpellConsumable(item: ConsumablePF2e, itemQuantity: number, actor: ActorPF2e): Promise; -export declare function renderCraftingInline(item: PhysicalItemPF2e, roll: Rolled, quantity: number, actor: ActorPF2e, free: boolean): Promise; diff --git a/types/src/module/actor/character/crafting/index.d.ts b/types/src/module/actor/character/crafting/index.d.ts deleted file mode 100644 index 2b200c1d5..000000000 --- a/types/src/module/actor/character/crafting/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { CraftingAbility, type CraftingAbilitySheetData } from "./ability.ts"; -export { CharacterCrafting } from "./crafting.ts"; -export { craftItem, craftSpellConsumable } from "./helpers.ts"; -export * from "./types.ts"; diff --git a/types/src/module/actor/character/crafting/types.d.ts b/types/src/module/actor/character/crafting/types.d.ts deleted file mode 100644 index 468502d04..000000000 --- a/types/src/module/actor/character/crafting/types.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { PhysicalItemPF2e } from "@item"; -import { Predicate, RawPredicate } from "@system/predication.ts"; - -interface CraftingFormulaData { - uuid: ItemUUID; -} -/** A formula prepared in a crafting ability, before the item has been loaded */ -interface PreparedFormulaData extends CraftingFormulaData { - quantity?: number; - expended?: boolean; - isSignatureItem?: boolean; -} -/** A crafting formula whose item has been loaded */ -interface CraftingFormula extends CraftingFormulaData { - item: PhysicalItemPF2e; - batchSize: number; - dc: number; -} -/** A formula prepared in a crafting ability whose item has been loaded */ -interface PreparedFormula extends Required, CraftingFormula { - /** The number of batches of this item being created. This is quantity divided by batch size */ - batches: number; -} -interface CraftingAbilityData { - slug: string; - resource: string | null; - label: string; - isAlchemical: boolean; - isDailyPrep: boolean; - isPrepared: boolean; - maxSlots: number | null; - craftableItems: CraftableItemDefinition[]; - fieldDiscovery?: RawPredicate | null; - batchSize: number; - fieldDiscoveryBatchSize?: number; - maxItemLevel: number; - preparedFormulaData: PreparedFormulaData[]; -} -interface CraftableItemDefinition { - predicate: Predicate; - batchSize?: number; -} -export type { CraftableItemDefinition, CraftingAbilityData, CraftingFormula, CraftingFormulaData, PreparedFormula, PreparedFormulaData, }; diff --git a/types/src/module/actor/character/data.d.ts b/types/src/module/actor/character/data.d.ts deleted file mode 100644 index be17ca7bc..000000000 --- a/types/src/module/actor/character/data.d.ts +++ /dev/null @@ -1,482 +0,0 @@ -import type { CraftingAbilityData, CraftingFormulaData } from "@actor/character/crafting/index.ts"; -import { - AbilityData, - BaseCreatureSource, - CreatureAttributes, - CreatureDetails, - CreatureDetailsSource, - CreatureLanguagesData, - CreaturePerceptionData, - CreatureResources, - CreatureSystemData, - CreatureSystemSource, - HeldShieldData, - SaveData, - SkillData, -} from "@actor/creature/data.ts"; -import { CreatureInitiativeSource, CreatureSpeeds, Language } from "@actor/creature/index.ts"; -import { - ActorAttributesSource, - ActorFlagsPF2e, - AttributeBasedTraceData, - HitPointsStatistic, - InitiativeData, - StrikeData, - TraitViewData, -} from "@actor/data/base.ts"; -import { AttributeString, MovementType, SaveType, SkillSlug } from "@actor/types.ts"; -import type { WeaponPF2e } from "@item"; -import { ArmorCategory } from "@item/armor/types.ts"; -import { ProficiencyRank } from "@item/base/data/index.ts"; -import { DeitySystemData } from "@item/deity/data.ts"; -import { DeityDomain } from "@item/deity/types.ts"; -import { BaseWeaponType, WeaponCategory, WeaponGroup } from "@item/weapon/types.ts"; -import { ValueAndMax, ZeroToFour } from "@module/data.ts"; -import { DamageType } from "@system/damage/types.ts"; -import type { Predicate } from "@system/predication.ts"; -import type { CharacterPF2e } from "./document.ts"; -import type { WeaponAuxiliaryAction } from "./helpers.ts"; -import type { CharacterSheetTabVisibility } from "./sheet.ts"; - -type CharacterSource = BaseCreatureSource<"character", CharacterSystemSource> & { - flags: DeepPartial; -}; -type CharacterFlags = ActorFlagsPF2e & { - pf2e: { - /** Has daily preparation crafting been completed for the day */ - dailyCraftingComplete?: boolean; - /** If applicable, the character's proficiency rank in their deity's favored weapon */ - favoredWeaponRank: number; - /** The highest number of damage dice among the character's equipped weapons and available unarmed attacks */ - highestWeaponDamageDice: number; - /** Whether items are crafted without consuming resources */ - freeCrafting: boolean; - /** Whether the alchemist's (and related dedications) Quick Alchemy ability is enabled */ - quickAlchemy: boolean; - /** Whether ABP should be disabled despite it being on for the world */ - disableABP?: boolean; - /** Which sheet tabs are displayed */ - sheetTabs: CharacterSheetTabVisibility; - /** Whether the basic unarmed attack is shown on the Actions tab */ - showBasicUnarmed: boolean; - /** The limit for each feat group that supports a custom limit. */ - featLimits: Record; - }; -}; -interface CharacterSystemSource extends CreatureSystemSource { - abilities: Record | null; - attributes: CharacterAttributesSource; - details: CharacterDetailsSource; - build?: CharacterBuildSource; - proficiencies?: { - attacks?: Record; - }; - skills: Partial>; - resources: CharacterResourcesSource; - initiative: CreatureInitiativeSource; - crafting?: { - formulas: CraftingFormulaData[]; - }; - /** Pathfinder Society Organized Play */ - pfs: PathfinderSocietyData; - perception?: never; - saves?: never; - traits?: never; -} -interface MartialProficiencySource { - rank: ZeroToFour; - custom?: boolean; -} -interface CharacterAttributesSource extends ActorAttributesSource { - hp: { - value: number; - temp: number; - /** Stamina points: present if Stamina variant is enabled */ - sp?: { - value: number; - }; - }; - speed: { - value: number; - otherSpeeds: { - type: Exclude; - value: number; - }[]; - }; -} -interface CharacterDetailsSource extends CreatureDetailsSource { - level: { - value: number; - }; - languages: CreatureLanguagesData; - /** The key ability which class saves (and other class-related things) scale off of. */ - keyability: { - value: AttributeString; - }; - /** How old the character is */ - age: { - value: string; - }; - /** Character height */ - height: { - value: string; - }; - /** Character weight */ - weight: { - value: string; - }; - /** Character gender/pronouns */ - gender: { - value: string; - }; - /** Character ethnicity */ - ethnicity: { - value: string; - }; - nationality: { - value: string; - }; - /** User-provided biography for their character */ - biography: CharacterBiography; - /** The amount of experience this character has. */ - xp: { - /** The current experience value. */ - value: number; - /** The minimum amount of experience (almost always '0'). */ - min: number; - /** The maximum amount of experience before level up (usually '1000', but may differ.) */ - max: number; - /** COMPUTED: The percentage completion of the current level (value / max). */ - pct: number; - }; -} -interface CharacterBiography { - /** HTML value */ - appearance: string; - /** HTML value */ - backstory: string; - birthPlace: string; - attitude: string; - beliefs: string; - edicts: string[]; - anathema: string[]; - likes: string; - dislikes: string; - catchphrases: string; - /** HTML value */ - campaignNotes: string; - /** HTML value */ - allies: string; - /** HTML value */ - enemies: string; - /** HTML value */ - organizations: string; - /** Visibility (to users with limited ownership of the PC) toggle states */ - visibility: { - appearance: boolean; - backstory: boolean; - personality: boolean; - campaign: boolean; - }; -} -interface CharacterBuildSource { - attributes?: AttributeBoostsSource; -} -interface AttributeBoostsSource { - /** Whether this PC's ability scores are being manually entered (aka custom) */ - manual: boolean; - boosts: { - 1?: AttributeString[]; - 5?: AttributeString[]; - 10?: AttributeString[]; - 15?: AttributeString[]; - 20?: AttributeString[]; - }; - /** Attribute Apex increase from Automatic Bonus Progression */ - apex?: AttributeString | null; -} -interface CharacterResourcesSource { - heroPoints: ValueAndMax; - focus?: { - value: number; - max?: never; - }; - crafting?: { - infusedReagents?: { - value: number; - }; - }; - /** Used in the variant stamina rules; a resource expended to regain stamina/hp. */ - resolve?: { - value: number; - }; -} -/** A Pathfinder Society Faction */ -type PFSFaction = "EA" | "GA" | "HH" | "VS" | "RO" | "VW"; -/** A Pathfinder Society School */ -type PFSSchool = "scrolls" | "spells" | "swords" | null; -/** PFS faction reputation values */ -type PathfinderSocietyReputation = Record; -/** Pathfinder Society Organized Play data fields */ -interface PathfinderSocietyData { - /** Number assigned to the player. */ - playerNumber: number | null; - /** Number assigned to the character. */ - characterNumber: number | null; - /** Is the character currently affected by a level bump? */ - levelBump: boolean; - /** Character's currently slotted faction */ - currentFaction: PFSFaction; - /** Character's Pathfinder school */ - school: PFSSchool; - /** Character's Reputation with all the factions */ - reputation: PathfinderSocietyReputation; -} -/** The raw information contained within the actor data object for characters. */ -interface CharacterSystemData extends Omit, CreatureSystemData { - /** The six primary attribute scores. */ - abilities: CharacterAbilities; - /** Character build data, currently containing attribute boosts and flaws */ - build: CharacterBuildData; - /** The three save types. */ - saves: CharacterSaves; - /** Various details about the character, such as level, experience, etc. */ - details: CharacterDetails; - attributes: CharacterAttributes; - perception: CharacterPerceptionData; - initiative: InitiativeData; - /** A catch-all for character proficiencies */ - proficiencies: { - /** Proficiencies in the four weapon categories as well as groups, base weapon types, etc. */ - attacks: Record & Record; - /** Proficiencies in the four armor categories as well as groups, base armor types, etc. */ - defenses: Record & Record; - /** Zero or more class DCs, used for saves related to class abilities. */ - classDCs: Record; - /** Spellcasting attack modifier and dc for all spellcasting */ - spellcasting: CharacterProficiency; - /** Aliased path components for use by rule element during property injection */ - aliases?: Record; - }; - /** Player skills, used for various skill checks. */ - skills: Record; - /** Special strikes which the character can take. */ - actions: CharacterStrike[]; - resources: CharacterResources; - /** Crafting-related data, including known formulas */ - crafting: CharacterCraftingData; - exploration: string[]; -} -type SourceOmission = "customModifiers" | "perception" | "resources" | "saves" | "traits"; -interface CharacterSkillData extends SkillData { - attribute: AttributeString; - /** The proficiency rank ("TEML") */ - rank: ZeroToFour; - /** Whether this skill is subject to an armor check penalty */ - armor: boolean; - /** Is this skill a Lore skill? */ - lore?: boolean; - /** If this is a lore skill, what item it came from */ - itemId: string | null; -} -interface CharacterAbilityData extends AbilityData { - /** An ability score prior to modification by items */ - base: number; -} -interface CharacterBuildData { - attributes: AttributeBoosts; - languages: LanguageBuildData; -} -interface LanguageBuildData extends ValueAndMax { - /** Specific languages granted by ancestry, feats, etc., that do not count against the character's maximum */ - granted: GrantedLanguage[]; -} -/** A language added by some freature (typically ancestry) that doesn't count against the character's maximum */ -interface GrantedLanguage { - slug: Language; - source: string; -} -/** - * Prepared system data for character ability scores. This is injected by ABC classes to complete it. - */ -interface AttributeBoosts extends AttributeBoostsSource { - /** Key ability score options drawn from class and class features */ - keyOptions: AttributeString[]; - boosts: Required & { - ancestry: AttributeString[]; - background: AttributeString[]; - class: AttributeString | null; - }; - /** Number of remaining allowed boosts (UI and gradual ability boosts only) */ - allowedBoosts: { - 1: number; - 5: number; - 10: number; - 15: number; - 20: number; - }; - flaws: { - ancestry: AttributeString[]; - }; - apex: AttributeString | null; -} -type CharacterAbilities = Record; -interface CharacterSaveData extends SaveData { - /** The proficiency rank ("TEML") */ - rank: ZeroToFour; -} -type CharacterSaves = Record; -interface CharacterProficiency { - label?: string; - /** The actual modifier for this martial type. */ - value: number; - /** Describes how the value was computed. */ - breakdown: string; - /** The proficiency rank (0 untrained - 4 legendary). */ - rank: ZeroToFour; -} -/** A proficiency with a rank that depends on another proficiency */ -interface MartialProficiency extends CharacterProficiency { - label: string; - /** A predicate to match against weapons and unarmed attacks */ - definition?: Predicate; - /** The category to which this proficiency is linked */ - sameAs?: WeaponCategory | ArmorCategory; - /** The maximum rank this proficiency can reach */ - maxRank?: Exclude; - /** Whether the proficiency was manually added by the user */ - custom?: boolean; -} -type CategoryProficiencies = Record; -type BaseWeaponProficiencyKey = `weapon-base-${BaseWeaponType}`; -type WeaponGroupProficiencyKey = `weapon-group-${WeaponGroup}`; -/** The full data for the class DC; similar to SkillData, but is not rollable. */ -interface ClassDCData extends Required { - label: string; - rank: ZeroToFour; - primary: boolean; -} -/** The full data for a character strike */ -interface CharacterStrike extends StrikeData { - item: WeaponPF2e; - /** Whether this attack is visible on the sheet */ - visible: boolean; - /** Domains/selectors from which modifiers are drawn */ - domains: string[]; - /** Whether the character has sufficient hands available to wield this weapon or use this unarmed attack */ - handsAvailable: boolean; - altUsages: CharacterStrike[]; - auxiliaryActions: WeaponAuxiliaryAction[]; - weaponTraits: TraitViewData[]; - doubleBarrel: { - selected: boolean; - } | null; - versatileOptions: VersatileWeaponOption[]; -} -interface VersatileWeaponOption { - value: DamageType; - selected: boolean; - label: string; - glyph: string | null; -} -interface CharacterCraftingData { - formulas: CraftingFormulaData[]; - entries: Record; -} -type CharacterResources = CreatureResources & { - /** The current and maximum number of hero points */ - heroPoints: ValueAndMax; - /** The current number of focus points and pool size */ - focus: ValueAndMax & { - cap: number; - }; - /** The current and maximum number of invested items */ - investiture: ValueAndMax; - crafting: { - infusedReagents: ValueAndMax; - }; - resolve?: ValueAndMax; - mythicPoints: ValueAndMax; -}; -interface CharacterPerceptionData extends CreaturePerceptionData { - rank: ZeroToFour; -} -interface CharacterDetails extends Omit, CreatureDetails { - /** Convenience information for easy access when the item class instance isn't available */ - ancestry: { - name: string; - trait: string; - /** An "adopted" ancestry (typically gained through the Adopted Ancestry feat) */ - adopted: string | null; - /** A versatile ancestry trait (such as "orc" for being a half-orc) */ - versatile: string | null; - /** All ancestries and versatile heritages the character "counts as" when selecting ancestry feats */ - countsAs: string[]; - } | null; - heritage: { - name: string; - trait: string | null; - } | null; - class: { - name: string; - trait: string; - } | null; - deities: CharacterDeities; -} -interface CharacterDeities { - primary: DeityDetails | null; - secondary: null; - domains: { - [K in DeityDomain]?: string; - }; -} -interface DeityDetails extends Pick { - weapons: BaseWeaponType[]; -} -interface CharacterAttributes extends Omit, CreatureAttributes { - /** Used for saves related to class abilities */ - classDC: ClassDCData | null; - /** The best spell DC, used for certain saves related to feats */ - spellDC: { - rank: number; - value: number; - } | null; - /** The higher between highest spellcasting DC and (if present) class DC */ - classOrSpellDC: { - rank: number; - value: number; - }; - /** The amount of HP provided per level by the character's class. */ - classhp: number; - /** The amount of HP provided at level 1 by the character's ancestry. */ - ancestryhp: number; - /** The number of hands this character has free */ - handsFree: number; - /** The number of familiar abilities this character's familiar has access to. */ - familiarAbilities: { - value: number; - }; - /** Data related to character hitpoints. */ - hp: CharacterHitPoints; - speed: CreatureSpeeds; - /** - * Data related to the currently equipped shield. This is copied from the shield data itself and exists to - * allow for the shield health to be shown on an actor shield and token. - */ - shield: HeldShieldData; - /** Whether this actor is under a polymorph effect */ - polymorphed: boolean; - /** Whether this actor is under a battle form polymorph effect */ - battleForm: boolean; -} -type AttributesSourceOmission = "immunities" | "weaknesses" | "resistances"; -interface CharacterHitPoints extends HitPointsStatistic { - recoveryMultiplier: number; - recoveryAddend: number; - sp?: ValueAndMax; -} -export type { BaseWeaponProficiencyKey, CategoryProficiencies, CharacterAbilities, CharacterAttributes, CharacterAttributesSource, CharacterBiography, CharacterDetails, CharacterDetailsSource, CharacterFlags, CharacterProficiency, CharacterResources, CharacterResourcesSource, CharacterSaveData, CharacterSaves, CharacterSkillData, CharacterSource, CharacterStrike, CharacterSystemData, CharacterSystemSource, ClassDCData, MartialProficiency, WeaponGroupProficiencyKey, }; diff --git a/types/src/module/actor/character/document.d.ts b/types/src/module/actor/character/document.d.ts deleted file mode 100644 index 5c1b77df4..000000000 --- a/types/src/module/actor/character/document.d.ts +++ /dev/null @@ -1,114 +0,0 @@ -import { CreaturePF2e, type FamiliarPF2e } from "@actor"; -import { CreatureSpeeds, LabeledSpeed } from "@actor/creature/data.ts"; -import { CreatureUpdateOperation, ResourceData } from "@actor/creature/types.ts"; -import { ActorInitiative } from "@actor/initiative.ts"; -import { StatisticModifier } from "@actor/modifiers.ts"; -import { AttributeString, MovementType } from "@actor/types.ts"; -import type { AncestryPF2e, BackgroundPF2e, ClassPF2e, DeityPF2e, FeatPF2e, HeritagePF2e } from "@item"; -import { WeaponPF2e } from "@item"; -import type { ItemType } from "@item/base/data/index.ts"; -import { ZeroToTwo } from "@module/data.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import { TokenDocumentPF2e } from "@scene/index.ts"; -import { RollParameters } from "@system/rolls.ts"; -import { Statistic } from "@system/statistic/index.ts"; -import { CharacterCrafting } from "./crafting/index.ts"; -import { - BaseWeaponProficiencyKey, - CharacterAbilities, - CharacterFlags, - CharacterSource, - CharacterStrike, - CharacterSystemData, - WeaponGroupProficiencyKey, -} from "./data.ts"; -import { CharacterFeats } from "./feats/index.ts"; -import { CharacterHitPointsSummary, CharacterSkills, GuaranteedGetStatisticSlug } from "./types.ts"; - -declare class CharacterPF2e extends CreaturePF2e { - /** Core singular embeds for PCs */ - ancestry: AncestryPF2e | null; - heritage: HeritagePF2e | null; - background: BackgroundPF2e | null; - class: ClassPF2e | null; - deity: DeityPF2e | null; - /** A cached reference to this PC's familiar */ - familiar: FamiliarPF2e | null; - feats: CharacterFeats; - pfsBoons: FeatPF2e[]; - divineIntercessions: FeatPF2e[]; - /** The primary class DC */ - classDC: Statistic | null; - /** All class DCs, including the primary */ - classDCs: Record; - /** Skills for the character, built during data prep */ - skills: CharacterSkills; - initiative: ActorInitiative; - crafting: CharacterCrafting; - get allowedItemTypes(): (ItemType | "physical")[]; - get keyAttribute(): AttributeString; - /** This PC's ability scores */ - get abilities(): CharacterAbilities; - get handsFree(): ZeroToTwo; - /** The number of hands this PC "really" has free, ignoring allowances for shields and the Free-Hand trait */ - get handsReallyFree(): ZeroToTwo; - get hitPoints(): CharacterHitPointsSummary; - get heroPoints(): { - value: number; - max: number; - }; - /** Retrieve lore skills, class statistics, and tradition-specific spellcasting */ - getStatistic(slug: GuaranteedGetStatisticSlug): Statistic; - getStatistic(slug: string): Statistic | null; - protected _initialize(options?: Record): void; - /** If one exists, prepare this character's familiar */ - prepareData(): void; - /** Setup base ephemeral data to be modified by active effects and derived-data preparation */ - prepareBaseData(): void; - /** After AE-likes have been applied, set numeric roll options */ - prepareEmbeddedDocuments(): void; - /** - * Immediately after boosts from this PC's ancestry, background, and class have been acquired, set attribute - * modifiers according to them. - */ - prepareDataFromItems(): void; - prepareDerivedData(): void; - private prepareBuildData; - /** Set roll operations for ability scores, proficiency ranks, and number of hands free */ - protected setNumericRollOptions(): void; - private createArmorStatistic; - private prepareSaves; - private prepareSkills; - prepareSpeed(movementType: "land"): CreatureSpeeds; - prepareSpeed(movementType: Exclude): (LabeledSpeed & StatisticModifier) | null; - prepareSpeed(movementType: MovementType): CreatureSpeeds | (LabeledSpeed & StatisticModifier) | null; - private prepareFeats; - private prepareClassDC; - /** Prepare this character's strike actions */ - prepareStrikes({ includeBasicUnarmed }?: { - includeBasicUnarmed?: boolean | undefined; - }): CharacterStrike[]; - /** Prepare a strike action from a weapon */ - private prepareStrike; - getStrikeDescription(weapon: WeaponPF2e): { - description: string; - criticalSuccess: string; - success: string; - }; - consumeAmmo(weapon: WeaponPF2e, params: RollParameters): boolean; - /** Prepare stored and synthetic martial proficiencies */ - prepareMartialProficiencies(): void; - /** Toggle the invested state of an owned magical item */ - toggleInvested(itemId: string): Promise; - /** Add a proficiency in a weapon group or base weapon */ - addAttackProficiency(key: BaseWeaponProficiencyKey | WeaponGroupProficiencyKey): Promise; - protected _preUpdate(changed: DeepPartial, options: CreatureUpdateOperation, user: UserPF2e): Promise; -} -interface CharacterPF2e extends CreaturePF2e { - flags: CharacterFlags; - readonly _source: CharacterSource; - system: CharacterSystemData; - getResource(resource: "hero-points" | "mythic-points" | "focus" | "investiture" | "infused-reagents"): ResourceData; - getResource(resource: string): ResourceData | null; -} -export { CharacterPF2e }; diff --git a/types/src/module/actor/character/elemental-blast.d.ts b/types/src/module/actor/character/elemental-blast.d.ts deleted file mode 100644 index 778748fc7..000000000 --- a/types/src/module/actor/character/elemental-blast.d.ts +++ /dev/null @@ -1,103 +0,0 @@ -import type { AbilityItemPF2e } from "@item"; -import { EffectTrait } from "@item/abstract-effect/types.ts"; -import { RangeData } from "@item/types.ts"; -import { WeaponTrait } from "@item/weapon/types.ts"; -import { CheckRoll } from "@system/check/index.ts"; -import { DamageRoll } from "@system/damage/roll.ts"; -import { DamageType } from "@system/damage/types.ts"; -import { AttackRollParams, DamageRollParams } from "@system/rolls.ts"; -import { Statistic } from "@system/statistic/index.ts"; -import type { ArrayField, FilePathField, NumberField, SchemaField, StringField } from "types/foundry/common/data/fields.d.ts"; -import type { CharacterPF2e } from "./document.ts"; -declare class ElementalBlast { - #private; - actor: CharacterPF2e; - /** The actor's impulse statistic */ - statistic: Statistic | null; - /** The actor's Elemental Blast item */ - item: AbilityItemPF2e | null; - /** Blast element/damage-type configurations available to the character */ - configs: ElementalBlastConfig[]; - /** Modifications of the blast from infusions */ - infusion: BlastInfusionData | null; - constructor(actor: CharacterPF2e); - get actionCost(): 1 | 2; - /** Make an impulse attack roll as part of an elemental blast. */ - attack(params: BlastAttackParams): Promise | null>; - /** Make a damage roll as part of an elemental blast. */ - damage(params: BlastDamageParams & { - getFormula: true; - }): Promise; - damage(params: BlastDamageParams): Promise | string | null>; - /** Set damage type according to the user's selection on the PC sheet */ - setDamageType({ element, damageType }: { - element: EffectTrait; - damageType: DamageType; - }): Promise; -} -interface BlastAttackParams extends AttackRollParams { - mapIncreases: number; - element: EffectTrait; - damageType: DamageType; - melee: boolean; -} -interface BlastDamageParams extends DamageRollParams { - element: EffectTrait; - damageType: DamageType; - melee: boolean; - actionCost?: number; - outcome?: "success" | "criticalSuccess"; -} -type BlastConfigSchema = { - element: StringField; - label: StringField; - img: FilePathField; - damageTypes: ArrayField>; - range: NumberField; - dieFaces: NumberField<6 | 8, 6 | 8, true, false, false>; -}; -type BlastInfusionSchema = { - damageTypes: ArrayField>; - range: SchemaField<{ - increment: NumberField; - max: NumberField; - }, { - increment: number; - max: number; - }, { - increment: number; - max: number; - }, false, true, true>; - traits: SchemaField<{ - melee: ArrayField>; - ranged: ArrayField>; - }>; -}; -type BlastInfusionData = ModelPropsFromSchema; -interface ElementalBlastConfig extends Omit, "damageTypes" | "range"> { - damageTypes: BlastConfigDamageType[]; - range: RangeData & { - label: string; - }; - statistic: Statistic; - actionCost: 1 | 2; - maps: { - melee: { - map0: string; - map1: string; - map2: string; - }; - ranged: { - map0: string; - map1: string; - map2: string; - }; - }; -} -interface BlastConfigDamageType { - value: DamageType; - label: string; - icon: string; - selected: boolean; -} -export { ElementalBlast, type ElementalBlastConfig }; diff --git a/types/src/module/actor/character/feats/collection.d.ts b/types/src/module/actor/character/feats/collection.d.ts deleted file mode 100644 index 633e069ea..000000000 --- a/types/src/module/actor/character/feats/collection.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { CharacterPF2e } from "@actor"; -import type { FeatPF2e, ItemPF2e } from "@item"; -import { FeatGroup } from "./group.ts"; -import { FeatGroupData } from "./types.ts"; - -declare class CharacterFeats extends Collection> { - #private; - private actor; - /** Feats belonging no actual group ("bonus feats" in rules text) */ - bonus: FeatGroup; - constructor(actor: TActor); - createGroup(data: FeatGroupData): FeatGroup; - /** Inserts a feat into the character. If groupId is empty string, it's a bonus feat. */ - insertFeat(feat: FeatPF2e, slotData: { - groupId: string; - slotId: string | null; - } | null): Promise[]>; - /** Assigns existing feats to their correct spots during data preparation */ - assignToSlots(): void; -} -export { CharacterFeats }; diff --git a/types/src/module/actor/character/feats/group.d.ts b/types/src/module/actor/character/feats/group.d.ts deleted file mode 100644 index 8d3f8a0e0..000000000 --- a/types/src/module/actor/character/feats/group.d.ts +++ /dev/null @@ -1,50 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { FeatPF2e, HeritagePF2e, ItemPF2e } from "@item"; -import { FeatOrFeatureCategory } from "@item/feat/types.ts"; -import type { FeatBrowserFilterProps, FeatGroupData, FeatLike, FeatSlot } from "./types.ts"; - -declare class FeatGroup { - #private; - actor: TActor; - id: string; - label: string; - feats: (FeatSlot | FeatNotSlot)[]; - /** Whether the feats are slotted by level or free-form */ - slotted: boolean; - /** Feat Types that are supported */ - supported: FeatOrFeatureCategory[]; - filter: FeatBrowserFilterProps; - /** Lookup for the slots themselves */ - slots: Record | undefined>; - /** This groups display's limit. Usually equal to actor level */ - limit: number; - /** This group's level. If slotted, it is equal to the highest leveled slot. */ - level: number; - customLimit: { - label: string; - min: number; - max: number; - } | null; - constructor(actor: TActor, data: FeatGroupData, options?: FeatGroupOptions); - /** Is this category slotted and without any empty slots */ - get isFull(): boolean; - /** Assigns a feat to its correct slot during data preparation, returning true if successful */ - assignFeat(feat: TItem): boolean; - /** Returns true if this feat is a valid type for the group */ - isFeatValid(feat: TItem): boolean; - /** Adds a new feat to the actor, or reorders an existing one, into the correct slot */ - insertFeat(feat: TItem, slotId?: Maybe): Promise[]>; - /** Handles any post assignment post-processing */ - postProcess(): void; -} -interface FeatGroupOptions { - /** The "rank" to limit visibility to. By default it is actor level */ - limit?: number; -} -interface FeatNotSlot { - feat: T; - filter?: never; - level?: never; - children: FeatSlot[]; -} -export { FeatGroup }; diff --git a/types/src/module/actor/character/feats/index.d.ts b/types/src/module/actor/character/feats/index.d.ts deleted file mode 100644 index 35eca3824..000000000 --- a/types/src/module/actor/character/feats/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from "./collection.ts"; -export * from "./group.ts"; -export * from "./types.ts"; diff --git a/types/src/module/actor/character/feats/types.d.ts b/types/src/module/actor/character/feats/types.d.ts deleted file mode 100644 index 942d56fbc..000000000 --- a/types/src/module/actor/character/feats/types.d.ts +++ /dev/null @@ -1,74 +0,0 @@ -import type { ActorPF2e } from "@actor/base.ts"; -import type { FeatPF2e, HeritagePF2e, ItemPF2e } from "@item"; -import type { ItemSystemData } from "@item/base/data/index.ts"; -import type { FeatOrFeatureCategory } from "@item/feat/types.ts"; -import type { FeatGroup } from "./group.ts"; - -/** Any document that is similar enough to a feat/feature to be used as a feat for the purposes of feat groups */ -interface FeatLike extends ItemPF2e { - readonly level: number | null; - category: string; - group: FeatGroup, this> | null; - isFeat: boolean; - isFeature: boolean; - system: ItemSystemData & { - location: string | null; - }; - suppressed?: boolean; -} -/** Data that defines how a feat group is structured */ -interface FeatGroupData { - id: string; - label: string; - supported?: FeatOrFeatureCategory[]; - filter?: FeatBrowserFilterProps; - slots?: (FeatSlotData | number)[]; - /** If true, all slots are sorted by their level. Only applies if slotless */ - sorted?: boolean; - /** If set to true, all slots except the first will be hidden unless its been assigned to */ - requiresInitial?: boolean; - /** Default placeholder text for empty slots */ - placeholder?: string; - /** If given, this is feat group has a configurable limit independent of level */ - customLimit?: { - label: string; - min: number; - max: number; - } | null; -} -/** Compendium browser filter properties when using the browse features. These do not perform validation */ -interface FeatBrowserFilterProps { - categories?: FeatOrFeatureCategory[]; - traits?: string[]; - omitTraits?: string[]; - conjunction?: "or" | "and"; -} -/** Data used to describe a feat slot when creating a new feat group */ -interface FeatSlotData { - /** - * A globally unique id. In future versions this may become locally unique instead. - * If omitted, it is -. - */ - id?: string; - /** Short label for the feat slot, displayeed on the left. By default it is the level */ - label?: Maybe; - /** The level of the feat that should go in this slot */ - level?: Maybe; - /** - * The limit value the group needs in order to display this feat. - * This can be different from level if the group is based on tiers. - */ - tier?: Maybe; - /** The text to display when the feat slot is empty */ - placeholder?: Maybe; - /** If given, these filters will be prioritized over the group's filters */ - filter?: FeatBrowserFilterProps; -} -/** An active feat slot in a feat group, including any feats that it might be containing */ -interface FeatSlot extends FeatSlotData { - id: string; - level: number | null; - feat?: Maybe; - children: FeatSlot[]; -} -export type { FeatBrowserFilterProps, FeatGroupData, FeatLike, FeatSlot, FeatSlotData }; diff --git a/types/src/module/actor/character/helpers.d.ts b/types/src/module/actor/character/helpers.d.ts deleted file mode 100644 index 5778340ab..000000000 --- a/types/src/module/actor/character/helpers.d.ts +++ /dev/null @@ -1,79 +0,0 @@ -import type { ActorPF2e, CharacterPF2e } from "@actor"; -import { AttackTraitHelpers } from "@actor/creature/helpers.ts"; -import { ModifierPF2e } from "@actor/modifiers.ts"; -import type { AbilityItemPF2e, ArmorPF2e, WeaponPF2e } from "@item"; -import { ItemCarryType } from "@item/physical/index.ts"; -import { ZeroToThree, ZeroToTwo } from "@module/data.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -/** Handle weapon traits that introduce modifiers or add other weapon traits */ -declare class PCAttackTraitHelpers extends AttackTraitHelpers { - static adjustWeapon(weapon: WeaponPF2e): void; - static createAttackModifiers({ item, domains }: CreateAttackModifiersParams): ModifierPF2e[]; -} -interface AuxiliaryInteractParams { - weapon: WeaponPF2e; - action: "interact"; - annotation: "draw" | "grip" | "modular" | "pick-up" | "retrieve" | "sheathe"; - hands?: ZeroToTwo; -} -interface AuxiliaryShieldParams { - weapon: WeaponPF2e; - action: "end-cover" | "raise-a-shield" | "take-cover"; - annotation?: "tower-shield"; - hands?: never; -} -interface AuxiliaryReleaseParams { - weapon: WeaponPF2e; - action: "release"; - annotation: "grip" | "drop"; - hands: 0 | 1; -} -type AuxiliaryActionParams = AuxiliaryInteractParams | AuxiliaryShieldParams | AuxiliaryReleaseParams; -type AuxiliaryActionType = AuxiliaryActionParams["action"]; -type AuxiliaryActionPurpose = AuxiliaryActionParams["annotation"]; -/** Create an "auxiliary" action, an Interact or Release action using a weapon */ -declare class WeaponAuxiliaryAction { - readonly weapon: WeaponPF2e; - readonly action: AuxiliaryActionType; - readonly actions: ZeroToThree; - readonly carryType: ItemCarryType | null; - readonly hands: ZeroToTwo | null; - readonly annotation: NonNullable | null; - /** A "full purpose" reflects the options to draw, sheathe, etc. a weapon */ - readonly fullAnnotation: string | null; - constructor({ weapon, action, annotation, hands }: AuxiliaryActionParams); - get actor(): CharacterPF2e; - get label(): string; - get glyph(): string; - get options(): SheetOptions | null; - /** - * Execute an auxiliary action. - * [options.selection] A choice of some kind: currently only has meaning for modular trait toggling - */ - execute({ selection }?: { - selection?: string | null; - }): Promise; -} -/** Make a PC Clumsy 1 when wielding an oversized weapon */ -declare function imposeOversizedWeaponCondition(actor: CharacterPF2e): void; -interface CreateAttackModifiersParams { - item: AbilityItemPF2e | WeaponPF2e; - domains: string[]; -} -/** Create a penalty for attempting to Force Open without a crowbar or equivalent tool */ -declare function createForceOpenPenalty(actor: CharacterPF2e, domains: string[]): ModifierPF2e; -declare function createShoddyPenalty(actor: ActorPF2e, item: WeaponPF2e | ArmorPF2e | null, domains: string[]): ModifierPF2e | null; -/** - * Create a penalty for wearing armor with the "ponderous" trait - * "You take a –5 penalty to all your Speeds (to a minimum of a 5-foot Speed). This is separate from and in addition to - * the armor's Speed penalty, and affects you even if your Strength or an ability lets you reduce or ignore the armor's - * Speed penalty." - */ -declare function createHinderingPenalty(actor: CharacterPF2e): ModifierPF2e | null; -/** - * Create a penalty for wearing armor with the "ponderous" trait - * "While wearing the armor, you take a –1 penalty to initiative checks. If you don't meet the armor's required Strength - * score, this penalty increases to be equal to the armor's check penalty if it's worse." - */ -declare function createPonderousPenalty(actor: CharacterPF2e): ModifierPF2e | null; -export { PCAttackTraitHelpers, WeaponAuxiliaryAction, createForceOpenPenalty, createHinderingPenalty, createPonderousPenalty, createShoddyPenalty, imposeOversizedWeaponCondition, }; diff --git a/types/src/module/actor/character/index.d.ts b/types/src/module/actor/character/index.d.ts deleted file mode 100644 index 4eaf2f8af..000000000 --- a/types/src/module/actor/character/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { CharacterPF2e } from "./document.ts"; diff --git a/types/src/module/actor/character/sheet.d.ts b/types/src/module/actor/character/sheet.d.ts deleted file mode 100644 index 22821c631..000000000 --- a/types/src/module/actor/character/sheet.d.ts +++ /dev/null @@ -1,201 +0,0 @@ -/// -/// -/// -import { CreatureSheetData, Language, ResourceData } from "@actor/creature/index.ts"; -import type { Sense } from "@actor/creature/sense.ts"; -import { SheetClickActionHandlers } from "@actor/sheet/base.ts"; -import { AbilityViewData, InventoryItem, SheetInventory } from "@actor/sheet/data-types.ts"; -import { AttributeString, SaveType } from "@actor/types.ts"; -import type { - AncestryPF2e, - BackgroundPF2e, - ClassPF2e, - DeityPF2e, - FeatPF2e, - HeritagePF2e, - PhysicalItemPF2e, -} from "@item"; -import { ItemPF2e } from "@item"; -import { TraitToggleViewData } from "@item/ability/trait-toggles.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { CoinsPF2e } from "@item/physical/coins.ts"; -import { MagicTradition } from "@item/spell/types.ts"; -import { SpellcastingSheetData } from "@item/spellcasting-entry/types.ts"; -import { DropCanvasItemDataPF2e } from "@module/canvas/drop-canvas-data.ts"; -import { LabeledValueAndMax, ZeroToFour } from "@module/data.ts"; -import { DamageType } from "@system/damage/types.ts"; -import { CreatureSheetPF2e } from "../creature/sheet.ts"; -import { CharacterConfig } from "./config.ts"; -import type { CraftingAbilitySheetData } from "./crafting/ability.ts"; -import { - CharacterBiography, - CharacterSaveData, - CharacterStrike, - CharacterSystemData, - ClassDCData, - MartialProficiency, -} from "./data.ts"; -import { CharacterPF2e } from "./document.ts"; -import { ElementalBlastConfig } from "./elemental-blast.ts"; -import type { FeatGroup } from "./feats/index.ts"; -import { CHARACTER_SHEET_TABS } from "./values.ts"; - -declare class CharacterSheetPF2e extends CreatureSheetPF2e { - #private; - protected readonly actorConfigClass: typeof CharacterConfig; - static get defaultOptions(): ActorSheetOptions; - get template(): string; - getData(options?: ActorSheetOptions): Promise>; - protected _onSearchFilter(event: KeyboardEvent, query: string, rgx: RegExp, html: HTMLElement | null): void; - protected prepareInventory(): SheetInventory; - protected prepareInventoryItem(item: PhysicalItemPF2e): InventoryItem; - /** Overriden to open sub-tabs if requested */ - protected openTab(name: string): void; - activateListeners($html: JQuery): void; - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; - /** Toggle availability of the roll-initiative link on the sidebar */ - toggleInitiativeLink(link?: HTMLElement | null): void; - protected _onDropItem(event: DragEvent, data: DropCanvasItemDataPF2e): Promise; - _onDrop(event: DragEvent): Promise; - /** Handle a drop event for an existing Owned Item to sort that item */ - protected _onSortItem(event: DragEvent, itemData: ItemSourcePF2e): Promise; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface CharacterSheetPF2e extends CreatureSheetPF2e { - getStrikeFromDOM(target: HTMLElement): CharacterStrike | null; -} -type CharacterSheetOptions = ActorSheetOptions; -type CharacterSystemSheetData = CharacterSystemData & { - details: CharacterSystemData["details"] & { - keyability: { - value: keyof typeof CONFIG.PF2E.abilities; - singleOption: boolean; - }; - }; - saves: Record; -}; -interface FormulaSheetData { - uuid: string; - item: ItemPF2e; - dc: number; - batchSize: number; - cost: CoinsPF2e; -} -interface FormulaByLevel { - level: string; - formulas: FormulaSheetData[]; -} -interface CraftingSheetData { - noCost: boolean; - hasQuickAlchemy: boolean; - hasDailyCrafting: boolean; - dailyCraftingComplete: boolean; - knownFormulas: FormulaByLevel[]; - abilities: { - spontaneous: CraftingAbilitySheetData[]; - prepared: CraftingAbilitySheetData[]; - alchemical: { - entries: CraftingAbilitySheetData[]; - resource: ResourceData; - resourceCost: number; - }; - }; -} -type CharacterSheetTabVisibility = Record<(typeof CHARACTER_SHEET_TABS)[number], boolean>; -type SpellcastingTabSlug = "known-spells" | "rituals" | "activations"; -interface CharacterSheetData extends CreatureSheetData { - abpEnabled: boolean; - ancestry: AncestryPF2e | null; - heritage: HeritagePF2e | null; - background: BackgroundPF2e | null; - attributeBoostsAllocated: boolean; - biography: CharacterBiography; - class: ClassPF2e | null; - numberToRank: Record; - classDCs: { - dcs: ClassDCSheetData[]; - /** The slug of the character's primary class DC */ - primary: string | null; - /** Show class label and individual modifier lists for each class DC */ - perDCDetails: boolean; - }; - apexAttributeOptions: AttributeString[]; - crafting: CraftingSheetData; - data: CharacterSystemSheetData; - deity: DeityPF2e | null; - hasStamina: boolean; - /** This actor has actual containers for stowing, rather than just containers serving as a UI convenience */ - hasRealContainers: boolean; - /** The resource to display in the header, usually hero points */ - headerResource: LabeledValueAndMax & { - slug: string; - icon: string; - }; - languages: LanguageSheetData[]; - magicTraditions: Record; - martialProficiencies: Record<"attacks" | "defenses", Record>; - options: CharacterSheetOptions; - preparationType: object; - showPFSTab: boolean; - spellCollectionGroups: Record; - hasNormalSpellcasting: boolean; - tabVisibility: CharacterSheetTabVisibility; - actions: { - encounter: Record<"action" | "reaction" | "free", { - label: string; - actions: CharacterAbilityViewData[]; - }>; - exploration: { - active: CharacterAbilityViewData[]; - other: CharacterAbilityViewData[]; - }; - downtime: CharacterAbilityViewData[]; - }; - feats: FeatGroup[]; - elementalBlasts: ElementalBlastSheetConfig[]; - senses: Sense[]; - speeds: SpeedSheetData[]; -} -type LanguageSheetData = { - slug: Language | null; - label: string; - tooltip: string | null; - overLimit: boolean; -}; -interface SpeedSheetData { - slug: string; - icon: string; - action: string | null; - label: string; - value: number | null; - breakdown: string | null; -} -interface CharacterAbilityViewData extends AbilityViewData { - feat: FeatPF2e | null; - toggles: TraitToggleViewData[]; - exploration?: { - active: boolean; - }; -} -interface ClassDCSheetData extends ClassDCData { - icon: string; - hover: string; -} -interface ElementalBlastSheetConfig extends ElementalBlastConfig { - damageType: DamageType; - formula: { - ranged: { - damage: string | null; - critical: string | null; - }; - melee: { - damage: string | null; - critical: string | null; - }; - }; -} -export { CharacterSheetPF2e }; -export type { CharacterSheetData, CharacterSheetTabVisibility }; diff --git a/types/src/module/actor/character/tab-manager.d.ts b/types/src/module/actor/character/tab-manager.d.ts deleted file mode 100644 index aa9dedaf9..000000000 --- a/types/src/module/actor/character/tab-manager.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import type { CharacterPF2e } from "./document.ts"; - -export declare class PCSheetTabManager { - #private; - actor: CharacterPF2e; - link: HTMLElement; - constructor(actor: CharacterPF2e, link: HTMLAnchorElement); - initialize(): Promise; -} diff --git a/types/src/module/actor/character/types.d.ts b/types/src/module/actor/character/types.d.ts deleted file mode 100644 index f66256583..000000000 --- a/types/src/module/actor/character/types.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import type { HitPointsSummary } from "@actor/base.ts"; -import type { SaveType, SkillSlug } from "@actor/types.ts"; -import type { MagicTradition } from "@item/spell/types.ts"; -import type { ZeroToFour } from "@module/data.ts"; -import type { Statistic } from "@system/statistic/index.ts"; -import type { CharacterPF2e } from "./document.ts"; -interface CharacterHitPointsSummary extends HitPointsSummary { - recoveryMultiplier: number; - recoveryAddend: number; -} -type CharacterSkill = Statistic & { - rank: ZeroToFour; -}; -type CharacterSkills = Record>; -/** Single source of a Dexterity modifier cap to Armor Class, including the cap value itself. */ -interface DexterityModifierCapData { - /** The numeric value that constitutes the maximum Dexterity modifier. */ - value: number; - /** The source of this Dex cap - usually the name of an armor, a monk stance, or a spell. */ - source: string; -} -/** Slugs guaranteed to return a `Statistic` when passed to `CharacterPF2e#getStatistic` */ -type GuaranteedGetStatisticSlug = SaveType | SkillSlug | "perception" | "class-spell" | "class" | "class-dc" | "classDC" | MagicTradition; -export type { CharacterHitPointsSummary, CharacterSkill, CharacterSkills, DexterityModifierCapData, GuaranteedGetStatisticSlug, }; diff --git a/types/src/module/actor/character/values.d.ts b/types/src/module/actor/character/values.d.ts deleted file mode 100644 index 16ea97278..000000000 --- a/types/src/module/actor/character/values.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare const CHARACTER_SHEET_TABS: readonly ["character", "actions", "inventory", "spellcasting", "crafting", "proficiencies", "feats", "effects", "biography", "pfs"]; -declare const CORE_RESOURCES: readonly ["hero-points", "focus", "investiture", "resolve", "mythic-points"]; -export { CHARACTER_SHEET_TABS, CORE_RESOURCES }; diff --git a/types/src/module/actor/conditions.d.ts b/types/src/module/actor/conditions.d.ts deleted file mode 100644 index 3005ad9f6..000000000 --- a/types/src/module/actor/conditions.d.ts +++ /dev/null @@ -1,59 +0,0 @@ -import type { ConditionPF2e } from "@item"; -import type { ConditionSlug, PersistentDamagePF2e } from "@item/condition/index.ts"; -import { DelegatedCollection } from "@util"; -import type { ActorPF2e } from "./base.ts"; -/** A wrapper for collections of conditions on an actor, filterable by whether they're active or stored/temporary */ -declare class ActorConditions extends DelegatedCollection> { - #private; - /** Return an array of only active conditions */ - get active(): ConditionPF2e[]; - /** Return an array of only stored conditions */ - get stored(): ConditionPF2e[]; - /** Convenience getters for active badged conditions, especially for use by @actor resolvables in rule elements */ - get clumsy(): ConditionPF2e | null; - get cursebound(): ConditionPF2e | null; - get doomed(): ConditionPF2e | null; - get drained(): ConditionPF2e | null; - get dying(): ConditionPF2e | null; - get enfeebled(): ConditionPF2e | null; - get frightened(): ConditionPF2e | null; - get sickened(): ConditionPF2e | null; - get slowed(): ConditionPF2e | null; - get stunned(): ConditionPF2e | null; - get stupefied(): ConditionPF2e | null; - get wounded(): ConditionPF2e | null; - /** Whether the actor has a condition of a certain type */ - hasType(slug: ConditionSlug): boolean; - /** Finalize the conditions this actor has, populating #conditionsHad */ - finalize(): void; - /** Provide additional options for retrieving a condition */ - get(key: Maybe, options: { - strict: true; - active?: boolean | null; - temporary?: boolean | null; - }): ConditionPF2e; - get(key: string, options?: ConditionsGetOptions): ConditionPF2e | undefined; - set(id: string, condition: ConditionPF2e): this; - every(condition: (value: ConditionPF2e) => boolean): boolean; - /** No deletions: a new instance is created every data preparation cycle */ - delete(): false; - /** - * Get an array of conditions by slug - * The "dead" slug is permitted due to `StatusEffectsPF2e`'s usage of this class, though it will always return an - * empty array. - */ - bySlug(slug: "persistent-damage", options?: ConditionsBySlugOptions): PersistentDamagePF2e[]; - bySlug(slug: "dead", options?: ConditionsBySlugOptions): never[]; - bySlug(slug: ConditionSlug | "dead", options?: ConditionsBySlugOptions): ConditionPF2e[]; -} -interface ConditionsGetOptions extends CollectionGetOptions { - /** Filter by the active state of the condition: `null` will return one in either state */ - active?: boolean | null; - /** - * Filter by the whether the condition is temporary (in-memory) or stored on the actor: `null` will return - * a condition of either kind - */ - temporary?: boolean | null; -} -type ConditionsBySlugOptions = Omit; -export { ActorConditions }; diff --git a/types/src/module/actor/creature/config.d.ts b/types/src/module/actor/creature/config.d.ts deleted file mode 100644 index 3c547755e..000000000 --- a/types/src/module/actor/creature/config.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { SheetOptions } from "@module/sheet/helpers.ts"; -import type { CreaturePF2e } from "./document.ts"; -/** A DocumentSheet presenting additional, per-actor settings */ -declare abstract class CreatureConfig extends DocumentSheet { - get title(): string; - get template(): string; - get actor(): TActor; - static get defaultOptions(): DocumentSheetOptions; - getData(options?: Partial): Promise>; - /** Remove stored property if it's set to default; otherwise, update */ - _updateObject(event: Event, formData: Record): Promise; -} -interface CreatureConfigData extends DocumentSheetData { - alliances: SheetOptions; -} -export { CreatureConfig, type CreatureConfigData }; diff --git a/types/src/module/actor/creature/data.d.ts b/types/src/module/actor/creature/data.d.ts deleted file mode 100644 index ef950090d..000000000 --- a/types/src/module/actor/creature/data.d.ts +++ /dev/null @@ -1,194 +0,0 @@ -import type { - ActorAttributes, - ActorAttributesSource, - ActorDetailsSource, - ActorHitPoints, - ActorHitPointsSource, - ActorSystemData, - ActorSystemSource, - ActorTraitsSource, - AttributeBasedTraceData, - BaseActorSourcePF2e, - StrikeData, -} from "@actor/data/base.ts"; -import type { ActorSizePF2e } from "@actor/data/size.ts"; -import type { ModifierPF2e, RawModifier, StatisticModifier } from "@actor/modifiers.ts"; -import type { AttributeString, MovementType, SaveType, SkillSlug } from "@actor/types.ts"; -import type { LabeledNumber, Size, ValueAndMax, ValueAndMaybeMax, ZeroToThree } from "@module/data.ts"; -import type { ArmorClassTraceData } from "@system/statistic/index.ts"; -import type { PerceptionTraceData } from "@system/statistic/perception.ts"; -import type { CreatureActorType, CreatureTrait, Language, SenseAcuity, SenseType, SpecialVisionType } from "./types.ts"; - -type BaseCreatureSource = BaseActorSourcePF2e; -/** Skill and Lore statistics for rolling. */ -interface CreatureSystemSource extends ActorSystemSource { - attributes: CreatureAttributesSource; - details?: CreatureDetailsSource; - /** Traits, languages, and other information. */ - traits?: CreatureTraitsSource; - /** Maps roll types -> a list of modifiers which should affect that roll type. */ - customModifiers?: Record; - /** Saving throw data */ - saves?: Record; - resources?: CreatureResourcesSource; -} -interface CreatureAttributesSource extends ActorAttributesSource { - hp: CreatureHitPointsSource; -} -interface CreatureHitPointsSource extends ActorHitPointsSource { - temp: number; -} -interface CreatureDetailsSource extends ActorDetailsSource { - /** Languages this creature knows and (probably) can speak */ - languages?: CreatureLanguagesData; -} -interface CreatureLanguagesData { - value: Language[]; - details: string; -} -interface CreatureTraitsSource extends ActorTraitsSource { -} -interface CreatureResourcesSource { - focus?: ValueAndMaybeMax; -} -interface CreatureSystemData extends Omit, ActorSystemData { - abilities?: Abilities; - details: CreatureDetails; - /** Traits, languages, and other information. */ - traits: CreatureTraitsData; - attributes: CreatureAttributes; - /** The perception statistic */ - perception: CreaturePerceptionData; - /** Maps roll types -> a list of modifiers which should affect that roll type. */ - customModifiers: Record; - /** Saving throw data */ - saves: CreatureSaves; - skills: Record; - actions?: StrikeData[]; - resources: CreatureResources; -} -type SenseData = { - type: SpecialVisionType; - acuity?: "precise"; - range?: number; - source?: Maybe; -} | { - type: SenseType; - acuity: SenseAcuity; - range: number; - source?: Maybe; -}; -interface CreaturePerceptionData extends PerceptionTraceData { - attribute: AttributeString; -} -/** Data describing the value & modifier for a base ability score. */ -interface AbilityData { - /** The modifier for this ability */ - mod: number; - /** A label like "Strength", "Dexterity", etc. */ - label: string; - /** A label like "Str", "Dex", etc. */ - shortLabel: string; -} -type Abilities = Record; -interface CreatureTraitsData extends Required { - size: ActorSizePF2e; - /** Temporary variable that holds pre-equipment resize data */ - naturalSize?: Size; -} -interface CreatureDetails extends Required { -} -type SkillData = AttributeBasedTraceData; -/** The full save data for a character; including its modifiers and other details */ -interface SaveData extends AttributeBasedTraceData { - saveDetail?: string; -} -type CreatureSaves = Record; -/** Miscallenous but mechanically relevant creature attributes. */ -interface CreatureAttributes extends ActorAttributes { - hp: ActorHitPoints; - ac: CreatureACData; - hardness: { - value: number; - }; - /** The creature's natural reach */ - reach: { - /** The default reach for all actions requiring one */ - base: number; - /** Its reach for the purpose of manipulate actions, usually the same as its base reach */ - manipulate: number; - }; - shield?: HeldShieldData; - speed: CreatureSpeeds; - /** The current dying level (and maximum) for this creature. */ - dying: ValueAndMax & { - recoveryDC: number; - }; - /** The current wounded level (and maximum) for this creature. */ - wounded: ValueAndMax; - /** The current doomed level (and maximum) for this creature. */ - doomed: ValueAndMax; - /** Whether this creature emits sound */ - emitsSound: boolean; -} -interface CreatureACData extends ArmorClassTraceData { - attribute: AttributeString; -} -interface CreatureSpeeds extends StatisticModifier { - /** The actor's primary speed (usually walking/stride speed). */ - value: number; - /** Other speeds that this actor can use (such as swim, climb, etc). */ - otherSpeeds: LabeledSpeed[]; - /** The derived value after applying modifiers, bonuses, and penalties */ - total: number; -} -interface LabeledSpeed extends Omit { - type: Exclude; - source?: string; - total?: number; - derivedFromLand?: boolean; -} -/** Creature initiative statistic */ -interface CreatureInitiativeSource { - /** What skill or ability is currently being used to compute initiative. */ - statistic: SkillSlug | "perception"; -} -interface CreatureResources extends CreatureResourcesSource { - /** The current number of focus points and pool size */ - focus?: ValueAndMax & { - cap: number; - }; - [key: string]: ValueAndMax | undefined; -} -declare enum VisionLevels { - BLINDED = 0, - NORMAL = 1, - LOWLIGHT = 2, - DARKVISION = 3 -} -type VisionLevel = ZeroToThree; -/** A PC's or NPC's held shield. An NPC's values can be stored directly on the actor or come from a shield item. */ -interface HeldShieldData { - /** The item ID of the shield if in use or otherwise `null` */ - itemId: string | null; - /** The name of the shield (defaulting to "Shield" if not from a shield item) */ - name: string; - /** The shield's AC */ - ac: number; - /** The shield's hardness */ - hardness: number; - /** The shield's broken threshold */ - brokenThreshold: number; - /** The shield's hit points */ - hp: ValueAndMax; - /** Whether the shield is raised */ - raised: boolean; - /** Whether the shield is broken */ - broken: boolean; - /** Whether the shield is destroyed (hp.value === 0) */ - destroyed: boolean; - /** An effect icon to use when the shield is raised */ - icon: ImageFilePath; -} -export { VisionLevels }; -export type { Abilities, AbilityData, BaseCreatureSource, CreatureActorType, CreatureAttributes, CreatureDetails, CreatureDetailsSource, CreatureHitPointsSource, CreatureInitiativeSource, CreatureLanguagesData, CreaturePerceptionData, CreatureResources, CreatureResourcesSource, CreatureSaves, CreatureSpeeds, CreatureSystemData, CreatureSystemSource, CreatureTraitsData, CreatureTraitsSource, HeldShieldData, LabeledSpeed, SaveData, SenseData, SkillData, VisionLevel, }; diff --git a/types/src/module/actor/creature/document.d.ts b/types/src/module/actor/creature/document.d.ts deleted file mode 100644 index b23b71dec..000000000 --- a/types/src/module/actor/creature/document.d.ts +++ /dev/null @@ -1,126 +0,0 @@ -import { ActorPF2e, type PartyPF2e } from "@actor"; -import { HitPointsSummary } from "@actor/base.ts"; -import { CreatureSource } from "@actor/data/index.ts"; -import { StatisticModifier } from "@actor/modifiers.ts"; -import { ActorSpellcasting } from "@actor/spellcasting.ts"; -import { MovementType, SaveType, SkillSlug } from "@actor/types.ts"; -import { ArmorPF2e, ItemPF2e, type PhysicalItemPF2e, type ShieldPF2e } from "@item"; -import { ItemType } from "@item/base/data/index.ts"; -import { ItemCarryType } from "@item/physical/data.ts"; -import type { ActiveEffectPF2e } from "@module/active-effect.ts"; -import { Rarity, ZeroToTwo } from "@module/data.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import type { CheckRoll } from "@system/check/index.ts"; -import { type ArmorStatistic, Statistic, StatisticDifficultyClass } from "@system/statistic/index.ts"; -import { PerceptionStatistic } from "@system/statistic/perception.ts"; -import { CreatureSpeeds, CreatureSystemData, LabeledSpeed, VisionLevel } from "./data.ts"; -import { CreatureTrait, CreatureType, CreatureUpdateOperation, GetReachParameters, ResourceData } from "./types.ts"; - -/** An "actor" in a Pathfinder sense rather than a Foundry one: all should contain attributes and abilities */ -declare abstract class CreaturePF2e extends ActorPF2e { - /** A separate collection of owned spellcasting entries for convenience */ - spellcasting: ActorSpellcasting; - parties: Set; - /** A creature always has an AC */ - armorClass: StatisticDifficultyClass; - /** Skill checks for the creature, built during data prep */ - skills: Record>; - /** Saving throw rolls for the creature, built during data prep */ - saves: Record; - perception: PerceptionStatistic; - get allowedItemTypes(): (ItemType | "physical")[]; - /** Types of creatures (as provided by bestiaries 1-3) of which this creature is a member */ - get creatureTypes(): CreatureType[]; - get rarity(): Rarity; - get hardness(): number; - /** - * A currently naive measurement of this creature's reach - * @param [context.action] The action context of the reach measurement. Interact actions don't consider weapons. - * @param [context.weapon] The "weapon," literal or otherwise, used in an attack-reach measurement - */ - getReach({ action, weapon }?: GetReachParameters): number; - get visionLevel(): VisionLevel; - get hasDarkvision(): boolean; - get hasLowLightVision(): boolean; - get canSee(): boolean; - get canAct(): boolean; - get canAttack(): boolean; - get isDead(): boolean; - /** Whether the creature emits sound: overridable by AE-like */ - get emitsSound(): boolean; - get isSpellcaster(): boolean; - get wornArmor(): ArmorPF2e | null; - /** Get the held shield of most use to the wielder */ - get heldShield(): ShieldPF2e | null; - /** Retrieve percpetion and spellcasting statistics */ - getStatistic(slug: SaveType | SkillSlug | "perception"): Statistic; - getStatistic(slug: string): Statistic | null; - protected _initialize(options?: Record): void; - prepareData(): void; - /** Setup base ephemeral data to be modified by active effects and derived-data preparation */ - prepareBaseData(): void; - prepareEmbeddedDocuments(): void; - protected prepareDataFromItems(): void; - prepareDerivedData(): void; - protected prepareSynthetics(): void; - /** - * Changes the carry type of an item (held/worn/stowed/etc) and/or regrips/reslots - * @param item The item - * @param options Options to specify how the item should be carried - */ - changeCarryType(item: PhysicalItemPF2e, { carryType, handsHeld, inSlot }: ChangeCarryTypeOptions): Promise; - /** - * Adds a custom modifier that will be included when determining the final value of a stat. The slug generated by - * the name parameter must be unique for the custom modifiers for the specified stat, or it will be ignored. - */ - addCustomModifier(stat: string, label: string, value: number, type: string): Promise; - /** Removes a custom modifier by slug */ - removeCustomModifier(stat: string, slug: string): Promise; - /** - * Roll a Recovery Check - * Prompt the user for input regarding Advantage/Disadvantage and any Situational Bonus - */ - rollRecovery(event?: MouseEvent): Promise | null>; - /** Returns a resource by slug or by key */ - getResource(resource: string): ResourceData | null; - /** - * Updates a resource. Redirects to special resources if needed. - * Accepts resource slugs in both kebab and dromedary, to handle token updates and direct ones. - */ - updateResource(resource: string, value: number, { render }?: { - render?: boolean; - }): Promise; - prepareSpeed(movementType: "land"): this["system"]["attributes"]["speed"]; - prepareSpeed(movementType: Exclude): (LabeledSpeed & StatisticModifier) | null; - prepareSpeed(movementType: MovementType): CreatureSpeeds | (LabeledSpeed & StatisticModifier) | null; - /** Remove any features linked to a to-be-deleted ABC item */ - deleteEmbeddedDocuments(embeddedName: "ActiveEffect" | "Item", ids: string[], operation?: Partial>): Promise[] | ItemPF2e[]>; - protected _preUpdate(changed: DeepPartial, options: CreatureUpdateOperation, user: UserPF2e): Promise; - /** Overriden to notify the party that an update is required */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface CreaturePF2e extends ActorPF2e { - readonly _source: CreatureSource; - system: CreatureSystemData; - get traits(): Set; - get hitPoints(): HitPointsSummary; - /** Extend `DatabaseUpdateOperation` for creatures */ - update(data: Record, operation?: Partial>): Promise; - /** See implementation in class */ - updateEmbeddedDocuments(embeddedName: "ActiveEffect", updateData: EmbeddedDocumentUpdateData[], operation?: Partial>): Promise[]>; - updateEmbeddedDocuments(embeddedName: "Item", updateData: EmbeddedDocumentUpdateData[], operation?: Partial>): Promise[]>; - updateEmbeddedDocuments(embeddedName: "ActiveEffect" | "Item", updateData: EmbeddedDocumentUpdateData[], operation?: Partial>): Promise[] | ItemPF2e[]>; - deleteEmbeddedDocuments(embeddedName: "ActiveEffect", ids: string[], operation?: Partial>): Promise[]>; - deleteEmbeddedDocuments(embeddedName: "Item", ids: string[], operation?: Partial>): Promise[]>; - deleteEmbeddedDocuments(embeddedName: "ActiveEffect" | "Item", ids: string[], operation?: Partial>): Promise[] | ItemPF2e[]>; -} -interface ChangeCarryTypeOptions { - /** Whether the item is held, worn, stowed, etc. */ - carryType: ItemCarryType; - /** If requesting to hold the item, how many holds with which to holt it */ - handsHeld?: ZeroToTwo; - /** If requesting to wear the item, and the item has a usage slot, whether the item to be in the slot */ - inSlot?: boolean; -} -export { CreaturePF2e }; diff --git a/types/src/module/actor/creature/helpers.d.ts b/types/src/module/actor/creature/helpers.d.ts deleted file mode 100644 index a419ec4e3..000000000 --- a/types/src/module/actor/creature/helpers.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { ActorPF2e, CreaturePF2e } from "@actor"; -import { ModifierPF2e } from "@actor/modifiers.ts"; -import type { AbilityItemPF2e, MeleePF2e, WeaponPF2e } from "@item"; -/** A static class of helper functions for applying automation for certain weapon traits on attack rolls */ -declare class AttackTraitHelpers { - protected static getLabel(traitOrTag: string): string; - protected static getUnannotatedTrait(trait: string): string; - static createAttackModifiers({ item, domains }: CreateAttackModifiersParams): ModifierPF2e[]; -} -interface CreateAttackModifiersParams { - item: AbilityItemPF2e | WeaponPF2e | MeleePF2e; - domains: string[]; -} -/** Set immunities for creatures with traits call for them */ -declare function setImmunitiesFromTraits(actor: CreaturePF2e): void; -declare function imposeEncumberedCondition(actor: CreaturePF2e): void; -export { AttackTraitHelpers, imposeEncumberedCondition, setImmunitiesFromTraits }; diff --git a/types/src/module/actor/creature/index.d.ts b/types/src/module/actor/creature/index.d.ts deleted file mode 100644 index 02afa3b35..000000000 --- a/types/src/module/actor/creature/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./data.ts"; -export * from "./document.ts"; -export * from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/actor/creature/sense.d.ts b/types/src/module/actor/creature/sense.d.ts deleted file mode 100644 index 954a2c9c6..000000000 --- a/types/src/module/actor/creature/sense.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { NumberField, StringField } from "types/foundry/common/data/fields.d.ts"; -import type { SenseData } from "./data.ts"; -import type { SenseAcuity, SenseType } from "./index.ts"; -declare class Sense extends foundry.abstract.DataModel { - constructor(data: SenseConstructorParams, options: DataModelConstructionOptions); - static defineSchema(): SenseSchema; - /** The localized label of the sense */ - get label(): string | null; - /** Whether to emphasize the label when displayed on actor sheets */ - get emphasizeLabel(): boolean; - isMoreAcuteThan(sense: { - acuity: SenseAcuity; - }): boolean; - toObject(source?: true): this["_source"]; - toObject(source: false): LabeledSenseData; - toObject(source?: boolean): this["_source"] | LabeledSenseData; -} -interface Sense extends foundry.abstract.DataModel, ModelPropsFromSchema { - range: number; -} -type SenseConstructorParams = Partial> & { - type: SenseType; - range?: number | null; -}; -type SenseSchema = { - type: StringField; - acuity: StringField; - range: NumberField; - source: StringField; -}; -type LabeledSenseData = RawObject & { - range: number; - label: string | null; - emphasizeLabel: boolean; -}; -export { Sense, type LabeledSenseData }; diff --git a/types/src/module/actor/creature/sheet.d.ts b/types/src/module/actor/creature/sheet.d.ts deleted file mode 100644 index 5d74f6df4..000000000 --- a/types/src/module/actor/creature/sheet.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -/// -/// -/// -import type { ActorPF2e, CreaturePF2e } from "@actor"; -import { ActorSheetDataPF2e } from "@actor/sheet/data-types.ts"; -import { ItemPF2e } from "@item"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { SpellcastingSheetData } from "@item/spellcasting-entry/index.ts"; -import { DropCanvasItemDataPF2e } from "@module/canvas/drop-canvas-data.ts"; -import { ZeroToFour } from "@module/data.ts"; -import { ActorSheetPF2e, SheetClickActionHandlers } from "../sheet/base.ts"; -import { CreatureConfig } from "./config.ts"; -import { Language, ResourceData } from "./index.ts"; - -/** - * Base class for NPC and character sheets - * @category Actor - */ -declare abstract class CreatureSheetPF2e extends ActorSheetPF2e { - #private; - /** A DocumentSheet class presenting additional, per-actor settings */ - protected abstract readonly actorConfigClass: ConstructorOf> | null; - getData(options?: Partial): Promise>; - protected prepareSpellcasting(): Promise; - /** Get the font-awesome icon used to display a certain level of skill proficiency */ - protected getProficiencyIcon(level: ZeroToFour): string; - activateListeners($html: JQuery): void; - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; - protected _onDropItem(event: DragEvent, data: DropCanvasItemDataPF2e): Promise; - /** Adds support for moving spells between spell levels, spell collections, and spell preparation */ - protected _onSortItem(event: DragEvent, itemData: ItemSourcePF2e): Promise; - /** Handle dragging spells onto spell slots. */ - protected _handleDroppedItem(event: DragEvent, item: ItemPF2e, data: DropCanvasItemDataPF2e): Promise[]>; - /** Replace sheet config with a special PC config form application */ - protected _getHeaderButtons(): ApplicationHeaderButton[]; - /** Redirect an update to shield HP to the actual item */ - protected _updateObject(event: Event, formData: Record): Promise; -} -interface CreatureSheetData extends ActorSheetDataPF2e { - actorSizes: typeof CONFIG.PF2E.actorSizes; - rarity: typeof CONFIG.PF2E.rarityTraits; - frequencies: typeof CONFIG.PF2E.frequencies; - pfsFactions: typeof CONFIG.PF2E.pfsFactions; - languages: { - slug: Language | null; - label: string; - }[]; - initiativeOptions: FormSelectOption[]; - dying: { - maxed: boolean; - remainingDying: number; - remainingWounded: number; - }; - specialResources: ResourceData[]; -} -export { CreatureSheetPF2e, type CreatureSheetData }; diff --git a/types/src/module/actor/creature/spell-preparation-sheet.d.ts b/types/src/module/actor/creature/spell-preparation-sheet.d.ts deleted file mode 100644 index 834ed6ccc..000000000 --- a/types/src/module/actor/creature/spell-preparation-sheet.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -/// -/// -/// -import type { ActorPF2e, CreaturePF2e } from "@actor"; -import { ItemSummaryRenderer } from "@actor/sheet/item-summary-renderer.ts"; -import type { ItemPF2e } from "@item"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { SpellcastingEntryPF2e, SpellcastingSheetData } from "@item/spellcasting-entry/index.ts"; -import { ZeroToTen } from "@module/data.ts"; -/** - * Sheet used to render the the spell list for prepared casting. - * It overrides the actor sheet to inherit important drag/drop behavior for actor items (the spells). - */ -declare class SpellPreparationSheet extends ActorSheet { - #private; - /** Implementation used to handle the toggling and rendering of item summaries */ - itemRenderer: ItemSummaryRenderer | null>, this>; - item: SpellcastingEntryPF2e; - constructor(item: SpellcastingEntryPF2e, options: Partial); - static get defaultOptions(): ActorSheetOptions; - /** Avoid conflicting with the real actor sheet */ - get id(): string; - get title(): string; - /** - * This being an actor sheet saves us from most drag and drop re-implementation, - * but we still have a gotcha in the form of the header buttons. - */ - protected _getHeaderButtons(): ApplicationHeaderButton[]; - getData(): Promise>; - activateListeners($html: JQuery): void; - /** Filter spells by search query */ - protected _onSearchFilter(_event: KeyboardEvent, query: string, _rgx: RegExp, html: HTMLElement | null): void; - /** Allow adding new spells to the shortlist by dragging directly into the window */ - protected _onDropItemCreate(itemSource: ItemSourcePF2e | ItemSourcePF2e[]): Promise[]>; - /** Allow transferring spells between open windows */ - protected _onSortItem(event: DragEvent, itemData: ItemSourcePF2e): Promise; - /** Override of inner render function to maintain item summary state */ - protected _renderInner(data: Record, options: RenderOptions): Promise; -} -interface SpellPreparationSheetData extends ActorSheetData { - owner: boolean; - entry: SpellcastingSheetData; - maxRank: ZeroToTen; -} -export { SpellPreparationSheet }; diff --git a/types/src/module/actor/creature/types.d.ts b/types/src/module/actor/creature/types.d.ts deleted file mode 100644 index 09927f8c4..000000000 --- a/types/src/module/actor/creature/types.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { ActorPF2e, ActorUpdateOperation } from "@actor/base.ts"; -import type { CREATURE_ACTOR_TYPES } from "@actor/values.ts"; -import type { AbilityItemPF2e, MeleePF2e, WeaponPF2e } from "@item"; -import { LabeledValueAndMax } from "@module/data.ts"; -import type { TokenDocumentPF2e } from "@scene/index.ts"; -import type { LANGUAGES_BY_RARITY, SENSE_TYPES } from "./values.ts"; - -/** A `CreaturePF2e` subtype string */ -type CreatureActorType = (typeof CREATURE_ACTOR_TYPES)[number]; -type CreatureTrait = keyof typeof CONFIG.PF2E.creatureTraits; -/** One of the major creature types given in the Pathfinder bestiaries */ -type CreatureType = keyof typeof CONFIG.PF2E.creatureTypes; -type Language = "common" | (typeof LANGUAGES_BY_RARITY.common)[number] | (typeof LANGUAGES_BY_RARITY.uncommon)[number] | (typeof LANGUAGES_BY_RARITY.rare)[number] | (typeof LANGUAGES_BY_RARITY.secret)[number]; -type Attitude = keyof typeof CONFIG.PF2E.attitude; -type ModeOfBeing = "living" | "undead" | "construct" | "object"; -type SenseAcuity = "precise" | "imprecise" | "vague"; -type SenseType = SetElement; -type SpecialVisionType = Extract; -interface GetReachParameters { - action?: "interact" | "attack"; - weapon?: Maybe | WeaponPF2e | MeleePF2e>; -} -interface CreatureUpdateOperation extends ActorUpdateOperation { - allowHPOverage?: boolean; -} -interface ResourceData extends LabeledValueAndMax { - slug: string; -} -export type { Attitude, CreatureActorType, CreatureTrait, CreatureType, CreatureUpdateOperation, GetReachParameters, Language, ModeOfBeing, ResourceData, SenseAcuity, SenseType, SpecialVisionType, }; diff --git a/types/src/module/actor/creature/values.d.ts b/types/src/module/actor/creature/values.d.ts deleted file mode 100644 index 4b77b4c54..000000000 --- a/types/src/module/actor/creature/values.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import type { Language, SenseAcuity, SenseType } from "./types.ts"; - -declare const ALLIANCES: Set<"party" | "opposition" | null>; -declare const SAVING_THROW_ATTRIBUTES: { - readonly fortitude: "con"; - readonly reflex: "dex"; - readonly will: "wis"; -}; -/** Use the lower end of CRB Table 9-1 ("Size and Reach"), allowing individual attacks to specify otherwise */ -declare const SIZE_TO_REACH: { - readonly tiny: 0; - readonly sm: 5; - readonly med: 5; - readonly lg: 5; - readonly huge: 10; - readonly grg: 15; -}; -declare const SENSE_TYPES: Set<"darkvision" | "echolocation" | "greater-darkvision" | "infrared-vision" | "lifesense" | "low-light-vision" | "magicsense" | "motion-sense" | "scent" | "see-invisibility" | "spiritsense" | "thoughtsense" | "tremorsense" | "truesight" | "wavesense">; -/** Sense types associated with a particular acuities by definition */ -declare const SENSES_WITH_MANDATORY_ACUITIES: { - [K in SenseType]?: SenseAcuity; -}; -declare const SENSES_WITH_UNLIMITED_RANGE: readonly ["darkvision", "greater-darkvision", "low-light-vision", "see-invisibility"]; -declare const SENSE_ACUITIES: readonly ["precise", "imprecise", "vague"]; -declare const LANGUAGES_BY_RARITY: { - common: readonly ["draconic", "dwarven", "elven", "fey", "gnomish", "goblin", "halfling", "jotun", "orcish", "sakvroth", "taldane"]; - uncommon: readonly ["adlet", "aklo", "alghollthu", "amurrun", "arboreal", "boggard", "calda", "caligni", "chthonian", "cyclops", "daemonic", "diabolic", "ekujae", "empyrean", "grippli", "hallit", "iruxi", "kelish", "kholo", "kibwani", "kitsune", "lirgeni", "muan", "mwangi", "mzunu", "nagaji", "necril", "ocotan", "osiriani", "petran", "protean", "pyric", "requian", "shadowtongue", "shoanti", "skald", "sphinx", "sussuran", "tang", "tengu", "thalassic", "tien", "utopian", "vanara", "varisian", "vudrani", "xanmba", "wayang", "ysoki"]; - rare: readonly ["akitonian", "anadi", "ancient-osiriani", "androffan", "anugobu", "arcadian", "azlanti", "destrachan", "drooni", "dziriak", "elder-thing", "erutaki", "formian", "garundi", "girtablilu", "goloma", "grioth", "hwan", "iblydan", "ikeshti", "immolis", "jistkan", "jyoti", "kaava", "kashrishi", "kovintal", "lashunta", "mahwek", "migo", "minaten", "minkaian", "munavri", "okaiyan", "orvian", "rasu", "ratajin", "razatlani", "russian", "samsaran", "sasquatch", "senzar", "shae", "shisk", "shobhad", "shoony", "shory", "strix", "surki", "talican", "tanuki", "tekritanin", "thassilonian", "varki", "vishkanyan", "wyrwood", "yaksha", "yithian"]; - secret: readonly ["wildsong"]; -}; -declare const LANGUAGES: Language[]; -declare const LANGUAGE_RARITIES: readonly ["common", "uncommon", "rare", "secret"]; -export { ALLIANCES, LANGUAGES, LANGUAGES_BY_RARITY, LANGUAGE_RARITIES, SAVING_THROW_ATTRIBUTES, SENSES_WITH_MANDATORY_ACUITIES, SENSES_WITH_UNLIMITED_RANGE, SENSE_ACUITIES, SENSE_TYPES, SIZE_TO_REACH, }; diff --git a/types/src/module/actor/data/base.d.ts b/types/src/module/actor/data/base.d.ts deleted file mode 100644 index 214175a94..000000000 --- a/types/src/module/actor/data/base.d.ts +++ /dev/null @@ -1,273 +0,0 @@ -import type { ActorPF2e, ActorType } from "@actor"; -import type { DexterityModifierCapData } from "@actor/character/types.ts"; -import type { Abilities } from "@actor/creature/data.ts"; -import type { InitiativeTraceData } from "@actor/initiative.ts"; -import type { StatisticModifier } from "@actor/modifiers.ts"; -import type { ActorAlliance, AttributeString, SkillSlug } from "@actor/types.ts"; -import type { MeleePF2e, WeaponPF2e } from "@item"; -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { MigrationRecord, Rarity, Size, ValueAndMaybeMax, ZeroToTwo } from "@module/data.ts"; -import type { AutoChangeEntry } from "@module/rules/rule-element/ae-like.ts"; -import type { AttackRollParams, DamageRollParams, RollParameters } from "@module/system/rolls.ts"; -import type { CheckRoll } from "@system/check/roll.ts"; -import type { DamageRoll } from "@system/damage/roll.ts"; -import type { StatisticTraceData } from "@system/statistic/data.ts"; -import type { Immunity, ImmunitySource, Resistance, ResistanceSource, Weakness, WeaknessSource } from "./iwr.ts"; -import type { ActorSizePF2e } from "./size.ts"; - -/** Base interface for all actor data */ -type BaseActorSourcePF2e = foundry.documents.ActorSource & { - flags: DeepPartial; - prototypeToken: PrototypeTokenSourcePF2e; -}; -type ActorFlagsPF2e = DocumentFlags & { - pf2e: { - rollOptions: RollOptionFlags; - /** IDs of granted items that are tracked */ - trackedItems: Record; - hideStowed?: boolean; - [key: string]: unknown; - }; -}; -type ActorSystemSource = { - details?: ActorDetailsSource; - attributes?: ActorAttributesSource; - traits?: ActorTraitsSource; - /** A record of this actor's current world schema version as well a log of the last migration to occur */ - _migration: MigrationRecord; - /** Legacy location of `MigrationRecord` */ - schema?: object; -}; -interface ActorAttributesSource { - hp?: ActorHitPointsSource; - immunities?: ImmunitySource[]; - weaknesses?: WeaknessSource[]; - resistances?: ResistanceSource[]; -} -interface ActorHitPointsSource extends ValueAndMaybeMax { - temp?: number; -} -interface ActorDetailsSource { - /** The level of this actor */ - level?: { - value: number; - }; - /** The alliance this NPC belongs to: relevant to mechanics like flanking */ - alliance?: ActorAlliance; -} -interface ActorSystemData extends ActorSystemSource { - abilities?: Abilities; - details: ActorDetails; - actions?: StrikeData[]; - attributes: ActorAttributes; - traits?: ActorTraitsData; - /** Initiative, used to determine turn order in encounters */ - initiative?: InitiativeTraceData; - /** An audit log of automatic, non-modifier changes applied to various actor data nodes */ - autoChanges: Record; -} -interface ActorAttributes extends ActorAttributesSource { - hp?: ActorHitPoints; - ac?: { - value: number; - }; - immunities: Immunity[]; - weaknesses: Weakness[]; - resistances: Resistance[]; - shield?: { - raised: boolean; - broken: boolean; - itemId: string | null; - }; - flanking: FlankingData; -} -interface FlankingData { - /** Whether the actor can flank at all */ - canFlank: boolean; - /** Given the actor can flank, the conditions under which it can do so without an ally opposite the target */ - canGangUp: GangUpCircumstance[]; - /** Whether the actor can be flanked at all */ - flankable: boolean; - /** Given the actor is flankable, whether it is off-guard when flanked */ - offGuardable: OffGuardableCircumstance; -} -interface ActorHitPoints extends Required { - unrecoverable: number; - negativeHealing: boolean; -} -interface ActorDetails extends ActorDetailsSource { - level: { - value: number; - }; - alliance: ActorAlliance; -} -interface RollOptionFlags { - all: Record; - [key: string]: Record | undefined; -} -/** Basic hitpoints data fields */ -interface BaseHitPointsSource { - /** The current amount of hitpoints the character has. */ - value: number; - /** The maximum number of hitpoints this character has. */ - max?: number; - /** If defined, the amount of temporary hitpoints this character has. */ - temp: number; - /** Any details about hit points. */ - details: string; -} -type OffGuardableCircumstance = -/** Flat-footable in all flanking situations */ -true -/** Flat-footable if the flanker's level is less than or equal to the actor's own */ - | number -/** Never off-guardable */ - | false; -type GangUpCircumstance = -/** Requires at least `number` allies within melee reach of the target */ -number -/** Requires the actor's animal companion to be adjacent to the target */ - | "animal-companion" -/** Requires the actor's eidolon to be adjacent to the target */ - | "eidolon" -/** The Gang Up rogue feat allows allies to flank with the gang-upper */ - | true; -/** Data related to actor hitpoints. */ -type HitPointsStatistic = StatisticModifier & ActorHitPoints; -interface ActorTraitsSource { - /** Actual Pathfinder traits */ - value: TTrait[]; - /** The rarity of the actor */ - rarity?: Rarity; - /** The actor's size category */ - size?: { - value: Size; - }; -} -interface ActorTraitsData extends ActorTraitsSource { - size?: ActorSizePF2e; -} -/** Basic skill and save data (not including custom modifiers). */ -interface AttributeBasedTraceData extends StatisticTraceData { - attribute: AttributeString; - /** The actual modifier for this martial type */ - value: number; - /** Describes how the value was computed */ - breakdown: string; -} -/** A roll function which can be called to roll a given skill. */ -type RollFunction = (params: T) => Promise | null | string | void>; -type DamageRollFunction = (params?: DamageRollParams) => Promise | null>; -interface InitiativeData extends StatisticTraceData { - statistic: SkillSlug | "perception"; - /** - * If a pair of initiative rolls are tied, the next resolution step is the tiebreak priority. A lower value - * constitutes a higher priority. - */ - tiebreakPriority: ZeroToTwo; -} -/** The full data for creature or hazard AC; includes the armor check penalty. */ -interface ArmorClassData { - /** The actual AC value */ - value: number; - /** A textual breakdown of the modifiers that compose the value */ - breakdown: string; - /** The armor check penalty imposed by the worn armor. */ - check?: number; - /** The cap for the bonus that dexterity can give to AC, if any. If null, there is no cap. */ - dexCap?: DexterityModifierCapData; -} -interface TraitViewData { - /** The name of this action. */ - name: string; - /** The label for this action which will be rendered on the UI. */ - label: string; - /** The roll this trait applies to, if relevant. */ - rollName?: string; - /** The option that this trait applies to the roll (of type `rollName`). */ - rollOption?: string; - /** An extra css class added to the UI marker for this trait. */ - cssClass?: string; - /** The description of the trait */ - description: string | null; -} -/** An strike which a character can use. */ -interface StrikeData extends StatisticModifier { - slug: string; - label: string; - /** The type of action; currently just 'strike'. */ - type: "strike"; - /** The glyph for this strike (how many actions it takes, reaction, etc). */ - glyph: string; - /** A description of this strike. */ - description: string; - /** A description of what happens on a critical success. */ - criticalSuccess: string; - /** A description of what happens on a success. */ - success: string; - /** Action traits associated with this strike */ - traits: TraitViewData[]; - /** Any options always applied to this strike */ - options: string[]; - /** - * Whether the strike and its auxiliary actions are available (usually when the weapon corresponding with the - * strike is equipped) - */ - ready: boolean; - /** Whether striking itself, independent of the auxiliary actions, is possible */ - canStrike: boolean; - /** Alias for `attack`. */ - roll?: RollFunction; - /** Roll to attack with the given strike (with no MAP; see `variants` for MAPs.) */ - attack?: RollFunction; - /** Roll normal (non-critical) damage for this weapon. */ - damage?: DamageRollFunction; - /** Roll critical damage for this weapon. */ - critical?: DamageRollFunction; - /** Alternative usages of a strike weapon: thrown, combination-melee, etc. */ - altUsages?: StrikeData[]; - /** A list of attack variants which apply the Multiple Attack Penalty. */ - variants: { - label: string; - roll: RollFunction; - }[]; - /** Ammunition choices and selected ammo if this is a ammo consuming weapon. */ - ammunition?: { - compatible: { - id: string; - label: string; - }[]; - incompatible: { - id: string; - label: string; - }[]; - selected: { - id: string; - compatible: boolean; - } | null; - }; - /** The weapon or melee item--possibly ephemeral--being used for the strike */ - item: WeaponPF2e | MeleePF2e; -} -/** Any skill or similar which provides a roll option for rolling this save. */ -interface Rollable { - /** Roll this save or skill with the given options (caused by the given event, and with the given optional callback). */ - roll: RollFunction; -} -type PrototypeTokenSourcePF2e = foundry.data.PrototypeTokenSource & { - flags: { - pf2e?: { - linkToActorSize?: boolean; - autoscale?: boolean; - }; - }; -}; -interface PrototypeTokenPF2e extends foundry.data.PrototypeToken { - flags: DocumentFlags & { - pf2e: { - linkToActorSize: boolean; - autoscale: boolean; - }; - }; -} -export type { ActorAttributes, ActorAttributesSource, ActorDetails, ActorDetailsSource, ActorFlagsPF2e, ActorHitPoints, ActorHitPointsSource, ActorSystemData, ActorSystemSource, ActorTraitsData, ActorTraitsSource, ArmorClassData, AttributeBasedTraceData, BaseActorSourcePF2e, BaseHitPointsSource, DamageRollFunction, FlankingData, GangUpCircumstance, HitPointsStatistic, InitiativeData, PrototypeTokenPF2e, Rollable, RollFunction, RollOptionFlags, StrikeData, TraitViewData, }; diff --git a/types/src/module/actor/data/index.d.ts b/types/src/module/actor/data/index.d.ts deleted file mode 100644 index 2fb16bf82..000000000 --- a/types/src/module/actor/data/index.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { ArmySource } from "@actor/army/data.ts"; -import { CharacterSource } from "@actor/character/data.ts"; -import { FamiliarSource } from "@actor/familiar/data.ts"; -import { HazardSource } from "@actor/hazard/data.ts"; -import { LootSource } from "@actor/loot/data.ts"; -import { NPCSource } from "@actor/npc/data.ts"; -import { PartySource } from "@actor/party/data.ts"; -import { VehicleSource } from "@actor/vehicle/data.ts"; -import { StatisticRollParameters } from "@system/statistic/index.ts"; -type CreatureSource = CharacterSource | NPCSource | FamiliarSource; -type ActorSourcePF2e = ArmySource | CreatureSource | HazardSource | LootSource | PartySource | VehicleSource; -interface RollInitiativeOptionsPF2e extends RollInitiativeOptions, StatisticRollParameters { - secret?: boolean; -} -export type { ActorSourcePF2e, ArmySource, CharacterSource, CreatureSource, FamiliarSource, HazardSource, LootSource, NPCSource, PartySource, RollInitiativeOptionsPF2e, VehicleSource, }; diff --git a/types/src/module/actor/data/iwr.d.ts b/types/src/module/actor/data/iwr.d.ts deleted file mode 100644 index b62e582af..000000000 --- a/types/src/module/actor/data/iwr.d.ts +++ /dev/null @@ -1,322 +0,0 @@ -import { ImmunityType, IWRType, ResistanceType, WeaknessType } from "@actor/types.ts"; -import { IWRException } from "@module/rules/rule-element/iwr/base.ts"; -import { Predicate, PredicateStatement } from "@system/predication.ts"; - -declare abstract class IWR { - #private; - readonly type: TType; - readonly exceptions: IWRException[]; - /** A definition for a custom IWR */ - readonly definition: Predicate | null; - source: string | null; - protected abstract readonly typeLabels: Record; - constructor(data: IWRConstructorData); - abstract get label(): string; - /** A label showing the type, exceptions, and doubleVs but no value (in case of weaknesses and resistances) */ - get applicationLabel(): string; - /** A label consisting of just the type */ - get typeLabel(): string; - protected describe(iwrType: IWRException): PredicateStatement[]; - get predicate(): Predicate; - toObject(): Readonly>; - /** Construct an object argument for Localization#format (see also PF2E.Actor.IWR.CompositeLabel in en.json) */ - protected createFormatData({ list, prefix, }: { - list: IWRException[]; - prefix: string; - }): Record; - test(statements: string[] | Set): boolean; -} -type IWRConstructorData = { - type: TType; - exceptions?: IWRException[]; - customLabel?: Maybe; - definition?: Maybe; - source?: string | null; -}; -type IWRDisplayData = Pick, "type" | "exceptions" | "source" | "label">; -declare class Immunity extends IWR implements ImmunitySource { - protected readonly typeLabels: { - acid: string; - air: string; - alchemical: string; - "area-damage": string; - auditory: string; - bleed: string; - blinded: string; - bludgeoning: string; - clumsy: string; - cold: string; - confused: string; - controlled: string; - "critical-hits": string; - curse: string; - custom: string; - dazzled: string; - deafened: string; - "death-effects": string; - detection: string; - disease: string; - doomed: string; - drained: string; - earth: string; - electricity: string; - emotion: string; - energy: string; - enfeebled: string; - fascinated: string; - fatigued: string; - "fear-effects": string; - fire: string; - fleeing: string; - force: string; - "fortune-effects": string; - frightened: string; - grabbed: string; - healing: string; - illusion: string; - immobilized: string; - inhaled: string; - light: string; - magic: string; - mental: string; - metal: string; - "misfortune-effects": string; - "non-magical": string; - "nonlethal-attacks": string; - "object-immunities": string; - "off-guard": string; - olfactory: string; - paralyzed: string; - "persistent-damage": string; - petrified: string; - physical: string; - piercing: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - precision: string; - prone: string; - radiation: string; - restrained: string; - "salt-water": string; - scrying: string; - sickened: string; - slashing: string; - sleep: string; - slowed: string; - sonic: string; - "spell-deflection": string; - spirit: string; - stunned: string; - stupefied: string; - "swarm-attacks": string; - "swarm-mind": string; - trip: string; - "unarmed-attacks": string; - unconscious: string; - visual: string; - vitality: string; - void: string; - water: string; - wood: string; - wounded: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - }; - /** No value on immunities, so the full label is the same as the application label */ - get label(): string; -} -interface IWRSource { - type: TType; - exceptions?: IWRException[]; -} -type ImmunitySource = IWRSource; -declare class Weakness extends IWR implements WeaknessSource { - protected readonly typeLabels: { - acid: string; - air: string; - alchemical: string; - "all-damage": string; - "area-damage": string; - "arrow-vulnerability": string; - "axe-vulnerability": string; - bleed: string; - bludgeoning: string; - cold: string; - "critical-hits": string; - custom: string; - earth: string; - electricity: string; - emotion: string; - energy: string; - fire: string; - force: string; - "ghost-touch": string; - glass: string; - light: string; - magical: string; - mental: string; - metal: string; - mythic: string; - "non-magical": string; - "nonlethal-attacks": string; - "persistent-damage": string; - physical: string; - piercing: string; - plant: string; - poison: string; - precision: string; - radiation: string; - salt: string; - "salt-water": string; - slashing: string; - sonic: string; - spells: string; - spirit: string; - "splash-damage": string; - "unarmed-attacks": string; - "vampire-weaknesses": string; - vitality: string; - void: string; - vorpal: string; - "vorpal-fear": string; - "vulnerable-to-sunlight": string; - water: string; - weapons: string; - "weapons-shedding-bright-light": string; - wood: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - }; - value: number; - constructor(data: IWRConstructorData & { - value: number; - }); - get label(): string; - toObject(): Readonly; -} -type WeaknessDisplayData = IWRDisplayData & Pick; -interface WeaknessSource extends IWRSource { - value: number; -} -declare class Resistance extends IWR implements ResistanceSource { - protected readonly typeLabels: { - acid: string; - air: string; - alchemical: string; - "all-damage": string; - "area-damage": string; - axes: string; - bleed: string; - bludgeoning: string; - cold: string; - "critical-hits": string; - custom: string; - "damage-from-spells": string; - earth: string; - electricity: string; - energy: string; - fire: string; - force: string; - "ghost-touch": string; - light: string; - magical: string; - mental: string; - metal: string; - mythic: string; - "non-magical": string; - nonlethal: string; - "nonlethal-attacks": string; - "persistent-damage": string; - physical: string; - piercing: string; - plant: string; - poison: string; - precision: string; - "protean-anatomy": string; - radiation: string; - salt: string; - "salt-water": string; - slashing: string; - sonic: string; - spells: string; - spirit: string; - "unarmed-attacks": string; - vitality: string; - void: string; - vorpal: string; - "vorpal-adamantine": string; - water: string; - weapons: string; - "weapons-shedding-bright-light": string; - wood: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - }; - value: number; - readonly doubleVs: IWRException[]; - constructor(data: IWRConstructorData & { - value: number; - doubleVs?: IWRException[]; - }); - get label(): string; - get applicationLabel(): string; - toObject(): ResistanceDisplayData; - /** Get the doubled value of this resistance if present and applicable to a given instance of damage */ - getDoubledValue(damageDescription: Set): number; -} -type ResistanceDisplayData = IWRDisplayData & Pick; -interface ResistanceSource extends IWRSource { - value: number; - doubleVs?: IWRException[]; -} -/** Weaknesses to things that "[don't] normally deal damage, such as water": applied separately as untyped damage */ -declare const NON_DAMAGE_WEAKNESSES: Set; -export { Immunity, NON_DAMAGE_WEAKNESSES, Resistance, Weakness }; -export type { ImmunitySource, IWRSource, ResistanceSource, WeaknessSource }; diff --git a/types/src/module/actor/data/model.d.ts b/types/src/module/actor/data/model.d.ts deleted file mode 100644 index a4dc8da74..000000000 --- a/types/src/module/actor/data/model.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { MigrationDataField } from "@module/data.ts"; -import type { AutoChangeEntry } from "@module/rules/rule-element/ae-like.ts"; - -declare abstract class ActorSystemModel extends foundry.abstract - .TypeDataModel { - autoChanges: Record; - static defineSchema(): ActorSystemSchema; -} -type ActorSystemSchema = { - _migration: MigrationDataField; -}; -export { ActorSystemModel, type ActorSystemSchema }; diff --git a/types/src/module/actor/data/size.d.ts b/types/src/module/actor/data/size.d.ts deleted file mode 100644 index aedf69ec2..000000000 --- a/types/src/module/actor/data/size.d.ts +++ /dev/null @@ -1,79 +0,0 @@ -import { Size } from "@module/data.ts"; - -export declare class ActorSizePF2e { - /** The size category of this category */ - value: Size; - /** The length dimension of this actor's space */ - length: number; - /** The width dimension of this actor's space */ - width: number; - /** The default space (in a Pathfinder 2e rules context) of each size */ - private static defaultSpaces; - /** A ranked ordering of sizes */ - private static sizeRanks; - /** - * @param value A size category - * @param [length] A length of a Pathfinder "space" - * @param [width] A width of a Pathfinder "space" - * @param [smallIsMedium] Treat small as medium - */ - constructor(params: { - value?: Size; - length?: number; - width?: number; - smallIsMedium?: boolean; - }); - /** - * Test for equality between this and another size, falling back to comparing areas in case of a category tie - * @param size The size to which this size is being compared - * @param [smallIsMedium] Treat small as medium for both sizes - */ - equals(size: ActorSizePF2e | Size, { smallIsMedium }?: { - smallIsMedium?: boolean | undefined; - }): boolean; - /** - * Test whether this size is larger than another, falling back to comparing areas in case of a category tie - * @param size The size to which this size is being compared - * @param [smallIsMedium] Treat small as medium for both sizes - */ - isLargerThan(size: ActorSizePF2e | Size, { smallIsMedium }?: { - smallIsMedium?: boolean | undefined; - }): boolean; - /** - * Test whether this size is smaller than another, falling back to comparing areas in case of a category tie - * @param size The size to which this size is being compared - * @param [smallIsMedium] Treat small as medium for both sizes - */ - isSmallerThan(size: ActorSizePF2e | Size, { smallIsMedium }?: { - smallIsMedium?: boolean | undefined; - }): boolean; - /** - * Get the difference in number of size categories between this and another size - * @param size The size to which this size is being compared - * @param [smallIsMedium] Ignore the difference between small and medium - */ - difference(size: ActorSizePF2e, { smallIsMedium }?: { - smallIsMedium?: boolean | undefined; - }): number; - /** - * Get the "effective" size of a size category in case the `smallIsMedium` option was passed - * @param size The size used for comparison in the calling method - * @param [smallIsMedium] Return this size if both this and `size` are small or medium - */ - private getEffectiveSize; - /** - * Increase this size the next larger category - * @param [skipSmall] Skip a size if the current size is tiny or small - */ - increment({ skipSmall }?: { - skipSmall?: boolean | undefined; - }): void; - /** - * Increase this size the next smaller category - * @param [skipSmall] Skip a size if the current size is tiny or small - */ - decrement({ skipSmall }?: { - skipSmall?: boolean | undefined; - }): void; - toString(): string; -} diff --git a/types/src/module/actor/familiar/data.d.ts b/types/src/module/actor/familiar/data.d.ts deleted file mode 100644 index 502f95a42..000000000 --- a/types/src/module/actor/familiar/data.d.ts +++ /dev/null @@ -1,78 +0,0 @@ -import type { - BaseCreatureSource, - CreatureAttributes, - CreatureDetails, - CreatureLanguagesData, - CreaturePerceptionData, - CreatureResources, - CreatureSaves, - CreatureTraitsData, - SkillData, -} from "@actor/creature/data.ts"; -import { ActorSystemModel, ActorSystemSchema } from "@actor/data/model.ts"; -import type { ModifierPF2e } from "@actor/modifiers.ts"; -import type { AttributeString } from "@actor/types.ts"; -import type { StatisticTraceData } from "@system/statistic/data.ts"; -import type { ModelPropFromDataField, SourcePropFromDataField } from "types/foundry/common/data/fields.d.ts"; -import type { FamiliarPF2e } from "./document.ts"; -import fields = foundry.data.fields; - -type FamiliarSource = BaseCreatureSource<"familiar", FamiliarSystemSource>; -declare class FamiliarSystemData extends ActorSystemModel { - traits: CreatureTraitsData; - perception: CreaturePerceptionData; - saves: CreatureSaves; - skills: Record; - attack: StatisticTraceData; - resources: CreatureResources; - static defineSchema(): FamiliarSystemSchema; -} -interface FamiliarSystemData extends foundry.abstract.TypeDataModel, ModelPropsFromSchema { - attributes: CreatureAttributes; - details: FamiliarDetails; - customModifiers: Record; -} -type FamiliarSystemSchema = ActorSystemSchema & { - master: fields.SchemaField<{ - id: fields.ForeignDocumentField; - ability: fields.StringField; - }>; - attributes: fields.SchemaField<{ - hp: fields.SchemaField<{ - value: fields.NumberField; - temp: fields.NumberField; - }>; - }>; - details: fields.SchemaField<{ - creature: fields.SchemaField<{ - value: fields.StringField; - }>; - }>; -}; -interface FamiliarSystemSource extends SourceFromSchema { - attributes: FamiliarAttributesSource; - details: FamiliarDetailsSource; - customModifiers?: never; - perception?: never; - resources?: never; - saves?: never; - skills?: never; - traits?: never; - /** Legacy location of `MigrationRecord` */ - schema?: object; -} -interface FamiliarAttributesSource extends SourcePropFromDataField { - immunities?: never; - weaknesses?: never; - resistances?: never; -} -interface FamiliarDetailsSource extends SourcePropFromDataField { - alliance?: never; - languages?: never; - level?: never; -} -interface FamiliarDetails extends ModelPropFromDataField, CreatureDetails { - languages: CreatureLanguagesData; -} -export { FamiliarSystemData }; -export type { FamiliarSource, FamiliarSystemSource }; diff --git a/types/src/module/actor/familiar/document.d.ts b/types/src/module/actor/familiar/document.d.ts deleted file mode 100644 index 5ca370999..000000000 --- a/types/src/module/actor/familiar/document.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -import { type CharacterPF2e, CreaturePF2e } from "@actor"; -import type { ActorUpdateOperation } from "@actor/base.ts"; -import type { ItemType } from "@item/base/data/index.ts"; -import type { CombatantPF2e, EncounterPF2e } from "@module/encounter/index.ts"; -import type { RuleElementPF2e } from "@module/rules/index.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import { Statistic } from "@system/statistic/index.ts"; -import type { FamiliarSource, FamiliarSystemData } from "./data.ts"; - -declare class FamiliarPF2e extends CreaturePF2e { - /** The familiar's attack statistic, for the rare occasion it must make an attack roll */ - attackStatistic: Statistic; - get allowedItemTypes(): (ItemType | "physical")[]; - /** The familiar's master, if selected */ - get master(): CharacterPF2e | null; - /** Returns attribute modifier value from the master, or 0 if no attribute */ - get masterAttributeModifier(): number; - /** @deprecated for internal use but not rule elements referencing it until a migration is in place. */ - get masterAbilityModifier(): number; - get combatant(): CombatantPF2e | null; - /** Re-render the sheet if data preparation is called from the familiar's master */ - reset({ fromMaster }?: { - fromMaster?: boolean | undefined; - }): void; - /** Set base emphemeral data for later updating by derived-data preparation. */ - prepareBaseData(): void; - /** Skip rule-element preparation if there is no master */ - protected prepareRuleElements(): RuleElementPF2e[]; - prepareDerivedData(): void; - /** Detect if a familiar is being reassigned from a master */ - protected _preUpdate(changed: DeepPartial, operation: FamiliarUpdateOperation, user: UserPF2e): Promise; - /** Remove familiar from former master if the master changed */ - protected _onUpdate(changed: DeepPartial, operation: FamiliarUpdateOperation, userId: string): void; - /** Remove the master's reference to this familiar */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface FamiliarPF2e extends CreaturePF2e { - readonly _source: FamiliarSource; - system: FamiliarSystemData; -} -interface FamiliarUpdateOperation extends ActorUpdateOperation { - previousMaster?: ActorUUID; -} -export { FamiliarPF2e }; diff --git a/types/src/module/actor/familiar/index.d.ts b/types/src/module/actor/familiar/index.d.ts deleted file mode 100644 index 94f6c03a5..000000000 --- a/types/src/module/actor/familiar/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { FamiliarPF2e } from "./document.ts"; diff --git a/types/src/module/actor/familiar/sheet.d.ts b/types/src/module/actor/familiar/sheet.d.ts deleted file mode 100644 index 9eebc7664..000000000 --- a/types/src/module/actor/familiar/sheet.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { CharacterPF2e } from "@actor"; -import { CreatureSheetData } from "@actor/creature/index.ts"; -import { CreatureSheetPF2e } from "@actor/creature/sheet.ts"; -import { SheetClickActionHandlers } from "@actor/sheet/base.ts"; -import { AbilityViewData } from "@actor/sheet/data-types.ts"; -import { StatisticTraceData } from "@system/statistic/index.ts"; -import type { FamiliarPF2e } from "./document.ts"; -/** - * @category Actor - */ -export declare class FamiliarSheetPF2e extends CreatureSheetPF2e { - /** There is currently no actor config for familiars */ - protected readonly actorConfigClass: null; - static get defaultOptions(): ActorSheetOptions; - getData(options?: ActorSheetOptions): Promise>; - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; -} -interface FamiliarSheetData extends CreatureSheetData { - attributes: typeof CONFIG.PF2E.abilities; - familiarAbilities: { - value: number; - items: AbilityViewData[]; - }; - master: CharacterPF2e | null; - masters: CharacterPF2e[]; - size: string; - skills: StatisticTraceData[]; -} -export {}; diff --git a/types/src/module/actor/hazard/data.d.ts b/types/src/module/actor/hazard/data.d.ts deleted file mode 100644 index 4492d0c84..000000000 --- a/types/src/module/actor/hazard/data.d.ts +++ /dev/null @@ -1,97 +0,0 @@ -import { SaveData } from "@actor/creature/data.ts"; -import { ActorAttributes, ActorAttributesSource, ActorDetails, ActorDetailsSource, ActorHitPoints, ActorSystemData, ActorSystemSource, ActorTraitsSource, BaseActorSourcePF2e } from "@actor/data/base.ts"; -import type { ActorSizePF2e } from "@actor/data/size.ts"; -import { InitiativeTraceData } from "@actor/initiative.ts"; -import { NPCStrike } from "@actor/npc/index.ts"; -import { SaveType } from "@actor/types.ts"; -import { PublicationData, Rarity, Size } from "@module/data.ts"; -import { StatisticTraceData } from "@system/statistic/data.ts"; -import { HazardTrait } from "./types.ts"; -/** The stored source data of a hazard actor */ -type HazardSource = BaseActorSourcePF2e<"hazard", HazardSystemSource>; -/** The raw information contained within the actor data object for hazards. */ -type HazardSystemSource = Omit & { - details: HazardDetailsSource; - attributes: HazardAttributesSource; - saves: HazardSaves; - /** Traits, languages, and other information. */ - traits: HazardTraitsSource; -}; -interface HazardAttributesSource extends ActorAttributesSource { - ac: { - value: number; - }; - hp: { - value: number; - max: number; - temp: number; - details: string; - }; - hardness: number; - stealth: { - value: number | null; - details: string; - }; - emitsSound: boolean | "encounter"; -} -interface HazardDetailsSource extends ActorDetailsSource { - isComplex: boolean; - level: { - value: number; - }; - disable?: string; - description?: string; - reset?: string; - routine?: string; - /** Information concerning the publication from which this actor originates */ - publication: PublicationData; - readonly alliance?: never; -} -interface HazardSystemData extends Omit, Omit { - actions: NPCStrike[]; - attributes: HazardAttributes; - details: HazardDetails; - initiative?: InitiativeTraceData; - traits: HazardTraitsData; -} -interface HazardTraitsSource extends ActorTraitsSource { - size: { - value: Size; - }; - rarity: Rarity; - languages?: never; -} -interface HazardTraitsData extends HazardTraitsSource { - size: ActorSizePF2e; - rarity: Rarity; -} -interface HazardAttributes extends Omit, Omit { - ac: { - value: number; - }; - hasHealth: boolean; - hp: HazardHitPoints; - hardness: number; - stealth: HazardStealthTraceData; - /** - * Whether the hazard emits sound and can therefore be detected via hearing. A value of "encounter" indicates it is - * silent until an encounter begins. - */ - emitsSound: boolean | "encounter"; - shield?: never; -} -interface HazardStealthTraceData extends Omit { - dc: number | null; - totalModifier: number | null; - value: number | null; - details: string; -} -interface HazardDetails extends Omit, ActorDetails { - alliance: null; -} -interface HazardHitPoints extends ActorHitPoints { - brokenThreshold: number; -} -type HazardSaveData = Omit; -type HazardSaves = Record; -export type { HazardSource, HazardSystemData }; diff --git a/types/src/module/actor/hazard/document.d.ts b/types/src/module/actor/hazard/document.d.ts deleted file mode 100644 index 2608cd933..000000000 --- a/types/src/module/actor/hazard/document.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { SaveType } from "@actor/types.ts"; -import { ConditionPF2e } from "@item"; -import { ItemType } from "@item/base/data/index.ts"; -import { Rarity } from "@module/data.ts"; -import { TokenDocumentPF2e } from "@scene/index.ts"; -import { DamageType } from "@system/damage/index.ts"; -import { Statistic } from "@system/statistic/index.ts"; -import { HazardSource, HazardSystemData } from "./data.ts"; -declare class HazardPF2e extends ActorPF2e { - skills: Record<"stealth", Statistic>; - get allowedItemTypes(): (ItemType | "physical")[]; - get rarity(): Rarity; - get isComplex(): boolean; - get hardness(): number; - get hasDefenses(): boolean; - /** Minimal check since the disabled status of a hazard isn't logged */ - get canAttack(): boolean; - get emitsSound(): boolean; - isAffectedBy(effect: DamageType | ConditionPF2e): boolean; - prepareBaseData(): void; - prepareDerivedData(): void; - /** - * Some hazards have an implicit immunity exception to certain damage types despite having object immunities: use a - * weakness or resistance as indication. - */ - prepareData(): void; - private prepareSaves; -} -interface HazardPF2e extends ActorPF2e { - readonly _source: HazardSource; - system: HazardSystemData; - saves: { - [K in SaveType]?: Statistic; - }; -} -export { HazardPF2e }; diff --git a/types/src/module/actor/hazard/index.d.ts b/types/src/module/actor/hazard/index.d.ts deleted file mode 100644 index 8ca675da1..000000000 --- a/types/src/module/actor/hazard/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { HazardPF2e } from "./document.ts"; -export * from "./types.ts"; -export * from "./data.ts"; -export * from "./sheet.ts"; diff --git a/types/src/module/actor/hazard/sheet.d.ts b/types/src/module/actor/hazard/sheet.d.ts deleted file mode 100644 index 2d022a13c..000000000 --- a/types/src/module/actor/hazard/sheet.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -/// -/// -/// -import { ActorSheetPF2e, SheetClickActionHandlers } from "@actor/sheet/base.ts"; -import type { HazardPF2e } from "./document.ts"; -import { HazardSheetData } from "./types.ts"; - -export declare class HazardSheetPF2e extends ActorSheetPF2e { - #private; - static get defaultOptions(): ActorSheetOptions; - get title(): string; - get editing(): boolean; - getData(options?: ActorSheetOptions): Promise; - activateListeners($html: JQuery): void; - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; - protected _updateObject(event: Event, formData: Record): Promise; -} diff --git a/types/src/module/actor/hazard/types.d.ts b/types/src/module/actor/hazard/types.d.ts deleted file mode 100644 index 5e60c85f1..000000000 --- a/types/src/module/actor/hazard/types.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { HazardPF2e } from "@actor"; -import { TraitViewData } from "@actor/data/base.ts"; -import { ActorSheetDataPF2e } from "@actor/sheet/data-types.ts"; -import { SaveType } from "@actor/types.ts"; -import type { AbilityItemPF2e } from "@item"; -interface HazardSheetData extends ActorSheetDataPF2e { - actions: HazardActionSheetData; - complexityOptions: FormSelectOption[]; - emitsSoundOptions: FormSelectOption[]; - editing: boolean; - actorTraits: TraitViewData[]; - rarity: Record; - rarityLabel: string; - brokenThreshold: number; - saves: HazardSaveSheetData[]; - hasDefenses: boolean; - hasHPDetails: boolean; - hasSaves: boolean; - hasIWR: boolean; - hasStealth: boolean; - hasDescription: boolean; - hasDisable: boolean; - hasRoutineDetails: boolean; - hasResetDetails: boolean; -} -interface HazardActionSheetData { - reaction: AbilityItemPF2e[]; - action: AbilityItemPF2e[]; -} -interface HazardSaveSheetData { - label: string; - type: SaveType; - mod?: number; -} -type HazardTrait = keyof ConfigPF2e["PF2E"]["hazardTraits"]; -export type { HazardActionSheetData, HazardSaveSheetData, HazardSheetData, HazardTrait }; diff --git a/types/src/module/actor/helpers.d.ts b/types/src/module/actor/helpers.d.ts deleted file mode 100644 index d07b8dbd7..000000000 --- a/types/src/module/actor/helpers.d.ts +++ /dev/null @@ -1,70 +0,0 @@ -import { type ActorPF2e } from "@actor"; -import type { ItemPF2e, MeleePF2e, PhysicalItemPF2e, WeaponPF2e } from "@item"; -import { ZeroToFour } from "@module/data.ts"; -import { ActorSourcePF2e } from "./data/index.ts"; -import { ModifierPF2e } from "./modifiers.ts"; -import { NPCStrike } from "./npc/data.ts"; -import { ActorCommitData, AuraEffectData } from "./types.ts"; - -/** - * Reset and rerender a provided list of actors. Omit argument to reset all world and synthetic actors - * @param [actors] A list of actors to refresh: if none are provided, all world and synthetic actors are retrieved - * @param [options] Render options for actor sheets and tokens - * @param [options.sheets=true] Render actor sheets - * @param [options.tokens=false] Redraw tokens - */ -declare function resetActors(actors?: Iterable, options?: ResetActorsRenderOptions): Promise; -interface ResetActorsRenderOptions { - sheets?: boolean; - tokens?: boolean; -} -/** Get the user color most appropriate for a provided actor */ -declare function userColorForActor(actor: ActorPF2e): HexColorString; -declare function migrateActorSource(source: PreCreate): Promise; -/** Review `removeOnExit` aura effects and remove any that no longer apply */ -declare function checkAreaEffects(this: ActorPF2e): Promise; -declare function auraAffectsActor(data: AuraEffectData, origin: ActorPF2e, actor: ActorPF2e): boolean; -/** Set a roll option for HP remaining and percentage remaining */ -declare function setHitPointsRollOptions(actor: ActorPF2e): void; -/** Find the lowest multiple attack penalty for an attack with a given item */ -declare function calculateMAPs(item: ItemPF2e, { domains, options }: { - domains: string[]; - options: Set | string[]; -}): MultipleAttackPenaltyData; -interface MultipleAttackPenaltyData { - slug: "multiple-attack-penalty"; - label: string; - map1: number; - map2: number; -} -/** Create roll options pertaining to the active encounter and the actor's participant */ -declare function createEncounterRollOptions(actor: ActorPF2e): Record; -/** Create roll options pertaining to the terrain the actor is currently in */ -declare function createEnvironmentRollOptions(actor: ActorPF2e): Record; -/** Whether flanking puts this actor off-guard */ -declare function isOffGuardFromFlanking(target: ActorPF2e, origin: ActorPF2e): boolean; -declare function getStrikeAttackDomains(weapon: WeaponPF2e | MeleePF2e, proficiencyRank: ZeroToFour | null, baseRollOptions: string[] | Set): string[]; -declare function getStrikeDamageDomains(weapon: WeaponPF2e | MeleePF2e, proficiencyRank: ZeroToFour | null): string[]; -/** Create a strike statistic from a melee item: for use by NPCs and Hazards */ -declare function strikeFromMeleeItem(item: MeleePF2e): NPCStrike; -/** Get the range increment of a target for a given weapon */ -declare function getRangeIncrement(attackItem: ItemPF2e, distance: number | null): number | null; -/** Determine range penalty for a ranged attack roll */ -declare function calculateRangePenalty(actor: ActorPF2e, increment: number | null, selectors: string[], rollOptions: Set): ModifierPF2e | null; -/** Whether this actor is of a the "character" type, excluding those from the PF2E Companion Compendia module */ -declare function isReallyPC(actor: ActorPF2e): boolean; -/** Recursive generator function to iterate over all items and their sub items */ -declare function iterateAllItems(document: T | PhysicalItemPF2e): Generator>; -/** - * Transfer a list of items between actors, stacking equivalent helpers. Temporary until a proper inventory method exists - * @param source the source actor - * @param dest the destination actor - * @param [itemFilterFn] an optional filter function called for each inventory item - */ -declare function transferItemsBetweenActors(source: ActorPF2e, dest: ActorPF2e, itemFilterFn?: (item: PhysicalItemPF2e) => boolean): Promise; -/** Applies multiple batched updates to the actor, delaying rendering till the end */ -declare function applyActorUpdate(actor: T, data: Partial>, { render }?: { - render?: boolean; -}): Promise; -export { applyActorUpdate, auraAffectsActor, calculateMAPs, calculateRangePenalty, checkAreaEffects, createEncounterRollOptions, createEnvironmentRollOptions, getRangeIncrement, getStrikeAttackDomains, getStrikeDamageDomains, isOffGuardFromFlanking, isReallyPC, iterateAllItems, migrateActorSource, resetActors, setHitPointsRollOptions, strikeFromMeleeItem, transferItemsBetweenActors, userColorForActor, }; -export type { MultipleAttackPenaltyData }; diff --git a/types/src/module/actor/index.d.ts b/types/src/module/actor/index.d.ts deleted file mode 100644 index 77cecf730..000000000 --- a/types/src/module/actor/index.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export { ActorPF2e, ActorProxyPF2e } from "./base.ts"; -export { CreaturePF2e } from "./creature/document.ts"; -export { CharacterPF2e } from "./character/document.ts"; -export { FamiliarPF2e } from "./familiar/document.ts"; -export { NPCPF2e } from "./npc/document.ts"; -export { ArmyPF2e } from "./army/document.ts"; -export { HazardPF2e } from "./hazard/document.ts"; -export { LootPF2e } from "./loot/document.ts"; -export { PartyPF2e } from "./party/document.ts"; -export { VehiclePF2e } from "./vehicle/document.ts"; -export type { ActorType } from "./types.ts"; diff --git a/types/src/module/actor/initiative.d.ts b/types/src/module/actor/initiative.d.ts deleted file mode 100644 index 3106f5026..000000000 --- a/types/src/module/actor/initiative.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { InitiativeData } from "@actor/data/base.ts"; -import { ZeroToTwo } from "@module/data.ts"; -import { CombatantPF2e, EncounterPF2e } from "@module/encounter/index.ts"; -import { CheckRoll } from "@system/check/index.ts"; -import { Statistic, StatisticRollParameters, StatisticTraceData } from "@system/statistic/index.ts"; -import { AttributeString } from "./types.ts"; -interface InitiativeRollResult { - combatant: CombatantPF2e; - roll: Rolled; -} -interface InitiativeRollParams extends StatisticRollParameters { - combatant?: CombatantPF2e; - /** Whether the encounter tracker should be updated with the roll result */ - updateTracker?: boolean; -} -/** A statistic wrapper used to roll initiative for actors */ -declare class ActorInitiative { - actor: ActorPF2e; - statistic: Statistic; - tiebreakPriority: ZeroToTwo; - constructor(actor: ActorPF2e, { statistic, tiebreakPriority }: { - statistic: string; - tiebreakPriority: ZeroToTwo; - }); - get attribute(): AttributeString | null; - get mod(): number; - roll(args?: InitiativeRollParams): Promise; - getTraceData(): InitiativeTraceData; -} -type InitiativeTraceData = StatisticTraceData & InitiativeData; -export { ActorInitiative }; -export type { InitiativeRollResult, InitiativeTraceData }; diff --git a/types/src/module/actor/inventory/bulk.d.ts b/types/src/module/actor/inventory/bulk.d.ts deleted file mode 100644 index 9fad7a55d..000000000 --- a/types/src/module/actor/inventory/bulk.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { PhysicalItemPF2e } from "@item"; -import { Bulk } from "@item/physical/bulk.ts"; -import { Size } from "@module/data.ts"; -export declare class InventoryBulk { - #private; - actor: ActorPF2e; - encumberedAfterAddend: number; - maxAddend: number; - constructor(actor: ActorPF2e); - get encumberedAfter(): number; - get encumberedAfterBreakdown(): string; - get max(): number; - get maxBreakdown(): string; - get value(): Bulk; - get encumberedPercentage(): number; - get maxPercentage(): number; - get maxPercentageInteger(): number; - get isEncumbered(): boolean; - get isOverMax(): boolean; - get bulk(): number; - static computeTotalBulk(items: PhysicalItemPF2e[], actorSize: Size): Bulk; -} diff --git a/types/src/module/actor/inventory/index.d.ts b/types/src/module/actor/inventory/index.d.ts deleted file mode 100644 index 35c974959..000000000 --- a/types/src/module/actor/inventory/index.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { KitPF2e, PhysicalItemPF2e } from "@item"; -import { ItemSourcePF2e, KitSource, PhysicalItemSource } from "@item/base/data/index.ts"; -import { Coins } from "@item/physical/data.ts"; -import { CoinsPF2e } from "@item/physical/helpers.ts"; -import { DelegatedCollection } from "@util"; -import { InventoryBulk } from "./bulk.ts"; - -declare class ActorInventory extends DelegatedCollection> { - actor: TActor; - bulk: InventoryBulk; - constructor(actor: TActor, entries?: PhysicalItemPF2e[]); - get coins(): CoinsPF2e; - get totalWealth(): CoinsPF2e; - get invested(): { - value: number; - max: number; - } | null; - /** Find an item already owned by the actor that can stack with the given item */ - findStackableItem(item: PhysicalItemPF2e | ItemSourcePF2e): PhysicalItemPF2e | null; - addCoins(coins: Partial, { combineStacks }?: { - combineStacks?: boolean; - }): Promise; - removeCoins(coins: Partial, { byValue }?: { - byValue?: boolean; - }): Promise; - sellAllTreasure(): Promise; - /** Deletes all temporary items, skipping those that are associated with a special resource */ - deleteTemporaryItems(operation?: Partial> | undefined): Promise[]>; - /** Adds one or more items to this inventory without removing from its original location */ - add(itemOrItems: PhysicalItemPF2e | KitPF2e | PreCreate | (PhysicalItemPF2e | KitPF2e | PreCreate)[], options?: AddItemOptions): Promise; -} -interface AddItemOptions { - stack?: boolean; -} -export { ActorInventory, InventoryBulk }; diff --git a/types/src/module/actor/item-transfer.d.ts b/types/src/module/actor/item-transfer.d.ts deleted file mode 100644 index 1d7e58c3f..000000000 --- a/types/src/module/actor/item-transfer.d.ts +++ /dev/null @@ -1,27 +0,0 @@ -import type { UserPF2e } from "@module/user/document.ts"; -export interface ItemTransferData { - source: { - tokenId?: string; - actorId: string; - itemId: string; - }; - target: { - tokenId?: string; - actorId: string; - }; - quantity: number; - containerId?: string; - /** Whether this is a merchant transaction. If null, presume yes if merchant */ - isPurchase?: boolean | null; -} -export declare class ItemTransfer implements ItemTransferData { - #private; - source: ItemTransferData["source"]; - target: ItemTransferData["target"]; - quantity: number; - containerId?: string; - isPurchase: boolean | null; - constructor(data: ItemTransferData); - request(): Promise; - enact(requester: UserPF2e): Promise; -} diff --git a/types/src/module/actor/loot/data.d.ts b/types/src/module/actor/loot/data.d.ts deleted file mode 100644 index d15faadcd..000000000 --- a/types/src/module/actor/loot/data.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { BaseActorSourcePF2e, FlankingData } from "@actor/data/base.ts"; -import { ActorSystemModel, ActorSystemSchema } from "@actor/data/model.ts"; -import { ModelPropFromDataField } from "types/foundry/common/data/fields.js"; -import type { LootPF2e } from "./document.ts"; -import fields = foundry.data.fields; - -/** The stored source data of a loot actor */ -type LootSource = BaseActorSourcePF2e<"loot", LootSystemSource>; -declare class LootSystemData extends ActorSystemModel { - static defineSchema(): LootSystemSchema; -} -interface LootSystemData extends ActorSystemModel, ModelPropsFromSchema { - details: LootDetails; - traits?: never; - attributes: LootAttributes; -} -type LootSystemSchema = ActorSystemSchema & { - details: fields.SchemaField<{ - description: fields.HTMLField; - level: fields.SchemaField<{ - value: fields.NumberField; - }>; - }>; - lootSheetType: fields.StringField<"Merchant" | "Loot", "Merchant" | "Loot", true, false, true>; - hiddenWhenEmpty: fields.BooleanField; -}; -/** The system-level data of loot actors. */ -interface LootSystemSource extends SourceFromSchema { - attributes?: never; - traits?: never; - schema?: never; -} -interface LootDetails extends ModelPropFromDataField { - alliance: null; -} -interface LootAttributes { - immunities: never[]; - weaknesses: never[]; - resistances: never[]; - flanking: FlankingData; -} -export { LootSystemData }; -export type { LootSource, LootSystemSource }; diff --git a/types/src/module/actor/loot/document.d.ts b/types/src/module/actor/loot/document.d.ts deleted file mode 100644 index c29a0261f..000000000 --- a/types/src/module/actor/loot/document.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import { ItemType } from "@item/base/data/index.ts"; -import { ActiveEffectPF2e } from "@module/active-effect.ts"; -import { UserPF2e } from "@module/user/document.ts"; -import type { TokenDocumentPF2e } from "@scene/index.ts"; -import { LootSource, LootSystemData } from "./data.ts"; - -declare class LootPF2e extends ActorPF2e { - armorClass: null; - get allowedItemTypes(): (ItemType | "physical")[]; - get isLoot(): boolean; - get isMerchant(): boolean; - /** Should this actor's token(s) be hidden when there are no items in its inventory? */ - get hiddenWhenEmpty(): boolean; - /** Loot actors can never benefit from rule elements */ - get canHostRuleElements(): boolean; - /** It's a box. */ - get canAct(): false; - /** It's a sturdy box. */ - isAffectedBy(): false; - /** A user can see a loot actor in the actor directory only if they have at least Observer permission */ - get visible(): boolean; - /** Anyone with Limited ownership can update a loot actor. */ - canUserModify(user: UserPF2e, action: UserAction): boolean; - /** Hide this actor's token(s) when in loot (rather than merchant) mode, empty, and configured thus */ - toggleTokenHiding(): Promise; - /** Set base emphemeral data for later updating by derived-data preparation. */ - prepareBaseData(): void; - /** Never process rules elements on loot actors */ - prepareDerivedData(): void; - protected _onCreate(data: LootSource, options: DatabaseCreateOperation, userId: string): void; - protected _onUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, userId: string): void; - protected _onCreateDescendantDocuments(parent: this, collection: "effects" | "items", documents: ActiveEffectPF2e[] | ItemPF2e[], result: ActiveEffectPF2e["_source"][] | ItemPF2e["_source"][], operation: DatabaseCreateOperation, userId: string): void; - protected _onDeleteDescendantDocuments(parent: this, collection: "items" | "effects", documents: ActiveEffectPF2e[] | ItemPF2e[], ids: string[], operation: DatabaseDeleteOperation, userId: string): void; -} -interface LootPF2e extends ActorPF2e { - readonly _source: LootSource; - system: LootSystemData; - readonly saves?: never; - get hitPoints(): null; -} -export { LootPF2e }; diff --git a/types/src/module/actor/loot/index.d.ts b/types/src/module/actor/loot/index.d.ts deleted file mode 100644 index a9a37dc19..000000000 --- a/types/src/module/actor/loot/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { LootPF2e } from "./document.ts"; diff --git a/types/src/module/actor/loot/sheet.d.ts b/types/src/module/actor/loot/sheet.d.ts deleted file mode 100644 index 28756ae1b..000000000 --- a/types/src/module/actor/loot/sheet.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -/// -/// -/// -import type { LootPF2e } from "@actor"; -import type { ActorSheetDataPF2e, InventoryItem, SheetInventory } from "@actor/sheet/data-types.ts"; -import type { PhysicalItemPF2e } from "@item"; -import { ActorSheetPF2e } from "../sheet/base.ts"; - -export declare class LootSheetPF2e extends ActorSheetPF2e { - static get defaultOptions(): ActorSheetOptions; - get template(): string; - getData(): Promise>; - activateListeners($html: JQuery): void; - protected prepareInventory(): SheetInventory; - /** Hide coin item rows in merchant actors */ - protected prepareInventoryItem(item: PhysicalItemPF2e): InventoryItem; -} -interface LootSheetDataPF2e extends ActorSheetDataPF2e { - hasActiveParty: boolean; - isLoot: boolean; - lootSheetTypeOptions: FormSelectOption[]; -} -export {}; diff --git a/types/src/module/actor/modifiers.d.ts b/types/src/module/actor/modifiers.d.ts deleted file mode 100644 index 86e2b6381..000000000 --- a/types/src/module/actor/modifiers.d.ts +++ /dev/null @@ -1,310 +0,0 @@ -import type { ActorPF2e, CharacterPF2e, NPCPF2e } from "@actor"; -import type { AttributeString } from "@actor/types.ts"; -import type { ItemPF2e } from "@item"; -import { ZeroToFour } from "@module/data.ts"; -import type { RollNotePF2e } from "@module/notes.ts"; -import type { RuleElementPF2e } from "@module/rules/index.ts"; -import { DamageAlteration } from "@module/rules/rule-element/damage-alteration/alteration.ts"; -import type { DamageCategoryUnique, DamageDiceFaces, DamageDieSize, DamageType } from "@system/damage/types.ts"; -import { Predicate, RawPredicate } from "@system/predication.ts"; - -declare const PROFICIENCY_RANK_OPTION: readonly ["proficiency:untrained", "proficiency:trained", "proficiency:expert", "proficiency:master", "proficiency:legendary"]; -declare function ensureProficiencyOption(options: Set, rank: number): void; -declare const MODIFIER_TYPES: Set<"untyped" | "item" | "ability" | "circumstance" | "potency" | "proficiency" | "status">; -type ModifierType = SetElement; -interface RawModifier { - /** An identifier for this modifier; should generally be a localization key (see en.json). */ - slug?: string; - /** The domains of discourse to which this modifier belongs */ - domains?: string[]; - /** The display name of this modifier; can be a localization key (see en.json). */ - label: string; - /** The actual numeric benefit/penalty that this modifier provides. */ - modifier: number; - /** The type of this modifier - modifiers of the same type do not stack (except for `untyped` modifiers). */ - type?: ModifierType; - /** If the type is "ability", this should be set to a particular ability */ - ability?: AttributeString | null; - /** Numeric adjustments to apply */ - adjustments?: ModifierAdjustment[]; - /** If true, this modifier will be applied to the final roll; if false, it will be ignored. */ - enabled?: boolean; - /** If true, these custom dice are being ignored in the damage calculation. */ - ignored?: boolean; - /** The source from which this modifier originates, if any. */ - source?: string | null; - /** If true, this modifier is a custom player-provided modifier. */ - custom?: boolean; - /** The damage type that this modifier does, if it modifies a damage roll. */ - damageType?: DamageType | null; - /** The damage category */ - damageCategory?: DamageCategoryUnique | null; - /** A predicate that determines when this modifier is active */ - predicate?: RawPredicate; - /** If true, this modifier is only active on a critical hit. */ - critical?: boolean | null; - /** A list of tags associated with this modifier */ - tags?: string[]; - /** Hide this modifier in UIs if it is disabled */ - hideIfDisabled?: boolean; - /** Whether to use this bonus/penalty/modifier even if it isn't the greatest magnitude */ - force?: boolean; -} -interface ModifierAdjustment { - /** A slug for matching against modifiers: `null` will match against all modifiers within a selector */ - slug: string | null; - test: (options: string[] | Set) => boolean; - damageType?: DamageType; - relabel?: string; - suppress?: boolean; - getNewValue?: (current: number) => number; - getDamageType?: (current: DamageType | null) => DamageType | null; -} -interface DeferredValueParams { - /** An object to merge into roll data for `Roll.replaceFormulaData` */ - resolvables?: Record; - /** An object to merge into standard options for `RuleElementPF2e#resolveInjectedProperties` */ - injectables?: Record; - /** Roll Options to get against a predicate (if available) */ - test?: string[] | Set; -} -interface TestableDeferredValueParams extends DeferredValueParams { - test: string[] | Set; -} -interface DeferredDamageDiceOptions extends TestableDeferredValueParams { - selectors: string[]; -} -type DeferredValue = (options?: DeferredValueParams) => T | null; -type DeferredPromise = (options?: DeferredValueParams) => Promise; -/** Represents a discrete modifier, bonus, or penalty, to a statistic or check. */ -declare class ModifierPF2e implements RawModifier { - #private; - slug: string; - label: string; - domains: string[]; - /** The value of the modifier */ - modifier: number; - type: ModifierType; - ability: AttributeString | null; - adjustments: ModifierAdjustment[]; - alterations: DamageAlteration[]; - force: boolean; - enabled: boolean; - ignored: boolean; - /** The originating rule element of this modifier, if any: used to retrieve "parent" item roll options */ - rule: RuleElementPF2e | null; - source: string | null; - custom: boolean; - damageType: DamageType | null; - damageCategory: DamageCategoryUnique | null; - predicate: Predicate; - critical: boolean | null; - tags: string[]; - hideIfDisabled: boolean; - /** - * The "category" of modifier (a misnomer since bonuses and penalties aren't modifiers): - * Recorded before adjustments in case of adjustment to zero - */ - kind: "bonus" | "penalty" | "modifier"; - /** - * Create a new modifier. - * Legacy parameters: - * @param name The name for the modifier; should generally be a localization key. - * @param modifier The actual numeric benefit/penalty that this modifier provides. - * @param type The type of the modifier - modifiers of the same type do not stack (except for `untyped` modifiers). - * @param enabled If true, this modifier will be applied to the result; otherwise, it will not. - * @param source The source from which this modifier originates, if any. - * @param notes Any notes about this modifier. - */ - constructor(args: ModifierObjectParams); - constructor(...args: ModifierOrderedParams); - get category(): this["damageCategory"]; - get value(): number; - get signedValue(): string; - /** - * Apply damage alterations: must be called externally by client code that knows this is a damage modifier. - * @param options.item An item (typically a weapon or spell) producing damage as part of an action - * @param options.test An `Array` or `Set` of roll options for use in predication testing - */ - applyDamageAlterations(options: { - item: ItemPF2e; - test: string[] | Set; - }): void; - /** Return a copy of this ModifierPF2e instance */ - clone(data?: Partial, options?: { - test?: Set | string[] | null; - }): ModifierPF2e; - /** - * Get roll options for this modifier. The current data structure makes for occasional inability to distinguish - * bonuses and penalties. - */ - getRollOptions(): string[]; - /** Sets the ignored property after testing the predicate */ - test(options: string[] | Set): void; - toObject(): Required; - toString(): string; -} -interface ModifierObjectParams extends RawModifier { - name?: string; - rule?: RuleElementPF2e | null; - alterations?: DamageAlteration[]; -} -type ModifierOrderedParams = [ - slug: string, - modifier: number, - type?: ModifierType, - enabled?: boolean, - ignored?: boolean, - source?: string, - notes?: string -]; -/** - * Create a modifier for a given attribute type. - * @returns The modifier of the given attribute - */ -declare function createAttributeModifier({ actor, attribute, domains, max }: CreateAbilityModifierParams): ModifierPF2e; -interface CreateAbilityModifierParams { - actor: CharacterPF2e | NPCPF2e; - attribute: AttributeString; - domains: string[]; - /** An optional maximum for this ability modifier */ - max?: number; -} -/** - * Create a modifier for a given proficiency level of some ability. - * @returns The modifier for the given proficiency rank and character level. - */ -declare function createProficiencyModifier({ actor, rank, domains, level, addLevel, }: CreateProficiencyModifierParams): ModifierPF2e; -interface CreateProficiencyModifierParams { - actor: ActorPF2e; - rank: ZeroToFour; - domains: string[]; - /** If given, use this value instead of actor.level */ - level?: number; - addLevel?: boolean; -} -/** - * Applies the modifier stacking rules and calculates the total modifier. This will mutate the - * provided modifiers, setting the 'enabled' field based on whether or not the modifiers are active. - * - * @param modifiers The list of modifiers to apply stacking rules for. - * @returns The total modifier provided by the given list of modifiers. - */ -declare function applyStackingRules(modifiers: ModifierPF2e[]): number; -/** - * Represents a statistic on an actor and its commonly applied modifiers. Each statistic or check can have multiple - * modifiers, even of the same type, but the stacking rules are applied to ensure that only a single bonus and penalty - * of each type is applied to the total modifier. - */ -declare class StatisticModifier { - /** The slug of this collection of modifiers for a statistic. */ - slug: string; - /** The display label of this statistic */ - label?: string; - /** The list of modifiers which affect the statistic. */ - protected _modifiers: ModifierPF2e[]; - /** The total modifier for the statistic, after applying stacking rules. */ - totalModifier: number; - /** A textual breakdown of the modifiers factoring into this statistic */ - breakdown: string; - /** Optional notes, which are often added to statistic modifiers */ - notes?: RollNotePF2e[]; - /** Roll-option domains associated with this statistic */ - domains?: string[]; - /** - * @param slug The name of this collection of statistic modifiers. - * @param modifiers All relevant modifiers for this statistic. - * @param rollOptions Roll options used for initial total calculation - */ - constructor(slug: string, modifiers?: ModifierPF2e[], rollOptions?: string[] | Set); - /** Get the list of all modifiers in this collection */ - get modifiers(): ModifierPF2e[]; - /** Add a modifier to the end of this collection. */ - push(modifier: ModifierPF2e): number; - /** Add a modifier to the beginning of this collection. */ - unshift(modifier: ModifierPF2e): number; - /** Delete a modifier from this collection by name or reference */ - delete(modifierSlug: string | ModifierPF2e): boolean; - /** Obtain the total modifier, optionally retesting predicates, and finally applying stacking rules. */ - calculateTotal(rollOptions?: Set): void; -} -declare function adjustModifiers(modifiers: ModifierPF2e[], rollOptions: Set): void; -/** - * Represents the list of modifiers for a specific check. - * @category PF2 - */ -declare class CheckModifier extends StatisticModifier { - /** - * @param slug The unique slug of this check modifier - * @param statistic The statistic modifier to copy fields from - * @param modifiers Additional modifiers to add to this check - */ - constructor(slug: string, statistic: { - modifiers: readonly ModifierPF2e[]; - }, modifiers?: ModifierPF2e[], rollOptions?: string[] | Set); -} -interface DamageDiceOverride { - /** Upgrade the damage dice to the next higher size (maximum d12) */ - upgrade?: boolean; - /** Downgrade the damage dice to the next lower size (minimum d4) */ - downgrade?: boolean; - /** Override with a set dice size */ - dieSize?: DamageDieSize; - /** Override the damage type */ - damageType?: DamageType; - /** Override the number of damage dice */ - diceNumber?: number; -} -type PartialParameters = Partial> & Pick; -interface DamageDiceParameters extends PartialParameters { - predicate?: RawPredicate; -} -declare class DamageDicePF2e { - /** A selector of an actor's associated damaging statistic */ - selector: string; - slug: string; - label: string; - /** The number of dice to add. */ - diceNumber: number; - /** The size of the dice to add. */ - dieSize: DamageDieSize | null; - /** - * True means the dice are added to critical without doubling; false means the dice are never added to critical - * damage; omitted means add to normal damage and double on critical damage. - */ - critical: boolean | null; - /** The damage category of these dice. */ - category: "persistent" | "precision" | "splash" | null; - damageType: DamageType | null; - /** A list of tags associated with this damage */ - tags: string[]; - /** If true, these dice overide the base damage dice of the weapon. */ - override: DamageDiceOverride | null; - ignored: boolean; - enabled: boolean; - predicate: Predicate; - alterations: DamageAlteration[]; - hideIfDisabled: boolean; - constructor(params: DamageDiceParameters); - /** The `dieSize` as a number (or null) */ - get faces(): DamageDiceFaces | null; - /** Test the `predicate` against a set of roll options */ - test(options: Set): void; - /** Get roll options for set of dice using a "dice:" prefix. */ - getRollOptions(): string[]; - /** - * Apply damage alterations: must be called externally by client code that knows this is a damage modifier. - * @param options.item An item (typically a weapon or spell) producing damage as part of an action - * @param options.test An `Array` or `Set` of roll options for use in predication testing - */ - applyAlterations(options: { - item: ItemPF2e; - test: string[] | Set; - }): void; - clone(): DamageDicePF2e; - toObject(): RawDamageDice; -} -interface RawDamageDice extends Required { -} -export { CheckModifier, DamageDicePF2e, MODIFIER_TYPES, ModifierPF2e, PROFICIENCY_RANK_OPTION, StatisticModifier, adjustModifiers, applyStackingRules, createAttributeModifier, createProficiencyModifier, ensureProficiencyOption, }; -export type { DamageDiceOverride, DamageDiceParameters, DeferredDamageDiceOptions, DeferredPromise, DeferredValue, DeferredValueParams, ModifierAdjustment, ModifierObjectParams, ModifierType, RawDamageDice, RawModifier, TestableDeferredValueParams, }; diff --git a/types/src/module/actor/npc/config.d.ts b/types/src/module/actor/npc/config.d.ts deleted file mode 100644 index 20bd57bc4..000000000 --- a/types/src/module/actor/npc/config.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { CreatureConfig, CreatureConfigData } from "@actor/creature/config.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import { NPCPF2e } from "./document.ts"; -export declare class NPCConfig extends CreatureConfig { - getData(options?: Partial): Promise; - /** Remove stored properties if they're consistent with defaults; otherwise, store changes */ - _updateObject(event: Event, formData: Record): Promise; -} -interface NPCConfigData extends CreatureConfigData { - lootable: SheetOptions; -} -export {}; diff --git a/types/src/module/actor/npc/data.d.ts b/types/src/module/actor/npc/data.d.ts deleted file mode 100644 index daf59d44e..000000000 --- a/types/src/module/actor/npc/data.d.ts +++ /dev/null @@ -1,242 +0,0 @@ -import type { ActorPF2e } from "@actor/base.ts"; -import type { - Abilities, - BaseCreatureSource, - CreatureAttributes, - CreatureDetails, - CreatureDetailsSource, - CreatureHitPointsSource, - CreatureInitiativeSource, - CreatureLanguagesData, - CreaturePerceptionData, - CreatureResources, - CreatureResourcesSource, - CreatureSpeeds, - CreatureSystemData, - CreatureSystemSource, - CreatureTraitsSource, - HeldShieldData, - LabeledSpeed, - SaveData, - SenseData, -} from "@actor/creature/data.ts"; -import type { - ActorAttributesSource, - ActorFlagsPF2e, - AttributeBasedTraceData, - HitPointsStatistic, - StrikeData, -} from "@actor/data/base.ts"; -import { InitiativeTraceData } from "@actor/initiative.ts"; -import type { ModifierPF2e, StatisticModifier } from "@actor/modifiers.ts"; -import type { ActorAlliance, SaveType, SkillSlug } from "@actor/types.ts"; -import type { MeleePF2e } from "@item"; -import type { PublicationData, ValueAndMax } from "@module/data.ts"; -import type { RawPredicate } from "@system/predication.ts"; - -type NPCSource = BaseCreatureSource<"npc", NPCSystemSource> & { - flags: DeepPartial; -}; -type NPCFlags = ActorFlagsPF2e & { - pf2e: { - lootable: boolean; - }; -}; -interface NPCSystemSource extends CreatureSystemSource { - traits: NPCTraitsSource; - /** The six primary ability scores. */ - abilities: Abilities; - /** Any special attributes for this NPC, such as AC or health. */ - attributes: NPCAttributesSource; - skills: Partial>; - /** Modifier of the perception statistic */ - perception: NPCPerceptionSource; - initiative: CreatureInitiativeSource; - /** Details about this actor, such as alliance or level. */ - details: NPCDetailsSource; - /** The three saves for NPCs. NPC saves have a 'base' score which is the score before applying custom modifiers. */ - saves: NPCSavesSource; - /** Spellcasting data: currently only used for rituals */ - spellcasting?: { - rituals?: { - dc: number; - }; - }; - resources: CreatureResourcesSource; -} -interface NPCSkillSource { - base: number; - /** Any special restriction or clarification */ - note?: string; - /** All saved special skill modifiers */ - special?: NPCSpecialSkillSource[]; -} -/** Source data for special skill modifiers (such as +9 to climb) */ -interface NPCSpecialSkillSource { - label: string; - base: number; - /** A predicate that will automatically enable this variant if satisfied */ - predicate?: RawPredicate; -} -interface NPCAttributesSource extends Required { - ac: { - value: number; - details: string; - }; - adjustment: "elite" | "weak" | null; - hp: NPCHitPointsSource; - speed: { - value: number; - otherSpeeds: LabeledSpeed[]; - details: string; - }; - allSaves: { - value: string; - }; -} -interface NPCHitPointsSource extends Required { - details: string; -} -interface NPCPerceptionSource { - details: string; - mod: number; - senses: SenseData[]; - vision: boolean; -} -interface NPCDetailsSource extends CreatureDetailsSource { - level: { - value: number; - }; - languages: CreatureLanguagesData; - /** A very brief description */ - blurb: string; - /** The in-depth description and any other public notes */ - publicNotes: string; - /** The private GM notes */ - privateNotes: string; - /** Information concerning the publication from which this actor originates */ - publication: PublicationData; -} -type NPCSavesSource = Record; -interface NPCTraitsSource extends Required { -} -/** The raw information contained within the actor data object for NPCs. */ -interface NPCSystemData extends Omit, CreatureSystemData { - /** The six primary ability scores. */ - abilities: Abilities; - /** The three saves for NPCs. NPC saves have a 'base' score which is the score before applying custom modifiers. */ - saves: NPCSaves; - /** Details about this actor, such as alignment or ancestry. */ - details: NPCDetails; - perception: NPCPerceptionData; - initiative: InitiativeTraceData; - /** Any special attributes for this NPC, such as AC or health. */ - attributes: NPCAttributes; - /** Skills that this actor possesses; skills the actor is actually trained on are marked 'visible'. */ - skills: Record; - /** Special strikes which the creature can take. */ - actions: NPCStrike[]; - resources: NPCResources; - spellcasting: { - rituals: { - dc: number; - }; - }; - customModifiers: Record; -} -interface NPCPerceptionData extends CreaturePerceptionData { - mod: number; -} -interface NPCAttributes extends Omit, CreatureAttributes { - adjustment: "elite" | "weak" | null; - hp: NPCHitPoints; - speed: NPCSpeeds; - /** - * Data related to the currently equipped shield. This is copied from the shield data itself, and exists to - * allow for the shield health to be shown in a token. - */ - shield: HeldShieldData; - /** Textual information about any special benefits that apply to all saves. */ - allSaves: { - value: string; - }; - familiarAbilities: StatisticModifier; - /** A fake class DC (set to a level-based DC) for use with critical specialization effects that require it */ - classDC: { - value: number; - }; - /** The best spell DC */ - spellDC: { - value: number; - } | null; - /** And a fake class-or-spell DC to go along with it */ - classOrSpellDC: { - value: number; - }; -} -type AttributesSourceOmission = "ac" | "initiative" | "immunities" | "weaknesses" | "resistances"; -interface NPCDetails extends NPCDetailsSource, CreatureDetails { - level: { - value: number; - /** The presence of a `base` that is different from the `value` indicates the level was adjusted. */ - base: number; - }; - alliance: ActorAlliance; -} -/** The full data for a NPC action (used primarily for strikes.) */ -interface NPCStrike extends StrikeData { - item: MeleePF2e; - /** The type of attack as a localization string */ - attackRollType?: string; - /** The id of the item this strike is generated from */ - sourceId?: string; - /** Additional effects from a successful strike, like "Grab" */ - additionalEffects: { - tag: string; - label: string; - }[]; - /** A melee usage of a firearm: not available on NPC strikes */ - altUsages?: never; -} -/** Save data with an additional "base" value */ -interface NPCSaveData extends SaveData { - base?: number; - saveDetail: string; -} -/** Saves with NPCSaveData */ -interface NPCSaves { - fortitude: NPCSaveData; - reflex: NPCSaveData; - will: NPCSaveData; -} -interface NPCHitPoints extends HitPointsStatistic { - base?: number; -} -/** System Data for skill special modifiers (such as +9 to climb) */ -interface NPCSpecialSkill extends NPCSpecialSkillSource { - mod: number; -} -/** Skill data with a "base" value and whether the skill should be rendered (visible) */ -interface NPCSkillData extends NPCSkillSource, AttributeBasedTraceData { - mod: number; - visible: boolean; - /** Is this skill a Lore skill? */ - lore?: boolean; - /** If this is a lore skill, what item it came from */ - itemId?: string; - special: NPCSpecialSkill[]; -} -interface NPCSpeeds extends CreatureSpeeds { - details: string; -} -interface NPCResources extends CreatureResources { - /** The current number of focus points and pool size */ - focus: ValueAndMax & { - cap: number; - }; - mythicPoints: ValueAndMax; -} -export type { NPCAttributes, NPCAttributesSource, NPCFlags, NPCHitPoints, NPCPerceptionData, NPCPerceptionSource, NPCSaveData, NPCSkillData, NPCSkillSource, NPCSource, NPCSpecialSkillSource, NPCStrike, NPCSystemData, NPCSystemSource, NPCTraitsSource, }; diff --git a/types/src/module/actor/npc/document.d.ts b/types/src/module/actor/npc/document.d.ts deleted file mode 100644 index 43e5a78e5..000000000 --- a/types/src/module/actor/npc/document.d.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { CreaturePF2e } from "@actor"; -import type { Abilities } from "@actor/creature/data.ts"; -import type { CreatureUpdateOperation } from "@actor/creature/index.ts"; -import { ActorInitiative } from "@actor/initiative.ts"; -import type { MeleePF2e } from "@item"; -import type { ItemType } from "@item/base/data/index.ts"; -import { RollNotePF2e } from "@module/notes.ts"; -import { CreatureIdentificationData } from "@module/recall-knowledge.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import type { NPCFlags, NPCSource, NPCSystemData } from "./data.ts"; -import type { VariantCloneParams } from "./types.ts"; -declare class NPCPF2e extends CreaturePF2e { - initiative: ActorInitiative; - get allowedItemTypes(): (ItemType | "physical")[]; - /** The level of this creature without elite/weak adjustments */ - get baseLevel(): number; - /** This NPC's attribute modifiers */ - get abilities(): Abilities; - get description(): string; - /** Does this NPC have the Elite adjustment? */ - get isElite(): boolean; - /** Does this NPC have the Weak adjustment? */ - get isWeak(): boolean; - get identificationDCs(): CreatureIdentificationData; - /** A user can see an unlinked NPC in the actor directory only if they have at least Observer permission */ - get visible(): boolean; - /** Non-owning users may be able to loot a dead NPC. */ - canUserModify(user: User, action: UserAction): boolean; - /** Setup base ephemeral data to be modified by active effects and derived-data preparation */ - prepareBaseData(): void; - prepareDerivedData(): void; - private prepareSaves; - private prepareSkills; - getAttackEffects(attack: MeleePF2e): Promise; - private getHpAdjustment; - /** Make the NPC elite, weak, or normal */ - applyAdjustment(adjustment: "elite" | "weak" | null): Promise; - /** Create a variant clone of this NPC, adjusting any of name, description, and images */ - variantClone(params: VariantCloneParams & { - save?: false; - }): this; - variantClone(params: VariantCloneParams & { - save: true; - }): Promise; - variantClone(params: VariantCloneParams): this | Promise; - protected _preUpdate(changed: DeepPartial, operation: CreatureUpdateOperation, user: UserPF2e): Promise; -} -interface NPCPF2e extends CreaturePF2e { - flags: NPCFlags; - readonly _source: NPCSource; - system: NPCSystemData; -} -export { NPCPF2e }; diff --git a/types/src/module/actor/npc/index.d.ts b/types/src/module/actor/npc/index.d.ts deleted file mode 100644 index 7141599c5..000000000 --- a/types/src/module/actor/npc/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from "./data.ts"; -export { NPCPF2e } from "./document.ts"; -export { NPCSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/actor/npc/sheet.d.ts b/types/src/module/actor/npc/sheet.d.ts deleted file mode 100644 index 78529dd1f..000000000 --- a/types/src/module/actor/npc/sheet.d.ts +++ /dev/null @@ -1,42 +0,0 @@ -/// -/// -/// -import type { NPCPF2e } from "@actor"; -import { CreatureSheetPF2e } from "@actor/creature/sheet.ts"; -import { SheetClickActionHandlers } from "@actor/sheet/base.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import { NPCConfig } from "./config.ts"; -import { NPCSheetData, NPCSpellcastingSheetData } from "./types.ts"; -declare abstract class AbstractNPCSheet extends CreatureSheetPF2e { - #private; - protected readonly actorConfigClass: typeof NPCConfig; - static get defaultOptions(): ActorSheetOptions; - /** - * Prepares items in the actor for easier access during sheet rendering. - * @param sheetData Data from the actor associated to this sheet. - */ - prepareItems(sheetData: NPCSheetData): Promise; - getData(options?: Partial): Promise; - /** Players can view the sheets of lootable NPCs. */ - protected _canUserView(user: UserPF2e): boolean; - activateListeners($html: JQuery): void; - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; -} -declare class NPCSheetPF2e extends AbstractNPCSheet { - #private; - static get defaultOptions(): ActorSheetOptions; - /** Show either the actual NPC sheet or a briefened lootable version if the NPC is dead */ - get template(): string; - /** Use the token name as the title if showing a lootable NPC sheet */ - get title(): string; - getData(options?: Partial): Promise; - prepareItems(sheetData: NPCSheetData): Promise; - protected prepareSpellcasting(): Promise; - activateListeners($html: JQuery): void; - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; - protected _updateObject(event: Event, formData: Record): Promise; -} -declare class SimpleNPCSheet extends AbstractNPCSheet { - static get defaultOptions(): ActorSheetOptions; -} -export { AbstractNPCSheet, NPCSheetPF2e, SimpleNPCSheet }; diff --git a/types/src/module/actor/npc/skills-editor.d.ts b/types/src/module/actor/npc/skills-editor.d.ts deleted file mode 100644 index 69765add5..000000000 --- a/types/src/module/actor/npc/skills-editor.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -/// -/// -/// -import type { NPCPF2e } from "@actor"; -import { NPCSkillData } from "@actor/npc/data.ts"; -/** Specialized form to setup skills for an NPC character. */ -export declare class NPCSkillsEditor extends DocumentSheet { - get actor(): NPCPF2e; - static get defaultOptions(): DocumentSheetOptions; - get title(): string; - /** Prepare data to be sent to HTML. */ - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - /** Prevent submissions when a non-form element (such as lore name) changes */ - protected _onChangeInput(event: Event): Promise; - protected _updateObject(event: Event, formData: Record): Promise; - /** Maintain focus since upstream only operates on named elements */ - protected _render(force?: boolean, options?: RenderOptions): Promise; -} -interface EditorData extends DocumentSheetData { - actor: NPCPF2e; - trainedSkills: NPCSkillData[]; - loreSkills: NPCSkillData[]; - untrainedSkills: NPCSkillData[]; -} -export {}; diff --git a/types/src/module/actor/npc/types.d.ts b/types/src/module/actor/npc/types.d.ts deleted file mode 100644 index ae6fb68e5..000000000 --- a/types/src/module/actor/npc/types.d.ts +++ /dev/null @@ -1,132 +0,0 @@ -import type { CreatureSheetData } from "@actor/creature/sheet.ts"; -import type { HitPointsStatistic, TraitViewData } from "@actor/data/base.ts"; -import type { AbilityViewData } from "@actor/sheet/data-types.ts"; -import type { MovementType, SaveType, SkillSlug } from "@actor/types.ts"; -import type { ItemPF2e } from "@item"; -import type { SpellcastingSheetData } from "@item/spellcasting-entry/index.ts"; -import type { ZeroToFour } from "@module/data.ts"; -import type { TagifyEntry } from "@module/sheet/helpers.ts"; -import type { ArmorClassTraceData } from "@system/statistic/index.ts"; -import type { NPCAttributes, NPCPerceptionData, NPCSaveData, NPCSkillData, NPCSystemData } from "./data.ts"; -import type { NPCPF2e, NPCStrike } from "./index.ts"; - -interface ActionsDetails { - label: string; - actions: AbilityViewData[]; -} -interface NPCActionSheetData { - passive: ActionsDetails; - active: ActionsDetails; -} -/** Highlight such a statistic if adjusted by data preparation */ -interface WithAdjustments { - adjustedHigher?: boolean; - adjustedLower?: boolean; -} -interface VariantCloneParams { - name?: string; - description?: string; - img?: { - actor?: ImageFilePath; - token?: VideoFilePath; - }; - save?: boolean; - keepId?: boolean; -} -type WithRank = { - icon?: string; - hover?: string; - rank: ZeroToFour; -}; -type NPCSkillSheetData = NPCSkillData & WithAdjustments & WithRank; -interface NPCSystemSheetData extends NPCSystemData { - perception: NPCPerceptionData & WithAdjustments & WithRank; - attributes: NPCAttributes & { - ac: ArmorClassTraceData & WithAdjustments; - hp: HitPointsStatistic & WithAdjustments; - }; - details: NPCSystemData["details"] & { - level: NPCSystemData["details"]["level"] & WithAdjustments; - }; - saves: Record; - skills: Record; -} -interface NPCStrikeSheetData { - id: string; - name: string; - sort: number; - breakdown: string; - variants: NPCStrike["variants"]; - attackType: string; - traits: TraitViewData[]; - description: string | null; - /** The damage formula of the strike for display on sheets */ - damageFormula: string | null; -} -interface NPCSpellcastingSheetData extends SpellcastingSheetData { - adjustedHigher?: { - dc: boolean; - mod: boolean; - }; - adjustedLower?: { - dc: boolean; - mod: boolean; - }; -} -/** Additional fields added in sheet data preparation */ -interface NPCSheetData extends CreatureSheetData { - attacks: NPCStrikeSheetData[]; - actions: NPCActionSheetData; - data: NPCSystemSheetData; - items: NPCSheetItemData>[]; - spellcastingEntries: SpellcastingSheetData[]; - identificationDCs: NPCIdentificationSheetData; - isNotCommon?: boolean; - actorSize?: string; - isWeak?: boolean; - isElite?: boolean; - eliteState: "active" | "inactive"; - weakState: "active" | "inactive"; - notAdjusted: boolean; - hasShield?: boolean; - hasHardness?: boolean; - configLootableNpc?: boolean; - traitTagifyData: TagifyEntry[]; - speeds: Record<"land", NPCSpeedSheetData & { - details: string; - }> & Record, NPCSpeedSheetData | null>; -} -interface NPCSpeedSheetData { - value: number; - label: string; - adjustedHigher: boolean; - adjustedLower: boolean; -} -type NPCSheetItemData> = Omit, "traits"> & { - glyph: string; - traits: { - label: string; - description?: string; - }[]; - system: { - bonus?: { - value: number; - total?: number; - }; - isAgile?: boolean; - prepared?: boolean; - tradition?: { - ritual: boolean; - focus: boolean; - }; - weaponType?: string; - }; - hasAura: boolean; -}; -interface NPCIdentificationSheetData { - standard: string | null; - lore: string; -} -export type { NPCActionSheetData, NPCIdentificationSheetData, NPCSheetData, NPCSheetItemData, NPCSkillSheetData, NPCSpeedSheetData, NPCSpellcastingSheetData, NPCStrikeSheetData, NPCSystemSheetData, VariantCloneParams, }; diff --git a/types/src/module/actor/party/data.d.ts b/types/src/module/actor/party/data.d.ts deleted file mode 100644 index 537d08f4c..000000000 --- a/types/src/module/actor/party/data.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -import type { ActorAttributes, ActorDetails, BaseActorSourcePF2e } from "@actor/data/base.ts"; -import { ActorSystemModel, ActorSystemSchema } from "@actor/data/model.ts"; -import type { ModelPropFromDataField, SourcePropFromDataField } from "types/foundry/common/data/fields.d.ts"; -import type { PartyPF2e } from "./document.ts"; -import type { KingdomSchema } from "./kingdom/schema.ts"; -import fields = foundry.data.fields; - -type PartySource = BaseActorSourcePF2e<"party", PartySystemSource>; -declare class PartySystemData extends ActorSystemModel { - static defineSchema(): PartySystemSchema; -} -interface PartySystemData extends ActorSystemModel, ModelPropsFromSchema { - attributes: PartyAttributes; - details: PartyDetails; -} -type PartySystemSchema = ActorSystemSchema & { - details: fields.SchemaField<{ - description: fields.HTMLField; - members: fields.ArrayField; - }>>; - }>; - campaign: fields.SchemaField, ModelPropsFromSchema, false, true, true>; -}; -interface PartySystemSource extends SourceFromSchema { - details: PartyDetailsSource; - attributes?: never; - traits?: never; - schema?: never; -} -interface PartyDetailsSource extends SourcePropFromDataField { - readonly alliance?: never; - readonly level?: never; -} -interface PartyAttributes extends Omit { - immunities: never[]; - weaknesses: never[]; - resistances: never[]; - speed: { - total: number; - }; -} -interface PartyDetails extends ModelPropFromDataField, ActorDetails { -} -type PartyCampaignSource = { - type: string; -} & Record; -export { PartySystemData }; -export type { PartyCampaignSource, PartySource }; diff --git a/types/src/module/actor/party/document.d.ts b/types/src/module/actor/party/document.d.ts deleted file mode 100644 index 1473fb603..000000000 --- a/types/src/module/actor/party/document.d.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { ActorPF2e, type CreaturePF2e } from "@actor"; -import { ItemType } from "@item/base/data/index.ts"; -import { RuleElementPF2e } from "@module/rules/index.ts"; -import { RuleElementSchema } from "@module/rules/rule-element/data.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import type { TokenDocumentPF2e } from "@scene/index.ts"; -import type { Statistic } from "@system/statistic/index.ts"; -import type { DataModelValidationOptions } from "types/foundry/common/abstract/data.d.ts"; -import { PartySource, PartySystemData } from "./data.ts"; -import { PartyCampaign, PartyUpdateOperation } from "./types.ts"; - -declare class PartyPF2e extends ActorPF2e { - armorClass: null; - members: CreaturePF2e[]; - campaign: PartyCampaign | null; - get active(): boolean; - get baseAllowedItemTypes(): (ItemType | "physical")[]; - get allowedItemTypes(): (ItemType | "physical")[]; - /** Friendship lives in our hearts */ - get canAct(): false; - /** Part members can add and remove items (though system socket shenanigans) */ - canUserModify(user: UserPF2e, action: UserAction): boolean; - /** Our bond is unbreakable. */ - isAffectedBy(): false; - /** Override validation to defer certain properties to the campaign model */ - validate(options?: DataModelValidationOptions): boolean; - updateSource(data?: Record, options?: DocumentSourceUpdateContext): DeepPartial; - /** Only prepare rule elements for non-physical items (in case campaign items exist) */ - protected prepareRuleElements(): RuleElementPF2e[]; - prepareBaseData(): void; - prepareDerivedData(): void; - addMembers(...membersToAdd: CreaturePF2e[]): Promise; - removeMembers(...remove: (ActorUUID | CreaturePF2e)[]): Promise; - getRollOptions(domains?: string[]): string[]; - getRollData(): Record; - /** Re-render the sheet if data preparation is called from the familiar's master */ - reset({ actor }?: { - actor?: boolean | undefined; - }): void; - /** Include campaign statistics in party statistics */ - getStatistic(slug: string): Statistic | null; - private _resetAndRerenderDebounced; - protected _preCreate(data: this["_source"], options: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _preUpdate(changed: DeepPartial, options: PartyUpdateOperation, user: UserPF2e): Promise; - /** Override to inform creatures when they were booted from a party */ - protected _onUpdate(changed: DeepPartial, operation: PartyUpdateOperation, userId: string): void; - /** Overriden to inform creatures the party is defunct */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface PartyPF2e extends ActorPF2e { - readonly _source: PartySource; - system: PartySystemData; -} -export { PartyPF2e }; diff --git a/types/src/module/actor/party/helpers.d.ts b/types/src/module/actor/party/helpers.d.ts deleted file mode 100644 index 63dad62e8..000000000 --- a/types/src/module/actor/party/helpers.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -/** Create the first party actor in this (typically new) world */ -declare function createFirstParty(): Promise; -export { createFirstParty }; diff --git a/types/src/module/actor/party/index.d.ts b/types/src/module/actor/party/index.d.ts deleted file mode 100644 index f2d74f66d..000000000 --- a/types/src/module/actor/party/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./document.ts"; -export * from "./data.ts"; diff --git a/types/src/module/actor/party/kingdom/builder.d.ts b/types/src/module/actor/party/kingdom/builder.d.ts deleted file mode 100644 index bf5cb814b..000000000 --- a/types/src/module/actor/party/kingdom/builder.d.ts +++ /dev/null @@ -1,76 +0,0 @@ -/// -/// -/// -import type { BoostFlawState } from "@actor/character/apps/attribute-builder.ts"; -import type { PartyPF2e } from "../document.ts"; -import type { Kingdom } from "./model.ts"; -import { KingdomCHG } from "./schema.ts"; -import type { KingdomAbility } from "./types.ts"; -import { KingdomCHGData } from "./values.ts"; - -declare const KINGDOM_BUILD_CATEGORIES: readonly ["charter", "heartland", "government"]; -type KingdomBuildCategory = (typeof KINGDOM_BUILD_CATEGORIES)[number]; -type CurrentSelections = Record; -/** Dialog used to create and edit the charter, heartland, government, and ability scores */ -declare class KingdomBuilder extends FormApplication { - #private; - selected: CurrentSelections; - static get defaultOptions(): FormApplicationOptions; - static showToPlayers(options: { - uuid: string; - tab?: string; - }): void; - get id(): string; - get kingdom(): Kingdom; - get actor(): PartyPF2e; - get isEditable(): boolean; - protected _getHeaderButtons(): ApplicationHeaderButton[]; - getData(): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(_event: Event, formData: Record): Promise; - protected _render(force?: boolean, options?: KingdomBuilderRenderOptions): Promise; -} -interface KingdomBuilder extends FormApplication { - render(force?: boolean, options?: KingdomBuilderRenderOptions): this; -} -interface KingdomBuilderRenderOptions extends RenderOptions { - tab?: string | null; -} -interface KingdomBuilderSheetData { - options: { - editable: boolean; - }; - kingdom: Kingdom; - database: KingdomCHGData; - categories: Record; - abilityLabels: Record; - skillLabels: Record; - build: KingdomAbilityBuilderData; - finished: boolean; - aspirationOptions: FormSelectOption[]; -} -interface CategorySheetData { - /** The active build entry slug (the one that's been saved) */ - active: string | null; - /** Selected refers to the one the user is viewing. Can be null for custom ones */ - selected: string | null; - /** The build entry currently being viewed (aka selected) */ - buildEntry?: KingdomCHG; - /** The feat item the selected build entry will grant */ - featLink: string | null; - stale: boolean; -} -interface KingdomAbilityBuilderData { - charter: KingdomBoostFlawRow | null; - heartland: KingdomBoostFlawRow | null; - government: KingdomBoostFlawRow | null; - levelBoosts: Record; -} -interface KingdomBoostFlawRow { - buttons: Record; - remaining: number; -} -interface KingdomLevelRow extends KingdomBoostFlawRow { - eligible: boolean; -} -export { KingdomBuilder }; diff --git a/types/src/module/actor/party/kingdom/chat.d.ts b/types/src/module/actor/party/kingdom/chat.d.ts deleted file mode 100644 index 121665f3d..000000000 --- a/types/src/module/actor/party/kingdom/chat.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import type { ChatMessagePF2e } from "@module/chat-message/document.ts"; -/** Handler for kingdom chat messages. Does nothing if there is no kingdom */ -export declare function handleKingdomChatMessageEvents(options: KingdomChatMessageParams): Promise; -interface KingdomChatMessageParams { - event: MouseEvent; - message: ChatMessagePF2e; - messageEl: HTMLElement; -} -export {}; diff --git a/types/src/module/actor/party/kingdom/helpers.d.ts b/types/src/module/actor/party/kingdom/helpers.d.ts deleted file mode 100644 index ced95b21e..000000000 --- a/types/src/module/actor/party/kingdom/helpers.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import type { Kingdom } from "./model.ts"; -import type { KingdomCHG } from "./schema.ts"; -import type { KingdomAbility, KingdomCommodity } from "./types.ts"; - -/** Resolves boosts using kingmaker rules. Free boosts cannot be the granted ability nor the flaw */ -declare function resolveKingdomBoosts(entry: KingdomCHG, choices: KingdomAbility[]): KingdomAbility[]; -/** Assemble what will be collected during the kingdom's upkeep phase */ -declare function calculateKingdomCollectionData(kingdom: Kingdom): { - formula: string; - commodities: Record, number>; -}; -declare function importDocuments(actor: ActorPF2e, items: ItemPF2e[], skipDialog: boolean): Promise; -export { calculateKingdomCollectionData, importDocuments, resolveKingdomBoosts }; diff --git a/types/src/module/actor/party/kingdom/index.d.ts b/types/src/module/actor/party/kingdom/index.d.ts deleted file mode 100644 index 8be23278a..000000000 --- a/types/src/module/actor/party/kingdom/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./types.ts"; -export * from "./model.ts"; diff --git a/types/src/module/actor/party/kingdom/model.d.ts b/types/src/module/actor/party/kingdom/model.d.ts deleted file mode 100644 index 6e0ae231b..000000000 --- a/types/src/module/actor/party/kingdom/model.d.ts +++ /dev/null @@ -1,65 +0,0 @@ -import { type ArmyPF2e, type PartyPF2e } from "@actor"; -import { FeatGroup } from "@actor/character/feats/index.ts"; -import { RawModifier } from "@actor/modifiers.ts"; -import { CampaignFeaturePF2e } from "@item"; -import type { ItemType } from "@item/base/data/index.ts"; -import { Statistic } from "@system/statistic/index.ts"; -import { PartySystemData } from "../data.ts"; -import { PartyCampaign } from "../types.ts"; -import { KingdomCharter, KingdomCHG, KingdomData, KingdomGovernment, KingdomSchema, KingdomSource } from "./schema.ts"; -import type { KingdomNationType, KingdomSkill } from "./types.ts"; -import DataModel = foundry.abstract.DataModel; - -/** Model for the Kingmaker campaign data type, which represents a Kingdom */ -declare class Kingdom extends DataModel implements PartyCampaign { - nationType: KingdomNationType; - features: FeatGroup; - feats: FeatGroup; - bonusFeats: FeatGroup; - skills: Record; - control: Statistic; - armies: ArmyPF2e[]; - static defineSchema(): KingdomSchema; - get actor(): PartyPF2e; - get extraItemTypes(): ItemType[]; - get activities(): CampaignFeaturePF2e[]; - get charter(): KingdomCharter | null; - get heartland(): KingdomCHG | null; - get government(): KingdomGovernment | null; - /** Creates sidebar buttons to inject into the chat message sidebar */ - createSidebarButtons(): HTMLElement[]; - /** Perform the collection portion of the upkeep phase */ - collect(): Promise; - /** - * Adds a custom modifier that will be included when determining the final value of a stat. The slug generated by - * the name parameter must be unique for the custom modifiers for the specified stat, or it will be ignored. - */ - addCustomModifier(stat: string, data: RawModifier): Promise; - /** Removes a custom modifier by slug */ - removeCustomModifier(stat: string, slug: string): Promise; - /** - * Updates the party's campaign data. All data is scoped to system.campaign unless it is already in system.campaign. - * Scoping to system.campaign is necessary for certain sheet listeners such as data-property. - */ - update(data: DeepPartial & Record): Promise; - /** Resets kingdom data preparation and re-renders all party actor sheets, which includes the kingmaker sheet */ - notifyUpdate: () => void; - prepareBaseData(): void; - prepareDerivedData(): void; - getRollOptions(): string[]; - getRollData(): Record; - importActivities({ skipDialog }?: { - skipDialog?: boolean; - }): Promise; - /** Adds/removes kingdom features as appropriate. Private instead of # because # explodes */ - private updateFeatures; - getStatistic(slug: string): Statistic | null; - renderSheet(options?: { - tab?: string; - type?: "builder" | null; - }): void; - _preUpdate(changed: DeepPartial): void; -} -interface Kingdom extends DataModel, KingdomData { -} -export { Kingdom }; diff --git a/types/src/module/actor/party/kingdom/schema.d.ts b/types/src/module/actor/party/kingdom/schema.d.ts deleted file mode 100644 index a07d01640..000000000 --- a/types/src/module/actor/party/kingdom/schema.d.ts +++ /dev/null @@ -1,171 +0,0 @@ -import { RawModifier } from "@actor/modifiers.ts"; -import { ZeroToFour } from "@module/data.ts"; -import { DataUnionField, RecordField, StrictBooleanField, StrictStringField } from "@system/schema-data-fields.ts"; -import type { - FameType, - KingdomAbility, - KingdomBoostCategory, - KingdomCommodity, - KingdomLeadershipRole, - KingdomSettlementType, - KingdomSkill, -} from "./types.ts"; -import fields = foundry.data.fields; - -declare function defineKingdomSchema(): KingdomSchema; -type CHGSchema = { - id: fields.StringField; - name: fields.StringField; - img: fields.StringField; - description: fields.StringField; - boosts: fields.ArrayField>; -}; -type CharterSchema = CHGSchema & { - flaw: fields.StringField; -}; -type GovernmentSchema = CHGSchema & { - skills: fields.ArrayField>; - feat: fields.DocumentUUIDField; -}; -type NullableSchemaField = fields.SchemaField, ModelPropsFromSchema, true, true, true>; -type BuildSchema = { - /** Determines if the ability scores are manually set or automatically determined. */ - manual: fields.BooleanField; - charter: NullableSchemaField; - heartland: NullableSchemaField; - government: NullableSchemaField; - skills: fields.SchemaField; - }>>>; - /** Boost selections made by the user, both during the build process and levelling */ - boosts: fields.SchemaField>>>; -}; -type ResourceSchema = { - dice: fields.SchemaField<{ - number: fields.NumberField; - faces: fields.NumberField; - bonus: fields.NumberField; - penalty: fields.NumberField; - }>; - fame: fields.SchemaField<{ - value: fields.NumberField; - max: fields.NumberField; - }>; - commodities: fields.SchemaField; - max: fields.NumberField; - }>>>; - points: fields.NumberField; - /** Worksites by commodity type, for the commodities that can have work sites */ - workSites: fields.SchemaField; - /** The number of worksites that are on resource hexes (these grant double) */ - resource: fields.NumberField; - }>>>; -}; -type SettlementSchema = { - name: fields.StringField; - type: fields.StringField; - level: fields.NumberField; - overcrowded: fields.BooleanField; - description: fields.StringField; - sort: fields.IntegerSortField; - consumption: fields.SchemaField<{ - base: fields.NumberField; - /** Some settlements reduce consumption, this is the number of reductions that may exist */ - reduction: fields.NumberField; - total: fields.NumberField; - }>; - storage: fields.SchemaField>>; -}; -type LeadershipSchema = { - uuid: fields.DocumentUUIDField; - vacant: fields.BooleanField; - invested: fields.BooleanField; -}; -type RuinSchema = { - value: fields.NumberField; - max: fields.NumberField; -}; -type KingdomSchema = { - type: fields.StringField<"kingmaker", "kingmaker", true, false, true>; - active: DataUnionField | StrictBooleanField, false, false, boolean>; - name: fields.StringField; - img: fields.FilePathField; - capital: fields.StringField; - size: fields.NumberField; - level: fields.NumberField; - xp: fields.SchemaField<{ - value: fields.NumberField; - max: fields.NumberField; - }, { - value: number; - max: number; - }, { - value: number; - max: number; - }, true, false, true>; - aspiration: fields.StringField; - abilities: fields.SchemaField<{ - [key in KingdomAbility]: fields.SchemaField<{ - value: fields.NumberField; - mod: fields.NumberField; - ruin: fields.SchemaField; - penalty: fields.NumberField; - }>; - }>; - build: fields.SchemaField; - customModifiers: fields.ObjectField>; - leadership: fields.SchemaField>>; - resources: fields.SchemaField; - /** A collection of settlements controlled by this kingdom, and its related data */ - settlements: RecordField, fields.SchemaField>; - consumption: fields.SchemaField<{ - settlement: fields.NumberField; - army: fields.NumberField; - value: fields.NumberField; - breakdown: fields.StringField; - }>; - unrest: fields.SchemaField<{ - value: fields.NumberField; - anarchyThreshold: fields.NumberField; - }>; - event: fields.SchemaField<{ - dc: fields.NumberField; - text: fields.StringField; - }>; - /** Any kingmaker specific module configuration and tweaks. Not used otherwise */ - module: fields.ObjectField; -}; -interface KingdomCHG extends ModelPropsFromSchema { - feat?: ItemUUID | null; - flaw?: KingdomAbility | null; -} -interface KingdomCharter extends KingdomCHG { - feat?: never; - flaw: KingdomAbility | null; -} -interface KingdomHeartland extends ModelPropsFromSchema { - feat?: never; - flaw?: never; -} -interface KingdomGovernment extends ModelPropsFromSchema { - skills: KingdomSkill[]; - feat: ItemUUID | null; - flaw?: never; -} -interface KingdomBuildData extends ModelPropsFromSchema { - charter: KingdomCharter | null; - heartland: KingdomHeartland | null; - government: KingdomGovernment | null; -} -interface KingdomData extends ModelPropsFromSchema { - build: KingdomBuildData; -} -type KingdomAbilityData = KingdomData["abilities"][KingdomAbility]; -type KingdomLeadershipData = KingdomData["leadership"][KingdomLeadershipRole]; -type KingdomSettlementData = ModelPropsFromSchema; -type KingdomSource = SourceFromSchema; -export { defineKingdomSchema }; -export type { KingdomAbilityData, KingdomBuildData, KingdomCHG, KingdomCharter, KingdomData, KingdomGovernment, KingdomHeartland, KingdomLeadershipData, KingdomSchema, KingdomSettlementData, KingdomSource, }; diff --git a/types/src/module/actor/party/kingdom/sheet.d.ts b/types/src/module/actor/party/kingdom/sheet.d.ts deleted file mode 100644 index 183699791..000000000 --- a/types/src/module/actor/party/kingdom/sheet.d.ts +++ /dev/null @@ -1,113 +0,0 @@ -/// -/// -/// -import { ActorPF2e, ArmyPF2e, type PartyPF2e } from "@actor"; -import type { FeatGroup } from "@actor/character/feats/index.ts"; -import { ActorSheetPF2e, SheetClickActionHandlers } from "@actor/sheet/base.ts"; -import { ActorSheetDataPF2e } from "@actor/sheet/data-types.ts"; -import { type CampaignFeaturePF2e, ItemPF2e } from "@item"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { DropCanvasItemDataPF2e } from "@module/canvas/drop-canvas-data.ts"; -import { ValueAndMax } from "@module/data.ts"; -import { AdjustedValue, SheetOption, SheetOptions } from "@module/sheet/helpers.ts"; -import { Statistic } from "@system/statistic/index.ts"; -import { Kingdom } from "./model.ts"; -import type { KingdomAbilityData, KingdomData, KingdomLeadershipData, KingdomSettlementData } from "./schema.ts"; - -declare class KingdomSheetPF2e extends ActorSheetPF2e { - #private; - /** The current selected activity filter, which doubles as an active kingdom phase */ - protected selectedFilter: string | null; - /** HTML element to focus on a re-render, such as when new elements are added */ - protected focusElement: string | null; - constructor(actor: PartyPF2e, options?: Partial); - get kingdom(): Kingdom; - get title(): string; - static get defaultOptions(): ActorSheetOptions; - protected _getHeaderButtons(): ApplicationHeaderButton[]; - getData(options?: ActorSheetOptions): Promise; - protected _configureProseMirrorPlugins(name: string, options: { - remove?: boolean; - }): Record; - activateListeners($html: JQuery): void; - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; - protected filterActions(trait: string | null, options?: { - instant?: boolean; - }): void; - protected _onDropItem(event: DragEvent, data: DropCanvasItemDataPF2e): Promise; - /** Handle a drop event for an existing Owned Item to sort that item */ - protected _onSortItem(event: DragEvent, itemData: ItemSourcePF2e): Promise; - protected _onDropActor(event: DragEvent, data: DropCanvasData<"Actor", PartyPF2e>): Promise; - /** Override to not auto-disable fields on a thing meant to be used by players */ - protected _disableFields(form: HTMLElement): void; - protected _updateObject(_event: Event, formData: Record): Promise; -} -interface KingdomSheetData extends ActorSheetDataPF2e { - kingdom: Kingdom; - nationTypeLabel: string; - abilities: (KingdomAbilityData & { - slug: string; - label: string; - ruinLabel: string; - })[]; - commodities: CommoditySheetData[]; - resourceDice: KingdomData["resources"]["dice"] & { - icon: string; - bonusAdjustment: string | null; - penaltyAdjustment: string | null; - }; - leadership: LeaderSheetData[]; - actions: { - item: CampaignFeaturePF2e; - traits: SheetOptions; - }[]; - skills: Statistic[]; - feats: FeatGroup[]; - actionFilterChoices: SheetOption[]; - armies: ArmySheetData[]; - settlements: SettlementSheetData[]; - eventText: string; - settlementTypes: Record; - abilityLabels: Record; - skillLabels: Record; - proficiencyOptions: FormSelectOption[]; -} -interface ArmySheetData { - link: string; - document: ArmyPF2e; - consumption: AdjustedValue; -} -interface LeaderSheetData extends KingdomLeadershipData { - actor: ActorPF2e | null; - img: string; - slug: string; - label: string; - abilityLabel: string; - penaltyLabel: string; -} -interface CommoditySheetData extends ValueAndMax { - type: string; - label: string; - /** Worksite data (if it exists for the commodity type) */ - workSites: { - label: string; - description: string; - hasResource: boolean; - value: number; - resource?: number; - }; -} -type SettlementSheetData = Omit & { - id: string; - editing: boolean; - blocks: number | string; - levelRange: string; - populationRange: string; - typeLabel: string; - storage: { - type: string; - label: string; - value: number; - }[]; -}; -export { KingdomSheetPF2e }; diff --git a/types/src/module/actor/party/kingdom/types.d.ts b/types/src/module/actor/party/kingdom/types.d.ts deleted file mode 100644 index 621a87556..000000000 --- a/types/src/module/actor/party/kingdom/types.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { - KINGDOM_ABILITIES, - KINGDOM_COMMODITIES, - KINGDOM_LEADERSHIP, - KINGDOM_SETTLEMENT_TYPES, - KINGDOM_SKILLS, -} from "./values.ts"; - -type KingdomAbility = (typeof KINGDOM_ABILITIES)[number]; -type KingdomBoostCategory = "charter" | "heartland" | "government" | "1" | "5" | "10" | "15" | "20"; -type KingdomSkill = (typeof KINGDOM_SKILLS)[number]; -type KingdomLeadershipRole = (typeof KINGDOM_LEADERSHIP)[number]; -type KingdomCommodity = (typeof KINGDOM_COMMODITIES)[number]; -type KingdomNationType = "territory" | "province" | "state" | "country" | "dominion"; -type KingdomSettlementType = (typeof KINGDOM_SETTLEMENT_TYPES)[number]; -type FameType = "fame" | "infamy"; -export type { FameType, KingdomAbility, KingdomBoostCategory, KingdomCommodity, KingdomLeadershipRole, KingdomNationType, KingdomSettlementType, KingdomSkill, }; diff --git a/types/src/module/actor/party/kingdom/values.d.ts b/types/src/module/actor/party/kingdom/values.d.ts deleted file mode 100644 index 3b656260e..000000000 --- a/types/src/module/actor/party/kingdom/values.d.ts +++ /dev/null @@ -1,105 +0,0 @@ -import { ModifierAdjustment, RawModifier } from "@actor/modifiers.ts"; -import { KingdomCharter, KingdomGovernment, KingdomHeartland } from "./schema.ts"; -import { KingdomAbility, KingdomLeadershipRole, KingdomSkill } from "./types.ts"; - -declare const KINGDOM_ABILITIES: readonly ["culture", "economy", "loyalty", "stability"]; -declare const KINGDOM_LEADERSHIP: readonly ["ruler", "counselor", "general", "emissary", "magister", "treasurer", "viceroy", "warden"]; -declare const KINGDOM_COMMODITIES: readonly ["food", "luxuries", "lumber", "ore", "stone"]; -declare const KINGDOM_SKILLS: readonly ["agriculture", "arts", "boating", "defense", "engineering", "exploration", "folklore", "industry", "intrigue", "magic", "politics", "scholarship", "statecraft", "trade", "warfare", "wilderness"]; -declare const KINGDOM_LEADERSHIP_ABILITIES: Record; -declare const KINGDOM_SKILL_ABILITIES: Record; -declare const KINGDOM_ABILITY_LABELS: Record<"culture" | "economy" | "loyalty" | "stability", string>; -declare const KINGDOM_COMMODITY_LABELS: Record<"stone" | "food" | "luxuries" | "lumber" | "ore", string>; -/** Ruin label by ability slug */ -declare const KINGDOM_RUIN_LABELS: { - culture: string; - economy: string; - stability: string; - loyalty: string; -}; -declare const KINGDOM_SKILL_LABELS: Record<"magic" | "exploration" | "defense" | "agriculture" | "arts" | "boating" | "engineering" | "folklore" | "industry" | "intrigue" | "politics" | "scholarship" | "statecraft" | "trade" | "warfare" | "wilderness", string>; -declare const CONTROL_DC_BY_LEVEL: number[]; -declare const KINGDOM_SIZE_DATA: { - 1: { - faces: number; - type: "territory"; - controlMod: number; - storage: number; - }; - 10: { - faces: number; - type: "province"; - controlMod: number; - storage: number; - }; - 25: { - faces: number; - type: "state"; - controlMod: number; - storage: number; - }; - 50: { - faces: number; - type: "country"; - controlMod: number; - storage: number; - }; - 100: { - faces: number; - type: "dominion"; - controlMod: number; - storage: number; - }; -}; -declare const KINGDOM_SETTLEMENT_TYPES: readonly ["village", "town", "city", "metropolis"]; -declare const KINGDOM_SETTLEMENT_TYPE_LABELS: Record<"village" | "town" | "city" | "metropolis", string>; -declare const KINGDOM_SETTLEMENT_TYPE_DATA: { - village: { - blocks: number; - population: [number, number]; - level: [number, number]; - consumption: number; - maxItemBonus: number; - influence: number; - }; - town: { - blocks: number; - population: [number, number]; - level: [number, number]; - consumption: number; - maxItemBonus: number; - influence: number; - }; - city: { - blocks: number; - population: [number, number]; - level: [number, number]; - consumption: number; - maxItemBonus: number; - influence: number; - }; - metropolis: { - blocks: number; - population: [number, number]; - level: [number, number]; - consumption: number; - maxItemBonus: number; - influence: number; - }; -}; -type VacancyPenalty = { - adjustments?: Record; - modifiers?: Record; -}; -declare const VACANCY_PENALTIES: Record VacancyPenalty>; -interface KingdomCHGData { - charter: Record | undefined>; - heartland: Record | undefined>; - government: Record | undefined>; -} -/** Returns every single possible charter, heartland, and government */ -declare function getKingdomCHGData(): KingdomCHGData; -export { CONTROL_DC_BY_LEVEL, KINGDOM_ABILITIES, KINGDOM_ABILITY_LABELS, KINGDOM_COMMODITIES, KINGDOM_COMMODITY_LABELS, KINGDOM_LEADERSHIP, KINGDOM_LEADERSHIP_ABILITIES, KINGDOM_RUIN_LABELS, KINGDOM_SETTLEMENT_TYPES, KINGDOM_SETTLEMENT_TYPE_DATA, KINGDOM_SETTLEMENT_TYPE_LABELS, KINGDOM_SIZE_DATA, KINGDOM_SKILLS, KINGDOM_SKILL_ABILITIES, KINGDOM_SKILL_LABELS, VACANCY_PENALTIES, getKingdomCHGData, }; -export type { KingdomCHGData }; diff --git a/types/src/module/actor/party/sheet.d.ts b/types/src/module/actor/party/sheet.d.ts deleted file mode 100644 index 21e79a422..000000000 --- a/types/src/module/actor/party/sheet.d.ts +++ /dev/null @@ -1,113 +0,0 @@ -/// -/// -/// -import { ActorPF2e } from "@actor"; -import { HitPointsSummary } from "@actor/base.ts"; -import { ResourceData } from "@actor/creature/index.ts"; -import { ActorSheetPF2e } from "@actor/sheet/base.ts"; -import { ActorSheetDataPF2e, ActorSheetRenderOptionsPF2e } from "@actor/sheet/data-types.ts"; -import { ItemPF2e } from "@item"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { Bulk } from "@item/physical/index.ts"; -import { DropCanvasItemDataPF2e } from "@module/canvas/drop-canvas-data.ts"; -import { ZeroToFour } from "@module/data.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import { PartyPF2e } from "./document.ts"; - -interface PartySheetRenderOptions extends ActorSheetRenderOptionsPF2e { - actors?: boolean; -} -declare class PartySheetPF2e extends ActorSheetPF2e { - #private; - currentSummaryView: string; - static get defaultOptions(): ActorSheetOptions; - regionTemplates: Record; - protected _getHeaderButtons(): ApplicationHeaderButton[]; - getData(options?: ActorSheetOptions): Promise; - protected setSummaryView(view: string): void; - activateListeners($html: JQuery): void; - /** Overriden to prevent inclusion of campaign-only item types. Those should get added to their own sheet */ - protected _onDropItemCreate(itemData: ItemSourcePF2e | ItemSourcePF2e[]): Promise[]>; - /** Override to allow divvying/outward transfer of items via party member blocks in inventory members sidebar. */ - protected _onDropItem(event: DragEvent, data: DropCanvasItemDataPF2e & { - fromInventory?: boolean; - }): Promise; - /** Override to not auto-disable fields on a thing meant to be used by players */ - protected _disableFields(_form: HTMLElement): void; - render(force?: boolean, options?: PartySheetRenderOptions): this; - protected _renderInner(data: Record, options: RenderOptions): Promise>; - protected _onDropActor(event: DragEvent, data: DropCanvasData<"Actor", PartyPF2e>): Promise; -} -interface PartySheetData extends ActorSheetDataPF2e { - /** Is the sheet restricted to players? */ - playerRestricted: boolean; - /** Is the sheet restricted to the current user? */ - restricted: boolean; - members: MemberBreakdown[]; - overviewSummary: { - languages: LanguageSheetData[]; - skills: SkillData[]; - knowledge: { - regular: SkillData[]; - lore: SkillData[]; - }; - } | null; - inventorySummary: { - totalCoins: number; - totalWealth: number; - totalBulk: Bulk; - }; - explorationSummary: { - speed: number; - feetPerMinute: number; - milesPerHour: number; - milesPerDay: number; - activities: number; - }; - /** Unsupported items on the sheet, may occur due to disabled campaign data */ - orphaned: ItemPF2e[]; -} -interface SkillData { - slug: string; - label: string; - mod: number; - rank?: ZeroToFour | null; -} -interface MemberBreakdown { - actor: ActorPF2e; - genderPronouns: string | null; - blurb: string | null; - resource: ResourceData | null; - hasBulk: boolean; - bestSkills: SkillData[]; - /** If the actor is owned by the current user */ - owner: boolean; - /** If the actor has observer or greater permission */ - observer: boolean; - /** If the actor has limited or greater permission */ - limited: boolean; - speeds: { - label: string; - value: number; - }[]; - senses: { - label: string | null; - labelFull: string; - acuity?: string; - }[]; - hp: HitPointsSummary; - activities: { - uuid: string; - name: string; - img: string; - traits: SheetOptions; - }[]; - /** If true, the current user is restricted from seeing meta details */ - restricted: boolean; -} -interface LanguageSheetData { - slug: string; - label: string; - actors: ActorPF2e[]; -} -export { PartySheetPF2e, type PartySheetRenderOptions }; diff --git a/types/src/module/actor/party/types.d.ts b/types/src/module/actor/party/types.d.ts deleted file mode 100644 index dcf6672fa..000000000 --- a/types/src/module/actor/party/types.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { ActorUpdateOperation } from "@actor/base.ts"; -import { ItemType } from "@item/base/data/index.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import type { Statistic } from "@system/statistic/index.ts"; -import type DataModel from "types/foundry/common/abstract/data.d.ts"; -import type { DataSchema } from "types/foundry/common/data/fields.d.ts"; -import type { PartySystemData } from "./data.ts"; - -interface PartyUpdateOperation extends ActorUpdateOperation { - removedMembers?: string[]; -} -/** Interface for a party campaign implementation, alternative data preparation used by parties for special campaigns */ -interface PartyCampaign extends DataModel { - type: string; - level?: number; - /** Any additional item types supported by the campaign */ - extraItemTypes?: ItemType[]; - /** Sidebar buttons to inject into the party header */ - createSidebarButtons?(): HTMLElement[]; - /** Returns any additional statistics that should be returned by the party */ - getStatistic?(slug: string): Statistic | null; - /** Additional campaign specific roll options for rule elements */ - getRollOptions?(): string[]; - /** Additional data for inline rolls */ - getRollData?(): Record; - /** Renders the sheet associateed with this campaign, if available */ - renderSheet?(options?: { - tab?: string; - type?: string | null; - }): void; - /** Executed during the actor's prepareBaseData phase */ - prepareBaseData(): void; - /** Executed during the actor's prepareDerivedData phase */ - prepareDerivedData(): void; - _preUpdate?(changed: Record): void; -} -export type { PartyCampaign, PartyUpdateOperation }; diff --git a/types/src/module/actor/roll-context/base.d.ts b/types/src/module/actor/roll-context/base.d.ts deleted file mode 100644 index 41caf5717..000000000 --- a/types/src/module/actor/roll-context/base.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { StrikeData } from "@actor/data/base.ts"; -import type { ItemPF2e } from "@item"; -import type { AbilityTrait } from "@item/ability/types.ts"; -import type { Statistic } from "@system/statistic/statistic.ts"; -import type { RollContextConstructorParams, UnresolvedOpposingActors } from "./types.ts"; -import { RollContextData } from "./types.ts"; - -/** Resolve a roll context by cloning a pair of actors and feeding them with mutual roll options. */ -declare abstract class RollContext | null> { - #private; - /** Origin and target data provided directly by the caller */ - protected unresolved: Readonly>; - domains: string[]; - /** Initial roll options for the context */ - rollOptions: Set; - traits: AbilityTrait[]; - /** Whether this is a one-sided roll context for generating sheet-display data */ - viewOnly: boolean; - /** Whether this roll is associated with an attack action */ - isAttack: boolean; - /** Whether this roll is associated with a melee attack */ - isMeleeAttack: boolean; - constructor(params: RollContextConstructorParams); - /** The item in use for this roll */ - get item(): TItem | null; - get rollerRole(): "origin" | "target"; - get isFlankingAttack(): boolean; - resolve(): Promise>; -} -export { RollContext }; diff --git a/types/src/module/actor/roll-context/check.d.ts b/types/src/module/actor/roll-context/check.d.ts deleted file mode 100644 index c8e36af9d..000000000 --- a/types/src/module/actor/roll-context/check.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { StrikeData } from "@actor/data/base.ts"; -import type { ItemPF2e } from "@item"; -import type { Statistic } from "@system/statistic/statistic.ts"; -import { RollContext } from "./base.ts"; -import { CheckContextConstructorParams, CheckContextData } from "./types.ts"; -declare class CheckContext | null> extends RollContext { - /** The slug of a `Statistic` for use in building a DC */ - against: string | null; - constructor(params: CheckContextConstructorParams); - resolve(): Promise>; -} -export { CheckContext }; diff --git a/types/src/module/actor/roll-context/damage.d.ts b/types/src/module/actor/roll-context/damage.d.ts deleted file mode 100644 index 3da71ffe9..000000000 --- a/types/src/module/actor/roll-context/damage.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { StrikeData } from "@actor/data/base.ts"; -import type { ItemPF2e } from "@item"; -import type { Statistic } from "@system/statistic/statistic.ts"; -import { RollContext } from "./base.ts"; -import type { DamageContextConstructorParams } from "./types.ts"; -declare class DamageContext | null> extends RollContext { - #private; - constructor(params: DamageContextConstructorParams); -} -export { DamageContext }; diff --git a/types/src/module/actor/roll-context/types.d.ts b/types/src/module/actor/roll-context/types.d.ts deleted file mode 100644 index 85e97b3be..000000000 --- a/types/src/module/actor/roll-context/types.d.ts +++ /dev/null @@ -1,95 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { StrikeData } from "@actor/data/base.ts"; -import type { ModifierPF2e } from "@actor/modifiers.ts"; -import type { ItemPF2e } from "@item"; -import type { AbilityTrait } from "@item/ability/types.ts"; -import type { CheckContextChatFlag } from "@module/chat-message/data.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import type { CheckDC, DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import type { Statistic } from "@system/statistic/statistic.ts"; - -interface OpposingActorConstructorData | null = ItemPF2e | null> { - actor?: TActor; - /** The statistic used for the roll */ - statistic?: TStatistic | null; - token?: TokenDocumentPF2e | null; - item?: TItem; -} -interface OpposingActorData | null> extends Required> { -} -interface UnresolvedOpposingActors | null> { - origin: OpposingActorData | null; - target: OpposingActorData | null; -} -interface RollOrigin | null = ItemPF2e | null> { - actor: TActor; - token: TokenDocumentPF2e | null; - /** The statistic in use if the origin is rolling */ - statistic: TStatistic | null; - /** Whether the origin is also the roller: usually the case unless a saving throw */ - self: boolean; - /** The item used for the strike */ - item: TItem; - /** Bonuses and penalties added at the time of a check */ - modifiers: ModifierPF2e[]; -} -interface RollTarget { - actor: ActorPF2e | null; - token: TokenDocumentPF2e | null; - /** The statistic in use if the target is rolling */ - statistic: Statistic | null; - /** Whether the target is also the roller: usually not the case unless a saving throw */ - self: boolean; - item: ItemPF2e | null; - distance: number | null; - rangeIncrement: number | null; -} -/** Context for the attack or damage roll of a strike */ -interface RollContextData | null = ItemPF2e | null> { - /** Roll option domains */ - domains: string[]; - /** Roll options */ - options: Set; - origin: RollOrigin | null; - target: RollTarget | null; - traits: AbilityTrait[]; -} -interface CheckContextData | null = ItemPF2e | null> extends RollContextData { - dc: CheckDC | null; -} -interface BaseConstructorParams | null> { - /** An origin actor and token: required for most checks, optional for saving throws */ - origin?: OpposingActorConstructorData | null; - /** A targeted actor and token: may not be applicable if the action doesn't take targets */ - target?: OpposingActorConstructorData | null; - /** Domains from which to draw roll options */ - domains: string[]; - /** Initial roll options for the strike */ - options: Set; - /** Whether the request is for display in a sheet view. If so, targets are not considered */ - viewOnly?: boolean; - /** Action traits associated with the roll */ - traits?: AbilityTrait[]; -} -interface ConstructorParamsSelfIsOrigin | null = ItemPF2e | null> extends BaseConstructorParams { - origin: OpposingActorConstructorData; - target?: OpposingActorConstructorData | null; -} -interface ConstructorParamsSelfIsTarget | null = ItemPF2e | null> extends BaseConstructorParams { - origin?: OpposingActorConstructorData | null; - target: OpposingActorConstructorData; -} -type RollContextConstructorParams | null = ItemPF2e | null> = ConstructorParamsSelfIsOrigin | ConstructorParamsSelfIsTarget; -type CheckContextConstructorParams | null = ItemPF2e | null> = RollContextConstructorParams & { - against?: string | null; -}; -type DamageContextConstructorParams | null = ItemPF2e | null> = RollContextConstructorParams & { - /** The context object of the preceding check roll */ - checkContext: Maybe; - /** - * An outcome of a preceding check roll: - * This may be different than what is in the context object if the user rolled damage despite a failure - */ - outcome: Maybe; -}; -export type { CheckContextConstructorParams, CheckContextData, DamageContextConstructorParams, RollContextConstructorParams, RollContextData, RollOrigin, RollTarget, UnresolvedOpposingActors, }; diff --git a/types/src/module/actor/sheet/base.d.ts b/types/src/module/actor/sheet/base.d.ts deleted file mode 100644 index 080756a7b..000000000 --- a/types/src/module/actor/sheet/base.d.ts +++ /dev/null @@ -1,95 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import type { StrikeData } from "@actor/data/base.ts"; -import type { PhysicalItemPF2e } from "@item"; -import { ItemPF2e } from "@item"; -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { Coins } from "@item/physical/data.ts"; -import { DropCanvasItemDataPF2e } from "@module/canvas/drop-canvas-data.ts"; -import { BasicConstructorOptions, TagSelectorOptions, TagSelectorType } from "@system/tag-selector/index.ts"; -import type { - ActorSheetDataPF2e, - ActorSheetRenderOptionsPF2e, - CoinageSummary, - InventoryItem, - SheetInventory, -} from "./data-types.ts"; -import { ItemSummaryRenderer } from "./item-summary-renderer.ts"; - -/** - * Extend the basic ActorSheet class to do all the PF2e things! - * This sheet is an Abstract layer which is not used. - * @category Actor - */ -declare abstract class ActorSheetPF2e extends ActorSheet { - #private; - static get defaultOptions(): ActorSheetOptions; - /** @todo fixme for V13 */ - constructor(actor: TActor, options?: Partial); - /** Implementation used to handle the toggling and rendering of item summaries */ - itemRenderer: ItemSummaryRenderer>; - /** Is this sheet one in which the actor is not owned by the user, but the user can still take and deposit items? */ - get isLootSheet(): boolean; - getData(options?: Partial): Promise>; - protected prepareInventory(): SheetInventory; - protected prepareInventoryItem(item: PhysicalItemPF2e): InventoryItem; - protected static coinsToSheetData(coins: Coins): CoinageSummary; - protected getStrikeFromDOM(button: HTMLElement, readyOnly?: boolean): StrikeData | null; - activateListeners($html: JQuery): void; - /** Sheet-wide click listeners for elements selectable as `a[data-action]` */ - protected activateClickListener(html: HTMLElement): SheetClickActionHandlers; - protected deleteItem(item: TItem, event?: MouseEvent): Promise; - protected _canDragStart(selector: string): boolean; - protected _canDragDrop(selector: string): boolean; - /** Add support for dropping actions and toggles */ - protected _onDragStart(event: DragEvent): void; - _onDrop(event: DragEvent): Promise; - protected _onDropItem(event: DragEvent, data: DropCanvasItemDataPF2e & { - fromInventory?: boolean; - }): Promise; - /** - * Prevent a Foundry permission error from being thrown when a player moves an item from and to the sheet of the - * same lootable actor. - */ - protected _onSortItem(event: DragEvent, itemData: ItemSourcePF2e): Promise; - /** - * PF2e specific method called by _onDropItem() when this is a new item that needs to be dropped into the actor - * that isn't already on the actor or transferring to another actor. - */ - protected _handleDroppedItem(event: DragEvent, item: ItemPF2e, data: DropCanvasItemDataPF2e): Promise[]>; - protected _onDropFolder(_event: DragEvent, data: DropCanvasData<"Folder", Folder>): Promise[]>; - /** - * Update the aria-selected attribute on each tab after finishing the normal logic on tab change. - */ - protected _onChangeTab(event: MouseEvent, tabs: Tabs, active: string): void; - /** - * Moves an item between two actors' inventories. - * @param event Event that fired this method. - * @param sourceActorId ID of the actor who originally owns the item. - * @param targetActorId ID of the actor where the item will be stored. - * @param itemId ID of the item to move between the two actors. - */ - moveItemBetweenActors(event: DragEvent, item: PhysicalItemPF2e, targetActor: ActorPF2e): Promise; - protected openTagSelector(anchor: HTMLElement, options?: Partial): void; - /** Construct and render a tag selection menu */ - protected tagSelector(selectorType: Exclude, options?: Partial): void; - protected tagSelector(selectorType: "basic", options: BasicConstructorOptions): void; - /** Opens a sheet tab by name. May be overriden to handle sub-tabs */ - protected openTab(name: string): void; - /** Override of inner render function to maintain item summary state */ - protected _renderInner(data: Record, options: RenderOptions): Promise; - /** Overriden _render to maintain focus on tagify elements */ - protected _render(force?: boolean, options?: ActorSheetRenderOptionsPF2e): Promise; - protected _getSubmitData(updateData?: Record): Record; - protected _configureProseMirrorPlugins(name: string, options: { - remove?: boolean; - }): Record; -} -interface ActorSheetPF2e extends ActorSheet { - prepareItems?(sheetData: ActorSheetDataPF2e): Promise; - render(force?: boolean, options?: ActorSheetRenderOptionsPF2e): this; -} -type SheetClickActionHandlers = Record Promise | void | unknown) | undefined>; -export { ActorSheetPF2e, type SheetClickActionHandlers }; diff --git a/types/src/module/actor/sheet/data-types.d.ts b/types/src/module/actor/sheet/data-types.d.ts deleted file mode 100644 index 2870c3131..000000000 --- a/types/src/module/actor/sheet/data-types.d.ts +++ /dev/null @@ -1,89 +0,0 @@ -import type { ActorPF2e } from "@actor/base.ts"; -import type { TraitViewData } from "@actor/data/base.ts"; -import type { ActorSizePF2e } from "@actor/data/size.ts"; -import type { InventoryBulk } from "@actor/inventory/index.ts"; -import type { PhysicalItemPF2e } from "@item"; -import type { Frequency } from "@item/base/data/index.ts"; -import type { Coins } from "@item/physical/data.ts"; -import type { RollOptionToggle } from "@module/rules/synthetics.ts"; -import type { SheetOptions } from "@module/sheet/helpers.ts"; - -interface InventoryItem { - item: TItem; - /** Item size if it causes any weight difference relative to the actor */ - itemSize?: ActorSizePF2e | null; - isContainer: boolean; - canBeEquipped: boolean; - /** Bulk for each item is shown on an individual basis from merchant sheets */ - unitBulk: string | null; - isInvestable: boolean; - isSellable: boolean; - hasCharges: boolean; - heldItems?: InventoryItem[] | null; - notifyInvestment?: boolean; - /** Whether the item should be hidden if the user isn't the owner */ - hidden: boolean; -} -interface CoinDisplayData { - value: number; - label: string; -} -export type CoinageSummary = { - [K in keyof Coins]?: CoinDisplayData; -}; -interface SheetItemList { - label: string; - types: string[]; - items: InventoryItem[]; -} -interface SheetInventory { - sections: SheetItemList[]; - bulk: InventoryBulk; - showValueAlways: boolean; - showUnitBulkPrice: boolean; - hasStowedWeapons: boolean; - hasStowingContainers: boolean; - invested?: { - value: number; - max: number; - } | null; -} -interface ActorSheetDataPF2e extends ActorSheetData { - data: TActor["system"]; - canDistributeCoins?: { - enabled: boolean; - } | null; - enrichedContent: Record; - inventory: SheetInventory; - isLootSheet: boolean; - isTargetFlatFooted: boolean; - toggles: Record; - totalCoinage: CoinageSummary; - totalCoinageGold: string; - totalWealth: Coins; - totalWealthGold: string; - traits: SheetOptions; - user: { - isGM: boolean; - }; - publicationLicenses: FormSelectOption[]; -} -interface AbilityViewData { - id: string; - name: string; - img: string; - traits: TraitViewData[]; - glyph: string | null; - frequency: Frequency | null; - usable: boolean; - has: { - aura: boolean; - deathNote: boolean; - selfEffect: boolean; - }; -} -interface ActorSheetRenderOptionsPF2e extends RenderOptions { - /** What tab to switch to when rendering the sheet */ - tab?: string; -} -export type { AbilityViewData, ActorSheetDataPF2e, ActorSheetRenderOptionsPF2e, InventoryItem, SheetInventory }; diff --git a/types/src/module/actor/sheet/helpers.d.ts b/types/src/module/actor/sheet/helpers.d.ts deleted file mode 100644 index 07259b48d..000000000 --- a/types/src/module/actor/sheet/helpers.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { Sense } from "@actor/creature/sense.ts"; -import { AbilityItemPF2e, FeatPF2e, PhysicalItemPF2e } from "@item"; -import { AbilityViewData } from "./data-types.ts"; - -declare function onClickCreateSpell(actor: ActorPF2e, data: Record): void; -/** Create a price label like "L / 10" when appropriate. */ -declare function createBulkPerLabel(item: PhysicalItemPF2e): string; -/** Returns a sense list with all redundant senses removed (such as low light vision on actors with darkvision) */ -declare function condenseSenses(senses: Sense[]): Sense[]; -/** Creates ability or feat view data for actor sheet actions rendering */ -declare function createAbilityViewData(item: AbilityItemPF2e | FeatPF2e): AbilityViewData; -export { condenseSenses, createAbilityViewData, createBulkPerLabel, onClickCreateSpell }; diff --git a/types/src/module/actor/sheet/item-summary-renderer.d.ts b/types/src/module/actor/sheet/item-summary-renderer.d.ts deleted file mode 100644 index 258acad84..000000000 --- a/types/src/module/actor/sheet/item-summary-renderer.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor/base.ts"; -import { ItemPF2e } from "@item"; -import type { RawItemChatData } from "@item/base/data/index.ts"; -/** - * Implementation used to populate item summaries, toggle visibility - * of item summaries, and save expanded/collapsed state of item summaries. - */ -export declare class ItemSummaryRenderer { - protected sheet: TSheet; - constructor(sheet: TSheet); - /** - * Triggers toggling the visibility of an item summary element, - * delegating the populating of the item summary to renderItemSummary(). - * Returns true if it the item is valid and it was toggled. - */ - toggleSummary(element: HTMLElement, options?: { - visible?: boolean; - instant?: boolean; - }): Promise; - /** Retrieves the item from the element that the current toggleable summary is for */ - protected getItemFromElement(element: HTMLElement): Promise; - /** - * Called when an item summary is expanded and needs to be filled out. - */ - renderItemSummary(container: HTMLElement, item: ItemPF2e, chatData: RawItemChatData): Promise; - /** - * Executes a callback, performing a save and restore for all item summaries to maintain visual state. - * Most restorations are driven by a data-item-id attribute, however data-item-summary-id with a custom string - * can be used to avoid conflicts in areas such as spell preparation. - */ - saveAndRestoreState(callback: () => Promise): Promise; -} diff --git a/types/src/module/actor/sheet/popups/add-coins-popup.d.ts b/types/src/module/actor/sheet/popups/add-coins-popup.d.ts deleted file mode 100644 index 7a482380e..000000000 --- a/types/src/module/actor/sheet/popups/add-coins-popup.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { ActorPF2e } from "@actor/base.ts"; -import { Coins } from "@item/physical/data.ts"; -interface AddCoinsFormData extends Coins { - combineStacks: boolean; -} -/** - * @category Other - */ -export declare class AddCoinsPopup extends FormApplication { - static get defaultOptions(): FormApplicationOptions; - _updateObject(_event: Event, formData: Record & AddCoinsFormData): Promise; -} -export {}; diff --git a/types/src/module/actor/sheet/popups/casting-item-create-dialog.d.ts b/types/src/module/actor/sheet/popups/casting-item-create-dialog.d.ts deleted file mode 100644 index bf5bc6af9..000000000 --- a/types/src/module/actor/sheet/popups/casting-item-create-dialog.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { SpellPF2e } from "@item"; -import { SpellConsumableItemType } from "@item/consumable/spell-consumables.ts"; -import { OneToTen } from "@module/data.ts"; - -interface FormInputData extends FormApplicationData { - itemTypeOptions?: object; - validLevels?: number[]; - itemType?: SpellConsumableItemType; - level?: OneToTen; -} -type FormOutputData = { - itemType: SpellConsumableItemType; - level: OneToTen; -}; -export declare class CastingItemCreateDialog extends FormApplication { - onSubmitCallback: CastingItemCreateCallback; - spell: SpellPF2e; - formDataCache: FormOutputData; - constructor(object: ActorPF2e, options: Partial, callback: CastingItemCreateCallback, spell: SpellPF2e); - static get defaultOptions(): FormApplicationOptions; - getData(): Promise; - _updateObject(event: Event, formData: FormOutputData): Promise; -} -type CastingItemCreateCallback = (level: OneToTen, itemType: SpellConsumableItemType, spell: SpellPF2e) => Promise; -export {}; diff --git a/types/src/module/actor/sheet/popups/distribute-coins-popup.d.ts b/types/src/module/actor/sheet/popups/distribute-coins-popup.d.ts deleted file mode 100644 index 14af1d4ce..000000000 --- a/types/src/module/actor/sheet/popups/distribute-coins-popup.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { ActorPF2e } from "@actor"; -interface PopupData extends FormApplicationData { - selection?: string[]; - actorInfo?: { - id: string; - name: string; - checked: boolean; - }[]; -} -interface PopupFormData extends FormData { - actorIds: string[]; - breakCoins: boolean; -} -/** - * @category Other - */ -export declare class DistributeCoinsPopup extends FormApplication { - constructor(actor: ActorPF2e, options?: Partial); - static get defaultOptions(): FormApplicationOptions; - getData(options?: Partial): Promise; - _updateObject(_event: Event, formData: Record & PopupFormData): Promise; - /** Prevent Foundry from converting the actor IDs to boolean values */ - protected _onSubmit(event: Event, options?: OnSubmitFormOptions): Promise | false>; -} -interface DistributeCoinsOptions extends FormApplicationOptions { - /** An optional initial list of recipients to receive coins */ - recipients?: ActorPF2e[]; -} -export {}; diff --git a/types/src/module/actor/sheet/popups/identify-popup.d.ts b/types/src/module/actor/sheet/popups/identify-popup.d.ts deleted file mode 100644 index 91cdd9790..000000000 --- a/types/src/module/actor/sheet/popups/identify-popup.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -/// -/// -/// -import { IdentifyAlchemyDCs, IdentifyMagicDCs } from "@item/identification.ts"; -import type { PhysicalItemPF2e } from "@item/physical/index.ts"; - -export declare class IdentifyItemPopup extends FormApplication { - static get defaultOptions(): FormApplicationOptions; - dcs: IdentifyMagicDCs | IdentifyAlchemyDCs; - getData(): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(_event: Event, formData: Record): Promise; -} -interface IdentifyPopupData extends FormApplicationData { - isMagic: boolean; - isAlchemical: boolean; - dcs: IdentifyMagicDCs | IdentifyAlchemyDCs; -} -export {}; diff --git a/types/src/module/actor/sheet/popups/item-transfer-dialog.d.ts b/types/src/module/actor/sheet/popups/item-transfer-dialog.d.ts deleted file mode 100644 index a0e3f8690..000000000 --- a/types/src/module/actor/sheet/popups/item-transfer-dialog.d.ts +++ /dev/null @@ -1,42 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import type { PhysicalItemPF2e } from "@item"; -declare class ItemTransferDialog extends FormApplication { - #private; - static get defaultOptions(): MoveLootOptions; - get title(): string; - get item(): PhysicalItemPF2e; - getData(): Promise; - /** - * Shows the dialog and resolves how many to transfer and what action to perform. - * In situations where there are no choices (quantity is 1 and its a player purchasing), this returns immediately. - */ - resolve(): Promise; - activateListeners($html: JQuery): void; - _updateObject(event: SubmitEvent, formData: Record & MoveLootFormData): Promise; - close(options?: { - force?: boolean; - }): Promise; -} -interface MoveLootOptions extends FormApplicationOptions { - targetActor?: ActorPF2e; - newStack: boolean; - lockStack: boolean; - isPurchase: boolean; -} -interface MoveLootFormData { - quantity: number; - newStack: boolean; - isPurchase: boolean; -} -interface PopupData extends FormApplicationData { - item: PhysicalItemPF2e; - quantity: number; - canGift: boolean; - newStack: boolean; - lockStack: boolean; - prompt: string; -} -export { ItemTransferDialog }; diff --git a/types/src/module/actor/sheet/popups/iwr-editor.d.ts b/types/src/module/actor/sheet/popups/iwr-editor.d.ts deleted file mode 100644 index 26b1c2482..000000000 --- a/types/src/module/actor/sheet/popups/iwr-editor.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import { Immunity, IWRSource, Resistance, Weakness } from "@actor/data/iwr.ts"; -import { ImmunityType, ResistanceType, WeaknessType } from "@actor/types.ts"; -declare class IWREditor extends DocumentSheet { - #private; - category: ListCategory; - types: Record; - constructor(actor: TActor, options: IWREditorConstructorOptions); - static get defaultOptions(): DocumentSheetOptions; - get id(): string; - get title(): string; - get actor(): TActor; - get categoryLabel(): string; - getData(options?: Partial): Promise>; - /** Reconstruct the entire IWR array from form inputs */ - getUpdatedData({ includeNew }?: { - includeNew?: boolean | undefined; - }): ProbablyIWRData[]; - /** Exclude sheet selection and compendium import */ - protected _getHeaderButtons(): ApplicationHeaderButton[]; - activateListeners($html: JQuery): void; -} -interface IWREditorOptions extends DocumentSheetOptions { - category: ListCategory; -} -interface IWREditorConstructorOptions extends Partial { - category: ListCategory; -} -interface IWREditorData extends DocumentSheetData { - header: string; - category: ListCategory; - list: Immunity[] | Weakness[] | Resistance[]; - sourceData: IWRSource[]; - types: Record; -} -type ListCategory = "immunities" | "weaknesses" | "resistances"; -interface ProbablyIWRData { - type: string; - exceptions: string[]; - value?: number; - doubleVs?: string[]; -} -export { IWREditor }; diff --git a/types/src/module/actor/sheet/popups/loot-npcs-popup.d.ts b/types/src/module/actor/sheet/popups/loot-npcs-popup.d.ts deleted file mode 100644 index 5ef0af8ad..000000000 --- a/types/src/module/actor/sheet/popups/loot-npcs-popup.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import type { ActorPF2e } from "@actor"; -declare class LootNPCsPopup extends FormApplication { - static get defaultOptions(): FormApplicationOptions; - getData(): Promise; - _updateObject(_event: Event, formData: Record & { - selection?: boolean; - }): Promise; -} -interface PopupData extends FormApplicationData { - tokenInfo: { - id: string; - name: string; - checked: boolean; - }[]; -} -export { LootNPCsPopup }; diff --git a/types/src/module/actor/sheet/popups/manage-attack-proficiencies.d.ts b/types/src/module/actor/sheet/popups/manage-attack-proficiencies.d.ts deleted file mode 100644 index 73b5f6294..000000000 --- a/types/src/module/actor/sheet/popups/manage-attack-proficiencies.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type { CharacterPF2e } from "@actor/character/document.ts"; -declare function add(actor: CharacterPF2e): Promise; -declare function remove(actor: CharacterPF2e, event: MouseEvent): void; -export declare const ManageAttackProficiencies: { - add: typeof add; - remove: typeof remove; -}; -export {}; diff --git a/types/src/module/actor/sheet/popups/recall-knowledge-popup.d.ts b/types/src/module/actor/sheet/popups/recall-knowledge-popup.d.ts deleted file mode 100644 index e103389fc..000000000 --- a/types/src/module/actor/sheet/popups/recall-knowledge-popup.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { CreatureIdentificationData } from "@module/recall-knowledge.ts"; -export declare class RecallKnowledgePopup extends Application { - #private; - constructor(options: Partial, data: CreatureIdentificationData); - static get defaultOptions(): ApplicationOptions; - getData(): Promise; -} -interface PopupData { - standard: { - label: string; - attempts: string[]; - }; - loreEasy: string[]; - loreVeryEasy: string[]; -} -export {}; diff --git a/types/src/module/actor/sheet/popups/remove-coins-popup.d.ts b/types/src/module/actor/sheet/popups/remove-coins-popup.d.ts deleted file mode 100644 index 2b99b6a31..000000000 --- a/types/src/module/actor/sheet/popups/remove-coins-popup.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Coins } from "@item/physical/data.ts"; -import { ActorPF2e } from "@actor"; -interface PopupFormData extends Coins { - removeByValue: boolean; -} -/** - * @category Other - */ -export declare class RemoveCoinsPopup extends FormApplication { - static get defaultOptions(): FormApplicationOptions; - _updateObject(_event: Event, formData: Record & PopupFormData): Promise; -} -export {}; diff --git a/types/src/module/actor/sheet/spellcasting-dialog.d.ts b/types/src/module/actor/sheet/spellcasting-dialog.d.ts deleted file mode 100644 index dd8b34106..000000000 --- a/types/src/module/actor/sheet/spellcasting-dialog.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { CreaturePF2e } from "@actor"; -import type { AttributeString } from "@actor/types.ts"; -import { SpellcastingEntryPF2e } from "@item"; -import type { SpellcastingEntrySystemSource } from "@item/spellcasting-entry/data.ts"; -/** Dialog to create or edit spellcasting entries. It works on a clone of spellcasting entry, but will not persist unless the changes are accepted */ -declare class SpellcastingCreateAndEditDialog extends FormApplication> { - #private; - constructor(object: SpellcastingEntryPF2e, options?: Partial); - static get defaultOptions(): FormApplicationOptions; - getData(): Promise; - protected _updateObject(event: Event, formData: Record): Promise; - private updateAndClose; -} -interface SpellcastingCreateAndEditDialogSheetData extends FormApplicationData> { - actor: CreaturePF2e; - system: SpellcastingEntrySystemSource; - magicTraditions: typeof CONFIG.PF2E.magicTraditions; - statistics: { - slug: string; - label: string; - }[]; - spellcastingTypes: Partial; - attributes: typeof CONFIG.PF2E.abilities; - isAttributeConfigurable: boolean; - selectedAttribute: AttributeString; - autoHeightenLevels: Record; - validItemTypes: Record; -} -declare function createSpellcastingDialog(object: CreaturePF2e | SpellcastingEntryPF2e): Promise; -export { createSpellcastingDialog }; diff --git a/types/src/module/actor/sheet/trick-magic-item-popup.d.ts b/types/src/module/actor/sheet/trick-magic-item-popup.d.ts deleted file mode 100644 index 8317e83a1..000000000 --- a/types/src/module/actor/sheet/trick-magic-item-popup.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { ActorPF2e, CharacterPF2e } from "@actor"; -import type { ConsumablePF2e } from "@item"; -import { TrickMagicItemDifficultyData } from "@item/consumable/spell-consumables.ts"; -export declare class TrickMagicItemPopup { - #private; - /** The wand or scroll being "tricked" */ - readonly item: ConsumablePF2e; - /** The actor doing the tricking */ - readonly actor: CharacterPF2e; - /** The skill DC of the action's check */ - readonly checkDC: TrickMagicItemDifficultyData; - constructor(item: ConsumablePF2e); -} diff --git a/types/src/module/actor/spellcasting.d.ts b/types/src/module/actor/spellcasting.d.ts deleted file mode 100644 index 9d5656d28..000000000 --- a/types/src/module/actor/spellcasting.d.ts +++ /dev/null @@ -1,42 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ConsumablePF2e, SpellPF2e } from "@item"; -import { SpellcastingEntryPF2e } from "@item"; -import { SpellCollection } from "@item/spellcasting-entry/collection.ts"; -import { RitualSpellcasting } from "@item/spellcasting-entry/rituals.ts"; -import { BaseSpellcastingEntry } from "@item/spellcasting-entry/types.ts"; -import { Statistic } from "@system/statistic/statistic.ts"; -import { DelegatedCollection } from "@util"; -import { CreatureSource } from "./data/index.ts"; -import { ActorCommitData } from "./types.ts"; - -export declare class ActorSpellcasting extends DelegatedCollection> { - #private; - actor: TActor; - /** The base casting proficiency, off of which spellcasting builds */ - base: Statistic; - /** All available spell lists on this actor */ - collections: Collection>; - constructor(actor: TActor, entries: BaseSpellcastingEntry[]); - /** Returns a list of entries pre-filtered to SpellcastingEntryPF2e */ - get regular(): SpellcastingEntryPF2e[]; - /** Get this actor's ritual casting ability */ - get ritual(): RitualSpellcasting | null; - /** Spells not belonging to any collection */ - get orphanedSpells(): SpellPF2e[]; - /** - * All spellcasting entries that count as prepared/spontaneous, which qualify as a - * full fledged spellcasting feature for wands and scrolls. - */ - get spellcastingFeatures(): SpellcastingEntryPF2e[]; - /** Returns an existing spellcasting entry or trick magic item if given "trick-{skillName}" */ - get(id: string): BaseSpellcastingEntry | undefined; - canCastConsumable(item: ConsumablePF2e): boolean; - refocus(options?: { - all?: boolean; - }): DeepPartial | null; - /** - * Recharges all spellcasting entries based on the type of entry it is - * @todo Support a timespan property of some sort and handle 1/hour innate spells - */ - recharge(): ActorCommitData; -} diff --git a/types/src/module/actor/types.d.ts b/types/src/module/actor/types.d.ts deleted file mode 100644 index 90a5bcb9b..000000000 --- a/types/src/module/actor/types.d.ts +++ /dev/null @@ -1,126 +0,0 @@ -import type * as ActorInstance from "@actor"; -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import type { EffectTrait } from "@item/abstract-effect/types.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { ItemInstances } from "@item/types.ts"; -import type { RollNotePF2e } from "@module/notes.ts"; -import type { ItemAlteration } from "@module/rules/rule-element/item-alteration/alteration.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import type { immunityTypes, resistanceTypes, weaknessTypes } from "@scripts/config/iwr.ts"; -import type { DamageRoll } from "@system/damage/roll.ts"; -import type { DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import type { Predicate } from "@system/predication.ts"; -import type { - ACTOR_TYPES, - ATTRIBUTE_ABBREVIATIONS, - CORE_SKILL_SLUGS, - MOVEMENT_TYPES, - SAVE_TYPES, - UNAFFECTED_TYPES, -} from "./values.ts"; - -type ActorType = (typeof ACTOR_TYPES)[number]; -/** Used exclusively to resolve `ActorPF2e#isOfType` */ -interface ActorInstances { - army: ActorInstance.ArmyPF2e; - character: ActorInstance.CharacterPF2e; - creature: ActorInstance.CreaturePF2e; - familiar: ActorInstance.FamiliarPF2e; - hazard: ActorInstance.HazardPF2e; - loot: ActorInstance.LootPF2e; - party: ActorInstance.PartyPF2e; - npc: ActorInstance.NPCPF2e; - vehicle: ActorInstance.VehiclePF2e; -} -type EmbeddedItemInstances = { - [K in keyof ItemInstances]: ItemInstances[K][]; -}; -type AttributeString = SetElement; -interface ActorDimensions { - length: number; - width: number; - height: number; -} -type SkillSlug = SetElement; -type ActorAlliance = "party" | "opposition" | null; -type SaveType = (typeof SAVE_TYPES)[number]; -type DCSlug = "ac" | "armor" | "perception" | SaveType | SkillSlug; -type MovementType = (typeof MOVEMENT_TYPES)[number]; -interface AuraData { - slug: string; - level: number | null; - radius: number; - traits: EffectTrait[]; - effects: AuraEffectData[]; - appearance: AuraAppearanceData; -} -interface AuraEffectData { - uuid: string; - parent: ItemPF2e; - affects: "allies" | "enemies" | "all"; - events: ("enter" | "turn-start" | "turn-end")[]; - save: { - type: SaveType; - dc: number; - } | null; - predicate: Predicate; - removeOnExit: boolean; - includesSelf: boolean; - alterations: ItemAlteration[]; -} -interface AuraAppearanceData { - border: { - color: number; - alpha: number; - } | null; - highlight: { - color: number; - alpha: number; - }; - texture: { - src: ImageFilePath | VideoFilePath; - alpha: number; - scale: number; - translation: { - x: number; - y: number; - } | null; - loop: boolean; - playbackRate: number; - } | null; -} -interface ActorCommitData { - actorUpdates: DeepPartial | null; - itemCreates: PreCreate[]; - itemUpdates: EmbeddedDocumentUpdateData[]; -} -interface ActorRechargeData extends ActorCommitData { - affected: { - frequencies: boolean; - spellSlots: boolean; - resources: string[]; - }; -} -interface ApplyDamageParams { - damage: number | Rolled; - token: TokenDocumentPF2e; - /** The item used in the damaging action */ - item?: ItemPF2e | null; - skipIWR?: boolean; - /** Predicate statements from the damage roll */ - rollOptions?: Set; - shieldBlockRequest?: boolean; - breakdown?: string[]; - outcome?: DegreeOfSuccessString | null; - notes?: RollNotePF2e[]; - /** Whether to treat to not adjust the damage any further. Skips IWR regardless of its setting if set */ - final?: boolean; -} -type ImmunityType = keyof typeof immunityTypes; -type WeaknessType = keyof typeof weaknessTypes; -type ResistanceType = keyof typeof resistanceTypes; -/** Damage types a creature or hazard is possibly unaffected by, outside the IWR framework */ -type UnaffectedType = SetElement; -type IWRType = ImmunityType | WeaknessType | ResistanceType; -export type { ActorAlliance, ActorCommitData, ActorDimensions, ActorInstances, ActorRechargeData, ActorType, ApplyDamageParams, AttributeString, AuraAppearanceData, AuraData, AuraEffectData, DCSlug, EmbeddedItemInstances, ImmunityType, IWRType, MovementType, ResistanceType, SaveType, SkillSlug, UnaffectedType, WeaknessType, }; diff --git a/types/src/module/actor/values.d.ts b/types/src/module/actor/values.d.ts deleted file mode 100644 index 77da2476d..000000000 --- a/types/src/module/actor/values.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -declare const ATTRIBUTE_ABBREVIATIONS: Set<"str" | "dex" | "con" | "int" | "wis" | "cha">; -declare const CREATURE_ACTOR_TYPES: readonly ["character", "npc", "familiar"]; -declare const ACTOR_TYPES: readonly ["army", "character", "familiar", "hazard", "loot", "npc", "party", "vehicle"]; -declare const SAVE_TYPES: readonly ["fortitude", "reflex", "will"]; -declare const IMMUNITY_TYPES: Set<"arcane" | "divine" | "occult" | "primal" | "abysium" | "adamantine" | "alchemical" | "auditory" | "blinded" | "clumsy" | "confused" | "controlled" | "curse" | "dawnsilver" | "dazzled" | "deafened" | "detection" | "disease" | "djezet" | "doomed" | "drained" | "duskwood" | "emotion" | "energy" | "enfeebled" | "fascinated" | "fatigued" | "fleeing" | "frightened" | "grabbed" | "healing" | "holy" | "illusion" | "immobilized" | "inhaled" | "inubrix" | "light" | "magic" | "metal" | "non-magical" | "noqual" | "off-guard" | "olfactory" | "orichalcum" | "paralyzed" | "petrified" | "physical" | "plant" | "polymorph" | "possession" | "prone" | "radiation" | "restrained" | "scrying" | "siccatite" | "sickened" | "silver" | "sleep" | "slowed" | "stunned" | "stupefied" | "trip" | "unconscious" | "unholy" | "visual" | "water" | "wood" | "wounded" | "acid" | "air" | "bleed" | "bludgeoning" | "cold" | "earth" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "precision" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "cold-iron" | "persistent-damage" | "custom" | "area-damage" | "critical-hits" | "death-effects" | "fear-effects" | "fortune-effects" | "misfortune-effects" | "nonlethal-attacks" | "object-immunities" | "salt-water" | "spell-deflection" | "swarm-attacks" | "swarm-mind" | "unarmed-attacks">; -declare const WEAKNESS_TYPES: Set<"arcane" | "divine" | "occult" | "primal" | "abysium" | "adamantine" | "alchemical" | "dawnsilver" | "djezet" | "duskwood" | "emotion" | "energy" | "glass" | "holy" | "inubrix" | "light" | "magical" | "metal" | "mythic" | "non-magical" | "noqual" | "orichalcum" | "physical" | "plant" | "radiation" | "salt" | "siccatite" | "silver" | "spells" | "unholy" | "vorpal" | "water" | "weapons" | "wood" | "acid" | "air" | "bleed" | "bludgeoning" | "cold" | "earth" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "precision" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "cold-iron" | "persistent-damage" | "custom" | "area-damage" | "critical-hits" | "nonlethal-attacks" | "salt-water" | "unarmed-attacks" | "all-damage" | "arrow-vulnerability" | "axe-vulnerability" | "ghost-touch" | "splash-damage" | "vampire-weaknesses" | "vorpal-fear" | "vulnerable-to-sunlight" | "weapons-shedding-bright-light">; -declare const RESISTANCE_TYPES: Set<"arcane" | "divine" | "occult" | "primal" | "abysium" | "adamantine" | "alchemical" | "axes" | "dawnsilver" | "djezet" | "duskwood" | "energy" | "holy" | "inubrix" | "light" | "magical" | "metal" | "mythic" | "non-magical" | "nonlethal" | "noqual" | "orichalcum" | "physical" | "plant" | "radiation" | "salt" | "siccatite" | "silver" | "spells" | "unholy" | "vorpal" | "water" | "weapons" | "wood" | "acid" | "air" | "bleed" | "bludgeoning" | "cold" | "earth" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "precision" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "cold-iron" | "persistent-damage" | "custom" | "area-damage" | "critical-hits" | "nonlethal-attacks" | "salt-water" | "unarmed-attacks" | "all-damage" | "ghost-touch" | "weapons-shedding-bright-light" | "damage-from-spells" | "protean-anatomy" | "vorpal-adamantine">; -declare const UNAFFECTED_TYPES: Set<"bleed" | "spirit" | "vitality" | "void" | "chaotic" | "evil" | "good" | "lawful">; -/** All skill slugs that are part of the core system. Used for validation. */ -declare const CORE_SKILL_SLUGS: Set<"athletics" | "deception" | "stealth" | "nature" | "acrobatics" | "arcana" | "crafting" | "diplomacy" | "intimidation" | "medicine" | "occultism" | "performance" | "religion" | "society" | "survival" | "thievery">; -declare const MOVEMENT_TYPES: readonly ["land", "burrow", "climb", "fly", "swim"]; -/** Actor types that are valid for token size linking */ -declare const SIZE_LINKABLE_ACTOR_TYPES: Set; -export { ACTOR_TYPES, ATTRIBUTE_ABBREVIATIONS, CORE_SKILL_SLUGS, CREATURE_ACTOR_TYPES, IMMUNITY_TYPES, MOVEMENT_TYPES, RESISTANCE_TYPES, SAVE_TYPES, SIZE_LINKABLE_ACTOR_TYPES, UNAFFECTED_TYPES, WEAKNESS_TYPES, }; diff --git a/types/src/module/actor/vehicle/data.d.ts b/types/src/module/actor/vehicle/data.d.ts deleted file mode 100644 index 14d8571d9..000000000 --- a/types/src/module/actor/vehicle/data.d.ts +++ /dev/null @@ -1,77 +0,0 @@ -import { ActorAttributes, ActorAttributesSource, ActorDetailsSource, ActorHitPoints, ActorSystemData, ActorSystemSource, ActorTraitsSource, BaseActorSourcePF2e } from "@actor/data/base.ts"; -import { ImmunitySource } from "@actor/data/iwr.ts"; -import type { ActorSizePF2e } from "@actor/data/size.ts"; -import { PublicationData, Rarity, Size } from "@module/data.ts"; -import type { ArmorClassTraceData, StatisticTraceData } from "@system/statistic/index.ts"; -import { VehicleTrait } from "./types.ts"; -/** The stored source data of a vehicle actor */ -type VehicleSource = BaseActorSourcePF2e<"vehicle", VehicleSystemSource>; -interface VehicleSystemSource extends ActorSystemSource { - attributes: VehicleAttributesSource; - details: VehicleDetailsSource; - saves: { - fortitude: VehicleFortitudeSaveData; - }; - traits: VehicleTraitsSource; -} -interface VehicleAttributesSource extends ActorAttributesSource { - ac: { - value: number; - }; - hardness: number; - immunities: ImmunitySource[]; -} -interface VehicleDetailsSource extends ActorDetailsSource { - description: string; - level: { - value: number; - }; - alliance: null; - price: number; - space: { - long: number; - wide: number; - high: number; - }; - crew: string; - passengers: string; - pilotingCheck: string; - AC: number; - speed: number; - /** Information concerning the publication from which this actor originates */ - publication: PublicationData; -} -interface VehicleTraitsSource extends ActorTraitsSource { - rarity: Rarity; - size: { - value: Size; - }; - languages?: never; -} -/** The system-level data of vehicle actors. */ -interface VehicleSystemData extends VehicleSystemSource, Omit { - attributes: VehicleAttributes; - traits: VehicleTraits; -} -interface VehicleAttributes extends Omit, ActorAttributes { - ac: ArmorClassTraceData; - hp: VehicleHitPoints; - initiative?: never; - shield?: never; - emitsSound: boolean | "encounter"; -} -type AttributesSourceOmission = "immunities" | "weaknesses" | "resistances"; -interface VehicleHitPoints extends ActorHitPoints { - brokenThreshold: number; -} -interface VehicleFortitudeSaveData extends StatisticTraceData { - saveDetail: string; -} -interface VehicleTraits extends VehicleTraitsSource { - size: ActorSizePF2e; -} -interface TokenDimensions { - width: number; - height: number; -} -export type { TokenDimensions, VehicleSource, VehicleSystemData, VehicleTrait }; diff --git a/types/src/module/actor/vehicle/document.d.ts b/types/src/module/actor/vehicle/document.d.ts deleted file mode 100644 index be28aa202..000000000 --- a/types/src/module/actor/vehicle/document.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { ActorDimensions } from "@actor/types.ts"; -import { ItemType } from "@item/base/data/index.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import { TokenDocumentPF2e } from "@scene/index.ts"; -import { ArmorStatistic, Statistic, StatisticDifficultyClass } from "@system/statistic/index.ts"; -import { ActorPF2e, HitPointsSummary } from "../base.ts"; -import { TokenDimensions, VehicleSource, VehicleSystemData } from "./data.ts"; -declare class VehiclePF2e extends ActorPF2e { - armorClass: StatisticDifficultyClass; - get allowedItemTypes(): (ItemType | "physical")[]; - /** Vehicle dimensions are specified for all three axes and usually do not form cubes */ - get dimensions(): ActorDimensions; - get hardness(): number; - /** Whether the creature emits sound: overridable by AE-like */ - get emitsSound(): boolean; - getTokenDimensions(dimensions?: Omit): TokenDimensions; - prepareBaseData(): void; - prepareDerivedData(): void; - private prepareSaves; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface VehiclePF2e extends ActorPF2e { - readonly _source: VehicleSource; - system: VehicleSystemData; - get hitPoints(): HitPointsSummary; - saves: { - fortitude: Statistic; - }; -} -export { VehiclePF2e }; diff --git a/types/src/module/actor/vehicle/index.d.ts b/types/src/module/actor/vehicle/index.d.ts deleted file mode 100644 index bd96ed961..000000000 --- a/types/src/module/actor/vehicle/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { VehiclePF2e } from "./document.ts"; diff --git a/types/src/module/actor/vehicle/sheet.d.ts b/types/src/module/actor/vehicle/sheet.d.ts deleted file mode 100644 index aeeebe614..000000000 --- a/types/src/module/actor/vehicle/sheet.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -/// -/// -/// -import { AbilityViewData, ActorSheetDataPF2e } from "@actor/sheet/data-types.ts"; -import { VehiclePF2e } from "@actor/vehicle/index.ts"; -import { AdjustedValue } from "@module/sheet/helpers.ts"; -import { ActorSheetPF2e } from "../sheet/base.ts"; - -export declare class VehicleSheetPF2e extends ActorSheetPF2e { - static get defaultOptions(): ActorSheetOptions; - getData(): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface VehicleSheetData extends ActorSheetDataPF2e { - actions: ActionsSheetData; - actorRarities: typeof CONFIG.PF2E.rarityTraits; - actorRarity: string; - actorSizes: typeof CONFIG.PF2E.actorSizes; - actorSize: string; - ac: AdjustedValue; - frequencies: typeof CONFIG.PF2E.frequencies; - saves: { - fortitude: AdjustedValue; - }; - emitsSoundOptions: FormSelectOption[]; -} -type ActionsSheetData = Record<"action" | "reaction" | "free", { - label: string; - actions: AbilityViewData[]; -}>; -export {}; diff --git a/types/src/module/actor/vehicle/types.d.ts b/types/src/module/actor/vehicle/types.d.ts deleted file mode 100644 index d8f824e69..000000000 --- a/types/src/module/actor/vehicle/types.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -type VehicleTrait = keyof ConfigPF2e["PF2E"]["vehicleTraits"]; -export type { VehicleTrait }; diff --git a/types/src/module/apps/compendium-browser/data.d.ts b/types/src/module/apps/compendium-browser/data.d.ts deleted file mode 100644 index de2093c86..000000000 --- a/types/src/module/apps/compendium-browser/data.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import * as browserTabs from "./tabs/index.ts"; - -interface PackInfo { - load: boolean; - name: string; - package: string; - showFullId?: boolean; -} -interface SourceInfo { - load: boolean; - name: string; -} -interface BrowserTabs { - action: browserTabs.Actions; - bestiary: browserTabs.Bestiary; - campaignFeature: browserTabs.CampaignFeatures; - equipment: browserTabs.Equipment; - feat: browserTabs.Feats; - hazard: browserTabs.Hazards; - spell: browserTabs.Spells; -} -type TabName = "action" | "bestiary" | "campaignFeature" | "equipment" | "feat" | "hazard" | "spell"; -type ContentTabName = Exclude; -type BrowserTab = InstanceType<(typeof browserTabs)[keyof typeof browserTabs]>; -type TabData = Record; -type CommonSortByOption = "name" | "level"; -type SortByOption = CommonSortByOption | "price"; -type SortDirection = "asc" | "desc"; -export type { BrowserTab, BrowserTabs, CommonSortByOption, ContentTabName, PackInfo, SortByOption, SortDirection, SourceInfo, TabData, TabName, }; diff --git a/types/src/module/apps/compendium-browser/index.d.ts b/types/src/module/apps/compendium-browser/index.d.ts deleted file mode 100644 index 89eee4cfc..000000000 --- a/types/src/module/apps/compendium-browser/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { CompendiumBrowser } from "./browser.ts"; diff --git a/types/src/module/apps/compendium-browser/loader.d.ts b/types/src/module/apps/compendium-browser/loader.d.ts deleted file mode 100644 index 33320ac0a..000000000 --- a/types/src/module/apps/compendium-browser/loader.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import type { CompendiumBrowserSources } from "./browser.ts"; - -declare class PackLoader { - #private; - loadedSources: string[]; - sourcesSettings: CompendiumBrowserSources; - constructor(); - loadPacks(documentType: "Actor" | "Item", packs: string[], indexFields: string[]): AsyncGenerator<{ - pack: CompendiumCollection; - index: CompendiumIndex; - }, void, unknown>; - updateSources(packs: string[]): Promise; - reset(): void; - hardReset(packs: string[]): Promise; -} -export { PackLoader }; diff --git a/types/src/module/apps/compendium-browser/tabs/action.d.ts b/types/src/module/apps/compendium-browser/tabs/action.d.ts deleted file mode 100644 index 2a2c2d344..000000000 --- a/types/src/module/apps/compendium-browser/tabs/action.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { CompendiumBrowser } from "../browser.ts"; -import { ContentTabName } from "../data.ts"; -import { CompendiumBrowserTab } from "./base.svelte.ts"; -import { ActionFilters, CompendiumBrowserIndexData } from "./data.ts"; - -export declare class CompendiumBrowserActionTab extends CompendiumBrowserTab { - tabName: ContentTabName; - tabLabel: string; - filterData: ActionFilters; - searchFields: string[]; - storeFields: string[]; - constructor(browser: CompendiumBrowser); - protected loadData(): Promise; - protected filterIndexData(entry: CompendiumBrowserIndexData): boolean; - protected prepareFilterData(): ActionFilters; -} diff --git a/types/src/module/apps/compendium-browser/tabs/base.svelte.d.ts b/types/src/module/apps/compendium-browser/tabs/base.svelte.d.ts deleted file mode 100644 index f6445ffa5..000000000 --- a/types/src/module/apps/compendium-browser/tabs/base.svelte.d.ts +++ /dev/null @@ -1,83 +0,0 @@ -import MiniSearch from "minisearch"; -import { CompendiumBrowser, CompendiumBrowserOpenTabOptions } from "../browser.ts"; -import { BrowserTabs, ContentTabName } from "../data.ts"; -import type { BrowserFilter, CheckboxOptions, CompendiumBrowserIndexData, RangesInputData, TraitData } from "./data.ts"; - -export declare abstract class CompendiumBrowserTab { - #private; - /** A reference to the parent CompendiumBrowser */ - protected browser: CompendiumBrowser; - /** The filter schema for this tab; The tabs filters are rendered based on this.*/ - filterData?: BrowserFilter; - /** Current results. These are automatically refreshed when the filter changes */ - results: CompendiumBrowserIndexData[]; - /** The maximum number of items shown in the result list element */ - resultLimit: number; - /** An unmodified copy of this.filterData */ - defaultFilterData: this["filterData"]; - /** The full CompendiumIndex of this tab */ - protected indexData: CompendiumBrowserIndexData[]; - /** Is this tab initialized? */ - isInitialized: boolean; - /** The total count of items in the currently filtered index */ - totalItemCount: number; - /** The name of this tab */ - abstract tabName: ContentTabName; - /** The label for this tab. Can be a translation string */ - protected abstract tabLabel: string; - /** Whether this tab is visible in the browser */ - visible: boolean; - /** Minisearch */ - searchEngine: MiniSearch; - /** Names of the document fields to be indexed. */ - searchFields: string[]; - /** Names of fields to store, so that search results would include them. - * By default none, so resuts would only contain the id field. */ - storeFields: string[]; - /** The localized label for this tab */ - get label(): string; - /** Whether this tab is only visible to a GM */ - get isGMOnly(): boolean; - constructor(browser: CompendiumBrowser); - /** Initialize this tab */ - init(force?: boolean): Promise; - /** Open this tab - * @param filter An optional initial filter for this tab - */ - open(options?: CompendiumBrowserOpenTabOptions): Promise; - /** Returns a clean copy of the filterData for this tab. Initializes the tab if necessary. */ - getFilterData(): Promise; - /** Reset all filters */ - resetFilters(): void; - /** Check this tabs type */ - isOfType(...types: T[]): this is BrowserTabs[T]; - /** Load and prepare the compendium index and set filter options */ - protected abstract loadData(): Promise; - /** Prepare the the filterData object of this tab */ - protected abstract prepareFilterData(): this["filterData"]; - /** Filter indexData */ - protected abstract filterIndexData(entry: CompendiumBrowserIndexData): boolean; - protected filterTraits(traits: string[], selected: TraitData["selected"], condition: TraitData["conjunction"]): boolean; - /** Sort result array by name, level or price */ - protected sortResult(result: CompendiumBrowserIndexData[]): CompendiumBrowserIndexData[]; - /** Return new range filter values based on input */ - parseRangeFilterInput(_name: string, lower: string, upper: string): RangesInputData["values"]; - /** Check if an array includes any keys of another array */ - protected arrayIncludes(array: string[], other: string[]): boolean; - /** Generates a localized and sorted CheckBoxOptions object from config data */ - protected generateCheckboxOptions(configData: Record, sort?: boolean): CheckboxOptions; - protected generateMultiselectOptions(optionsRecord: Record, sort?: boolean): { - value: T; - label: string; - }[]; - /** Generates a sorted CheckBoxOptions object from a sources Set */ - protected generateSourceCheckboxOptions(sources: Set): CheckboxOptions; - /** Provide a best-effort sort of an object (e.g. CONFIG.PF2E.monsterTraits) */ - protected sortedConfig(obj: Record): Record; - /** Ensure all index fields are present in the index data */ - protected hasAllIndexFields(data: CompendiumIndexData, indexFields: string[]): boolean; - createRollTable(): Promise; - addToRollTable(): Promise; -} diff --git a/types/src/module/apps/compendium-browser/tabs/bestiary.d.ts b/types/src/module/apps/compendium-browser/tabs/bestiary.d.ts deleted file mode 100644 index c4b7bc37a..000000000 --- a/types/src/module/apps/compendium-browser/tabs/bestiary.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { CompendiumBrowser } from "../browser.ts"; -import { ContentTabName } from "../data.ts"; -import { CompendiumBrowserTab } from "./base.svelte.ts"; -import { BestiaryFilters, CompendiumBrowserIndexData } from "./data.ts"; - -export declare class CompendiumBrowserBestiaryTab extends CompendiumBrowserTab { - tabName: ContentTabName; - tabLabel: string; - filterData: BestiaryFilters; - protected index: string[]; - searchFields: string[]; - storeFields: string[]; - constructor(browser: CompendiumBrowser); - get isGMOnly(): boolean; - protected loadData(): Promise; - protected filterIndexData(entry: CompendiumBrowserIndexData): boolean; - protected prepareFilterData(): BestiaryFilters; -} diff --git a/types/src/module/apps/compendium-browser/tabs/campaign-feature.d.ts b/types/src/module/apps/compendium-browser/tabs/campaign-feature.d.ts deleted file mode 100644 index 222ca11fa..000000000 --- a/types/src/module/apps/compendium-browser/tabs/campaign-feature.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { CompendiumBrowser } from "../browser.ts"; -import { ContentTabName } from "../data.ts"; -import { CompendiumBrowserTab } from "./base.svelte.ts"; -import { CampaignFeatureFilters, CompendiumBrowserIndexData } from "./data.ts"; - -export declare class CompendiumBrowserCampaignFeaturesTab extends CompendiumBrowserTab { - tabName: ContentTabName; - tabLabel: string; - filterData: CampaignFeatureFilters; - searchFields: string[]; - storeFields: string[]; - constructor(browser: CompendiumBrowser); - protected loadData(): Promise; - protected filterIndexData(entry: CompendiumBrowserIndexData): boolean; - protected prepareFilterData(): CampaignFeatureFilters; -} diff --git a/types/src/module/apps/compendium-browser/tabs/data.d.ts b/types/src/module/apps/compendium-browser/tabs/data.d.ts deleted file mode 100644 index d86515a5f..000000000 --- a/types/src/module/apps/compendium-browser/tabs/data.d.ts +++ /dev/null @@ -1,148 +0,0 @@ -import { CreatureTrait } from "@actor/creature/types.ts"; -import { HazardTrait } from "@actor/hazard/types.ts"; -import { AbilityTrait } from "@item/ability/index.ts"; -import { KingmakerTrait } from "@item/campaign-feature/types.ts"; -import { FeatTrait } from "@item/feat/types.ts"; -import { PhysicalItemTrait } from "@item/physical/data.ts"; -import type { SearchResult } from "minisearch"; -import { SortDirection } from "../data.ts"; - -interface CheckboxOption { - label: string; - selected: boolean; -} -type CheckboxOptions = Record; -interface CheckboxData { - isExpanded: boolean; - label: string; - options: CheckboxOptions; - selected: string[]; -} -interface TraitData { - conjunction: "and" | "or"; - options: { - label: string; - value: T; - }[]; - selected: { - label: string; - not?: boolean; - value: T; - }[]; -} -interface SelectData { - label: string; - options: Record; - selected: string; -} -interface OrderData { - by: string; - direction: SortDirection; - /** The key must be present as an index key in the database */ - options: Record; - type: "alpha" | "numeric"; -} -interface RangesInputData { - changed: boolean; - defaultMin: string; - defaultMax: string; - isExpanded: boolean; - values: { - min: number; - max: number; - inputMin: string; - inputMax: string; - }; - label: string; -} -interface LevelData { - changed: boolean; - isExpanded: boolean; - min: number; - max: number; - from: number; - to: number; -} -interface BaseFilterData { - order: OrderData; - search: { - text: string; - }; - traits: TraitData; -} -interface ActionFilters extends BaseFilterData { - checkboxes: { - types: CheckboxData; - category: CheckboxData; - }; - source: CheckboxData; - traits: TraitData; -} -interface BestiaryFilters extends BaseFilterData { - checkboxes: { - rarity: CheckboxData; - sizes: CheckboxData; - }; - source: CheckboxData; - level: LevelData; - traits: TraitData; -} -interface CampaignFeatureFilters extends BaseFilterData { - checkboxes: Record<"category" | "rarity", CheckboxData>; - level: LevelData; - source: CheckboxData; - traits: TraitData; -} -interface EquipmentFilters extends BaseFilterData { - checkboxes: { - armorTypes: CheckboxData; - itemTypes: CheckboxData; - rarity: CheckboxData; - weaponTypes: CheckboxData; - }; - ranges: { - price: RangesInputData; - }; - level: LevelData; - source: CheckboxData; - traits: TraitData; -} -interface FeatFilters extends BaseFilterData { - checkboxes: Record<"category" | "skills" | "rarity", CheckboxData>; - level: LevelData; - source: CheckboxData; - traits: TraitData; -} -interface HazardFilters extends BaseFilterData { - checkboxes: { - complexity: CheckboxData; - rarity: CheckboxData; - }; - level: LevelData; - source: CheckboxData; - traits: TraitData; -} -interface SpellFilters extends BaseFilterData { - checkboxes: { - category: CheckboxData; - rank: CheckboxData; - rarity: CheckboxData; - traditions: CheckboxData; - }; - selects: { - timefilter: SelectData; - }; - source: CheckboxData; -} -type BrowserFilter = ActionFilters | BestiaryFilters | CampaignFeatureFilters | EquipmentFilters | FeatFilters | HazardFilters | SpellFilters; -type BrowserFilterData = CheckboxData | LevelData | SelectData | RangesInputData | TraitData; -type CompendiumBrowserIndexData = Omit & Partial; -interface RenderResultListOptions { - list?: HTMLUListElement; - start?: number; - replace?: boolean; -} -export type { ActionFilters, BaseFilterData, BestiaryFilters, BrowserFilter, BrowserFilterData, CampaignFeatureFilters, CheckboxData, CheckboxOption, CheckboxOptions, CompendiumBrowserIndexData, EquipmentFilters, FeatFilters, HazardFilters, LevelData, RangesInputData, RenderResultListOptions, SelectData, SpellFilters, TraitData, }; diff --git a/types/src/module/apps/compendium-browser/tabs/equipment.d.ts b/types/src/module/apps/compendium-browser/tabs/equipment.d.ts deleted file mode 100644 index aa6fe82c6..000000000 --- a/types/src/module/apps/compendium-browser/tabs/equipment.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { CompendiumBrowser } from "../browser.ts"; -import { ContentTabName } from "../data.ts"; -import { CompendiumBrowserTab } from "./base.svelte.ts"; -import { CompendiumBrowserIndexData, EquipmentFilters, RangesInputData } from "./data.ts"; - -export declare class CompendiumBrowserEquipmentTab extends CompendiumBrowserTab { - #private; - tabName: ContentTabName; - tabLabel: string; - filterData: EquipmentFilters; - searchFields: string[]; - storeFields: string[]; - constructor(browser: CompendiumBrowser); - protected loadData(): Promise; - protected filterIndexData(entry: CompendiumBrowserIndexData): boolean; - parseRangeFilterInput(name: string, lower: string, upper: string): RangesInputData["values"]; - protected prepareFilterData(): EquipmentFilters; -} diff --git a/types/src/module/apps/compendium-browser/tabs/feat.d.ts b/types/src/module/apps/compendium-browser/tabs/feat.d.ts deleted file mode 100644 index aba0f7691..000000000 --- a/types/src/module/apps/compendium-browser/tabs/feat.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { CompendiumBrowser } from "../browser.ts"; -import { ContentTabName } from "../data.ts"; -import { CompendiumBrowserTab } from "./base.svelte.ts"; -import { CompendiumBrowserIndexData, FeatFilters, TraitData } from "./data.ts"; - -export declare class CompendiumBrowserFeatTab extends CompendiumBrowserTab { - #private; - tabName: ContentTabName; - tabLabel: string; - filterData: FeatFilters; - searchFields: string[]; - storeFields: string[]; - constructor(browser: CompendiumBrowser); - protected loadData(): Promise; - protected filterTraits(traits: string[], selected: TraitData["selected"], condition: TraitData["conjunction"]): boolean; - protected filterIndexData(entry: CompendiumBrowserIndexData): boolean; - protected prepareFilterData(): FeatFilters; -} diff --git a/types/src/module/apps/compendium-browser/tabs/hazard.d.ts b/types/src/module/apps/compendium-browser/tabs/hazard.d.ts deleted file mode 100644 index d060e8e4d..000000000 --- a/types/src/module/apps/compendium-browser/tabs/hazard.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { CompendiumBrowser } from "../browser.ts"; -import { ContentTabName } from "../data.ts"; -import { CompendiumBrowserTab } from "./base.svelte.ts"; -import { CompendiumBrowserIndexData, HazardFilters } from "./data.ts"; - -export declare class CompendiumBrowserHazardTab extends CompendiumBrowserTab { - tabName: ContentTabName; - tabLabel: string; - filterData: HazardFilters; - searchFields: string[]; - storeFields: string[]; - protected index: string[]; - constructor(browser: CompendiumBrowser); - get isGMOnly(): boolean; - protected loadData(): Promise; - protected filterIndexData(entry: CompendiumBrowserIndexData): boolean; - protected prepareFilterData(): HazardFilters; -} diff --git a/types/src/module/apps/compendium-browser/tabs/index.d.ts b/types/src/module/apps/compendium-browser/tabs/index.d.ts deleted file mode 100644 index aba13e288..000000000 --- a/types/src/module/apps/compendium-browser/tabs/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export { CompendiumBrowserActionTab as Actions } from "./action.ts"; -export { CompendiumBrowserBestiaryTab as Bestiary } from "./bestiary.ts"; -export { CompendiumBrowserCampaignFeaturesTab as CampaignFeatures } from "./campaign-feature.ts"; -export { CompendiumBrowserEquipmentTab as Equipment } from "./equipment.ts"; -export { CompendiumBrowserFeatTab as Feats } from "./feat.ts"; -export { CompendiumBrowserHazardTab as Hazards } from "./hazard.ts"; -export { CompendiumBrowserSpellTab as Spells } from "./spell.ts"; diff --git a/types/src/module/apps/compendium-browser/tabs/spell.d.ts b/types/src/module/apps/compendium-browser/tabs/spell.d.ts deleted file mode 100644 index dad5c4290..000000000 --- a/types/src/module/apps/compendium-browser/tabs/spell.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { CompendiumBrowser } from "../browser.ts"; -import { ContentTabName } from "../data.ts"; -import { CompendiumBrowserTab } from "./base.svelte.ts"; -import { CompendiumBrowserIndexData, SpellFilters } from "./data.ts"; - -export declare class CompendiumBrowserSpellTab extends CompendiumBrowserTab { - tabName: ContentTabName; - tabLabel: string; - filterData: SpellFilters; - searchFields: string[]; - storeFields: string[]; - constructor(browser: CompendiumBrowser); - protected loadData(): Promise; - protected filterIndexData(indexData: CompendiumBrowserIndexData): boolean; - protected prepareFilterData(): SpellFilters; -} diff --git a/types/src/module/apps/compendium-migration-status.d.ts b/types/src/module/apps/compendium-migration-status.d.ts deleted file mode 100644 index f4ae1ae89..000000000 --- a/types/src/module/apps/compendium-migration-status.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -/** Dialog used to view compendium data and migrate them. */ -declare class CompendiumMigrationStatus extends Application { - compendium: CompendiumCollection | ItemPF2e>; - static get defaultOptions(): ApplicationOptions; - constructor(compendium: CompendiumCollection | ItemPF2e>); - get id(): string; - getData(options?: Partial | undefined): Promise; - activateListeners($html: JQuery): void; -} -export { CompendiumMigrationStatus }; diff --git a/types/src/module/apps/effects-panel.d.ts b/types/src/module/apps/effects-panel.d.ts deleted file mode 100644 index 3fe162a0b..000000000 --- a/types/src/module/apps/effects-panel.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import { AbstractEffectPF2e } from "@item"; - -export declare class EffectsPanel extends Application { - #private; - private get token(); - private get actor(); - /** - * Debounce and slightly delayed request to re-render this panel. Necessary for situations where it is not possible - * to properly wait for promises to resolve before refreshing the UI. - */ - refresh: (force?: boolean | undefined, options?: RenderOptions | undefined) => void; - static get defaultOptions(): ApplicationOptions; - getData(options?: ApplicationOptions): Promise; - activateListeners($html: JQuery): void; - render(force?: boolean, options?: RenderOptions): this; -} -interface EffectsPanelViewData { - afflictions: EffectViewData[]; - conditions: EffectViewData[]; - effects: EffectViewData[]; - actor: ActorPF2e | null; - user: { - isGM: boolean; - }; -} -interface EffectViewData { - effect: AbstractEffectPF2e; - description: string; - remaining: string | null; -} -export {}; diff --git a/types/src/module/apps/hotbar.d.ts b/types/src/module/apps/hotbar.d.ts deleted file mode 100644 index ec90a70b4..000000000 --- a/types/src/module/apps/hotbar.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { MacroPF2e } from "@module/macro.ts"; -declare class HotbarPF2e extends Hotbar { - #private; - /** Handle macro creation from non-macros */ - _onDrop(event: DragEvent): Promise; -} -export { HotbarPF2e }; diff --git a/types/src/module/apps/item-attacher.d.ts b/types/src/module/apps/item-attacher.d.ts deleted file mode 100644 index 91b00ea8f..000000000 --- a/types/src/module/apps/item-attacher.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -/// -/// -/// -import type { PhysicalItemPF2e } from "@item"; -import { PickAThingPrompt, PickableThing } from "@module/apps/pick-a-thing-prompt.ts"; -/** A prompt for the user to select an item to receive an attachment */ -declare class ItemAttacher extends PickAThingPrompt { - #private; - static get defaultOptions(): ApplicationOptions; - constructor({ item }: { - item: TItem; - }); - /** Only allow one of these dialogs to be open. */ - get id(): string; - get title(): string; - protected getSelection(event: MouseEvent): PickableThing | null; - resolveSelection(): Promise | null>; - activateListeners($html: JQuery): void; -} -export { ItemAttacher }; diff --git a/types/src/module/apps/license-viewer/app.d.ts b/types/src/module/apps/license-viewer/app.d.ts deleted file mode 100644 index f3795c0fa..000000000 --- a/types/src/module/apps/license-viewer/app.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare class LicenseViewer extends Application { - static get defaultOptions(): ApplicationOptions; -} diff --git a/types/src/module/apps/migration-summary.d.ts b/types/src/module/apps/migration-summary.d.ts deleted file mode 100644 index bc84f0bfd..000000000 --- a/types/src/module/apps/migration-summary.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -/// -/// -/// -/** A summary window that opens after a system migration completes */ -export declare class MigrationSummary extends Application { - #private; - constructor(options?: Partial); - static get defaultOptions(): ApplicationOptions; - getData(): Promise; - activateListeners($html: JQuery): void; -} -interface MigrationSummaryOptions extends ApplicationOptions { - troubleshoot: boolean; -} -interface MigrationSummaryData { - options: MigrationSummaryOptions; - systemVersion: string; - latestSchemaVersion: number; - actors: { - successful: number; - total: number; - }; - items: { - successful: number; - total: number; - }; - canRemigrate: boolean; - helpResources: boolean; - helpResourcesText: string; -} -export {}; diff --git a/types/src/module/apps/pick-a-thing-prompt.d.ts b/types/src/module/apps/pick-a-thing-prompt.d.ts deleted file mode 100644 index 989fa0d03..000000000 --- a/types/src/module/apps/pick-a-thing-prompt.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -/// -/// -/// -import type { ItemPF2e } from "@item"; -import type { UserPF2e } from "@module/user/document.ts"; -import { Predicate } from "@system/predication.ts"; -import Tagify from "@yaireo/tagify"; -/** Prompt the user to pick from a number of options */ -declare abstract class PickAThingPrompt extends Application { - #private; - protected item: TItem; - protected selection: PickableThing | null; - protected choices: PickableThing[]; - /** If the number of choices is beyond a certain length, a select menu is presented instead of a list of buttons */ - protected selectMenu?: Tagify<{ - value: string; - label: string; - }>; - protected predicate: Predicate; - protected allowNoSelection: boolean; - constructor(data: PickAThingConstructorArgs); - get actor(): TItem["parent"]; - static get defaultOptions(): ApplicationOptions; - protected getSelection(event: MouseEvent): PickableThing | null; - /** Return a promise containing the user's item selection, or `null` if no selection was made */ - resolveSelection(): Promise | null>; - getData(): Promise; - activateListeners($html: JQuery): void; - /** Close the dialog, applying the effect with configured target or warning the user that something went wrong. */ - close(options?: { - force?: boolean; - }): Promise; -} -interface PickAThingConstructorArgs { - title?: string; - prompt?: string; - choices: PickableThing[]; - item: TItem; - predicate?: Predicate; - allowNoSelection?: boolean; -} -interface PickableThing { - value: T; - label: string; - img?: string; - domain?: string[]; - predicate?: Predicate; -} -interface PromptTemplateData { - choices: PickableThing[]; - /** An item pertinent to the selection being made */ - item: ItemPF2e; - user: UserPF2e; -} -export { PickAThingPrompt }; -export type { PickAThingConstructorArgs, PickableThing, PromptTemplateData }; diff --git a/types/src/module/apps/scene-darkness-adjuster.d.ts b/types/src/module/apps/scene-darkness-adjuster.d.ts deleted file mode 100644 index 977cf607e..000000000 --- a/types/src/module/apps/scene-darkness-adjuster.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -/// -/// -/// -import { ScenePF2e } from "@scene/index.ts"; -import "nouislider/dist/nouislider.min.css"; -export declare class SceneDarknessAdjuster extends Application { - #private; - static readonly instance: SceneDarknessAdjuster; - static get defaultOptions(): ApplicationOptions; - getData(options?: Partial): Promise; - render(force?: boolean, options?: RenderOptions & { - scenes?: ScenePF2e[]; - }): this; - /** Fade out before closing */ - close(options?: { - force?: boolean; - } & Record): Promise; - activateListeners($html: JQuery): void; - onLightingRefresh(darkness: number): void; -} diff --git a/types/src/module/apps/sidebar/actor-directory.d.ts b/types/src/module/apps/sidebar/actor-directory.d.ts deleted file mode 100644 index 65c8224a1..000000000 --- a/types/src/module/apps/sidebar/actor-directory.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -/// -/// -/// -import { ActorPF2e } from "@actor"; -/** Extend ActorDirectory to show more information */ -declare class ActorDirectoryPF2e extends ActorDirectory> { - #private; - static entryPartial: string; - static get defaultOptions(): SidebarDirectoryOptions; - getData(): Promise; - saveActivePartyFolderState(): void; - activateListeners($html: JQuery): void; - /** Overriden so matched actors in a party reveal their party "folder" as well */ - protected _onSearchFilter(event: KeyboardEvent, query: string, rgx: RegExp, html: HTMLElement): void; - protected _onDragStart(event: DragEvent): void; - /** Overriden to prevent highlighting of certain types of draggeed data (such as parties) */ - protected _onDragHighlight(event: DragEvent): void; - protected _handleDroppedEntry(target: HTMLElement, data: ActorSidebarDropData): Promise; - /** Inject parties without having to alter a core template */ - protected _renderInner(data: object): Promise; - protected _contextMenu($html: JQuery): void; - protected _getEntryContextOptions(): EntryContextOption[]; - protected _getPartyContextOptions(): EntryContextOption[]; -} -interface ActorSidebarDropData extends DropCanvasData<"actor", ActorPF2e> { - fromParty?: string; -} -export { ActorDirectoryPF2e }; diff --git a/types/src/module/apps/sidebar/chat-log.d.ts b/types/src/module/apps/sidebar/chat-log.d.ts deleted file mode 100644 index d8b99ee7a..000000000 --- a/types/src/module/apps/sidebar/chat-log.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -/// -/// -/// -import { ChatMessagePF2e } from "@module/chat-message/index.ts"; -import type { ChatMessageSource } from "types/foundry/common/documents/chat-message.d.ts"; -declare class ChatLogPF2e extends ChatLog { - #private; - activateListeners($html: JQuery): void; - /** Separate public method so as to be accessible from renderChatPopout hook */ - activateClickListener(html: HTMLElement): void; - /** Handle clicks of "Set as initiative" buttons */ - protected _onDiceRollClick(event: JQuery.ClickEvent): void; - /** Replace parent method in order to use DamageRoll class as needed */ - protected _processDiceCommand(command: string, matches: RegExpMatchArray[], chatData: DeepPartial> & { - rolls: (string | RollJSON)[]; - }, createOptions: ChatMessageCreateOperation): Promise; - protected _getEntryContextOptions(): EntryContextOption[]; -} -export { ChatLogPF2e }; diff --git a/types/src/module/apps/sidebar/compendium-directory.d.ts b/types/src/module/apps/sidebar/compendium-directory.d.ts deleted file mode 100644 index edb4ec835..000000000 --- a/types/src/module/apps/sidebar/compendium-directory.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -/// -/// -/// -import MiniSearch from "minisearch"; - -/** Extend CompendiumDirectory to support a search bar */ -declare class CompendiumDirectoryPF2e extends CompendiumDirectory { - #private; - static readonly STOP_WORDS: Set; - get searchEngine(): MiniSearch; - /** Include ability to search and drag document search results */ - static get defaultOptions(): ApplicationOptions; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _getEntryContextOptions(): EntryContextOption[]; - /** Add a context menu for content search results */ - protected _contextMenu($html: JQuery): void; - /** System compendium search */ - protected _onSearchFilter(event: KeyboardEvent, query: string, rgx: RegExp, listElem: HTMLElement): void; - /** Anyone can drag from search results */ - protected _canDragStart(): boolean; - /** Replicate the functionality of dragging a compendium document from an open `Compendium` */ - protected _onDragStart(event: DragEvent): void; - /** Called by a "ready" hook */ - compileSearchIndex(): void; -} -interface CompendiumDirectoryPF2e extends CompendiumDirectory { - constructor: typeof CompendiumDirectoryPF2e; -} -interface CompendiumDirectoryDataPF2e extends CompendiumDirectoryData { - searchContents: boolean; - isV13: boolean; -} -export { CompendiumDirectoryPF2e }; diff --git a/types/src/module/apps/sidebar/encounter-tracker.d.ts b/types/src/module/apps/sidebar/encounter-tracker.d.ts deleted file mode 100644 index c859ccc24..000000000 --- a/types/src/module/apps/sidebar/encounter-tracker.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -/// -/// -/// -import type { CombatantPF2e, EncounterPF2e } from "@module/encounter/index.ts"; -import type { TokenDocumentPF2e } from "@scene/index.ts"; - -export declare class EncounterTrackerPF2e extends CombatTracker { - #private; - /** Show encounter analysis data if obtainable */ - protected _renderInner(data: object, options: RenderOptions): Promise; - /** Make the combatants sortable */ - activateListeners($html: JQuery): void; - /** Refresh the list of users targeting a combatant's token as well as the active state of the target toggle */ - refreshTargetDisplay(combatantOrToken: CombatantPF2e | TokenDocumentPF2e, trackers?: HTMLElement[]): void; - /** Allow CTRL-clicking to make the rolls blind */ - protected _onCombatControl(event: JQuery.ClickEvent): Promise; - /** Allow CTRL-clicking to make the roll blind */ - protected _onCombatantControl(event: JQuery.ClickEvent): Promise; - /** Replace parent method with system-specific procedure */ - protected _onToggleDefeatedStatus(combatant: CombatantPF2e): Promise; -} diff --git a/types/src/module/apps/sidebar/index.d.ts b/types/src/module/apps/sidebar/index.d.ts deleted file mode 100644 index 04f155d67..000000000 --- a/types/src/module/apps/sidebar/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export { ActorDirectoryPF2e } from "./actor-directory.ts"; -export { ItemDirectoryPF2e } from "./item-directory.ts"; -export { ChatLogPF2e } from "./chat-log.ts"; -export { CompendiumDirectoryPF2e } from "./compendium-directory.ts"; -export { EncounterTrackerPF2e } from "./encounter-tracker.ts"; diff --git a/types/src/module/apps/sidebar/item-directory.d.ts b/types/src/module/apps/sidebar/item-directory.d.ts deleted file mode 100644 index 7676e8526..000000000 --- a/types/src/module/apps/sidebar/item-directory.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -/// -/// -/// -import { ItemPF2e } from "@item"; -/** Extend ItemDirectory to show more information */ -export declare class ItemDirectoryPF2e> extends ItemDirectory { - #private; - static entryPartial: string; - static get defaultOptions(): SidebarDirectoryOptions; - activateListeners($html: JQuery): void; - /** Add `EntryContextOption` to attach physical items */ - protected _getEntryContextOptions(): EntryContextOption[]; -} diff --git a/types/src/module/apps/world-clock/animate-darkness.d.ts b/types/src/module/apps/world-clock/animate-darkness.d.ts deleted file mode 100644 index 447687bf0..000000000 --- a/types/src/module/apps/world-clock/animate-darkness.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { WorldClock } from "./app.ts"; -/** Animate the increase or decrease of the scene darkness level in the syncDarkness setting is enabled */ -export declare function animateDarkness(this: WorldClock, timeDiff: number): Promise; diff --git a/types/src/module/apps/world-clock/app.d.ts b/types/src/module/apps/world-clock/app.d.ts deleted file mode 100644 index 0480ba065..000000000 --- a/types/src/module/apps/world-clock/app.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -/// -/// -/// -import { DateTime } from "luxon"; -import { animateDarkness } from "./animate-darkness.ts"; - -interface WorldClockData { - date: string; - time: string; - options?: object; - user: User; - sign: "+" | "-"; -} -export declare class WorldClock extends Application { - /** Is the ctrl key currently held down? */ - private ctrlKeyDown; - readonly animateDarkness: typeof animateDarkness; - constructor(); - /** Setting: the date theme (Imperial Calendar not yet supported) */ - get dateTheme(): "AR" | "IC" | "AD" | "CE"; - /** Setting: display either a 24-hour or 12-hour clock */ - get timeConvention(): 24 | 12; - /** Setting: whether to keep the scene's darkness level synchronized with the world time */ - get syncDarkness(): boolean; - /** Setting: Date and time of the Foundry world's creation date */ - get worldCreatedOn(): DateTime; - /** The current date and time of the game world */ - get worldTime(): DateTime; - static get defaultOptions(): ApplicationOptions; - /** The era in the game */ - private get era(); - /** The year in the game */ - private get year(); - /** The month in the game */ - private get month(); - /** The day of the week in the game */ - private get weekday(); - getData(options?: ApplicationOptions): WorldClockData; - protected _getHeaderButtons(): ApplicationHeaderButton[]; - private static calculateIncrement; - /** Advance the world time by a static or input value */ - activateListeners($html: JQuery): void; - close(options?: { - force?: boolean; - }): Promise; - /** Create a message informing the user that scene darkness is synced to world time */ - static createSyncedMessage(): HTMLSpanElement; -} -export {}; diff --git a/types/src/module/apps/world-clock/index.d.ts b/types/src/module/apps/world-clock/index.d.ts deleted file mode 100644 index b19b32f6b..000000000 --- a/types/src/module/apps/world-clock/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { WorldClock } from "./app.ts"; diff --git a/types/src/module/apps/world-clock/time-of-day.d.ts b/types/src/module/apps/world-clock/time-of-day.d.ts deleted file mode 100644 index 56b4c9fdd..000000000 --- a/types/src/module/apps/world-clock/time-of-day.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { DateTime, HourNumbers, MinuteNumbers, SecondNumbers } from "luxon"; -declare enum TimeChangeMode { - ADVANCE = 0, - RETRACT = 1 -} -declare class TimeOfDay { - readonly hour: HourNumbers; - readonly minute: MinuteNumbers; - readonly second: SecondNumbers; - constructor(hour: HourNumbers, minute: MinuteNumbers, second: SecondNumbers); - /** Point in morning twilight where dim light begins */ - static DAWN: TimeOfDay; - static NOON: TimeOfDay; - /** Point in evening twilight where dim light begins */ - static DUSK: TimeOfDay; - static MIDNIGHT: TimeOfDay; - /** - * Returns positive or negative number of seconds to add to current - * game time advance function https://foundryvtt.com/api/GameTime.hbs#advance - * @param worldTime the current time as luxon DateTime - * @param mode whether to go back to that point in time or to advance - */ - diffSeconds(worldTime: DateTime, mode: TimeChangeMode): number; - private static diffDays; -} -export { TimeChangeMode, TimeOfDay }; diff --git a/types/src/module/canvas/ambient-light.d.ts b/types/src/module/canvas/ambient-light.d.ts deleted file mode 100644 index a10afae84..000000000 --- a/types/src/module/canvas/ambient-light.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { AmbientLightDocumentPF2e } from "@scene/index.ts"; -import { LightingLayerPF2e } from "./index.ts"; -declare class AmbientLightPF2e extends AmbientLight { -} -interface AmbientLightPF2e extends AmbientLight { - get layer(): LightingLayerPF2e; -} -export { AmbientLightPF2e }; diff --git a/types/src/module/canvas/drop-canvas-data.d.ts b/types/src/module/canvas/drop-canvas-data.d.ts deleted file mode 100644 index 891a0cc52..000000000 --- a/types/src/module/canvas/drop-canvas-data.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { ItemPF2e } from "@item"; -import { EffectContextData } from "@item/abstract-effect/index.ts"; -type DropCanvasItemDataPF2e = DropCanvasData<"Item", ItemPF2e> & { - value?: number; - level?: number; - spellFrom?: { - collectionId: string; - groupId: string; - slotIndex: number; - }; - context?: EffectContextData; -}; -type DropCanvasPersistentDamage = DropCanvasData<"PersistentDamage"> & { - formula: string; -}; -type DropCanvasDataPF2e = DropCanvasItemDataPF2e | DropCanvasPersistentDamage; -export type { DropCanvasDataPF2e, DropCanvasItemDataPF2e }; diff --git a/types/src/module/canvas/effect-area-square.d.ts b/types/src/module/canvas/effect-area-square.d.ts deleted file mode 100644 index 2ee79c889..000000000 --- a/types/src/module/canvas/effect-area-square.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import type { AuraAppearanceData } from "@actor/types.ts"; -/** A square (`PIXI.Rectangle`) with additional information about an effect area it's part of */ -export declare class EffectAreaSquare extends PIXI.Rectangle { - /** Whether this square is an active part of the aura or blocked (typically by a wall) */ - active: boolean; - constructor(x: number, y: number, width?: number, height?: number, active?: boolean); - get center(): Point; - highlight(layer: GridHighlight, { border, highlight }: AuraAppearanceData): void; -} diff --git a/types/src/module/canvas/group/effects.d.ts b/types/src/module/canvas/group/effects.d.ts deleted file mode 100644 index 8fb2dd886..000000000 --- a/types/src/module/canvas/group/effects.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -declare class EffectsCanvasGroupPF2e extends EffectsCanvasGroup { - /** Is rules-based vision enabled and applicable to the scene? */ - get rulesBasedVision(): boolean; -} -export { EffectsCanvasGroupPF2e }; diff --git a/types/src/module/canvas/group/environment.d.ts b/types/src/module/canvas/group/environment.d.ts deleted file mode 100644 index fafcf3854..000000000 --- a/types/src/module/canvas/group/environment.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -declare class EnvironmentCanvasGroupPF2e extends EnvironmentCanvasGroup { - /** Ensure prepared values are passed in initialization (upstream retrieves source values). */ - initialize(config?: EnvironmentInitializeConfig): void; -} -export { EnvironmentCanvasGroupPF2e }; diff --git a/types/src/module/canvas/helpers.d.ts b/types/src/module/canvas/helpers.d.ts deleted file mode 100644 index b3629ba2a..000000000 --- a/types/src/module/canvas/helpers.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { TokenPF2e } from "./index.ts"; -/** - * Measure the minimum distance between two rectangles - * @param r0 The origin rectangle - * @param r1 The destination rectangle - * @param [reach] If this is a reach measurement, the origin actor's reach - */ -declare function measureDistanceCuboid(r0: PIXI.Rectangle, r1: PIXI.Rectangle, { reach, token, target, }?: { - reach?: number | null; - token?: TokenPF2e | null; - target?: TokenPF2e | null; -}): number; -/** - * Measure distance using Pathfinder 2e grid-counting rules - * @param p0 The origin point - * @param p1 The destination point - */ -declare function measureDistance(p0: Point, p1: Point): number; -/** Get a grid square at an arbitrary point. */ -declare function squareAtPoint(point: Point): PIXI.Rectangle; -export { measureDistance, measureDistanceCuboid, squareAtPoint }; diff --git a/types/src/module/canvas/index.d.ts b/types/src/module/canvas/index.d.ts deleted file mode 100644 index 94d5c269d..000000000 --- a/types/src/module/canvas/index.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { AmbientLightDocumentPF2e, MeasuredTemplateDocumentPF2e, RegionDocumentPF2e, ScenePF2e, TokenDocumentPF2e } from "@scene/index.ts"; -import { AmbientLightPF2e } from "./ambient-light.ts"; -import { EffectsCanvasGroupPF2e } from "./group/effects.ts"; -import { LightingLayerPF2e } from "./layer/lighting.ts"; -import { TemplateLayerPF2e } from "./layer/template.ts"; -import { TokenLayerPF2e } from "./layer/token.ts"; -import { MeasuredTemplatePF2e } from "./measured-template.ts"; -import { RegionPF2e } from "./region.ts"; -import { RulerPF2e } from "./ruler.ts"; -import { TokenPF2e } from "./token/object.ts"; -export type CanvasPF2e = Canvas>, MeasuredTemplatePF2e>, TokenPF2e>, EffectsCanvasGroupPF2e, RegionPF2e>, RulerPF2e>; -export * from "./helpers.ts"; -export { AmbientLightPF2e, EffectsCanvasGroupPF2e, LightingLayerPF2e, MeasuredTemplatePF2e, RegionPF2e, RulerPF2e, TemplateLayerPF2e, TokenLayerPF2e, TokenPF2e, }; diff --git a/types/src/module/canvas/layer/lighting.d.ts b/types/src/module/canvas/layer/lighting.d.ts deleted file mode 100644 index 4c5638725..000000000 --- a/types/src/module/canvas/layer/lighting.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { AmbientLightPF2e } from "../ambient-light.ts"; -export declare class LightingLayerPF2e extends LightingLayer { - get lightingLevel(): number; -} diff --git a/types/src/module/canvas/layer/template.d.ts b/types/src/module/canvas/layer/template.d.ts deleted file mode 100644 index a35bbe0d5..000000000 --- a/types/src/module/canvas/layer/template.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import type { MeasuredTemplatePF2e } from "../measured-template.ts"; -export declare class TemplateLayerPF2e extends TemplateLayer { - #private; - createPreview(createData: Record): Promise; - /** Overriden to snap according to the dragged template's type */ - getSnappedPoint(point: Point): Point; - protected _onDragLeftMove(event: PlaceablesLayerPointerEvent): void; - protected _onMouseWheel(event: WheelEvent): Promise | void; -} diff --git a/types/src/module/canvas/layer/token.d.ts b/types/src/module/canvas/layer/token.d.ts deleted file mode 100644 index 3eabd56ea..000000000 --- a/types/src/module/canvas/layer/token.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type { TokenPF2e } from "../index.ts"; -declare class TokenLayerPF2e extends TokenLayer { - /** Prevent redirection of event to `Ruler` when ctrl key is pressed. */ - protected _onClickLeft(event: PlaceablesLayerPointerEvent): void; - /** Cycle Z indices of a hovered token stack */ - cycleStack(): boolean; -} -export { TokenLayerPF2e }; diff --git a/types/src/module/canvas/layer/visibility.d.ts b/types/src/module/canvas/layer/visibility.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/src/module/canvas/layer/visibility.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/src/module/canvas/measured-template.d.ts b/types/src/module/canvas/measured-template.d.ts deleted file mode 100644 index 290354814..000000000 --- a/types/src/module/canvas/measured-template.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import type { EffectAreaShape } from "@item/spell/types.ts"; -import type { ChatMessagePF2e } from "@module/chat-message/document.ts"; -import type { MeasuredTemplateDocumentPF2e, ScenePF2e } from "@scene"; -import type { TemplateLayerPF2e } from "./layer/template.ts"; - -declare class MeasuredTemplatePF2e = MeasuredTemplateDocumentPF2e> extends MeasuredTemplate { - get actor(): ActorPF2e | null; - get item(): ItemPF2e | null; - get message(): ChatMessagePF2e | null; - get areaShape(): EffectAreaShape | null; - /** - * Returns the snapping for this template's highlight. - * Note that circle templates created via the canvas controls are neither bursts nor emanations, and thus can go in either position. - */ - get snappingMode(): number; - highlightGrid(): void; - /** Overriden to also return collision information */ - protected _getGridHighlightPositions(): PointCollision[]; -} -interface PointCollision extends Point { - collision?: boolean; -} -interface MeasuredTemplatePF2e = MeasuredTemplateDocumentPF2e> extends MeasuredTemplate { - get layer(): TemplateLayerPF2e; -} -export { MeasuredTemplatePF2e }; diff --git a/types/src/module/canvas/perception/modes.d.ts b/types/src/module/canvas/perception/modes.d.ts deleted file mode 100644 index 0f5b81773..000000000 --- a/types/src/module/canvas/perception/modes.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -declare function setPerceptionModes(): void; -export { setPerceptionModes }; diff --git a/types/src/module/canvas/perception/point-vision-source.d.ts b/types/src/module/canvas/perception/point-vision-source.d.ts deleted file mode 100644 index ff19b19bf..000000000 --- a/types/src/module/canvas/perception/point-vision-source.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type { TokenPF2e } from "../token/index.ts"; -/** Subclassed to include hearing detection */ -declare class PointVisionSourcePF2e extends foundry.canvas.sources - .PointVisionSource { - hearing?: PointSourcePolygon; - protected _createShapes(): void; -} -export { PointVisionSourcePF2e }; diff --git a/types/src/module/canvas/region.d.ts b/types/src/module/canvas/region.d.ts deleted file mode 100644 index 22a2630e2..000000000 --- a/types/src/module/canvas/region.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import type { RegionDocumentPF2e } from "@scene/region-document/document.ts"; - -/** Add support for drag/drop repositioning of regions. */ -declare class RegionPF2e extends Region { - static RENDER_FLAGS: { - refreshPosition: {}; - redraw: { - propagate: ["refresh"]; - }; - refresh: { - propagate: ["refreshState", "refreshBorder"]; - alias: boolean; - }; - refreshState: object; - refreshBorder: object; - }; - getSnappedPosition(position?: Point): Point; - protected _canDrag(user: User, event: PIXI.FederatedPointerEvent): boolean; - protected _onDragLeftMove(event: PlaceablesLayerPointerEvent): void; - /** Save the coordinates of the new drop location(s). */ - protected _onDragLeftDrop(event: PlaceablesLayerPointerEvent): Promise; -} -export { RegionPF2e }; diff --git a/types/src/module/canvas/ruler.d.ts b/types/src/module/canvas/ruler.d.ts deleted file mode 100644 index ce7708442..000000000 --- a/types/src/module/canvas/ruler.d.ts +++ /dev/null @@ -1,53 +0,0 @@ -import type { UserPF2e } from "@module/user/document.ts"; -import type { TokenPF2e } from "./token/object.ts"; - -declare class RulerPF2e extends Ruler { - #private; - static get canMeasure(): boolean; - static get hasModuleConflict(): boolean; - /** Whether drag measurement is currently in progress */ - isDragMeasuring: boolean; - /** Whether drag measurement is enabled */ - get dragMeasurement(): boolean; - get isMeasuring(): boolean; - /** Add a waypoint at the currently-drawn destination. */ - saveWaypoint(): void; - startDragMeasurement(event: TokenPointerEvent>): void; - /** - * @param exactDestination?: The coordinates of the dragged token preview, if any - */ - finishDragMeasurement(event: TokenPointerEvent>, exactDestination?: Point | null): Promise; - /** Acquire the token's footprint for drag measurement. */ - measure(destination: Point, options?: { - snap?: boolean; - force?: boolean; - }): void | RulerMeasurementSegment[]; - /** Allow GMs to move tokens through walls when drag-measuring. */ - protected _canMove(token: TToken): boolean; - /** Prevent inclusion of a token when using the ruler tool. */ - protected _startMeasurement(origin: Point, options?: { - snap?: boolean; - token?: TToken | null; - }): void; - /** Calculate cost as an addend to distance due to difficult terrain. */ - protected _getCostFunction(): GridMeasurePathCostFunction | undefined; - protected _getMeasurementOrigin(point: Point, options?: { - snap?: boolean; - }): Point; - protected _getMeasurementDestination(point: Point, options?: { - snap?: boolean; - }): Point; - /** Widen the ruler when measuring with larger tokens. */ - protected _highlightMeasurementSegment(segment: RulerMeasurementSegment): void; - protected _animateSegment(token: TToken, segment: RulerMeasurementSegment, destination: Point): Promise; - /** If measuring with a token, broadcast if the token is not hidden and only during encounters. */ - protected _broadcastMeasurement(): void; - protected _endMeasurement(): void; - /** Prevent behavior from keybind modifiers if token drag measurement is enabled. */ - _onMouseUp(event: PlaceablesLayerPointerEvent>): void; - /** Prevent behavior from movement keys (typically Space) if token drag measurement is enabled. */ - _onMoveKeyDown(context: KeyboardEventContext): void; - onDragMeasureMove(event: TokenPointerEvent>): void; - onDragLeftCancel(event?: TokenPointerEvent>): void; -} -export { RulerPF2e }; diff --git a/types/src/module/canvas/status-effects.d.ts b/types/src/module/canvas/status-effects.d.ts deleted file mode 100644 index 841367624..000000000 --- a/types/src/module/canvas/status-effects.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { ConditionSlug } from "@item/condition/types.ts"; -import type { EncounterPF2e } from "@module/encounter/index.ts"; -import { StatusEffectIconTheme } from "@scripts/config/index.ts"; -/** Handle interaction with the TokenHUD's status effects menu */ -export declare class StatusEffects { - #private; - /** Set the theme for condition icons on tokens */ - static initialize(): void; - /** Update status icons and tokens due to certain potential changes */ - static reset(): void; - static get conditions(): Record; - /** - * If the system setting statusEffectType is changed, we need to upgrade CONFIG - * And migrate all statusEffect URLs of all Tokens - */ - static migrateStatusEffectUrls(chosenSetting: StatusEffectIconTheme): Promise; - static onRenderTokenHUD(html: HTMLElement, tokenData: TokenHUDData): Promise; - /** Called by `EncounterPF2e#_onUpdate` */ - static onUpdateEncounter(encounter: EncounterPF2e): void; - /** Re-render the token HUD */ - static refresh(): void; -} diff --git a/types/src/module/canvas/token/aura/index.d.ts b/types/src/module/canvas/token/aura/index.d.ts deleted file mode 100644 index 83737acc7..000000000 --- a/types/src/module/canvas/token/aura/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { AuraRenderers } from "./map.ts"; -export { AuraRenderer } from "./renderer.ts"; diff --git a/types/src/module/canvas/token/aura/map.d.ts b/types/src/module/canvas/token/aura/map.d.ts deleted file mode 100644 index f654fd56c..000000000 --- a/types/src/module/canvas/token/aura/map.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { TokenPF2e } from "../object.ts"; -import { AuraRenderer } from "./renderer.ts"; -export declare class AuraRenderers extends Map { - #private; - readonly token: TokenPF2e; - constructor(token: TokenPF2e); - /** The ID of the highlight layer for this aura's token */ - get highlightId(): string; - /** - * Clear current aura renders, acquire new aura data, and render. - * @param [slugs] A specific list of slugs to limit which auras are cleared - */ - reset(slugs?: string[]): Promise; - /** Reposition aura textures after the token moves. */ - refreshPositions(): void; - /** Toggle visibility of aura rings and reset highlights */ - draw(): Promise; - /** Deallocate the aura's GPU memory before removing from map */ - delete(key: string): boolean; - /** Destroy highlight layer and renderers before clearing the map. */ - clear(): void; - /** Alias of `clear` */ - destroy(): void; - clearHighlights(): void; -} diff --git a/types/src/module/canvas/token/aura/renderer.d.ts b/types/src/module/canvas/token/aura/renderer.d.ts deleted file mode 100644 index 5db0f6cdb..000000000 --- a/types/src/module/canvas/token/aura/renderer.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { AuraAppearanceData, AuraData } from "@actor/types.ts"; -import { ItemTrait } from "@item/base/data/system.ts"; -import { TokenAuraData } from "@scene/token-document/aura/index.ts"; -import type { EffectAreaSquare } from "../../effect-area-square.ts"; -import type { TokenPF2e } from "../index.ts"; -/** Visual rendering of auras emanated by a token's actor */ -declare class AuraRenderer extends PIXI.Graphics implements TokenAuraData { - #private; - slug: string; - /** The token associated with this aura */ - token: TokenPF2e; - /** The radius of the aura in feet */ - radius: number; - /** The aura radius from the center in pixels */ - radiusPixels: number; - /** Traits associated with this aura: used to configure collision detection */ - traits: ItemTrait[]; - /** Border, highlight, and texture data */ - appearance: AuraAppearanceData; - /** Standard line thickness for circle shape and label markers */ - static readonly LINE_THICKNESS = 3; - border: import("pixi.js").Graphics; - textureContainer: PIXI.Graphics | null; - constructor(params: AuraRendererParams); - get bounds(): PIXI.Rectangle; - /** ID of `GridHighlight` container for this aura's token */ - get highlightLayer(): GridHighlight | null; - /** The squares covered by this aura */ - get squares(): EffectAreaSquare[]; - /** Draw the aura's border and texture */ - draw(showBorder: boolean): Promise; - /** Reposition this aura's texture after the token has moved. */ - repositionTexture(): void; - /** Highlight the affected grid squares of this aura and indicate the radius */ - highlight(): void; - destroy(options?: boolean | PIXI.IDestroyOptions): void; -} -interface AuraRendererParams extends Omit { - slug: string; - token: TokenPF2e; - traits: ItemTrait[]; -} -export { AuraRenderer }; diff --git a/types/src/module/canvas/token/aura/util.d.ts b/types/src/module/canvas/token/aura/util.d.ts deleted file mode 100644 index bc920a48d..000000000 --- a/types/src/module/canvas/token/aura/util.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { EffectAreaSquare } from "@module/canvas/effect-area-square.ts"; -import { TokenDocumentPF2e } from "@scene"; -import type { TokenPF2e } from "../index.ts"; -export declare function getAreaSquares(data: GetAreaSquaresParams): EffectAreaSquare[]; -interface GetAreaSquaresParams { - bounds: PIXI.Rectangle; - radius: number; - token: TokenPF2e | TokenDocumentPF2e; - traits?: string[]; -} -export {}; diff --git a/types/src/module/canvas/token/flanking-highlight/renderer.d.ts b/types/src/module/canvas/token/flanking-highlight/renderer.d.ts deleted file mode 100644 index d42c9f0bd..000000000 --- a/types/src/module/canvas/token/flanking-highlight/renderer.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import type { TokenPF2e } from "../index.ts"; -/** Visual rendering of lines from token to flanking buddies token on highlight */ -declare class FlankingHighlightRenderer { - #private; - /** The token from which the line is extended */ - token: TokenPF2e; - /** Text label floating above highlight line */ - labelText: string; - /** Color for highlight line */ - lineColor: number; - constructor(token: TokenPF2e); - /** Get existing layer graphics object or create one if one does not exist */ - get layer(): PIXI.Graphics; - /** Draw flanking highlight if conditions are met */ - draw(): void; - /** - * For a given target, find flanking buddies and draw flanking highlight lines between token and buddies - * @param target Potentially flanked target - */ - drawForTarget(target: TokenPF2e): void; - /** - * Draw flanking highlight lines between this token and buddies - * @param buddies Flanking buddy tokens - */ - drawBuddyLines(buddies: TokenPF2e[]): void; - /** - * Draw flanking highlight line between this token and a single buddy. - * @param buddy Flanking buddy token - */ - drawBuddyLine(buddy: TokenPF2e): void; - /** - * Draw a flanking text label above flanking highlight line - * @param buddy Flanking buddy token - */ - drawLabel(buddy: TokenPF2e): void; - /** Destroys and removes layer graphics, incuding any text children */ - clear(): void; - /** Alias of `clear` */ - destroy(): void; -} -export { FlankingHighlightRenderer }; diff --git a/types/src/module/canvas/token/index.d.ts b/types/src/module/canvas/token/index.d.ts deleted file mode 100644 index b57188d9f..000000000 --- a/types/src/module/canvas/token/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { TokenPF2e } from "./object.ts"; diff --git a/types/src/module/canvas/token/object.d.ts b/types/src/module/canvas/token/object.d.ts deleted file mode 100644 index fdf3c583f..000000000 --- a/types/src/module/canvas/token/object.d.ts +++ /dev/null @@ -1,147 +0,0 @@ -import type { UserPF2e } from "@module/user/document.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import type { TokenLayerPF2e } from "../index.ts"; -import { AuraRenderers } from "./aura/index.ts"; -import { FlankingHighlightRenderer } from "./flanking-highlight/renderer.ts"; -declare class TokenPF2e extends Token { - #private; - /** Visual representation and proximity-detection facilities for auras */ - readonly auras: AuraRenderers; - /** Visual rendering of lines from token to flanking buddy tokens on highlight */ - readonly flankingHighlight: FlankingHighlightRenderer; - constructor(document: TDocument); - get isTiny(): boolean; - /** This token's shape at its canvas position */ - get localShape(): TokenShape; - /** The grid offsets representing this token's shape */ - get footprint(): GridOffset[]; - /** Increase center-to-center point tolerance to be more compliant with 2e rules */ - get isVisible(): boolean; - /** A reference to an animation that is currently in progress for this Token, if any */ - get animation(): Promise | null; - /** Is this token currently animating? */ - get isAnimating(): boolean; - /** Is rules-based vision enabled, and does this token's actor have low-light vision (inclusive of darkvision)? */ - get hasLowLightVision(): boolean; - /** Is rules-based vision enabled, and does this token's actor have darkvision vision? */ - get hasDarkvision(): boolean; - /** Is this token's dimensions linked to its actor's size category? */ - get linkToActorSize(): boolean; - /** The ID of the highlight layer for this token */ - get highlightId(): string; - /** Bounds used for mechanics, such as flanking and drawing auras */ - get mechanicalBounds(): PIXI.Rectangle; - isAdjacentTo(token: TokenPF2e): boolean; - /** Publicly expose `Token#_canControl` for use in `TokenLayerPF2e`. */ - canControl(user: UserPF2e, event: PIXI.FederatedPointerEvent): boolean; - /** - * Determine whether this token can flank another—given that they have a flanking buddy on the opposite side - * @param flankee The potentially flanked token - * @param context.reach An optional reach distance specific to this measurement - * @param context.ignoreFlankable Optionally ignore flankable (for flanking highlight) */ - canFlank(flankee: TokenPF2e, context?: { - reach?: number; - ignoreFlankable?: boolean; - }): boolean; - /** - * Determine whether two potential flankers are on opposite sides of flankee - * @param flankerA First of two potential flankers - * @param flankerB Second of two potential flankers - * @param flankee Potentially flanked token - */ - protected onOppositeSides(flankerA: TokenPF2e, flankerB: TokenPF2e, flankee: TokenPF2e): boolean; - /** - * Determine whether this token is in fact flanking another - * @param flankee The potentially flanked token - * @param context.reach An optional reach distance specific to this measurement - * @param context.ignoreFlankable Optionally ignore flankable (for flanking position indicator) */ - isFlanking(flankee: TokenPF2e, context?: { - reach?: number; - ignoreFlankable?: boolean; - }): boolean; - /** - * Find other tokens that are in fact flanking a flankee with this token. - * Only detects tokens on opposite sides of flankee, does not support Gang Up or Side By Side. - * @param flankee The potentially flanked token - * @param context.reach An optional reach distance specific to this measurement - * @param context.ignoreFlankable Optionally ignore flankable (for flanking position indicator) */ - buddiesFlanking(flankee: TokenPF2e, context?: { - reach?: number; - ignoreFlankable?: boolean; - }): TokenPF2e[]; - /** Reposition aura textures after this token has moved. */ - protected _applyRenderFlags(flags: Record): void; - /** Draw auras and flanking highlight lines if certain conditions are met */ - protected _refreshVisibility(): void; - /** Overrides _drawBar(k) to also draw pf2e variants of normal resource bars (such as temp health) */ - protected _drawBar(number: number, bar: PIXI.Graphics, data: TokenResourceData): void; - /** Draw auras along with effect icons */ - _drawEffects(): Promise; - /** Emulate a pointer hover ("pointerover") event */ - emitHoverIn(nativeEvent: MouseEvent | PointerEvent): void; - /** Emulate a pointer hover ("pointerout") event */ - emitHoverOut(nativeEvent: MouseEvent | PointerEvent): void; - /** If Party Vision is enabled, make all player-owned actors count as vision sources for non-GM users */ - protected _isVisionSource(): boolean; - /** Include actor overrides in the clone if it is a preview */ - clone(): this; - /** Emit floaty text from this tokens */ - showFloatyText(params: ShowFloatyEffectParams): Promise; - /** - * Measure the distance between this token and another object or point, in grid distance. We measure between the - * centre of squares, and if either covers more than one square, we want the minimum distance between - * any two of the squares. - */ - distanceTo(target: TokenOrPoint, { reach }?: { - reach?: number | null; - }): number; - animate(updateData: Record, options?: TokenAnimationOptionsPF2e): Promise; - /** Obscure the token's sprite if a hearing or tremorsense detection filter is applied to it */ - render(renderer: PIXI.Renderer): void; - protected _destroy(): void; - /** Players can view an actor's sheet if the actor is lootable. */ - protected _canView(user: UserPF2e, event: PIXI.FederatedPointerEvent): boolean; - protected _canDrag(user: UserPF2e, event?: TokenPointerEvent): boolean; - /** Prevent players from controlling an NPC when it's lootable */ - protected _canControl(user: UserPF2e, event?: PIXI.FederatedPointerEvent): boolean; - /** Refresh vision and the `EffectsPanel` */ - protected _onControl(options?: { - releaseOthers?: boolean; - pan?: boolean; - }): void; - /** Refresh vision and the `EffectsPanel` */ - protected _onRelease(options?: Record): void; - /** Initiate token drag measurement unless using the ruler tool. */ - protected _onDragLeftStart(event: TokenPointerEvent): void; - protected _onDragLeftMove(event: TokenPointerEvent): void; - protected _onDragLeftDrop(event: TokenPointerEvent): Promise; - protected _onDragLeftCancel(event: TokenPointerEvent): void; - /** Handle system-specific status effects (upstream handles invisible and blinded) */ - _onApplyStatusEffect(statusId: string, active: boolean): void; - /** Reset aura renders when token size changes. */ - _onUpdate(changed: DeepPartial, operation: TokenUpdateOperation, userId: string): void; -} -interface TokenPF2e extends Token { - get layer(): TokenLayerPF2e; -} -type NumericFloatyEffect = { - name: string; - value?: number | null; -}; -type ShowFloatyEffectParams = number | { - create: NumericFloatyEffect; -} | { - update: NumericFloatyEffect; -} | { - delete: NumericFloatyEffect; -}; -interface TokenAnimationOptionsPF2e extends TokenAnimationOptions { - spin?: boolean; -} -type TokenOrPoint = TokenPF2e | (Point & { - actor?: never; - document?: never; - bounds?: never; -}); -export { TokenPF2e }; -export type { ShowFloatyEffectParams, TokenAnimationOptionsPF2e }; diff --git a/types/src/module/chat-message/crit-fumble-cards.d.ts b/types/src/module/chat-message/crit-fumble-cards.d.ts deleted file mode 100644 index edc02086a..000000000 --- a/types/src/module/chat-message/crit-fumble-cards.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -/// -/// -/// -import { ChatMessagePF2e } from "./index.ts"; -export declare class CriticalHitAndFumbleCards { - private static rollTypes; - private static diceSoNice; - private static appendButtonsOption; - static handleDraw(message: ChatMessagePF2e): void; - private static automaticDraw; - private static drawFromTable; - static appendButtons(message: ChatMessagePF2e, $html: JQuery): void; -} diff --git a/types/src/module/chat-message/data.d.ts b/types/src/module/chat-message/data.d.ts deleted file mode 100644 index de9f777d2..000000000 --- a/types/src/module/chat-message/data.d.ts +++ /dev/null @@ -1,126 +0,0 @@ -import type { RawDamageDice, RawModifier } from "@actor/modifiers.ts"; -import { ItemType, SpellSource } from "@item/base/data/index.ts"; -import { MagicTradition } from "@item/spell/types.ts"; -import { ZeroToTwo } from "@module/data.ts"; -import { RollNoteSource } from "@module/notes.ts"; -import { CheckCheckContext } from "@system/check/index.ts"; -import { DamageDamageContext } from "@system/damage/types.ts"; -import { DegreeAdjustmentsRecord, DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import type { ChatMessageFlags } from "types/foundry/common/documents/chat-message.d.ts"; - -type ChatMessageSourcePF2e = foundry.documents.ChatMessageSource & { - flags: ChatMessageFlagsPF2e; -}; -export interface ItemOriginFlag { - actor?: ActorUUID; - type: ItemType; - uuid: string; - castRank?: number; - messageId?: string; - variant?: { - overlays: string[]; - }; - rollOptions?: string[]; -} -type ChatMessageFlagsPF2e = ChatMessageFlags & { - pf2e: { - damageRoll?: DamageRollFlag; - context?: ChatContextFlag; - origin?: ItemOriginFlag | null; - casting?: { - id: string; - tradition: MagicTradition; - embeddedSpell?: SpellSource; - } | null; - modifiers?: RawModifier[]; - dice?: RawDamageDice[]; - preformatted?: "flavor" | "content" | "both"; - journalEntry?: DocumentUUID; - appliedDamage?: AppliedDamageFlag | null; - treatWoundsMacroFlag?: { - bonus: number; - }; - [key: string]: unknown; - }; - core: NonNullable; -}; -type ChatContextFlag = CheckContextChatFlag | DamageDamageContextFlag | SpellCastContextFlag | SelfEffectContextFlag | DamageTakenContextFlag; -interface DamageRollFlag { - outcome: DegreeOfSuccessString; - total: number; - traits: string[]; - types: Record>; - diceResults: Record>; - baseDamageDice: number; -} -interface DieResult { - faces: number; - result: number; -} -interface ActorTokenFlag { - actor: ActorUUID | TokenDocumentUUID; - token?: TokenDocumentUUID; -} -type ContextFlagOmission = "actor" | "action" | "altUsage" | "createMessage" | "damaging" | "dosAdjustments" | "item" | "mapIncreases" | "notes" | "options" | "origin" | "range" | "target" | "token"; -interface ContextualRollOptions { - postRoll?: string[]; -} -interface CheckContextChatFlag extends Required> { - actor: string | null; - token: string | null; - item?: string; - dosAdjustments?: DegreeAdjustmentsRecord; - roller?: "origin" | "target"; - origin: ActorTokenFlag | null; - target: ActorTokenFlag | null; - altUsage?: "thrown" | "melee" | null; - notes: RollNoteSource[]; - options: string[]; - contextualOptions?: ContextualRollOptions; -} -interface DamageDamageContextFlag extends Required> { - actor: string | null; - token: string | null; - item?: string; - mapIncreases?: ZeroToTwo; - target: ActorTokenFlag | null; - notes: RollNoteSource[]; - options: string[]; - contextualOptions?: ContextualRollOptions; -} -interface SpellCastContextFlag { - type: "spell-cast"; - domains: string[]; - options: string[]; - outcome?: DegreeOfSuccessString; - /** The roll mode (i.e., 'roll', 'blindroll', etc) to use when rendering this roll. */ - rollMode?: RollMode; -} -interface SelfEffectContextFlag { - type: "self-effect"; - item: string; - domains?: never; - options?: never; - outcome?: never; -} -interface DamageTakenContextFlag { - type: "damage-taken"; - domains?: string[]; - options?: string[]; - outcome?: never; -} -interface AppliedDamageFlag { - uuid: ActorUUID; - isHealing: boolean; - isReverted?: boolean; - persistent: string[]; - shield: { - id: string; - damage: number; - } | null; - updates: { - path: string; - value: number; - }[]; -} -export type { ActorTokenFlag, AppliedDamageFlag, ChatContextFlag, ChatMessageFlagsPF2e, ChatMessageSourcePF2e, CheckContextChatFlag, DamageDamageContextFlag, DamageRollFlag, }; diff --git a/types/src/module/chat-message/document.d.ts b/types/src/module/chat-message/document.d.ts deleted file mode 100644 index 9f9528cee..000000000 --- a/types/src/module/chat-message/document.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import { StrikeData } from "@actor/data/base.ts"; -import { ItemPF2e } from "@item"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { ScenePF2e, TokenDocumentPF2e } from "@scene/index.ts"; -import { ChatMessageFlagsPF2e, ChatMessageSourcePF2e } from "./data.ts"; -declare class ChatMessagePF2e extends ChatMessage { - #private; - /** Set some flags/flag scopes early. */ - protected _initializeSource(data: object, options?: DataModelConstructionOptions): this["_source"]; - /** Is this a damage (or a manually-inputed non-D20) roll? */ - get isDamageRoll(): boolean; - /** Get the actor associated with this chat message */ - get actor(): ActorPF2e | null; - /** If this is a check or damage roll, it will have target information */ - get target(): { - actor: ActorPF2e; - token: TokenDocumentPF2e; - } | null; - /** If the message came from dynamic inline content in a journal entry, the entry's ID may be used to retrieve it */ - get journalEntry(): JournalEntry | null; - /** Does this message include a check (1d20 + c) roll? */ - get isCheckRoll(): boolean; - /** Does the message include a rerolled check? */ - get isReroll(): boolean; - /** Does the message include a check that hasn't been rerolled? */ - get isRerollable(): boolean; - /** Get the owned item associated with this chat message */ - get item(): ItemPF2e | null; - /** If this message was for a strike, return the strike. Strikes will change in a future release */ - get _strike(): StrikeData | null; - showDetails(): Promise; - /** Get the token of the speaker if possible */ - get token(): TokenDocumentPF2e | null; - getRollData(): Record; - getHTML(): Promise; - protected _onCreate(data: this["_source"], operation: MessageCreateOperationPF2e, userId: string): void; -} -interface ChatMessagePF2e extends ChatMessage { - author: UserPF2e | null; - flags: ChatMessageFlagsPF2e; - readonly _source: ChatMessageSourcePF2e; -} -declare namespace ChatMessagePF2e { - function createDocuments(this: ConstructorOf, data?: (TDocument | PreCreate)[], operation?: Partial): Promise; - function getSpeakerActor(speaker: foundry.documents.ChatSpeakerData): ActorPF2e | null; -} -interface MessageCreateOperationPF2e extends ChatMessageCreateOperation { - /** Whether this is a Rest for the Night message */ - restForTheNight?: boolean; -} -export { ChatMessagePF2e }; diff --git a/types/src/module/chat-message/helpers.d.ts b/types/src/module/chat-message/helpers.d.ts deleted file mode 100644 index b7ef05a06..000000000 --- a/types/src/module/chat-message/helpers.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { AbilityItemPF2e, FeatPF2e } from "@item"; -import { ChatContextFlag, CheckContextChatFlag } from "./data.ts"; -import { ChatMessagePF2e } from "./document.ts"; - -declare function isCheckContextFlag(flag?: ChatContextFlag): flag is CheckContextChatFlag; -/** Create a message with collapsed action description and button to apply an effect */ -declare function createUseActionMessage(item: AbilityItemPF2e | FeatPF2e, rollMode?: RollMode | "roll"): Promise; -declare function applyDamageFromMessage({ message, multiplier, addend, promptModifier, rollIndex, }: ApplyDamageFromMessageParams): Promise; -interface ApplyDamageFromMessageParams { - message: ChatMessagePF2e; - multiplier?: number; - addend?: number; - promptModifier?: boolean; - rollIndex?: number; -} -/** - * Show or hide a clear-measured-template button on a message (applicable to spell cards with template-placed buttons). - * The button will be shown if templates are placed and the user has ownership; otherwise it will be hidden. - */ -declare function toggleClearTemplatesButton(message: ChatMessagePF2e | null): void; -export { applyDamageFromMessage, createUseActionMessage, isCheckContextFlag, toggleClearTemplatesButton }; diff --git a/types/src/module/chat-message/index.d.ts b/types/src/module/chat-message/index.d.ts deleted file mode 100644 index f4da908b6..000000000 --- a/types/src/module/chat-message/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./data.ts"; -export { ChatMessagePF2e } from "./document.ts"; diff --git a/types/src/module/chat-message/listeners/cards.d.ts b/types/src/module/chat-message/listeners/cards.d.ts deleted file mode 100644 index e10e2a135..000000000 --- a/types/src/module/chat-message/listeners/cards.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ChatMessagePF2e } from "../index.ts"; -declare class ChatCards { - #private; - static listen(message: ChatMessagePF2e, html: HTMLElement): void; -} -export { ChatCards }; diff --git a/types/src/module/chat-message/listeners/damage-taken.d.ts b/types/src/module/chat-message/listeners/damage-taken.d.ts deleted file mode 100644 index a8fd5833e..000000000 --- a/types/src/module/chat-message/listeners/damage-taken.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { ChatMessagePF2e } from "../document.ts"; -export declare const DamageTaken: { - listen: (message: ChatMessagePF2e, html: HTMLElement) => Promise; -}; diff --git a/types/src/module/chat-message/listeners/degree-of-success.d.ts b/types/src/module/chat-message/listeners/degree-of-success.d.ts deleted file mode 100644 index f8c72d06c..000000000 --- a/types/src/module/chat-message/listeners/degree-of-success.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { ChatMessagePF2e } from "@module/chat-message/index.ts"; -/** Highlight critical success or failure on d20 rolls */ -export declare const DegreeOfSuccessHighlights: { - listen: (message: ChatMessagePF2e, html: HTMLElement) => void; -}; diff --git a/types/src/module/chat-message/listeners/index.d.ts b/types/src/module/chat-message/listeners/index.d.ts deleted file mode 100644 index 9b2e5b07a..000000000 --- a/types/src/module/chat-message/listeners/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export { ChatCards } from "./cards.ts"; -export { DamageTaken } from "./damage-taken.ts"; -export { DegreeOfSuccessHighlights } from "./degree-of-success.ts"; -export { SetAsInitiative } from "./set-as-initiative.ts"; diff --git a/types/src/module/chat-message/listeners/set-as-initiative.d.ts b/types/src/module/chat-message/listeners/set-as-initiative.d.ts deleted file mode 100644 index 95a4276e9..000000000 --- a/types/src/module/chat-message/listeners/set-as-initiative.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { ChatMessagePF2e } from "../document.ts"; -/** Add a button to set a check roll as the roller's initiative */ -export declare const SetAsInitiative: { - listen: (message: ChatMessagePF2e, li: HTMLElement) => void; -}; diff --git a/types/src/module/chat-message/roll-inspector.d.ts b/types/src/module/chat-message/roll-inspector.d.ts deleted file mode 100644 index e4c49436e..000000000 --- a/types/src/module/chat-message/roll-inspector.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -/// -/// -/// -import { RawDamageDice, RawModifier } from "@actor/modifiers.ts"; -import type { ChatContextFlag, ChatMessagePF2e } from "./index.ts"; - -declare class RollInspector extends Application { - message: ChatMessagePF2e; - constructor(message: ChatMessagePF2e, options?: Partial); - static get defaultOptions(): ApplicationOptions; - get dice(): RawDamageDice[]; - get modifiers(): RawModifier[]; - getData(): ChatRollDetailsData; - activateListeners($html: JQuery): void; - /** Roll options search */ - protected _onSearchFilter(_event: KeyboardEvent, query: string, _rgx: RegExp, html: HTMLElement | null): void; -} -interface ChatRollDetailsData { - context?: ChatContextFlag; - domains: string[]; - modifiers: PreparedModifier[]; - dice: PreparedDice[]; - rollOptions: string[]; - contextualOptions: { - header: string; - options: string[]; - }[]; -} -interface PreparedModifier extends Omit, "critical"> { - value: string; - critical: string | null; -} -interface PreparedDice extends Omit, "critical"> { - value: string; - critical: string | null; -} -export { RollInspector }; diff --git a/types/src/module/collection/actors.d.ts b/types/src/module/collection/actors.d.ts deleted file mode 100644 index 934e22102..000000000 --- a/types/src/module/collection/actors.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorPF2e, PartyPF2e } from "@actor"; -export declare class ActorsPF2e> extends Actors { - /** The world's active party, if one exists */ - get party(): PartyPF2e | null; - /** Overrwriten to omit actors in parties, which are rendered separately */ - _getVisibleTreeContents(): TActor[]; -} diff --git a/types/src/module/data.d.ts b/types/src/module/data.d.ts deleted file mode 100644 index 5e2da480b..000000000 --- a/types/src/module/data.d.ts +++ /dev/null @@ -1,85 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import type * as fields from "types/foundry/common/data/fields.d.ts"; - -/** The size property of creatures and equipment */ -declare const SIZES: readonly ["tiny", "sm", "med", "lg", "huge", "grg"]; -declare const SIZE_SLUGS: readonly ["tiny", "small", "medium", "large", "huge", "gargantuan"]; -type Size = (typeof SIZES)[number]; -/** The rarity trait of creatures, equipment, spells, etc. */ -declare const RARITIES: readonly ["common", "uncommon", "rare", "unique"]; -type Rarity = (typeof RARITIES)[number]; -interface ValuesList { - value: T[]; -} -interface LabeledValueAndMax extends ValueAndMax { - label: string; -} -interface LabeledNumber { - label: string; - value: number; - type: string; -} -interface TypeAndValue { - type: TType; - value: number; -} -interface TraitsWithRarity { - value: T[]; - rarity: Rarity; -} -/** Literal numeric types */ -type ZeroToTwo = 0 | 1 | 2; -type ZeroToThree = ZeroToTwo | 3; -type OneToThree = Exclude; -type TwoToThree = Exclude; -type ZeroToFour = ZeroToThree | 4; -type OneToFour = Exclude; -type ZeroToFive = ZeroToFour | 5; -type OneToFive = OneToFour | Extract; -type ZeroToSix = ZeroToFive | 6; -type OneToSix = Exclude; -type ZeroToTen = ZeroToFive | 6 | 7 | 8 | 9 | 10; -type OneToTen = Exclude; -type ZeroToEleven = ZeroToTen | 11; -interface ValueAndMaybeMax { - value: number; - max?: number; -} -interface ValueAndMax extends Required { -} -declare function goesToEleven(value: number): value is ZeroToEleven; -/** The tracked schema data of actors and items */ -interface NewDocumentMigrationRecord { - version: null; - previous: null; -} -type MigrationDataField = fields.SchemaField<{ - version: fields.NumberField; - previous: fields.SchemaField<{ - foundry: fields.StringField; - system: fields.StringField; - schema: fields.NumberField; - }, { - foundry: string | null; - system: string | null; - schema: number | null; - }, { - foundry: string | null; - system: string | null; - schema: number | null; - }, true, true, true>; -}>; -type MigratedDocumentMigrationRecord = fields.SourcePropFromDataField; -type MigrationRecord = NewDocumentMigrationRecord | MigratedDocumentMigrationRecord; -interface PublicationData { - title: string; - authors: string; - license: "ORC" | "OGL"; - remaster: boolean; -} -export declare const PROFICIENCY_RANKS: readonly ["untrained", "trained", "expert", "master", "legendary"]; -export declare const MATH_FUNCTION_NAMES: Set; -type EnfolderableDocumentPF2e = ActorPF2e | ItemPF2e | Exclude | Item>; -export { RARITIES, SIZES, SIZE_SLUGS, goesToEleven }; -export type { EnfolderableDocumentPF2e, LabeledNumber, LabeledValueAndMax, MigrationDataField, MigrationRecord, OneToFive, OneToFour, OneToSix, OneToTen, OneToThree, PublicationData, Rarity, Size, TraitsWithRarity, TwoToThree, TypeAndValue, ValueAndMax, ValueAndMaybeMax, ValuesList, ZeroToEleven, ZeroToFive, ZeroToFour, ZeroToSix, ZeroToTen, ZeroToThree, ZeroToTwo, }; diff --git a/types/src/module/dc.d.ts b/types/src/module/dc.d.ts deleted file mode 100644 index f1882d31c..000000000 --- a/types/src/module/dc.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { ProficiencyRank } from "@item/base/data/index.ts"; -import { Rarity } from "./data.ts"; -/** - * Implementation of Difficulty Classes https://2e.aonprd.com/Rules.aspx?ID=552 - * and variant rule Proficiency Without Level https://2e.aonprd.com/Rules.aspx?ID=1370 - */ -type NegativeDCAdjustment = "incredibly-easy" | "very-easy" | "easy" | "normal"; -type PositiveDCAdjustment = "normal" | "hard" | "very-hard" | "incredibly-hard"; -type DCAdjustment = NegativeDCAdjustment | PositiveDCAdjustment; -declare function rarityToDCAdjustment(rarity?: Rarity): PositiveDCAdjustment; -declare function adjustDC(dc: number, adjustment?: DCAdjustment): number; -declare function adjustDCByRarity(dc: number, rarity?: Rarity): number; -interface DCOptions { - pwol?: boolean; - rarity?: Rarity; -} -/** Level-based DCs */ -declare function calculateDC(level: number, { pwol, rarity }?: DCOptions): number; -declare function calculateSimpleDC(rank: ProficiencyRank, { pwol }?: DCOptions): number; -declare function calculateSpellDC(spellLevel: number, { pwol }?: DCOptions): number; -/** - * Used to shift DCs around the adjustment table Rarity increases - * the adjustment while Lores reduce it. - * This function determines which adjustment you start from when you - * create a difficulty scale from incredibly easy to very hard - * - * Important: this operation is not associative because - * of the lower and upper bounds - */ -declare function combineDCAdjustments(first: DCAdjustment, second: DCAdjustment): DCAdjustment; -/** - * Given a DC made starting at an adjustment create an array of - * growing difficulties starting from the adjusted position in - * the table at https://2e.aonprd.com/Rules.aspx?ID=555 - */ -declare function createDifficultyScale(dc: number, startAt: DCAdjustment): number[]; -export { adjustDC, adjustDCByRarity, calculateDC, calculateSimpleDC, calculateSpellDC, combineDCAdjustments, createDifficultyScale, rarityToDCAdjustment, }; -export type { DCAdjustment, DCOptions, NegativeDCAdjustment, PositiveDCAdjustment }; diff --git a/types/src/module/doc-helpers.d.ts b/types/src/module/doc-helpers.d.ts deleted file mode 100644 index 404adcf35..000000000 --- a/types/src/module/doc-helpers.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import type { TokenDocumentPF2e } from "@scene"; -import { CombatantPF2e } from "./encounter/index.ts"; -/** Ensure that the import JSON is actually importable and that the data is fully migrated */ -declare function preImportJSON(json: string): Promise; -declare function combatantAndTokenDoc(document: CombatantPF2e | TokenDocumentPF2e): { - combatant: CombatantPF2e | null; - tokenDoc: TokenDocumentPF2e | null; -}; -export { combatantAndTokenDoc, preImportJSON }; diff --git a/types/src/module/encounter/combatant.d.ts b/types/src/module/encounter/combatant.d.ts deleted file mode 100644 index a41705bf3..000000000 --- a/types/src/module/encounter/combatant.d.ts +++ /dev/null @@ -1,68 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { SkillSlug } from "@actor/types.ts"; -import type { TokenDocumentPF2e } from "@scene/index.ts"; -import type { EncounterPF2e } from "./index.ts"; - -declare class CombatantPF2e extends Combatant { - #private; - /** Has this document completed `DataModel` initialization? */ - initialized: boolean; - static createDocuments(this: ConstructorOf, data?: (TDocument | PreCreate)[], operation?: Partial>): Promise; - /** Get the active Combatant for the given actor, creating one if necessary */ - static fromActor(actor: ActorPF2e, render?: boolean, options?: { - combat?: EncounterPF2e; - }): Promise | null>; - get encounter(): TParent; - /** The round this combatant last had a turn */ - get roundOfLastTurn(): number | null; - /** Can the user see this combatant's name? */ - get playersCanSeeName(): boolean; - overridePriority(initiative: number): number | null; - hasHigherInitiative(this: RolledCombatant>, { than }: { - than: RolledCombatant>; - }): boolean; - startTurn(): Promise; - endTurn(options: { - round: number; - }): Promise; - protected _initialize(options?: Record): void; - /** - * If embedded, don't prepare data if the parent hasn't finished initializing. - * @todo remove in V13 - */ - prepareData(): void; - prepareBaseData(): void; - /** Toggle the defeated status of this combatant, applying or removing the overlay icon on its token */ - toggleDefeated({ to, overlayIcon }?: { - to?: boolean | undefined; - overlayIcon?: boolean | undefined; - }): Promise; - /** - * Hide the tracked resource if the combatant represents a non-player-owned actor - * @todo Make this a configurable with a metagame-knowledge setting - */ - updateResource(): { - value: number; - } | null; - _getInitiativeFormula(): string; - /** Toggle the visibility of names to players */ - toggleNameVisibility(): Promise; - protected _onUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, userId: string): void; - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface CombatantPF2e extends Combatant { - flags: CombatantFlags; -} -interface CombatantFlags extends DocumentFlags { - pf2e: { - initiativeStatistic: SkillSlug | "perception" | null; - roundOfLastTurn: number | null; - roundOfLastTurnEnd: number | null; - overridePriority: Record; - }; -} -type RolledCombatant = CombatantPF2e & { - initiative: number; -}; -export { CombatantPF2e }; -export type { CombatantFlags, RolledCombatant }; diff --git a/types/src/module/encounter/document.d.ts b/types/src/module/encounter/document.d.ts deleted file mode 100644 index 2cf96684e..000000000 --- a/types/src/module/encounter/document.d.ts +++ /dev/null @@ -1,72 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { RollInitiativeOptionsPF2e } from "@actor/data/index.ts"; -import { SkillSlug } from "@actor/types.ts"; -import type { ScenePF2e, TokenDocumentPF2e } from "@scene/index.ts"; -import { ThreatRating } from "@scripts/macros/xp/index.ts"; -import type { CombatantPF2e, RolledCombatant } from "./combatant.ts"; - -declare class EncounterPF2e extends Combat { - /** Has this document completed `DataModel` initialization? */ - initialized: boolean; - /** Threat assessment and XP award of this encounter */ - metrics: EncounterMetrics | null; - /** Sort combatants by initiative rolls, falling back to tiebreak priority and then finally combatant ID (random) */ - protected _sortCombatants(a: CombatantPF2e, b: CombatantPF2e): number; - /** A public method to access _sortCombatants in order to get the combatant with the higher initiative */ - getCombatantWithHigherInit(a: RolledCombatant, b: RolledCombatant): RolledCombatant | null; - /** Determine threat rating and XP award for this encounter */ - analyze(): EncounterMetrics | null; - protected _initialize(options?: Record): void; - /** - * Prevent double data preparation of child documents. - * @todo remove in V13 - */ - prepareData(): void; - prepareDerivedData(): void; - /** Exclude orphaned, loot-actor, and minion tokens from combat */ - createEmbeddedDocuments(embeddedName: "Combatant", data: PreCreate[], operation?: Partial>): Promise>[]>; - /** Roll initiative for PCs and NPCs using their prepared roll methods */ - rollInitiative(ids: string[], options?: RollInitiativeOptionsPF2e): Promise; - /** Set the initiative of multiple combatants */ - setMultipleInitiatives(initiatives: SetInitiativeData[]): Promise; - setInitiative(id: string, value: number, statistic?: string): Promise; - /** - * Rerun data preparation for participating actors - * `async` since this is usually called from CRUD hooks, which are called prior to encounter/combatant data resets - */ - resetActors(): Promise; - /** Enable the initiative button on PC sheets */ - protected _onCreate(data: this["_source"], operation: DatabaseCreateOperation, userId: string): void; - /** Call onTurnStart for each rule element on the new turn's actor */ - protected _onUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, userId: string): void; - /** Disable the initiative link on PC sheets if this was the only encounter */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface EncounterPF2e extends Combat { - readonly combatants: foundry.abstract.EmbeddedCollection>; - scene: ScenePF2e; - rollNPC(options: RollInitiativeOptionsPF2e): Promise; -} -interface EncounterMetrics { - threat: ThreatRating; - budget: { - spent: number; - max: number; - partyLevel: number; - }; - award: { - xp: number; - recipients: ActorPF2e[]; - }; - participants: { - party: ActorPF2e[]; - opposition: ActorPF2e[]; - }; -} -interface SetInitiativeData { - id: string; - value: number; - statistic?: SkillSlug | "perception" | null; - overridePriority?: number | null; -} -export { EncounterPF2e }; diff --git a/types/src/module/encounter/index.d.ts b/types/src/module/encounter/index.d.ts deleted file mode 100644 index 5e2e46572..000000000 --- a/types/src/module/encounter/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { EncounterPF2e } from "./document.ts"; -export { CombatantPF2e, type RolledCombatant } from "./combatant.ts"; diff --git a/types/src/module/item/abc/data.d.ts b/types/src/module/item/abc/data.d.ts deleted file mode 100644 index 8f383384d..000000000 --- a/types/src/module/item/abc/data.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { ItemSystemData, ItemSystemSource } from "@item/base/data/system.ts"; -interface ABCFeatureEntryData { - uuid: string; - img: ImageFilePath; - name: string; - level: number; -} -interface ABCSystemSource extends ItemSystemSource { - items: Record; -} -interface ABCSystemData extends Omit, ItemSystemData { -} -export type { ABCFeatureEntryData, ABCSystemData, ABCSystemSource }; diff --git a/types/src/module/item/abc/document.d.ts b/types/src/module/item/abc/document.d.ts deleted file mode 100644 index d19927cb6..000000000 --- a/types/src/module/item/abc/document.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { FeatPF2e, ItemPF2e } from "@item"; -import type { AncestrySource, AncestrySystemData } from "@item/ancestry/data.ts"; -import type { BackgroundSource, BackgroundSystemData } from "@item/background/data.ts"; -import type { ClassSource, ClassSystemData } from "@item/class/data.ts"; -import { Rarity } from "@module/data.ts"; -/** Abstract base class representing a Pathfinder (A)ncestry, (B)ackground, or (C)lass */ -declare abstract class ABCItemPF2e extends ItemPF2e { - get rarity(): Rarity; - /** Returns all items that should also be deleted should this item be deleted */ - getLinkedItems(): FeatPF2e[]; - /** Returns items that should also be added when this item is created */ - createGrantedItems(options?: { - level?: number; - }): Promise[]>; - protected logAutoChange(path: string, value: string | number): void; -} -interface ABCItemPF2e extends ItemPF2e { - readonly _source: AncestrySource | BackgroundSource | ClassSource; - system: AncestrySystemData | BackgroundSystemData | ClassSystemData; -} -export { ABCItemPF2e }; diff --git a/types/src/module/item/abc/index.d.ts b/types/src/module/item/abc/index.d.ts deleted file mode 100644 index 726872a7c..000000000 --- a/types/src/module/item/abc/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ABCItemPF2e } from "./document.ts"; -export * from "./sheet.ts"; -export * from "./data.ts"; diff --git a/types/src/module/item/abc/sheet.d.ts b/types/src/module/item/abc/sheet.d.ts deleted file mode 100644 index 8a2dbae62..000000000 --- a/types/src/module/item/abc/sheet.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -/// -/// -/// -import { AttributeString } from "@actor/types.ts"; -import type { AncestryPF2e, BackgroundPF2e, ClassPF2e } from "@item"; -import { ABCFeatureEntryData } from "@item/abc/data.ts"; -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -declare abstract class ABCSheetPF2e extends ItemSheetPF2e { - #private; - static get defaultOptions(): ItemSheetOptions; - getData(options?: Partial): Promise>; - protected getLocalizedAbilities(traits: { - value: AttributeString[]; - }): { - [key: string]: string; - }; - protected _onDrop(event: DragEvent): Promise; - activateListeners($html: JQuery): void; -} -interface ABCSheetData extends ItemSheetDataPF2e { - features: { - key: string; - item: FeatureSheetData; - }[]; -} -type ABCItem = AncestryPF2e | BackgroundPF2e | ClassPF2e; -interface FeatureSheetData extends ABCFeatureEntryData { - fromWorld: boolean; -} -export { ABCSheetPF2e, type ABCSheetData }; diff --git a/types/src/module/item/ability/data.d.ts b/types/src/module/item/ability/data.d.ts deleted file mode 100644 index 40e63f83d..000000000 --- a/types/src/module/item/ability/data.d.ts +++ /dev/null @@ -1,93 +0,0 @@ -import { ItemSystemModel, ItemSystemSchema } from "@item/base/data/model.ts"; -import type { ActionType, BaseItemSourcePF2e, FrequencyInterval, ItemSystemSource } from "@item/base/data/system.ts"; -import type { OneToThree } from "@module/data.ts"; -import { SlugField } from "@system/schema-data-fields.ts"; -import type { ModelPropFromDataField } from "types/foundry/common/data/fields.d.ts"; -import type { AbilityItemPF2e } from "./document.ts"; -import { AbilityTraitToggles } from "./trait-toggles.ts"; -import type { AbilityTrait, ActionCategory } from "./types.ts"; -import fields = foundry.data.fields; - -type AbilitySource = BaseItemSourcePF2e<"action", AbilitySystemSource>; -declare class AbilitySystemData extends ItemSystemModel { - static LOCALIZATION_PREFIXES: string[]; - traits: AbilityTraits; - frequency: FrequencyData | null; - selfEffect: SelfEffectReference | null; - deathNote: boolean; - static defineSchema(): AbilitySystemSchema; - prepareBaseData(): void; -} -interface AbilitySystemData extends ItemSystemModel, Omit, "description"> { -} -type AbilitySystemSchema = Omit & { - traits: fields.SchemaField<{ - otherTags: fields.ArrayField, string[], string[], true, false, true>; - value: fields.ArrayField, AbilityTrait[], AbilityTrait[], true, false, true>; - toggles: fields.SchemaField<{ - mindshift: fields.SchemaField<{ - selected: fields.BooleanField; - }, { - selected: boolean; - }, { - selected: boolean; - }, false, true, false>; - }, { - mindshift: { - selected: boolean; - } | null | undefined; - }, { - mindshift: { - selected: boolean; - } | null; - }, false, false, false>; - }>; - actionType: fields.SchemaField<{ - value: fields.StringField; - }>; - actions: fields.SchemaField<{ - value: fields.NumberField; - }>; - category: fields.StringField; - deathNote: fields.BooleanField; - frequency: fields.SchemaField<{ - value: fields.NumberField; - max: fields.NumberField; - /** Gap between recharges as an ISO8601 duration, or "day" for daily prep. */ - per: fields.StringField; - }, { - value: number; - max: number; - per: FrequencyInterval; - }, { - value: number; - max: number; - per: FrequencyInterval; - }, false, true, false>; - /** A self-applied effect for simple actions */ - selfEffect: fields.SchemaField<{ - uuid: fields.DocumentUUIDField; - name: fields.StringField; - }, { - uuid: ItemUUID; - name: string; - }, { - uuid: ItemUUID; - name: string; - }, false, true, false>; -}; -type AbilitySystemSource = SourceFromSchema & { - level?: never; - schema?: ItemSystemSource["schema"]; -}; -type FrequencyData = NonNullable>; -type AbilityTraitsSource = AbilitySystemSource["traits"]; -interface AbilityTraits extends AbilityTraitsSource { - toggles: AbilityTraitToggles; -} -type SelfEffectReferenceSource = NonNullable; -interface SelfEffectReference extends SelfEffectReferenceSource { - img?: Maybe; -} -export { AbilitySystemData }; -export type { AbilitySource, AbilitySystemSchema, AbilitySystemSource, SelfEffectReference, SelfEffectReferenceSource }; diff --git a/types/src/module/item/ability/document.d.ts b/types/src/module/item/ability/document.d.ts deleted file mode 100644 index 29f7a93f4..000000000 --- a/types/src/module/item/ability/document.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { CraftingAbility } from "@actor/character/crafting/ability.ts"; -import { ItemPF2e } from "@item"; -import type { ActionCost, Frequency, RawItemChatData } from "@item/base/data/index.ts"; -import type { RangeData } from "@item/types.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { AbilitySource, AbilitySystemData } from "./data.ts"; -import type { AbilityTrait } from "./types.ts"; - -declare class AbilityItemPF2e extends ItemPF2e { - range?: RangeData | null; - isMelee?: boolean; - /** If this ability can craft, what is the crafting ability */ - crafting?: CraftingAbility | null; - static get validTraits(): Record; - get traits(): Set; - get actionCost(): ActionCost | null; - get frequency(): Frequency | null; - prepareBaseData(): void; - prepareActorData(): void; - onPrepareSynthetics(this: AbilityItemPF2e): void; - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - getChatData(this: AbilityItemPF2e, htmlOptions?: EnrichmentOptions): Promise; - protected _preCreate(data: this["_source"], operation: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface AbilityItemPF2e extends ItemPF2e { - readonly _source: AbilitySource; - system: AbilitySystemData; -} -export { AbilityItemPF2e }; diff --git a/types/src/module/item/ability/helpers.d.ts b/types/src/module/item/ability/helpers.d.ts deleted file mode 100644 index 2750b8714..000000000 --- a/types/src/module/item/ability/helpers.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -import type { AbilityItemPF2e, FeatPF2e, SpellPF2e } from "@item"; -import { ItemPF2e } from "@item"; -import { ActionCost } from "@item/base/data/system.ts"; -import type { FeatSheetPF2e } from "@item/feat/sheet.ts"; -import { RangeData } from "@item/types.ts"; -import type { AbilitySystemData, SelfEffectReference } from "./data.ts"; -import type { AbilitySheetPF2e } from "./sheet.ts"; - -interface SourceWithActionData { - system: { - actionType: AbilitySystemData["actionType"]; - actions: AbilitySystemData["actions"]; - }; -} -interface SourceWithFrequencyData { - system: { - frequency?: AbilitySystemData["frequency"]; - }; -} -/** Pre-update helper to ensure actionType and actions are in sync with each other */ -declare function normalizeActionChangeData(document: SourceWithActionData, changed: DeepPartial): void; -/** Adds sheet listeners for modifying frequency */ -declare function activateActionSheetListeners(item: ItemPF2e & SourceWithFrequencyData, html: HTMLElement): void; -declare function getActionCostRollOptions(prefix: string, item: { - actionCost?: ActionCost | null; -}): string[]; -/** Create data for the "self-applied effect" drop zone on an ability or feat sheet. */ -declare function createSelfEffectSheetData(data: Maybe): SelfEffectSheetReference | null; -interface SelfEffectSheetReference extends SelfEffectReference { - id: string | null; - type: string | null; - pack: string | null; -} -/** Save data from an effect item dropped on an ability or feat sheet. Returns true if handled */ -declare function handleSelfEffectDrop(sheet: AbilitySheetPF2e | FeatSheetPF2e, item: ItemPF2e): Promise; -declare function createActionRangeLabel(range: Maybe): string | null; -/** Add the holy/unholy trait to sanctified actions and spells if the owning actor is also holy/unholy */ -declare function processSanctification(item: AbilityItemPF2e | FeatPF2e | SpellPF2e): void; -export { activateActionSheetListeners, createActionRangeLabel, createSelfEffectSheetData, getActionCostRollOptions, handleSelfEffectDrop, normalizeActionChangeData, processSanctification, }; diff --git a/types/src/module/item/ability/index.d.ts b/types/src/module/item/ability/index.d.ts deleted file mode 100644 index 753955424..000000000 --- a/types/src/module/item/ability/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./data.ts"; -export { AbilityItemPF2e } from "./document.ts"; -export { AbilitySheetPF2e } from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/ability/sheet.d.ts b/types/src/module/item/ability/sheet.d.ts deleted file mode 100644 index 5f29c32a9..000000000 --- a/types/src/module/item/ability/sheet.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -/// -/// -/// -import type { AbilityItemPF2e } from "@item/ability/document.ts"; -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import type { AbilitySystemSchema, SelfEffectReference } from "./data.ts"; - -declare class AbilitySheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - protected get validTraits(): Record; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - _onDrop(event: DragEvent): Promise; -} -interface ActionSheetData extends ItemSheetDataPF2e { - fields: AbilitySystemSchema; - actionTypes: typeof CONFIG.PF2E.actionTypes; - actionsNumber: typeof CONFIG.PF2E.actionsNumber; - actionTraits: typeof CONFIG.PF2E.actionTraits; - frequencies: typeof CONFIG.PF2E.frequencies; - proficiencies: typeof CONFIG.PF2E.proficiencyLevels; - selfEffect: SelfEffectReference | null; -} -export { AbilitySheetPF2e }; diff --git a/types/src/module/item/ability/trait-toggles.d.ts b/types/src/module/item/ability/trait-toggles.d.ts deleted file mode 100644 index 92e0c22c6..000000000 --- a/types/src/module/item/ability/trait-toggles.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import type { AbilityItemPF2e, FeatPF2e } from "@item"; -import { DamageAlteration } from "@module/rules/rule-element/damage-alteration/alteration.ts"; -/** A helper class to handle toggleable ability traits */ -declare class AbilityTraitToggles { - parent: AbilityItemPF2e | FeatPF2e; - mindshift: { - selected: boolean; - } | null; - constructor(item: AbilityItemPF2e | FeatPF2e); - get item(): AbilityItemPF2e | FeatPF2e; - get operableTraits(): "mindshift"[]; - getDamageAlterations(): DamageAlteration[]; - getSheetData(): TraitToggleViewData[]; - update({ trait, selected }: { - trait: "mindshift"; - selected: boolean; - }): Promise; -} -interface TraitToggleViewData { - trait: string; - selected: boolean; - icon: string; - classes: string; - tooltip: string; -} -export { AbilityTraitToggles, type TraitToggleViewData }; diff --git a/types/src/module/item/ability/types.d.ts b/types/src/module/item/ability/types.d.ts deleted file mode 100644 index 86e5c7ee0..000000000 --- a/types/src/module/item/ability/types.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -type ActionCategory = keyof ConfigPF2e["PF2E"]["actionCategories"]; -type AbilityTrait = keyof ConfigPF2e["PF2E"]["actionTraits"]; -export type { AbilityTrait, ActionCategory }; diff --git a/types/src/module/item/abstract-effect/data.d.ts b/types/src/module/item/abstract-effect/data.d.ts deleted file mode 100644 index 28e9bee0a..000000000 --- a/types/src/module/item/abstract-effect/data.d.ts +++ /dev/null @@ -1,101 +0,0 @@ -import type { AttributeString } from "@actor/types.ts"; -import type { ItemSystemData, ItemSystemSource, ItemTraitsNoRarity } from "@item/base/data/system.ts"; -import type { MagicTradition } from "@item/spell/index.ts"; -import type { CheckRoll } from "@system/check/index.ts"; -import type { EffectTrait } from "./types.ts"; -interface AbstractEffectSystemSource extends ItemSystemSource { - traits: EffectTraits; - /** Whether this effect originated from a spell */ - fromSpell?: boolean; - expired?: boolean; -} -interface AbstractEffectSystemData extends ItemSystemData { - traits: EffectTraits; - /** Whether this effect originated from a spell */ - fromSpell: boolean; -} -interface EffectBadgeBaseSource { - labels?: string[]; -} -interface EffectBadgeBase extends EffectBadgeBaseSource { - label: string | null; -} -interface EffectBadgeCounterSource extends EffectBadgeBaseSource { - type: "counter"; - min?: number; - max?: number; - value: number; - loop?: boolean; -} -interface EffectBadgeCounter extends EffectBadgeCounterSource, EffectBadgeBase { - min: number; - max: number; -} -interface EffectTraits extends ItemTraitsNoRarity { -} -/** A static value, including the result of a formula badge */ -interface EffectBadgeValueSource extends EffectBadgeBaseSource { - type: "value"; - value: number; - reevaluate?: { - /** The type of event that reevaluation should occur */ - event: BadgeReevaluationEventType; - /** The formula of this badge when it was of a "formula" type */ - formula: string; - /** The initial value of this badge */ - initial?: number; - } | null; - min?: never; - max?: never; -} -interface EffectBadgeValue extends Omit, EffectBadgeBase { - min: number; - max: number; -} -interface EffectBadgeFormulaSource extends EffectBadgeBaseSource { - type: "formula"; - value: string; - evaluate?: boolean; - reevaluate?: BadgeReevaluationEventType | null; - min?: never; - max?: never; -} -type BadgeReevaluationEventType = "initiative-roll" | "turn-start" | "turn-end"; -interface EffectBadgeFormula extends EffectBadgeFormulaSource, EffectBadgeBase { -} -interface EffectContextData { - origin: { - actor: ActorUUID; - token: TokenDocumentUUID | null; - item: ItemUUID | null; - spellcasting: EffectContextSpellcastingData | null; - rollOptions?: string[]; - }; - target: { - actor: ActorUUID; - token: TokenDocumentUUID | null; - } | null; - roll: Pick | null; -} -interface EffectContextSpellcastingData { - attribute: { - type: AttributeString; - mod: number; - }; - tradition: MagicTradition | null; -} -interface EffectAuraData { - slug: string; - origin: ActorUUID; - removeOnExit: boolean; -} -type EffectBadgeSource = EffectBadgeCounterSource | EffectBadgeValueSource | EffectBadgeFormulaSource; -type EffectBadge = EffectBadgeCounter | EffectBadgeValue | EffectBadgeFormula; -type TimeUnit = "rounds" | "minutes" | "hours" | "days"; -type EffectExpiryType = "turn-start" | "turn-end" | "round-end"; -interface DurationData { - value: number; - unit: TimeUnit | "unlimited" | "encounter"; - expiry: EffectExpiryType | null; -} -export type { AbstractEffectSystemData, AbstractEffectSystemSource, BadgeReevaluationEventType, DurationData, EffectAuraData, EffectBadge, EffectBadgeCounter, EffectBadgeFormulaSource, EffectBadgeSource, EffectBadgeValueSource, EffectContextData, EffectExpiryType, EffectTraits, TimeUnit, }; diff --git a/types/src/module/item/abstract-effect/document.d.ts b/types/src/module/item/abstract-effect/document.d.ts deleted file mode 100644 index e1299c69c..000000000 --- a/types/src/module/item/abstract-effect/document.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import type { AfflictionSource, AfflictionSystemData } from "@item/affliction/data.ts"; -import type { ConditionSource, ConditionSystemData } from "@item/condition/data.ts"; -import type { EffectSource, EffectSystemData } from "@item/effect/data.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import type { EffectBadge } from "./data.ts"; -import type { EffectTrait } from "./types.ts"; -/** Base effect type for all PF2e effects including conditions and afflictions */ -declare abstract class AbstractEffectPF2e extends ItemPF2e { - /** A normalized version of the slug that shows in roll options, removing certain prefixes */ - rollOptionSlug: string; - static get validTraits(): Record; - abstract get badge(): EffectBadge | null; - /** Get the actor from which this effect originated */ - get origin(): ActorPF2e | null; - get traits(): Set; - /** If false, the AbstractEffect should be hidden from the user unless they are a GM */ - get isIdentified(): boolean; - get isLocked(): boolean; - /** Whether this effect originated from a spell */ - get fromSpell(): boolean; - get totalDuration(): number; - get remainingDuration(): { - expired: boolean; - remaining: number; - }; - abstract increase(): Promise; - abstract decrease(): Promise; - getRollOptions(prefix: string, options?: { - includeGranter?: boolean; - }): string[]; - prepareBaseData(): void; - /** Set a self roll option for this effect */ - prepareActorData(): void; - /** Log whether this effect originated from a spell */ - protected _preCreate(data: this["_source"], operation: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _onCreate(data: this["_source"], operation: DatabaseCreateOperation, userId: string): void; - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; - /** Attempts to show floaty text and update condition automation, depending on settings */ - private handleChange; -} -interface AbstractEffectPF2e extends ItemPF2e { - readonly _source: AfflictionSource | ConditionSource | EffectSource; - system: AfflictionSystemData | ConditionSystemData | EffectSystemData; -} -export { AbstractEffectPF2e }; diff --git a/types/src/module/item/abstract-effect/helpers.d.ts b/types/src/module/item/abstract-effect/helpers.d.ts deleted file mode 100644 index 234c3c216..000000000 --- a/types/src/module/item/abstract-effect/helpers.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { DurationData } from "./data.ts"; -import type { AbstractEffectPF2e } from "./document.ts"; -export declare function calculateRemainingDuration(effect: AbstractEffectPF2e, durationData: DurationData | { - unit: "unlimited"; -}): { - expired: boolean; - remaining: number; -}; diff --git a/types/src/module/item/abstract-effect/index.d.ts b/types/src/module/item/abstract-effect/index.d.ts deleted file mode 100644 index dec09c5b8..000000000 --- a/types/src/module/item/abstract-effect/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { AbstractEffectPF2e } from "./document.ts"; -export * from "./data.ts"; diff --git a/types/src/module/item/abstract-effect/types.d.ts b/types/src/module/item/abstract-effect/types.d.ts deleted file mode 100644 index 1ab3b419d..000000000 --- a/types/src/module/item/abstract-effect/types.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -type EffectTrait = keyof typeof CONFIG.PF2E.effectTraits; -export type { EffectTrait }; diff --git a/types/src/module/item/abstract-effect/values.d.ts b/types/src/module/item/abstract-effect/values.d.ts deleted file mode 100644 index 6039835ac..000000000 --- a/types/src/module/item/abstract-effect/values.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -/** Duration units for affliction and effect */ -declare const DURATION_UNITS: Readonly>; -export { DURATION_UNITS }; diff --git a/types/src/module/item/affliction/data.d.ts b/types/src/module/item/affliction/data.d.ts deleted file mode 100644 index 4c2027237..000000000 --- a/types/src/module/item/affliction/data.d.ts +++ /dev/null @@ -1,62 +0,0 @@ -import { SaveType } from "@actor/types.ts"; -import { AbstractEffectSystemData, AbstractEffectSystemSource, DurationData, EffectAuraData, EffectContextData, TimeUnit } from "@item/abstract-effect/index.ts"; -import { BaseItemSourcePF2e, ItemFlagsPF2e } from "@item/base/data/system.ts"; -import { ConditionSlug } from "@item/condition/index.ts"; -import { DamageCategoryUnique, DamageType } from "@system/damage/index.ts"; -type AfflictionSource = BaseItemSourcePF2e<"affliction", AfflictionSystemSource> & { - flags: DeepPartial; -}; -type AfflictionFlags = ItemFlagsPF2e & { - pf2e: { - aura?: EffectAuraData; - }; -}; -interface AfflictionSystemSource extends AbstractEffectSystemSource { - level: { - value: number; - }; - save: { - type: SaveType; - value: number; - }; - stage: number; - stages: Record; - onset?: AfflictionOnset; - duration: DurationData; - start: { - value: number; - initiative: number | null; - }; - /** Origin, target, and roll context of the action that spawned this effect */ - context: EffectContextData | null; -} -interface AfflictionSystemData extends Omit, Omit { -} -interface AfflictionOnset { - /** If true, the affliction is currently in its onset phase */ - active: boolean; - value: number; - unit: TimeUnit; -} -interface AfflictionDamage { - formula: string; - type: DamageType; - category?: DamageCategoryUnique | null; -} -interface AfflictionStageData { - damage: Record; - conditions: Record; - effects: AfflictionEffectData[]; - duration: Omit; -} -interface AfflictionConditionData { - slug: ConditionSlug; - value?: number; - /** Whether the condition should disappear when the stage changes. Defaults to true */ - linked?: boolean; -} -interface AfflictionEffectData { - uuid: ItemUUID; -} -type AfflictionExpiryType = "turn-end"; -export type { AfflictionConditionData, AfflictionDamage, AfflictionExpiryType, AfflictionFlags, AfflictionOnset, AfflictionSource, AfflictionStageData, AfflictionSystemData, AfflictionSystemSource, }; diff --git a/types/src/module/item/affliction/document.d.ts b/types/src/module/item/affliction/document.d.ts deleted file mode 100644 index 306d8c07f..000000000 --- a/types/src/module/item/affliction/document.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import { AbstractEffectPF2e, EffectBadgeCounter } from "@item/abstract-effect/index.ts"; -import { UserPF2e } from "@module/user/index.ts"; -import { AfflictionDamageTemplate, DamageDamageContext } from "@system/damage/index.ts"; -import { AfflictionFlags, AfflictionSource, AfflictionStageData, AfflictionSystemData } from "./data.ts"; -declare class AfflictionPF2e extends AbstractEffectPF2e { - constructor(source: object, context?: DocumentConstructionContext); - get badge(): EffectBadgeCounter; - get stage(): number; - get stageData(): AfflictionStageData | null; - get maxStage(): number; - increase(): Promise; - /** Decreases the affliction stage, deleting if reduced to 0 even if an onset exists */ - decrease(): Promise; - /** Returns true if the affliction is currently in the onset phase */ - get onset(): boolean; - get onsetDuration(): number; - get remainingStageDuration(): { - expired: boolean; - remaining: number; - }; - prepareBaseData(): void; - /** Retrieves the damage for a specific stage */ - getStageDamage(stage: number): AfflictionDamage | null; - /** Run all updates that need to occur whenever the stage changes */ - protected handleStageChange(): Promise; - getLinkedItems(): ItemPF2e[]; - createStageMessage(): Promise; - /** Set the start time and initiative roll of a newly created effect */ - protected _preCreate(data: this["_source"], operation: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; - protected _onCreate(data: AfflictionSource, operation: DatabaseCreateOperation, userId: string): void; - _onUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, userId: string): void; - rollRecovery(): Promise; - prepareActorData(): void; -} -interface AfflictionPF2e extends AbstractEffectPF2e { - flags: AfflictionFlags; - readonly _source: AfflictionSource; - system: AfflictionSystemData; -} -interface AfflictionDamage { - template: AfflictionDamageTemplate; - context: DamageDamageContext; -} -export { AfflictionPF2e }; diff --git a/types/src/module/item/affliction/index.d.ts b/types/src/module/item/affliction/index.d.ts deleted file mode 100644 index de48a489c..000000000 --- a/types/src/module/item/affliction/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { AfflictionPF2e } from "./document.ts"; -export { AfflictionSheetPF2e } from "./sheet.ts"; -export * from "./data.ts"; diff --git a/types/src/module/item/affliction/sheet.d.ts b/types/src/module/item/affliction/sheet.d.ts deleted file mode 100644 index 4a5e27a02..000000000 --- a/types/src/module/item/affliction/sheet.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -/// -/// -/// -import { type AfflictionPF2e, type ConditionPF2e } from "@item"; -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import { DamageCategoryUnique } from "@system/damage/types.ts"; -import type { AfflictionConditionData, AfflictionStageData } from "./data.ts"; -declare class AfflictionSheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - getData(options?: Partial): Promise; - protected prepareStages(): Promise>; - activateListeners($html: JQuery): void; - _onDrop(event: DragEvent): Promise; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface AfflictionSheetData extends ItemSheetDataPF2e { - conditionTypes: Omit; - damageTypes: ConfigPF2e["PF2E"]["damageTypes"]; - damageCategories: Pick; - durationUnits: Omit; - onsetUnits: Omit; - saves: ConfigPF2e["PF2E"]["saves"]; - stages: Record; - stageOptions: Record; -} -interface AfflictionStageSheetData extends AfflictionStageData { - stage: number; - conditions: Record; - effects: { - uuid: ItemUUID; - img?: string; - name?: string; - }[]; -} -interface AfflictionConditionSheetData extends AfflictionConditionData { - document: ConditionPF2e | null; -} -export { AfflictionSheetPF2e }; diff --git a/types/src/module/item/ancestry/data.d.ts b/types/src/module/item/ancestry/data.d.ts deleted file mode 100644 index dfac03bc1..000000000 --- a/types/src/module/item/ancestry/data.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { CreatureTrait, Language } from "@actor/creature/index.ts"; -import { AttributeString } from "@actor/types.ts"; -import { ABCSystemData, ABCSystemSource } from "@item/abc/index.ts"; -import { BaseItemSourcePF2e, ItemTraits } from "@item/base/data/system.ts"; -import { Size, TraitsWithRarity, ValuesList } from "@module/data.ts"; -type AncestrySource = BaseItemSourcePF2e<"ancestry", AncestrySystemSource>; -type CreatureTraits = TraitsWithRarity; -type AncestryTraits = ItemTraits; -interface AncestrySystemSource extends ABCSystemSource { - traits: AncestryTraits; - additionalLanguages: { - count: number; - value: string[]; - custom: string; - }; - /** If present, use the alternate ancestry boosts, which are two free */ - alternateAncestryBoosts?: AttributeString[]; - boosts: Record; - flaws: Record; - voluntary?: { - boost?: AttributeString | null; - flaws: AttributeString[]; - }; - hp: number; - languages: ValuesList; - speed: number; - size: Size; - reach: number; - vision: "normal" | "darkvision" | "low-light-vision"; - level?: never; -} -interface AncestrySystemData extends Omit, Omit { -} -export type { AncestrySource, AncestrySystemData, AncestrySystemSource, AncestryTraits, CreatureTraits }; diff --git a/types/src/module/item/ancestry/document.d.ts b/types/src/module/item/ancestry/document.d.ts deleted file mode 100644 index ff0edc77f..000000000 --- a/types/src/module/item/ancestry/document.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { ActorPF2e, CharacterPF2e } from "@actor"; -import { CreatureTrait } from "@actor/creature/types.ts"; -import { AttributeString } from "@actor/types.ts"; -import { ABCItemPF2e, type FeatPF2e } from "@item"; -import { Size } from "@module/data.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import { AncestrySource, AncestrySystemData } from "./data.ts"; -declare class AncestryPF2e extends ABCItemPF2e { - static get validTraits(): Record; - get traits(): Set; - get hitPoints(): number; - get speed(): number; - get size(): Size; - /** Returns all boosts enforced by this ancestry normally */ - get lockedBoosts(): AttributeString[]; - /** Returns all flaws enforced by this ancestry normally */ - get lockedFlaws(): AttributeString[]; - /** Include all ancestry features in addition to any with the expected location ID */ - getLinkedItems(): FeatPF2e[]; - prepareBaseData(): void; - /** Prepare a character's data derived from their ancestry */ - prepareActorData(this: AncestryPF2e): void; - /** Ensure certain fields are positive integers. */ - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface AncestryPF2e extends ABCItemPF2e { - readonly _source: AncestrySource; - system: AncestrySystemData; -} -export { AncestryPF2e }; diff --git a/types/src/module/item/ancestry/index.d.ts b/types/src/module/item/ancestry/index.d.ts deleted file mode 100644 index 7dd22fc74..000000000 --- a/types/src/module/item/ancestry/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { AncestryPF2e } from "./document.ts"; -export { AncestrySheetPF2e } from "./sheet.ts"; -export * from "./data.ts"; diff --git a/types/src/module/item/ancestry/sheet.d.ts b/types/src/module/item/ancestry/sheet.d.ts deleted file mode 100644 index 97e6dd6ea..000000000 --- a/types/src/module/item/ancestry/sheet.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { ABCSheetData, ABCSheetPF2e } from "@item/abc/sheet.ts"; -import type { AncestryPF2e } from "@item/ancestry/index.ts"; -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -declare class AncestrySheetPF2e extends ABCSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - getData(options?: Partial): Promise; -} -interface AncestrySheetData extends ABCSheetData { - selectedBoosts: Record>; - selectedFlaws: Record>; - sizes: SheetOptions; - languages: SheetOptions; - additionalLanguages: SheetOptions; - visionTypeOptions: FormSelectOption[]; -} -export { AncestrySheetPF2e }; diff --git a/types/src/module/item/armor/data.d.ts b/types/src/module/item/armor/data.d.ts deleted file mode 100644 index c35f2530b..000000000 --- a/types/src/module/item/armor/data.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -import { PhysicalItemSource } from "@item/base/data/index.ts"; -import { - BasePhysicalItemSource, - Investable, - ItemMaterialSource, - PhysicalItemTraits, - PhysicalSystemData, - PhysicalSystemSource, -} from "@item/physical/data.ts"; -import { WornUsage } from "@item/physical/usage.ts"; -import { ZeroToFour } from "@module/data.ts"; -import { ArmorCategory, ArmorGroup, ArmorPropertyRuneType, ArmorTrait, BaseArmorType, OtherArmorTag } from "./index.ts"; - -type ArmorSource = BasePhysicalItemSource<"armor", ArmorSystemSource>; -interface ArmorSystemSource extends Investable { - traits: ArmorTraits; - category: ArmorCategory; - group: ArmorGroup | null; - baseItem: BaseArmorType | null; - acBonus: number; - strength: number | null; - dexCap: number; - checkPenalty: number; - speedPenalty: number; - runes: ArmorRuneSource; - /** Details of specific magic armor, storing the material and rune state when toggled on */ - specific: SpecificArmorData | null; - /** Doubly-embedded adjustments, attachments, talismans etc. */ - subitems: PhysicalItemSource[]; - /** Usage for armor isn't stored. */ - readonly usage?: never; -} -type ArmorRuneSource = { - potency: ZeroToFour; - resilient: ZeroToFour; - property: ArmorPropertyRuneType[]; -}; -/** A weapon can either be unspecific or specific along with baseline material and runes */ -type SpecificArmorData = { - material: ItemMaterialSource; - runes: ArmorRuneSource; -}; -interface ArmorSystemData extends Omit, Omit, "baseItem" | "subitems" | "traits"> { - runes: ArmorRuneData; - /** Armor is always worn in the "armor" slot. */ - usage: WornUsage; - stackGroup: null; -} -type SourceOmission = "apex" | "bulk" | "description" | "hp" | "identification" | "material" | "price" | "temporary" | "usage"; -interface ArmorTraits extends PhysicalItemTraits { - otherTags: OtherArmorTag[]; -} -interface ArmorRuneData extends ArmorRuneSource { - effects: ArmorPropertyRuneType[]; -} -export type { ArmorSource, ArmorSystemData, ArmorSystemSource, SpecificArmorData }; diff --git a/types/src/module/item/armor/document.d.ts b/types/src/module/item/armor/document.d.ts deleted file mode 100644 index b61b324e4..000000000 --- a/types/src/module/item/armor/document.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { RawItemChatData } from "@item/base/data/index.ts"; -import { PhysicalItemPF2e } from "@item/physical/index.ts"; -import { UserPF2e } from "@module/user/index.ts"; -import { ArmorSource, ArmorSystemData } from "./data.ts"; -import { ArmorCategory, ArmorGroup, ArmorTrait, BaseArmorType } from "./types.ts"; -declare class ArmorPF2e extends PhysicalItemPF2e { - static get validTraits(): Record; - get isBarding(): boolean; - get baseType(): BaseArmorType | null; - get group(): ArmorGroup | null; - get category(): ArmorCategory; - get dexCap(): number; - get strength(): number | null; - get checkPenalty(): number; - get speedPenalty(): number; - get acBonus(): number; - get isSpecific(): boolean; - /** Generate a list of strings for use in predication */ - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - isStackableWith(item: PhysicalItemPF2e): boolean; - prepareBaseData(): void; - prepareDerivedData(): void; - prepareActorData(this: ArmorPF2e): void; - getChatData(this: ArmorPF2e, htmlOptions?: EnrichmentOptions): Promise; - generateUnidentifiedName({ typeOnly }?: { - typeOnly?: boolean; - }): string; - /** Ensure correct shield/actual-armor usage */ - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface ArmorPF2e extends PhysicalItemPF2e { - readonly _source: ArmorSource; - system: ArmorSystemData; -} -export { ArmorPF2e }; diff --git a/types/src/module/item/armor/index.d.ts b/types/src/module/item/armor/index.d.ts deleted file mode 100644 index 7e54f2661..000000000 --- a/types/src/module/item/armor/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./data.ts"; -export { ArmorPF2e } from "./document.ts"; -export * from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/armor/sheet.d.ts b/types/src/module/item/armor/sheet.d.ts deleted file mode 100644 index 44f993ed6..000000000 --- a/types/src/module/item/armor/sheet.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import { CoinsPF2e, MaterialSheetData, PhysicalItemSheetData, PhysicalItemSheetPF2e, RUNE_DATA } from "@item/physical/index.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import type { ArmorCategory, ArmorGroup, ArmorPF2e, BaseArmorType, SpecificArmorData } from "./index.ts"; -declare class ArmorSheetPF2e extends PhysicalItemSheetPF2e { - getData(options?: Partial): Promise; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface ArmorSheetData extends PhysicalItemSheetData { - abpEnabled: boolean; - basePrice: CoinsPF2e; - baseTypes: Record; - categories: Record; - groups: Record; - otherTags: SheetOptions; - preciousMaterials: MaterialSheetData; - propertyRuneSlots: PropertyRuneSheetSlot[]; - runeTypes: typeof RUNE_DATA.armor; - specificMagicData: SpecificArmorData; -} -interface PropertyRuneSheetSlot { - slug: string | null; - label: string | null; - disabled: boolean; -} -export { ArmorSheetPF2e }; diff --git a/types/src/module/item/armor/types.d.ts b/types/src/module/item/armor/types.d.ts deleted file mode 100644 index 4044d7025..000000000 --- a/types/src/module/item/armor/types.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import type { ARMOR_CATEGORIES, ARMOR_GROUPS, ARMOR_PROPERTY_RUNE_TYPES } from "./values.ts"; - -type ArmorCategory = (typeof ARMOR_CATEGORIES)[number]; -type ArmorGroup = (typeof ARMOR_GROUPS)[number]; -type ArmorPropertyRuneType = SetElement; -type ArmorTrait = keyof typeof CONFIG.PF2E.armorTraits; -type BaseArmorType = keyof typeof CONFIG.PF2E.baseArmorTypes; -type OtherArmorTag = "shoddy"; -type ResilientRuneType = "" | "resilient" | "greaterResilient" | "majorResilient" | "mythicResilient"; -export type { ArmorCategory, ArmorGroup, ArmorPropertyRuneType, ArmorTrait, BaseArmorType, OtherArmorTag, ResilientRuneType, }; diff --git a/types/src/module/item/armor/values.d.ts b/types/src/module/item/armor/values.d.ts deleted file mode 100644 index 357bf42d7..000000000 --- a/types/src/module/item/armor/values.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -declare const ARMOR_CATEGORIES: readonly ["unarmored", "light", "medium", "heavy", "light-barding", "heavy-barding"]; -declare const ARMOR_GROUPS: readonly ["chain", "cloth", "composite", "leather", "plate", "skeletal", "wood"]; -declare const ARMOR_PROPERTY_RUNE_TYPES: Set<"shadow" | "ethereal" | "portable" | "acidResistant" | "advancing" | "aimAiding" | "antimagic" | "assisting" | "bitter" | "coldResistant" | "deathless" | "electricityResistant" | "energyAdaptive" | "fireResistant" | "fortification" | "glamered" | "gliding" | "greaterAcidResistant" | "greaterAdvancing" | "greaterColdResistant" | "greaterDread" | "greaterElectricityResistant" | "greaterFireResistant" | "greaterFortification" | "greaterInvisibility" | "greaterQuenching" | "greaterReady" | "greaterShadow" | "greaterSlick" | "greaterStanching" | "greaterSwallowSpike" | "greaterWinged" | "immovable" | "implacable" | "invisibility" | "lesserDread" | "magnetizing" | "majorQuenching" | "majorShadow" | "majorSlick" | "majorStanching" | "majorSwallowSpike" | "malleable" | "misleading" | "moderateDread" | "quenching" | "raiment" | "ready" | "rockBraced" | "sinisterKnight" | "sizeChanging" | "slick" | "soaring" | "stanching" | "swallowSpike" | "trueQuenching" | "trueStanching" | "winged">; -export { ARMOR_CATEGORIES, ARMOR_GROUPS, ARMOR_PROPERTY_RUNE_TYPES }; diff --git a/types/src/module/item/background/data.d.ts b/types/src/module/item/background/data.d.ts deleted file mode 100644 index da826b707..000000000 --- a/types/src/module/item/background/data.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { AttributeString, SkillSlug } from "@actor/types.ts"; -import { ABCSystemData, ABCSystemSource } from "@item/abc/data.ts"; -import { BaseItemSourcePF2e, ItemTraits } from "@item/base/data/system.ts"; -import { BackgroundTrait } from "./types.ts"; -type BackgroundSource = BaseItemSourcePF2e<"background", BackgroundSystemSource>; -interface BackgroundSystemSource extends ABCSystemSource { - traits: BackgroundTraits; - boosts: Record; - trainedSkills: { - value: SkillSlug[]; - lore: string[]; - }; - level?: never; -} -type BackgroundTraits = ItemTraits; -interface BackgroundSystemData extends Omit, Omit { -} -export type { BackgroundSource, BackgroundSystemData, BackgroundSystemSource }; diff --git a/types/src/module/item/background/document.d.ts b/types/src/module/item/background/document.d.ts deleted file mode 100644 index 987f8c627..000000000 --- a/types/src/module/item/background/document.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { ActorPF2e, CharacterPF2e } from "@actor"; -import { ABCItemPF2e } from "@item"; -import { BackgroundSource, BackgroundSystemData } from "./data.ts"; -import { BackgroundTrait } from "./types.ts"; -declare class BackgroundPF2e extends ABCItemPF2e { - get traits(): Set; - /** Set a skill feat granted by a GrantItem RE as one of this background's configured items */ - prepareSiblingData(this: BackgroundPF2e): void; - prepareActorData(this: BackgroundPF2e): void; -} -interface BackgroundPF2e extends ABCItemPF2e { - readonly _source: BackgroundSource; - system: BackgroundSystemData; -} -export { BackgroundPF2e }; diff --git a/types/src/module/item/background/index.d.ts b/types/src/module/item/background/index.d.ts deleted file mode 100644 index 0900a0248..000000000 --- a/types/src/module/item/background/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { BackgroundPF2e } from "./document.ts"; -export { BackgroundSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/background/sheet.d.ts b/types/src/module/item/background/sheet.d.ts deleted file mode 100644 index 7e33b6889..000000000 --- a/types/src/module/item/background/sheet.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -/// -/// -/// -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import { ABCSheetData, ABCSheetPF2e } from "../abc/sheet.ts"; -import type { BackgroundPF2e } from "./document.ts"; -export declare class BackgroundSheetPF2e extends ABCSheetPF2e { - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface BackgroundSheetData extends ABCSheetData { - trainedSkills: SheetOptions; - selectedBoosts: Record>; -} -export {}; diff --git a/types/src/module/item/background/types.d.ts b/types/src/module/item/background/types.d.ts deleted file mode 100644 index f984e71e4..000000000 --- a/types/src/module/item/background/types.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -type BackgroundTrait = "persona-flirt" | "persona-guardian" | "persona-leader" | "persona-scholar" | "persona-scoundrel" | "persona-underdog" | "persona-warrior" | "persona-wildcard" | "pervasive-magic"; -export type { BackgroundTrait }; diff --git a/types/src/module/item/base/data/index.d.ts b/types/src/module/item/base/data/index.d.ts deleted file mode 100644 index 64dc6697c..000000000 --- a/types/src/module/item/base/data/index.d.ts +++ /dev/null @@ -1,54 +0,0 @@ -import type { AbilitySource } from "@item/ability/data.ts"; -import type { AfflictionSource } from "@item/affliction/data.ts"; -import type { AncestrySource } from "@item/ancestry/data.ts"; -import type { ArmorSource } from "@item/armor/data.ts"; -import type { BackgroundSource } from "@item/background/data.ts"; -import type { BookSource } from "@item/book/data.ts"; -import type { CampaignFeatureSource } from "@item/campaign-feature/data.ts"; -import type { ClassSource } from "@item/class/data.ts"; -import type { ConditionSource } from "@item/condition/data.ts"; -import type { ConsumableSource } from "@item/consumable/data.ts"; -import type { ContainerSource } from "@item/container/data.ts"; -import type { DeitySource } from "@item/deity/data.ts"; -import type { EffectSource } from "@item/effect/data.ts"; -import type { EquipmentSource } from "@item/equipment/data.ts"; -import type { FeatSource } from "@item/feat/data.ts"; -import type { HeritageSource } from "@item/heritage/data.ts"; -import type { KitSource } from "@item/kit/data.ts"; -import type { LoreSource } from "@item/lore.ts"; -import type { MeleeSource } from "@item/melee/data.ts"; -import type { PhysicalItemType } from "@item/physical/types.ts"; -import type { ShieldSource } from "@item/shield/data.ts"; -import type { SpellSource } from "@item/spell/data.ts"; -import type { SpellcastingEntrySource } from "@item/spellcasting-entry/data.ts"; -import type { TreasureSource } from "@item/treasure/data.ts"; -import type { WeaponSource } from "@item/weapon/data.ts"; -import type { PROFICIENCY_RANKS, Rarity } from "@module/data.ts"; -import { ItemDescriptionData } from "./system.ts"; - -type ProficiencyRank = (typeof PROFICIENCY_RANKS)[number]; -type NonPhysicalItemType = "action" | "affliction" | "ancestry" | "background" | "campaignFeature" | "class" | "condition" | "deity" | "effect" | "feat" | "heritage" | "kit" | "lore" | "melee" | "spell" | "spellcastingEntry"; -type ItemType = NonPhysicalItemType | PhysicalItemType; -type PhysicalItemSource = ArmorSource | BookSource | ConsumableSource | ContainerSource | EquipmentSource | ShieldSource | TreasureSource | WeaponSource; -type ItemSourcePF2e = PhysicalItemSource | AbilitySource | AfflictionSource | AncestrySource | BackgroundSource | CampaignFeatureSource | ClassSource | ConditionSource | DeitySource | EffectSource | FeatSource | HeritageSource | KitSource | LoreSource | MeleeSource | SpellSource | SpellcastingEntrySource; -type MagicItemSource = Exclude; -interface RawItemChatData { - [key: string]: unknown; - description: ItemDescriptionData; - rarity?: { - slug: Rarity; - label: string; - description: string; - } | null; - traits?: TraitChatData[]; - properties?: string[]; -} -interface TraitChatData { - value: string; - label: string; - description?: string; - mystified?: boolean; - excluded?: boolean; -} -export type { ActionCost, ActionType, Frequency, FrequencyInterval, FrequencySource, ItemFlagsPF2e, ItemSystemData, } from "./system.ts"; -export type { AbilitySource, AncestrySource, ArmorSource, BackgroundSource, BookSource, ClassSource, ConditionSource, ConsumableSource, ContainerSource, DeitySource, EffectSource, EquipmentSource, FeatSource, ItemSourcePF2e, ItemType, KitSource, LoreSource, MagicItemSource, MeleeSource, NonPhysicalItemType, PhysicalItemSource, ProficiencyRank, RawItemChatData, ShieldSource, SpellcastingEntrySource, SpellSource, TraitChatData, TreasureSource, WeaponSource, }; diff --git a/types/src/module/item/base/data/model.d.ts b/types/src/module/item/base/data/model.d.ts deleted file mode 100644 index 6f4f9e038..000000000 --- a/types/src/module/item/base/data/model.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { MigrationDataField } from "@module/data.ts"; -import type { RuleElementSource } from "@module/rules/index.ts"; -import { SlugField } from "@system/schema-data-fields.ts"; -import type { - ArrayField, - BooleanField, - ObjectField, - SchemaField, - StringField, -} from "types/foundry/common/data/fields.d.ts"; -import type { ItemPF2e } from "../document.ts"; -import type { ItemDescriptionData } from "./system.ts"; - -declare abstract class ItemSystemModel extends foundry.abstract - .TypeDataModel { - static LOCALIZATION_PREFIXES: string[]; - static defineSchema(): ItemSystemSchema; -} -interface ItemSystemModel extends foundry.abstract.TypeDataModel { - description: ItemDescriptionData; -} -type ItemSystemSchema = { - description: SchemaField<{ - value: StringField; - gm: StringField; - }>; - publication: SchemaField<{ - title: StringField; - authors: StringField; - license: StringField<"OGL" | "ORC", "OGL" | "ORC", true, false, true>; - remaster: BooleanField; - }>; - rules: ArrayField, RuleElementSource[], RuleElementSource[], true, false, true>; - slug: SlugField; - traits: SchemaField<{ - otherTags: ArrayField, string[], string[], true, false, true>; - }>; - _migration: MigrationDataField; -}; -export { ItemSystemModel, type ItemSystemSchema }; diff --git a/types/src/module/item/base/data/system.d.ts b/types/src/module/item/base/data/system.d.ts deleted file mode 100644 index 1513d50d0..000000000 --- a/types/src/module/item/base/data/system.d.ts +++ /dev/null @@ -1,114 +0,0 @@ -import type { MigrationRecord, OneToThree, PublicationData, Rarity } from "@module/data.ts"; -import type { RuleElementSource } from "@module/rules/index.ts"; -import type { Predicate } from "@system/predication.ts"; -import type * as fields from "types/foundry/common/data/fields.d.ts"; -import type { ItemTrait } from "../types.ts"; -import type { ItemType } from "./index.ts"; - -type BaseItemSourcePF2e = foundry.documents.ItemSource & { - flags: ItemSourceFlagsPF2e; -}; -type ActionType = keyof typeof CONFIG.PF2E.actionTypes; -interface ActionCost { - type: Exclude; - value: OneToThree | null; -} -interface ItemTraits { - value: T[]; - rarity: Rarity; - otherTags: string[]; -} -interface ItemTraitsNoRarity extends Omit, "rarity"> { - rarity?: never; -} -interface RarityTraitAndOtherTags { - readonly value?: never; - rarity: Rarity; - otherTags: string[]; -} -interface OtherTagsOnly { - readonly value?: never; - rarity?: never; - otherTags: string[]; -} -interface ItemFlagsPF2e extends DocumentFlags { - pf2e: { - rulesSelections: Record; - itemGrants: Record; - grantedBy: ItemGrantData | null; - [key: string]: unknown; - }; -} -interface ItemSourceFlagsPF2e extends DocumentFlags { - pf2e?: { - rulesSelections?: Record; - itemGrants?: Record; - grantedBy?: ItemGrantSource | null; - [key: string]: unknown; - }; -} -interface ItemGrantSource { - /** The ID of a granting or granted item */ - id: string; - /** The action taken when the user attempts to delete the item referenced by `id` */ - onDelete?: ItemGrantDeleteAction; -} -type ItemGrantData = Required; -interface ItemGranterSource extends ItemGrantSource { - /** Is this granted item visually nested under its granter: only applies to feats and features */ - nested?: boolean | null; -} -interface ItemGranterData extends Required { -} -type ItemGrantDeleteAction = "cascade" | "detach" | "restrict"; -type ItemSystemSource = { - level?: { - value: number; - }; - description: ItemDescriptionSource; - traits: ItemTraits | ItemTraitsNoRarity | RarityTraitAndOtherTags | OtherTagsOnly; - rules: RuleElementSource[]; - /** A non-unique but human-readable identifier for this item */ - slug: string | null; - /** Information concerning the publication from which this item originates */ - publication: PublicationData; - /** A record of this actor's current world schema version as well a log of the last migration to occur */ - _migration: MigrationRecord; - /** Legacy location of `MigrationRecord` */ - schema?: object; -}; -interface ItemDescriptionSource { - gm: string; - value: string; -} -interface ItemSystemData extends Omit { - description: ItemDescriptionData; -} -interface ItemDescriptionData extends ItemDescriptionSource { - /** Additional text added by rule elements */ - addenda: { - label: string; - contents: AlteredDescriptionContent[]; - }[]; - override: AlteredDescriptionContent[] | null; -} -interface AlteredDescriptionContent { - title: string | null; - text: string; - divider: boolean; - predicate: Predicate; -} -type FrequencyInterval = keyof typeof CONFIG.PF2E.frequencies; -interface FrequencySource { - value?: number; - max: number; - /** Gap between recharges as an ISO8601 duration, or "day" for daily prep. */ - per: FrequencyInterval; -} -type ItemSchemaPF2e = Omit & { - system: fields.TypeDataField; -}; -interface Frequency extends FrequencySource { - value: number; -} -export type { ActionCost, ActionType, BaseItemSourcePF2e, Frequency, FrequencyInterval, FrequencySource, ItemDescriptionData, ItemFlagsPF2e, ItemGrantData, ItemGrantDeleteAction, ItemGrantSource, ItemSchemaPF2e, ItemSourceFlagsPF2e, ItemSystemData, ItemSystemSource, ItemTrait, ItemTraits, ItemTraitsNoRarity, OtherTagsOnly, RarityTraitAndOtherTags, }; diff --git a/types/src/module/item/base/data/values.d.ts b/types/src/module/item/base/data/values.d.ts deleted file mode 100644 index bfdcc9fec..000000000 --- a/types/src/module/item/base/data/values.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -declare class MystifiedTraits { - private static mystifiedTraits; - static compile(): void; - /** Exclude any mystified traits from the provided trait list */ - static has(trait: string): boolean; -} -declare const ITEM_CARRY_TYPES: readonly ["attached", "dropped", "held", "stowed", "worn"]; -declare const RANGE_TRAITS: readonly ["range-5", "range-10", "range-15", "range-20", "range-25", "range-30", "range-40", "range-50", "range-60", "range-70", "range-80", "range-90", "range-100", "range-110", "range-120", "range-140", "range-150", "range-160", "range-170", "range-180", "range-190", "range-200", "range-210", "range-220", "range-230", "range-240", "range-250", "range-260", "range-270", "range-280", "range-290", "range-300", "range-310", "range-320", "range-500", "range-increment-5", "range-increment-10", "range-increment-15", "range-increment-20", "range-increment-25", "range-increment-30", "range-increment-35", "range-increment-40", "range-increment-50", "range-increment-60", "range-increment-70", "range-increment-75", "range-increment-80", "range-increment-90", "range-increment-100", "range-increment-110", "range-increment-120", "range-increment-130", "range-increment-140", "range-increment-150", "range-increment-160", "range-increment-170", "range-increment-180", "range-increment-190", "range-increment-200", "range-increment-210", "range-increment-220", "range-increment-230", "range-increment-240", "range-increment-250", "range-increment-260", "range-increment-270", "range-increment-280", "range-increment-290", "range-increment-300", "range-increment-310", "range-increment-320"]; -export { ITEM_CARRY_TYPES, MystifiedTraits, RANGE_TRAITS }; diff --git a/types/src/module/item/base/document.d.ts b/types/src/module/item/base/document.d.ts deleted file mode 100644 index f2706cb4e..000000000 --- a/types/src/module/item/base/document.d.ts +++ /dev/null @@ -1,147 +0,0 @@ -/// -import { ActorPF2e } from "@actor/base.ts"; -import type { PhysicalItemPF2e } from "@item"; -import { ItemOriginFlag } from "@module/chat-message/data.ts"; -import { ChatMessagePF2e } from "@module/chat-message/document.ts"; -import { RuleElementOptions, RuleElementPF2e } from "@module/rules/index.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import { EnrichmentOptionsPF2e } from "@system/text-editor.ts"; -import { ItemInstances } from "../types.ts"; -import type { - ItemFlagsPF2e, - ItemSourcePF2e, - ItemSystemData, - ItemType, - RawItemChatData, - TraitChatData, -} from "./data/index.ts"; -import type { ItemTrait } from "./data/system.ts"; -import type { ItemSheetPF2e } from "./sheet/sheet.ts"; - -/** The basic `Item` subclass for the system */ -declare class ItemPF2e extends Item { - /** Has this document completed `DataModel` initialization? */ - initialized: boolean; - /** Additional item roll options set by rule elements */ - rollOptions: Set; - /** The item that granted this item, if any */ - grantedBy: ItemPF2e | null; - static getDefaultArtwork(itemData: foundry.documents.ItemSource): { - img: ImageFilePath; - }; - /** Traits an item of this type can have */ - static get validTraits(): Partial>; - /** Prepared rule elements from this item */ - rules: RuleElementPF2e[]; - /** The sluggified name of the item **/ - get slug(): string | null; - /** The UUID of the item from which this one was copied (or is identical to if a compendium item) **/ - get sourceId(): ItemUUID | null; - /** The recorded schema version of this item, updated after each data migration */ - get schemaVersion(): number | null; - get description(): string; - /** Check whether this item is in-memory-only on an actor rather than being a world item or embedded and stored */ - get inMemoryOnly(): boolean; - /** - * Set a source ID on a dropped embedded item without a full data reset - * This is currently necessary as of 10.291 due to system measures to prevent premature data preparation - */ - static fromDropData(this: ConstructorOf, data: object, options?: Record): Promise; - /** Check this item's type (or whether it's one among multiple types) without a call to `instanceof` */ - isOfType(...types: T[]): this is ItemInstances[T]; - isOfType(type: "physical"): this is PhysicalItemPF2e; - isOfType(...types: T[]): this is T extends "physical" ? PhysicalItemPF2e : T extends ItemType ? ItemInstances[T] : never; - /** Redirect the deletion of any owned items to ActorPF2e#deleteEmbeddedDocuments for a single workflow */ - delete(operation?: Partial>): Promise; - /** Generate a list of strings for use in predication */ - getRollOptions(prefix?: string, { includeGranter }?: { - includeGranter?: boolean | undefined; - }): string[]; - getRollData(): NonNullable; - /** - * Create a chat card for this item and either return the message or send it to the chat log. Many cards contain - * follow-up options for attack rolls, effect application, etc. - */ - toMessage(event?: Maybe, options?: { - rollMode?: RollMode | "roll"; - create?: boolean; - data?: Record; - }): Promise; - /** A shortcut to `item.toMessage(..., { create: true })`, kept for backward compatibility */ - toChat(event?: JQuery.TriggeredEvent): Promise; - protected _initialize(options?: Record): void; - /** - * Never prepare data except as part of `DataModel` initialization. If embedded, don't prepare data if the parent is - * not yet initialized. See https://github.com/foundryvtt/foundryvtt/issues/7987 - * @todo remove in V13 - */ - prepareData(): void; - /** Ensure the presence of the pf2e flag scope with default properties and values */ - prepareBaseData(): void; - prepareRuleElements(options?: Omit): RuleElementPF2e[]; - /** Pull the latest system data from the source compendium and replace this item's with it */ - refreshFromCompendium(options?: RefreshFromCompendiumParams): Promise; - getOriginData(): ItemOriginFlag; - /** - * Internal method that transforms data into something that can be used for chat. - * Currently renders description text using enrichHTML. - */ - protected processChatData(htmlOptions: EnrichmentOptionsPF2e | undefined, chatData: RawItemChatData): Promise; - getChatData(htmlOptions?: EnrichmentOptionsPF2e, _rollOptions?: Record): Promise; - traitChatData(dictionary?: Record, traits?: ItemTrait[]): TraitChatData[]; - /** Don't allow the user to create a condition or spellcasting entry from the sidebar. */ - static createDialog(this: ConstructorOf, data?: Record, context?: { - parent?: TDocument["parent"]; - pack?: Collection | null; - types?: ItemType[]; - } & Partial): Promise; - /** Assess and pre-process this JSON data, ensuring it's importable and fully migrated */ - importFromJSON(json: string): Promise; - /** Include the item type along with data from upstream */ - toDragData(): { - type: string; - itemType: string; - [key: string]: unknown; - }; - static createDocuments(this: ConstructorOf, data?: (TDocument | PreCreate)[], operation?: Partial>): Promise; - static deleteDocuments(this: ConstructorOf, ids?: string[], operation?: Partial>): Promise; - protected _preCreate(data: this["_source"], options: DatabaseCreateOperation, user: UserPF2e): Promise; - /** Keep `TextEditor` and anything else up to no good from setting this item's description to `null` */ - protected _preUpdate(changed: DeepPartial, options: DatabaseUpdateOperation, user: UserPF2e): Promise; - /** Call onCreate rule-element hooks */ - protected _onCreate(data: ItemSourcePF2e, operation: DatabaseCreateOperation, userId: string): void; - /** Refresh the Item Directory if this item isn't embedded */ - protected _onUpdate(data: DeepPartial, operation: DatabaseUpdateOperation, userId: string): void; - /** Call onDelete rule-element hooks */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; - /** To be overridden by subclasses to extend the HTML string that will become part of the embed */ - protected embedHTMLString(_config: DocumentHTMLEmbedConfig, _options: EnrichmentOptions): string; - _buildEmbedHTML(config: DocumentHTMLEmbedConfig, options: EnrichmentOptions): Promise; -} -interface ItemPF2e extends Item { - constructor: typeof ItemPF2e; - flags: ItemFlagsPF2e; - readonly _source: ItemSourcePF2e; - system: ItemSystemData; - _sheet: ItemSheetPF2e | null; - get sheet(): ItemSheetPF2e; - prepareSiblingData?(this: ItemPF2e): void; - prepareActorData?(this: ItemPF2e): void; - /** Optional data-preparation callback executed after rule-element synthetics are prepared */ - onPrepareSynthetics?(this: ItemPF2e): void; - /** Returns items that should also be added when this item is created */ - createGrantedItems?(options?: object): Promise; - /** Returns items that should also be deleted should this item be deleted */ - getLinkedItems?(): ItemPF2e[]; -} -/** A `Proxy` to to get Foundry to construct `ItemPF2e` subclasses */ -declare const ItemProxyPF2e: typeof ItemPF2e; -interface RefreshFromCompendiumParams { - /** Whether to overwrite the name if it is different */ - name?: boolean; - /** Whether to notify the user that the item has been refreshed */ - notify?: boolean; - /** Whether to run the update: if false, a clone with updated source is returned. */ - update?: boolean; -} -export { ItemPF2e, ItemProxyPF2e }; diff --git a/types/src/module/item/base/sheet/codemirror.d.ts b/types/src/module/item/base/sheet/codemirror.d.ts deleted file mode 100644 index b9fd946a1..000000000 --- a/types/src/module/item/base/sheet/codemirror.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { json } from "@codemirror/lang-json"; -import { Extension } from "@codemirror/state"; -import { EditorView } from "codemirror"; -import type { DataSchema } from "types/foundry/common/data/fields.d.ts"; -export declare const CodeMirror: { - EditorView: typeof EditorView; - basicSetup: Extension; - json: typeof json; - jsonLinter: () => Extension; - keybindings: Extension; - /** All language and autocomplete extensions for rule element editing */ - ruleElementExtensions: (options: RuleElementOptions) => Extension[]; -}; -interface RuleElementOptions { - schema?: DataSchema; -} -export {}; diff --git a/types/src/module/item/base/sheet/index.d.ts b/types/src/module/item/base/sheet/index.d.ts deleted file mode 100644 index c864e2b39..000000000 --- a/types/src/module/item/base/sheet/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { ItemSheetPF2e } from "./sheet.ts"; -export type { ItemSheetDataPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/base/sheet/rule-element-form/actor-traits.d.ts b/types/src/module/item/base/sheet/rule-element-form/actor-traits.d.ts deleted file mode 100644 index 638ef1c7a..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/actor-traits.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { RuleElementForm } from "./base.ts"; -declare class ActorTraitsForm extends RuleElementForm { - template: string; - activateListeners(html: HTMLElement): void; -} -export { ActorTraitsForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/aura.d.ts b/types/src/module/item/base/sheet/rule-element-form/aura.d.ts deleted file mode 100644 index 127d7d42b..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/aura.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import type { ItemPF2e } from "@item"; -import type { AuraRuleElement, AuraRuleElementSchema } from "@module/rules/rule-element/aura.ts"; -import { RuleElementForm, RuleElementFormSheetData, RuleElementFormTabData } from "./base.ts"; -declare class AuraForm extends RuleElementForm { - #private; - template: string; - protected tabs: RuleElementFormTabData; - get effectsArray(): AuraEffectSource[]; - protected getInitialValue(): object; - activateListeners(html: HTMLElement): void; - getData(): Promise; - protected onDrop(event: DragEvent, element: HTMLElement): Promise; - updateItem(updates: Partial | Record): Promise; - updateObject(source: AuraRuleElementSource & Partial>): void; -} -interface AuraSheetData extends RuleElementFormSheetData { - affectsOptions: Record; - effects: AuraRuleElementSource["effects"] & { - item: ClientDocument | CompendiumIndexData | null; - }[]; - borderColor: HexColorString | null; - highlightColor: HexColorString; - saveTypes: ConfigPF2e["PF2E"]["saves"]; - isImageFile: boolean; -} -type AuraEffectSource = AuraRuleElementSource["effects"][number]; -type AuraRuleElementSource = SourceFromSchema; -export { AuraForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/base.d.ts b/types/src/module/item/base/sheet/rule-element-form/base.d.ts deleted file mode 100644 index 61c657256..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/base.d.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { ItemPF2e } from "@item"; -import { type RuleElementPF2e, type RuleElementSource } from "@module/rules/index.ts"; -import { RuleElementSchema } from "@module/rules/rule-element/data.ts"; -import type { LaxSchemaField } from "@system/schema-data-fields.ts"; -import type { ItemSheetPF2e } from "../index.ts"; -interface RuleElementFormOptions { - sheet: ItemSheetPF2e; - index: number; - rule: TSource; - object: TObject; -} -/** Base Rule Element form handler. Form handlers intercept sheet events to support new UI */ -declare class RuleElementForm { - #private; - template: string; - sheet: ItemSheetPF2e; - index: number; - rule: TSource; - object: TObject; - schema: LaxSchemaField | null; - element: HTMLElement; - /** Tab configuration data */ - protected tabs: RuleElementFormTabData | null; - /** Base proprety path for the contained rule */ - get basePath(): string; - constructor(options: RuleElementFormOptions); - initialize(options: RuleElementFormOptions): void; - get item(): ItemPF2e; - get fieldIdPrefix(): string; - /** Returns the initial value of the schema. Arrays are stripped due to how they're handled in forms */ - protected getInitialValue(): object; - getData(): Promise>; - render(): Promise; - /** - * Helper to update the item with the new rule data. - * This function exists because array updates in foundry are currently clunky - */ - updateItem(updates: Partial | Record): Promise; - activateListeners(html: HTMLElement): void; - protected onDrop(event: DragEvent, _element: HTMLElement): Promise; - protected activateTab(html: HTMLElement, tabName: Maybe): void; - updateObject(source: TSource & Partial>): void; -} -interface RuleElementFormSheetData extends Omit, "sheet"> { - item: ItemPF2e; - label: string; - /** A prefix for use in label-input/select pairs */ - fieldIdPrefix: string; - recognized: boolean; - basePath: string; - fields: RuleElementSchema | undefined; - /** A collection of additional handlebars functions */ - form: Record; - validationFailures: string[]; -} -interface RuleElementFormTabData { - /** Valid tab names for this form */ - names: string[]; - /** The display style applied to active tabs */ - displayStyle: "block" | "flex" | "grid"; -} -export { RuleElementForm }; -export type { RuleElementFormOptions, RuleElementFormSheetData, RuleElementFormTabData }; diff --git a/types/src/module/item/base/sheet/rule-element-form/fast-healing.d.ts b/types/src/module/item/base/sheet/rule-element-form/fast-healing.d.ts deleted file mode 100644 index e77403a7c..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/fast-healing.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import type { FastHealingRuleElement, FastHealingSource, FastHealingType } from "@module/rules/rule-element/fast-healing.ts"; -import { RuleElementForm, RuleElementFormSheetData } from "./base.ts"; -declare class FastHealingForm extends RuleElementForm { - template: string; - activateListeners(html: HTMLElement): void; - getData(): Promise; - updateObject(source: FastHealingSource): void; -} -interface FastHealingSheetData extends RuleElementFormSheetData { - types: Record; -} -export { FastHealingForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/flat-modifier.d.ts b/types/src/module/item/base/sheet/rule-element-form/flat-modifier.d.ts deleted file mode 100644 index 781173608..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/flat-modifier.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { ModifierType } from "@actor/modifiers.ts"; -import type { FlatModifierRuleElement, FlatModifierSource } from "@module/rules/rule-element/flat-modifier.ts"; -import type { DamageCategoryUnique } from "@system/damage/types.ts"; -import { RuleElementForm, RuleElementFormSheetData } from "./base.ts"; - -/** Form handler for the flat modifier rule element */ -declare class FlatModifierForm extends RuleElementForm { - template: string; - get isDamage(): boolean; - activateListeners(html: HTMLElement): void; - getData(): Promise; - updateObject(formData: Partial & Partial>): void; -} -interface FlatModifierFormSheetData extends RuleElementFormSheetData { - selectorIsArray: boolean; - abilities: typeof CONFIG.PF2E.abilities; - types: Record; - damageCategories: Record; - isDamage: boolean; - criticalOptions: FormSelectOption[]; -} -export { FlatModifierForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/grant-item.d.ts b/types/src/module/item/base/sheet/rule-element-form/grant-item.d.ts deleted file mode 100644 index aebc9de41..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/grant-item.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import type { GrantItemRuleElement, GrantItemSource } from "@module/rules/rule-element/grant-item/rule-element.ts"; -import { RuleElementForm, RuleElementFormSheetData } from "./base.ts"; -/** Form handler for the GrantItem rule element */ -declare class GrantItemForm extends RuleElementForm { - template: string; - getData(): Promise; - updateObject(ruleData: DeepPartial & Partial>): void; -} -interface GrantItemFormSheetData extends RuleElementFormSheetData { - granted: ClientDocument | null; -} -export { GrantItemForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/index.d.ts b/types/src/module/item/base/sheet/rule-element-form/index.d.ts deleted file mode 100644 index 1670f10a1..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { RuleElementForm } from "./base.ts"; -declare const RULE_ELEMENT_FORMS: Partial>>; -export { RULE_ELEMENT_FORMS, RuleElementForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/multiple-attack-penalty.d.ts b/types/src/module/item/base/sheet/rule-element-form/multiple-attack-penalty.d.ts deleted file mode 100644 index 234d071f8..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/multiple-attack-penalty.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { RuleElementSource } from "@module/rules/index.ts"; -import { MultipleAttackPenaltyRuleElement } from "@module/rules/rule-element/multiple-attack-penalty.ts"; -import { RuleElementForm } from "./base.ts"; -declare class MultipleAttackPenaltyForm extends RuleElementForm { - template: string; -} -export { MultipleAttackPenaltyForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/roll-note.d.ts b/types/src/module/item/base/sheet/rule-element-form/roll-note.d.ts deleted file mode 100644 index c8d256aa3..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/roll-note.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { NoteRESource, RollNoteRuleElement } from "@module/rules/rule-element/roll-note.ts"; -import { RuleElementForm, RuleElementFormSheetData } from "./base.ts"; -/** Form handler for the RollNote rule element */ -declare class RollNoteForm extends RuleElementForm { - template: string; - getData(): Promise; - activateListeners(html: HTMLElement): void; - updateObject(ruleData: Partial>): void; -} -interface RollNoteFormSheetData extends RuleElementFormSheetData { - selectorIsArray: boolean; -} -export { RollNoteForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/token-image.d.ts b/types/src/module/item/base/sheet/rule-element-form/token-image.d.ts deleted file mode 100644 index 7feadb76f..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/token-image.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { RuleElementSource } from "@module/rules/index.ts"; -import type { TokenImageRuleElement } from "@module/rules/rule-element/token-image.ts"; -import { RuleElementForm, RuleElementFormSheetData, RuleElementFormTabData } from "./base.ts"; - -declare class TokenImageForm extends RuleElementForm { - template: string; - protected tabs: RuleElementFormTabData; - getData(): Promise; - activateListeners(html: HTMLElement): void; - updateObject(source: RuleElementSource & Partial>): void; -} -interface TokenImageFormSheetData extends RuleElementFormSheetData { - alphaEnabled: boolean; - scaleEnabled: boolean; -} -export { TokenImageForm }; diff --git a/types/src/module/item/base/sheet/rule-element-form/token-light.d.ts b/types/src/module/item/base/sheet/rule-element-form/token-light.d.ts deleted file mode 100644 index 1a7c2ae10..000000000 --- a/types/src/module/item/base/sheet/rule-element-form/token-light.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { TokenLightRuleElement, TokenLightRuleSource } from "@module/rules/rule-element/token-light.ts"; -import { RuleElementForm, RuleElementFormSheetData, RuleElementFormTabData } from "./base.ts"; -declare class TokenLightForm extends RuleElementForm { - template: string; - protected tabs: RuleElementFormTabData; - getData(): Promise; -} -interface TokenLightSheetData extends RuleElementFormSheetData { - colorationTechniques: typeof AdaptiveLightingShader.SHADER_TECHNIQUES; - light: TokenLightRuleSource["value"]; - lightAnimations: Record; -} -export { TokenLightForm }; diff --git a/types/src/module/item/base/sheet/sheet.d.ts b/types/src/module/item/base/sheet/sheet.d.ts deleted file mode 100644 index 4c4955645..000000000 --- a/types/src/module/item/base/sheet/sheet.d.ts +++ /dev/null @@ -1,79 +0,0 @@ -/// -/// -/// -import { ItemPF2e } from "@item"; -import { Rarity } from "@module/data.ts"; -import { RuleElementSource } from "@module/rules/index.ts"; -import { SheetOptions, TagifyEntry } from "@module/sheet/helpers.ts"; -import type * as TinyMCE from "tinymce"; - -declare class ItemSheetPF2e extends ItemSheet { - #private; - constructor(item: TItem, options?: Partial); - static get defaultOptions(): ItemSheetOptions; - get editingRuleElement(): RuleElementSource | null; - protected get validTraits(): Record; - /** An alternative to super.getData() for subclasses that don't need this class's `getData` */ - getData(options?: Partial): Promise>; - protected onTagSelector(anchor: HTMLAnchorElement): void; - /** Get NPC attack effect options */ - protected getAttackEffectOptions(): Record; - activateEditor(name: string, options?: EditorCreateOptions, initialContent?: string): Promise; - close(options?: { - force?: boolean; - }): Promise; - protected _configureProseMirrorPlugins(name: string, options: { - remove?: boolean; - }): Record; - activateListeners($html: JQuery): void; - /** Add button to refresh from compendium if setting is enabled. */ - protected _getHeaderButtons(): ApplicationHeaderButton[]; - protected _canDragDrop(_selector: string): boolean; - protected _updateObject(event: Event, formData: Record): Promise; - /** Overriden _render to maintain focus on tagify elements */ - protected _render(force?: boolean, options?: RenderOptions): Promise; -} -interface ItemSheetDataPF2e extends ItemSheetData { - /** The item type label that shows at the top right (for example, "Feat" for "Feat 6") */ - itemType: string | null; - showTraits: boolean; - /** The sidebar's current title */ - sidebarTitle: string; - sidebarTemplate: string | null; - detailsTemplate: string; - item: TItem; - data: TItem["system"]; - /** The leading part of IDs used for label-input/select matching */ - fieldRootId: string; - /** Legacy value of the above */ - fieldIdPrefix: string; - enrichedContent: Record; - isPhysical: boolean; - user: { - isGM: boolean; - }; - enabledRulesUI: boolean; - ruleEditing: boolean; - rarity: Rarity | null; - rarities: typeof CONFIG.PF2E.rarityTraits; - traits: SheetOptions | null; - traitTagifyData: TagifyEntry[] | null; - otherTagsTagifyData: TagifyEntry[] | null; - rules: { - selection: { - selected: string | null; - types: Record; - }; - elements: { - template: string; - }[]; - }; - publicationLicenses: FormSelectOption[]; - /** Lore only, will be removed later */ - proficiencyRanks: typeof CONFIG.PF2E.proficiencyLevels; -} -interface ItemSheetOptions extends DocumentSheetOptions { - hasSidebar: boolean; -} -export { ItemSheetPF2e }; -export type { ItemSheetDataPF2e, ItemSheetOptions }; diff --git a/types/src/module/item/base/types.d.ts b/types/src/module/item/base/types.d.ts deleted file mode 100644 index 6fa682033..000000000 --- a/types/src/module/item/base/types.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type { CreatureTrait } from "@actor/creature/types.ts"; -import type { AbilityTrait } from "@item/ability/types.ts"; -import type { KingmakerTrait } from "@item/campaign-feature/types.ts"; -import type { NPCAttackTrait } from "@item/melee/types.ts"; -import type { PhysicalItemTrait } from "@item/physical/types.ts"; - -type ItemTrait = AbilityTrait | CreatureTrait | PhysicalItemTrait | NPCAttackTrait | KingmakerTrait; -export type { ItemTrait }; diff --git a/types/src/module/item/book/data.d.ts b/types/src/module/item/book/data.d.ts deleted file mode 100644 index b99b9fc8d..000000000 --- a/types/src/module/item/book/data.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { EquipmentTrait } from "@item/equipment/data.ts"; -import type { BasePhysicalItemSource, PhysicalItemTraits, PhysicalSystemData, PhysicalSystemSource } from "@item/physical/data.ts"; -type BookSource = BasePhysicalItemSource<"book", BookSystemSource>; -type BookTraits = PhysicalItemTraits; -interface BookSystemSource extends PhysicalSystemSource { - traits: BookTraits; - category: "formula" | "spell"; - capacity: number; - contents: ItemUUID[]; - subitems?: never; -} -interface BookSystemData extends Omit, Omit { -} -type SourceOmission = "apex" | "bulk" | "description" | "hp" | "identification" | "material" | "price" | "temporary" | "usage"; -export type { BookSource, BookSystemData }; diff --git a/types/src/module/item/book/document.d.ts b/types/src/module/item/book/document.d.ts deleted file mode 100644 index 93cc26603..000000000 --- a/types/src/module/item/book/document.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { PhysicalItemPF2e } from "@item"; -import type { EquipmentTrait } from "@item/equipment/types.ts"; -import type { BookSource, BookSystemData } from "./data.ts"; -declare class BookPF2e extends PhysicalItemPF2e { - static get validTraits(): Record; -} -interface BookPF2e extends PhysicalItemPF2e { - readonly _source: BookSource; - system: BookSystemData; -} -export { BookPF2e }; diff --git a/types/src/module/item/book/index.d.ts b/types/src/module/item/book/index.d.ts deleted file mode 100644 index cf85bf33f..000000000 --- a/types/src/module/item/book/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export type { BookSource } from "./data.ts"; -export { BookPF2e } from "./document.ts"; -export { BookSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/book/sheet.d.ts b/types/src/module/item/book/sheet.d.ts deleted file mode 100644 index 2df18eed1..000000000 --- a/types/src/module/item/book/sheet.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { PhysicalItemSheetPF2e } from "@item/physical/sheet.ts"; -import type { BookPF2e } from "./document.ts"; -export declare class BookSheetPF2e extends PhysicalItemSheetPF2e { -} diff --git a/types/src/module/item/campaign-feature/data.d.ts b/types/src/module/item/campaign-feature/data.d.ts deleted file mode 100644 index dfbdd9838..000000000 --- a/types/src/module/item/campaign-feature/data.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { ActionType, BaseItemSourcePF2e, Frequency, FrequencySource, ItemSystemData, ItemSystemSource, ItemTraits } from "@item/base/data/system.ts"; -import { OneToThree } from "@module/data.ts"; -import { KingmakerCategory, KingmakerTrait } from "./types.ts"; -type CampaignFeatureSource = BaseItemSourcePF2e<"campaignFeature", CampaignFeatureSystemSource>; -interface PrerequisiteTagData { - value: string; -} -interface CampaignFeatureSystemSource extends ItemSystemSource { - campaign: "kingmaker"; - /** The category of feat or feature of this item */ - category: KingmakerCategory; - /** Level only exists for feat and feature types */ - level?: { - value: number; - }; - traits: KingmakerTraits; - actionType: { - value: ActionType; - }; - actions: { - value: OneToThree | null; - }; - prerequisites: { - value: PrerequisiteTagData[]; - }; - location: string | null; - frequency?: FrequencySource; -} -interface CampaignFeatureSystemData extends Omit, Omit { - frequency?: Frequency; -} -type KingmakerTraits = ItemTraits; -export type { CampaignFeatureSource, CampaignFeatureSystemData, CampaignFeatureSystemSource, KingmakerTraits, PrerequisiteTagData, }; diff --git a/types/src/module/item/campaign-feature/document.d.ts b/types/src/module/item/campaign-feature/document.d.ts deleted file mode 100644 index 780f48419..000000000 --- a/types/src/module/item/campaign-feature/document.d.ts +++ /dev/null @@ -1,42 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { FeatGroup } from "@actor/character/feats/index.ts"; -import { ItemPF2e } from "@item"; -import { ActionCost, Frequency } from "@item/base/data/index.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import { CampaignFeatureSource, CampaignFeatureSystemData } from "./data.ts"; -import type { BehaviorType, KingmakerCategory, KingmakerTrait } from "./types.ts"; - -declare class CampaignFeaturePF2e extends ItemPF2e { - group: FeatGroup | null; - grants: CampaignFeaturePF2e[]; - behavior: BehaviorType; - levelLabel: string; - /** The item that granted this feature */ - granter: CampaignFeaturePF2e | null; - static get validTraits(): Record; - get category(): KingmakerCategory; - /** Returns the level if the feature type supports it */ - get level(): number | null; - get traits(): Set; - get actionCost(): ActionCost | null; - get frequency(): Frequency | null; - get isAction(): boolean; - get isFeature(): boolean; - get isFeat(): boolean; - prepareBaseData(): void; - /** Set a self roll option for this feat(ure). Skip for actions */ - prepareActorData(this: CampaignFeaturePF2e): void; - prepareSiblingData(): void; - /** Generate a list of strings for use in predication */ - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - protected _preCreate(data: this["_source"], operation: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; - protected embedHTMLString(_config: DocumentHTMLEmbedConfig, _options: EnrichmentOptions): string; -} -interface CampaignFeaturePF2e extends ItemPF2e { - readonly _source: CampaignFeatureSource; - system: CampaignFeatureSystemData; -} -export { CampaignFeaturePF2e }; diff --git a/types/src/module/item/campaign-feature/index.d.ts b/types/src/module/item/campaign-feature/index.d.ts deleted file mode 100644 index fd7c2c79b..000000000 --- a/types/src/module/item/campaign-feature/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./data.ts"; -export { CampaignFeaturePF2e } from "./document.ts"; -export { CampaignFeatureSheetPF2e } from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/campaign-feature/sheet.d.ts b/types/src/module/item/campaign-feature/sheet.d.ts deleted file mode 100644 index 4e21a239f..000000000 --- a/types/src/module/item/campaign-feature/sheet.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -/// -/// -/// -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import type { CampaignFeaturePF2e } from "./document.ts"; -declare class CampaignFeatureSheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - get validTraits(): Record; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface CampaignFeatureSheetData extends ItemSheetDataPF2e { - categories: Record; - actionTypes: ConfigPF2e["PF2E"]["actionTypes"]; - actionsNumber: ConfigPF2e["PF2E"]["actionsNumber"]; - frequencies: ConfigPF2e["PF2E"]["frequencies"]; - prerequisites: string; - isFeat: boolean; -} -export { CampaignFeatureSheetPF2e }; diff --git a/types/src/module/item/campaign-feature/types.d.ts b/types/src/module/item/campaign-feature/types.d.ts deleted file mode 100644 index 30ce31925..000000000 --- a/types/src/module/item/campaign-feature/types.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { KINGMAKER_CATEGORY_TYPES } from "./values.ts"; -type BehaviorType = "feat" | "feature" | "activity"; -type KingmakerCategory = (typeof KINGMAKER_CATEGORY_TYPES)[number]; -type KingmakerTrait = keyof ConfigPF2e["PF2E"]["kingmakerTraits"]; -export type { BehaviorType, KingmakerCategory, KingmakerTrait }; diff --git a/types/src/module/item/campaign-feature/values.d.ts b/types/src/module/item/campaign-feature/values.d.ts deleted file mode 100644 index acf16d909..000000000 --- a/types/src/module/item/campaign-feature/values.d.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { BehaviorType, KingmakerCategory } from "./types.ts"; -interface CategoryData { - behavior: BehaviorType; - levelLabel?: string; -} -declare const KINGDOM_CATEGORY_DATA: { - "army-tactic": { - behavior: "feat"; - levelLabel: string; - }; - "army-war-action": { - behavior: "activity"; - }; - "kingdom-feat": { - behavior: "feat"; - }; - "kingdom-feature": { - behavior: "feature"; - }; - "kingdom-activity": { - behavior: "activity"; - }; -}; -declare const KINGMAKER_CATEGORY_TYPES: ("army-tactic" | "army-war-action" | "kingdom-feat" | "kingdom-feature" | "kingdom-activity")[]; -declare const KINGMAKER_CATEGORIES: Record; -export { KINGDOM_CATEGORY_DATA, KINGMAKER_CATEGORIES, KINGMAKER_CATEGORY_TYPES }; -export type { CategoryData }; diff --git a/types/src/module/item/class/data.d.ts b/types/src/module/item/class/data.d.ts deleted file mode 100644 index 43f0938ce..000000000 --- a/types/src/module/item/class/data.d.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { AttributeString, SaveType, SkillSlug } from "@actor/types.ts"; -import { ABCSystemData, ABCSystemSource } from "@item/abc/data.ts"; -import { BaseItemSourcePF2e, RarityTraitAndOtherTags } from "@item/base/data/system.ts"; -import { ZeroToFour } from "@module/data.ts"; -type ClassSource = BaseItemSourcePF2e<"class", ClassSystemSource>; -interface ClassSystemSource extends ABCSystemSource { - traits: RarityTraitAndOtherTags; - keyAbility: { - value: AttributeString[]; - selected: AttributeString | null; - }; - hp: number; - perception: ZeroToFour; - savingThrows: Record; - attacks: ClassAttackProficiencies; - defenses: ClassDefenseProficiencies; - /** Starting proficiency in "spell attack rolls and DCs" */ - spellcasting: ZeroToFour; - trainedSkills: { - value: SkillSlug[]; - additional: number; - }; - ancestryFeatLevels: { - value: number[]; - }; - classFeatLevels: { - value: number[]; - }; - generalFeatLevels: { - value: number[]; - }; - skillFeatLevels: { - value: number[]; - }; - skillIncreaseLevels: { - value: number[]; - }; - level?: never; -} -interface ClassSystemData extends Omit, Omit { -} -interface ClassAttackProficiencies { - simple: ZeroToFour; - martial: ZeroToFour; - advanced: ZeroToFour; - unarmed: ZeroToFour; - other: { - name: string; - rank: ZeroToFour; - }; -} -interface ClassDefenseProficiencies { - unarmored: ZeroToFour; - light: ZeroToFour; - medium: ZeroToFour; - heavy: ZeroToFour; -} -export type { ClassAttackProficiencies, ClassDefenseProficiencies, ClassSource, ClassSystemData, ClassSystemSource }; diff --git a/types/src/module/item/class/document.d.ts b/types/src/module/item/class/document.d.ts deleted file mode 100644 index bbd55ec62..000000000 --- a/types/src/module/item/class/document.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { ActorPF2e, CharacterPF2e } from "@actor"; -import type { FeatSlotData } from "@actor/character/feats/index.ts"; -import { SaveType } from "@actor/types.ts"; -import { ABCItemPF2e, FeatPF2e } from "@item"; -import { ZeroToFour } from "@module/data.ts"; -import { ClassAttackProficiencies, ClassDefenseProficiencies, ClassSource, ClassSystemData } from "./data.ts"; -import { ClassTrait } from "./types.ts"; - -declare class ClassPF2e extends ABCItemPF2e { - get attacks(): ClassAttackProficiencies; - get defenses(): ClassDefenseProficiencies; - get hpPerLevel(): number; - get perception(): ZeroToFour; - get savingThrows(): Record; - get grantedFeatSlots(): Record<"ancestry" | "class" | "skill" | "general", (number | FeatSlotData)[]>; - /** Include all top-level class features in addition to any with the expected location ID */ - getLinkedItems(): FeatPF2e[]; - /** Pulls the features that should be granted by this class, sorted by level */ - createGrantedItems(options?: { - level?: number; - }): Promise[]>; - prepareBaseData(): void; - /** Prepare a character's data derived from their class */ - prepareActorData(this: ClassPF2e): void; -} -interface ClassPF2e extends ABCItemPF2e { - readonly _source: ClassSource; - system: ClassSystemData; - get slug(): ClassTrait | null; -} -export { ClassPF2e }; diff --git a/types/src/module/item/class/index.d.ts b/types/src/module/item/class/index.d.ts deleted file mode 100644 index 23a2b6acd..000000000 --- a/types/src/module/item/class/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { ClassPF2e } from "./document.ts"; -export { ClassSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/class/sheet.d.ts b/types/src/module/item/class/sheet.d.ts deleted file mode 100644 index bec51c493..000000000 --- a/types/src/module/item/class/sheet.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import type { ClassPF2e } from "@item/class/document.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import { ABCSheetData, ABCSheetPF2e } from "../abc/sheet.ts"; -export declare class ClassSheetPF2e extends ABCSheetPF2e { - getData(options?: Partial): Promise; -} -interface ClassSheetData extends ABCSheetData { - proficiencyChoices: typeof CONFIG.PF2E.proficiencyLevels; - selectedKeyAbility: Record; - trainedSkills: SheetOptions; - ancestryFeatLevels: SheetOptions; - classFeatLevels: SheetOptions; - generalFeatLevels: SheetOptions; - skillFeatLevels: SheetOptions; - skillIncreaseLevels: SheetOptions; -} -export {}; diff --git a/types/src/module/item/class/types.d.ts b/types/src/module/item/class/types.d.ts deleted file mode 100644 index 319d2fe34..000000000 --- a/types/src/module/item/class/types.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { CLASS_TRAITS } from "./values.ts"; -type ClassTrait = SetElement; -export type { ClassTrait }; diff --git a/types/src/module/item/class/values.d.ts b/types/src/module/item/class/values.d.ts deleted file mode 100644 index 7ddb2e13d..000000000 --- a/types/src/module/item/class/values.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/** - * Classes don't have traits other than rarities, but both feats, spells, and other items can have traits corresponding - * with a class - */ -export declare const CLASS_TRAITS: Set<"alchemist" | "animist" | "barbarian" | "bard" | "champion" | "cleric" | "druid" | "exemplar" | "fighter" | "gunslinger" | "kineticist" | "inventor" | "investigator" | "magus" | "monk" | "oracle" | "psychic" | "ranger" | "rogue" | "sorcerer" | "summoner" | "swashbuckler" | "thaumaturge" | "witch" | "wizard">; diff --git a/types/src/module/item/condition/data.d.ts b/types/src/module/item/condition/data.d.ts deleted file mode 100644 index c0fa17cda..000000000 --- a/types/src/module/item/condition/data.d.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { AbstractEffectSystemData, AbstractEffectSystemSource, DurationData } from "@item/abstract-effect/data.ts"; -import { BaseItemSourcePF2e } from "@item/base/data/system.ts"; -import { DamageType } from "@system/damage/index.ts"; -import type { DamageRoll } from "@system/damage/roll.ts"; -import { ConditionSlug } from "./types.ts"; -type ConditionSource = BaseItemSourcePF2e<"condition", ConditionSystemSource>; -interface ConditionSystemSource extends AbstractEffectSystemSource { - slug: ConditionSlug; - references: { - parent?: { - id: string; - type: string; - }; - children: { - id: string; - type: "condition"; - }[]; - overriddenBy: { - id: string; - type: "condition"; - }[]; - overrides: { - id: string; - type: "condition"; - }[]; - }; - duration: { - value: number; - }; - persistent?: PersistentSourceData; - group: string | null; - value: ConditionValueData; - overrides: string[]; - context?: never; - level?: never; -} -interface PersistentSourceData { - formula: string; - damageType: DamageType; - dc: number; - /** Whether this damage was multiplied due to a critical hit */ - criticalHit?: boolean; -} -interface ConditionSystemData extends Omit, Omit { - persistent?: PersistentDamageData; - duration: DurationData; -} -interface PersistentDamageData extends PersistentSourceData { - damage: DamageRoll; - expectedValue: number; -} -type ConditionValueData = { - isValued: true; - value: number; -} | { - isValued: false; - value: null; -}; -export type { ConditionSource, ConditionSystemData, ConditionSystemSource, PersistentDamageData, PersistentSourceData }; diff --git a/types/src/module/item/condition/document.d.ts b/types/src/module/item/condition/document.d.ts deleted file mode 100644 index b49e19faa..000000000 --- a/types/src/module/item/condition/document.d.ts +++ /dev/null @@ -1,65 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import { AbstractEffectPF2e, EffectBadge } from "@item/abstract-effect/index.ts"; -import { RuleElementOptions, RuleElementPF2e } from "@module/rules/index.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { TokenDocumentPF2e } from "@scene/index.ts"; -import { ConditionSource, ConditionSystemData, PersistentDamageData } from "./data.ts"; -import { ConditionKey, ConditionSlug } from "./types.ts"; - -declare class ConditionPF2e extends AbstractEffectPF2e { - active: boolean; - get badge(): EffectBadge | null; - /** Retrieve this condition's origin from its granting effect, if any */ - get origin(): ActorPF2e | null; - /** A key that can be used in place of slug for condition types that are split up (persistent damage) */ - get key(): ConditionKey; - get appliedBy(): ItemPF2e | null; - get value(): number | null; - /** Is this condition locked in place by another? */ - get isLocked(): boolean; - /** Is the condition found in the token HUD menu? */ - get isInHUD(): boolean; - /** Create a textual breakdown of what applied this condition */ - get breakdown(): string | null; - /** - * Whether this condition is in-memory rather than stored in an actor's `items` collection and cannot be updated or - * deleted - */ - get readonly(): boolean; - /** Include damage type and possibly category for persistent-damage conditions */ - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - increase(this: ConditionPF2e): Promise; - decrease(this: ConditionPF2e): Promise; - onEndTurn(options?: { - token?: TokenDocumentPF2e | null; - }): Promise; - /** Rolls recovery for this condition if it is persistent damage */ - rollRecovery(): Promise; - /** Ensure value.isValued and value.value are in sync */ - prepareBaseData(): void; - prepareSiblingData(this: ConditionPF2e): void; - /** Log self in parent's conditions map */ - prepareActorData(this: ConditionPF2e): void; - /** Withhold all rule elements if this condition is inactive */ - prepareRuleElements(options?: RuleElementOptions): RuleElementPF2e[]; - protected _preUpdate(changed: DeepPartial, operation: ConditionUpdateOperation, user: UserPF2e): Promise; - protected _onUpdate(changed: DeepPartial, operation: ConditionUpdateOperation, userId: string): void; -} -interface ConditionPF2e extends AbstractEffectPF2e { - readonly _source: ConditionSource; - system: ConditionSystemData; - get slug(): ConditionSlug; -} -interface PersistentDamagePF2e extends ConditionPF2e { - system: Omit & { - persistent: PersistentDamageData; - }; -} -interface ConditionUpdateOperation extends DatabaseUpdateOperation { - conditionValue?: number | null; -} -export { ConditionPF2e }; -export type { ConditionUpdateOperation, PersistentDamagePF2e }; diff --git a/types/src/module/item/condition/index.d.ts b/types/src/module/item/condition/index.d.ts deleted file mode 100644 index 02afa3b35..000000000 --- a/types/src/module/item/condition/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./data.ts"; -export * from "./document.ts"; -export * from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/condition/persistent-damage-dialog.d.ts b/types/src/module/item/condition/persistent-damage-dialog.d.ts deleted file mode 100644 index 7fb19f0d7..000000000 --- a/types/src/module/item/condition/persistent-damage-dialog.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import { DamageType } from "@system/damage/types.ts"; -declare class PersistentDamageDialog extends Application { - #private; - private actor; - constructor(actor: ActorPF2e, options?: Partial); - static get defaultOptions(): ApplicationOptions; - /** Override to guarantee one persistent damage dialog per actor */ - get id(): string; - get title(): string; - getData(): Promise; - activateListeners($html: JQuery): void; - /** Overriden to autofocus on first render behavior */ - protected _injectHTML($html: JQuery): void; -} -interface PersistentDamageDialogOptions extends ApplicationOptions { - editing?: string; -} -interface PersistentDialogData { - existing: DamageEntryData[]; - damageTypes: DamageTypeData[]; -} -interface DamageEntryData { - id: string; - bullet: string; - active: boolean; - formula: string; - damageType: DamageType; - dc: number; -} -interface DamageTypeData { - type: string; - iconClass: string; - label: string; -} -export { PersistentDamageDialog as PersistentDialog }; diff --git a/types/src/module/item/condition/sheet.d.ts b/types/src/module/item/condition/sheet.d.ts deleted file mode 100644 index e9aedcf7a..000000000 --- a/types/src/module/item/condition/sheet.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSheetPF2e } from "@item"; -import type { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import type { ConditionPF2e } from "./document.ts"; -declare class ConditionSheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - protected get validTraits(): Record; -} -export { ConditionSheetPF2e }; diff --git a/types/src/module/item/condition/types.d.ts b/types/src/module/item/condition/types.d.ts deleted file mode 100644 index a972d3b4e..000000000 --- a/types/src/module/item/condition/types.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { CONDITION_SLUGS } from "./values.ts"; -type ConditionSlug = SetElement; -type DetectionConditionType = Extract; -type ConditionKey = ConditionSlug | `persistent-damage-${string}`; -export type { DetectionConditionType, ConditionSlug, ConditionKey }; diff --git a/types/src/module/item/condition/values.d.ts b/types/src/module/item/condition/values.d.ts deleted file mode 100644 index 225ee374a..000000000 --- a/types/src/module/item/condition/values.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -declare const CONDITION_SLUGS: Set<"blinded" | "broken" | "clumsy" | "confused" | "controlled" | "dazzled" | "deafened" | "doomed" | "drained" | "enfeebled" | "fascinated" | "fatigued" | "fleeing" | "frightened" | "grabbed" | "hidden" | "immobilized" | "off-guard" | "paralyzed" | "petrified" | "prone" | "restrained" | "sickened" | "slowed" | "stunned" | "stupefied" | "unconscious" | "wounded" | "cursebound" | "concealed" | "dying" | "encumbered" | "friendly" | "helpful" | "hostile" | "indifferent" | "invisible" | "malevolence" | "observed" | "persistent-damage" | "quickened" | "undetected" | "unfriendly" | "unnoticed">; -export { CONDITION_SLUGS }; diff --git a/types/src/module/item/consumable/data.d.ts b/types/src/module/item/consumable/data.d.ts deleted file mode 100644 index 0eb87a230..000000000 --- a/types/src/module/item/consumable/data.d.ts +++ /dev/null @@ -1,39 +0,0 @@ -import type { BasePhysicalItemSource, PhysicalItemTraits, PhysicalSystemData, PhysicalSystemSource } from "@item/physical/data.ts"; -import type { SpellSource } from "@item/spell/data.ts"; -import type { DamageKind, DamageType } from "@system/damage/index.ts"; -import type { AmmoStackGroup, ConsumableCategory, ConsumableTrait, OtherConsumableTag } from "./types.ts"; -type ConsumableSource = BasePhysicalItemSource<"consumable", ConsumableSystemSource>; -interface ConsumableTraits extends PhysicalItemTraits { - otherTags: OtherConsumableTag[]; -} -interface ConsumableSystemSource extends PhysicalSystemSource { - apex?: never; - traits: ConsumableTraits; - category: ConsumableCategory; - uses: ConsumableUses; - /** A formula for a healing or damage roll */ - damage: ConsumableDamageHealing | null; - spell: SpellSource | null; - usage: { - value: string; - }; - stackGroup: AmmoStackGroup | null; - subitems?: never; -} -type ConsumableUses = { - value: number; - max: number; - /** Whether to delete the consumable upon use if it has no remaining uses and a quantity of 1 */ - autoDestroy: boolean; -}; -type ConsumableDamageHealing = { - formula: string; - type: DamageType; - kind: DamageKind; -}; -interface ConsumableSystemData extends Omit, Omit { - apex?: never; - stackGroup: AmmoStackGroup | null; -} -type SourceOmission = "bulk" | "description" | "hp" | "identification" | "material" | "price" | "temporary" | "usage"; -export type { ConsumableDamageHealing, ConsumableSource, ConsumableSystemData, ConsumableSystemSource, ConsumableTrait, }; diff --git a/types/src/module/item/consumable/document.d.ts b/types/src/module/item/consumable/document.d.ts deleted file mode 100644 index 457cc1052..000000000 --- a/types/src/module/item/consumable/document.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { SpellPF2e, WeaponPF2e } from "@item"; -import { PhysicalItemPF2e } from "@item"; -import { RawItemChatData } from "@item/base/data/index.ts"; -import { TrickMagicItemEntry } from "@item/spellcasting-entry/trick.ts"; -import type { ValueAndMax } from "@module/data.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import type { ConsumableSource, ConsumableSystemData } from "./data.ts"; -import type { ConsumableCategory, ConsumableTrait, OtherConsumableTag } from "./types.ts"; -declare class ConsumablePF2e extends PhysicalItemPF2e { - static get validTraits(): Record; - get otherTags(): Set; - get category(): ConsumableCategory; - get isAmmo(): boolean; - get uses(): ValueAndMax; - get embeddedSpell(): SpellPF2e> | null; - prepareBaseData(): void; - getChatData(this: ConsumablePF2e, htmlOptions?: EnrichmentOptions, rollOptions?: Record): Promise; - generateUnidentifiedName({ typeOnly }?: { - typeOnly?: boolean; - }): string; - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - isAmmoFor(weapon: WeaponPF2e): boolean; - /** Use a consumable item, sending the result to chat */ - consume(thisMany?: number): Promise; - castEmbeddedSpell(trickMagicItemData?: TrickMagicItemEntry): Promise; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface ConsumablePF2e extends PhysicalItemPF2e { - readonly _source: ConsumableSource; - system: ConsumableSystemData; -} -export { ConsumablePF2e }; diff --git a/types/src/module/item/consumable/index.d.ts b/types/src/module/item/consumable/index.d.ts deleted file mode 100644 index 8a2c8902c..000000000 --- a/types/src/module/item/consumable/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ConsumablePF2e } from "./document.ts"; -export { ConsumableSheetPF2e } from "./sheet.ts"; -export * from "./data.ts"; diff --git a/types/src/module/item/consumable/sheet.d.ts b/types/src/module/item/consumable/sheet.d.ts deleted file mode 100644 index 0a6f78f51..000000000 --- a/types/src/module/item/consumable/sheet.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -/// -/// -/// -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import { PhysicalItemSheetData, PhysicalItemSheetPF2e } from "@item/physical/index.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import { DamageType } from "@system/damage/index.ts"; -import type { ConsumablePF2e } from "./document.ts"; -import { ConsumableCategory } from "./types.ts"; -declare class ConsumableSheetPF2e extends PhysicalItemSheetPF2e { - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface ConsumableSheetData extends PhysicalItemSheetData { - canHaveDamageOrHealing: boolean; - canHaveHealing: boolean; - categories: Record; - damageKindOptions: FormSelectOption[]; - damageTypes: Record; - materialEffects: SheetOptions; - otherTags: SheetOptions; - stackGroups: Omit | null; -} -export { ConsumableSheetPF2e }; diff --git a/types/src/module/item/consumable/spell-consumables.d.ts b/types/src/module/item/consumable/spell-consumables.d.ts deleted file mode 100644 index f45618a23..000000000 --- a/types/src/module/item/consumable/spell-consumables.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { ConsumablePF2e, type SpellPF2e } from "@item"; -import { ConsumableSource } from "@item/base/data/index.ts"; -import { DCOptions } from "@module/dc.ts"; - -type SpellConsumableItemType = "cantripDeck5" | "scroll" | "wand"; -declare function isSpellConsumable(itemId: string): boolean; -declare function createConsumableFromSpell(spell: SpellPF2e, { type, heightenedLevel, mystified, }: { - type: SpellConsumableItemType; - heightenedLevel?: number; - mystified?: boolean; -}): Promise; -interface TrickMagicItemDifficultyData { - arcana?: number; - religion?: number; - occultism?: number; - nature?: number; -} -declare function calculateTrickMagicItemCheckDC(item: ConsumablePF2e, options?: DCOptions): TrickMagicItemDifficultyData; -export { calculateTrickMagicItemCheckDC, createConsumableFromSpell, isSpellConsumable }; -export type { SpellConsumableItemType, TrickMagicItemDifficultyData }; diff --git a/types/src/module/item/consumable/types.d.ts b/types/src/module/item/consumable/types.d.ts deleted file mode 100644 index a8f7a1777..000000000 --- a/types/src/module/item/consumable/types.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { AMMO_STACK_GROUPS, CONSUMABLE_CATEGORIES } from "./values.ts"; - -type AmmoStackGroup = SetElement; -type ConsumableCategory = SetElement; -type ConsumableTrait = keyof typeof CONFIG.PF2E.consumableTraits; -type OtherConsumableTag = "alchemical-food" | "alchemical-tool" | "herbal"; -export type { AmmoStackGroup, ConsumableCategory, ConsumableTrait, OtherConsumableTag }; diff --git a/types/src/module/item/consumable/values.d.ts b/types/src/module/item/consumable/values.d.ts deleted file mode 100644 index ed14fa60f..000000000 --- a/types/src/module/item/consumable/values.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -declare const CONSUMABLE_CATEGORIES: Set<"poison" | "catalyst" | "elixir" | "fulu" | "gadget" | "mutagen" | "oil" | "potion" | "scroll" | "snare" | "talisman" | "wand" | "drug" | "ammo" | "other" | "toolkit">; -declare const DAMAGE_OR_HEALING_CONSUMABLE_CATEGORIES: Set<"poison" | "catalyst" | "elixir" | "fulu" | "gadget" | "mutagen" | "oil" | "potion" | "scroll" | "snare" | "talisman" | "wand" | "drug" | "ammo" | "other" | "toolkit">; -declare const DAMAGE_ONLY_CONSUMABLE_CATEGORIES: Set<"poison" | "catalyst" | "elixir" | "fulu" | "gadget" | "mutagen" | "oil" | "potion" | "scroll" | "snare" | "talisman" | "wand" | "drug" | "ammo" | "other" | "toolkit">; -declare const AMMO_STACK_GROUPS: Set<"bolts" | "arrows" | "slingBullets" | "blowgunDarts" | "woodenTaws" | "rounds5" | "rounds10" | "sprayPellets">; -export { AMMO_STACK_GROUPS, CONSUMABLE_CATEGORIES, DAMAGE_ONLY_CONSUMABLE_CATEGORIES, DAMAGE_OR_HEALING_CONSUMABLE_CATEGORIES, }; diff --git a/types/src/module/item/container/data.d.ts b/types/src/module/item/container/data.d.ts deleted file mode 100644 index 2082829e7..000000000 --- a/types/src/module/item/container/data.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { EquipmentTrait } from "@item/equipment/data.ts"; -import { BasePhysicalItemSource, BulkData, Investable, PhysicalItemTraits, PhysicalSystemData, PhysicalSystemSource } from "@item/physical/data.ts"; -type ContainerSource = BasePhysicalItemSource<"backpack", ContainerSystemSource>; -type ContainerTraits = PhysicalItemTraits; -interface ContainerSystemSource extends Investable { - traits: ContainerTraits; - stowing: boolean; - bulk: ContainerBulkSource; - collapsed: boolean; - usage: { - value: string; - }; - subitems?: never; -} -interface ContainerBulkSource { - value: number; - heldOrStowed: number; - capacity: number; - ignored: number; -} -interface ContainerSystemData extends Omit, Omit, "subitems" | "traits"> { - bulk: ContainerBulkData; - stackGroup: null; -} -type SourceOmission = "apex" | "bulk" | "description" | "hp" | "identification" | "material" | "price" | "temporary" | "usage"; -interface ContainerBulkData extends ContainerBulkSource, BulkData { -} -export type { ContainerBulkData, ContainerSource, ContainerSystemData }; diff --git a/types/src/module/item/container/document.d.ts b/types/src/module/item/container/document.d.ts deleted file mode 100644 index d7179de07..000000000 --- a/types/src/module/item/container/document.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { RawItemChatData } from "@item/base/data/index.ts"; -import { EquipmentTrait } from "@item/equipment/data.ts"; -import { Bulk } from "@item/physical/bulk.ts"; -import { PhysicalItemPF2e } from "@item/physical/document.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { ContainerSource, ContainerSystemData } from "./data.ts"; -declare class ContainerPF2e extends PhysicalItemPF2e { - static get validTraits(): Record; - /** This container's contents, reloaded every data preparation cycle */ - contents: Collection>>; - /** Is this an actual stowing container or merely one of the old pouches/quivers/etc.? */ - get stowsItems(): boolean; - get isCollapsed(): boolean; - get capacity(): { - value: Bulk; - max: Bulk; - }; - /** The percentage filled of container's bulk capacity: if over 100%, return a value without excess Light units. */ - get percentFull(): number; - get bulkIgnored(): Bulk; - get bulk(): Bulk; - prepareBaseData(): void; - /** Reload this container's contents following Actor embedded-document preparation */ - prepareSiblingData(this: ContainerPF2e): void; - /** Move the contents of this container into the next-higher container or otherwise the main actor inventory */ - ejectContents(): Promise; - getChatData(this: ContainerPF2e, htmlOptions?: EnrichmentOptions): Promise; - /** Coerce changes to container bulk data into validity */ - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface ContainerPF2e extends PhysicalItemPF2e { - readonly _source: ContainerSource; - system: ContainerSystemData; - get traits(): Set; -} -export { ContainerPF2e }; diff --git a/types/src/module/item/container/helpers.d.ts b/types/src/module/item/container/helpers.d.ts deleted file mode 100644 index e1449bccd..000000000 --- a/types/src/module/item/container/helpers.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ActorPF2e } from "@actor/base.ts"; -import { ContainerPF2e, PhysicalItemPF2e } from "@item"; -/** - * Detect if adding an item to a container would produce a cycle - * @param item The item being added to a container - * @param container The container to which the item is being added - */ -declare function isContainerCycle(item: PhysicalItemPF2e, container: ContainerPF2e): boolean; -/** Returns true if any of the item's container ancestry is extradimensional */ -declare function hasExtraDimensionalParent(item: ContainerPF2e, encountered?: Set): boolean; -export { hasExtraDimensionalParent, isContainerCycle }; diff --git a/types/src/module/item/container/index.d.ts b/types/src/module/item/container/index.d.ts deleted file mode 100644 index 81b8bcc1f..000000000 --- a/types/src/module/item/container/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ContainerPF2e } from "./document.ts"; -export * from "./helpers.ts"; -export { ContainerSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/container/sheet.d.ts b/types/src/module/item/container/sheet.d.ts deleted file mode 100644 index 3d5374a6b..000000000 --- a/types/src/module/item/container/sheet.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { PhysicalItemSheetPF2e } from "@item/physical/index.ts"; -import type { ContainerPF2e } from "./document.ts"; -export declare class ContainerSheetPF2e extends PhysicalItemSheetPF2e { -} diff --git a/types/src/module/item/deity/data.d.ts b/types/src/module/item/deity/data.d.ts deleted file mode 100644 index 6485aeb48..000000000 --- a/types/src/module/item/deity/data.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import { AttributeString, SkillSlug } from "@actor/types.ts"; -import { BaseItemSourcePF2e, ItemSystemData, ItemSystemSource, OtherTagsOnly } from "@item/base/data/system.ts"; -import { BaseWeaponType } from "@item/weapon/types.ts"; -import { DeityDomain, Sanctification } from "./types.ts"; - -type DeitySource = BaseItemSourcePF2e<"deity", DeitySystemSource>; -type DeitySystemSource = ItemSystemSource & { - category: DeityCategory; - sanctification: DeitySanctification | null; - domains: { - primary: DeityDomain[]; - alternate: DeityDomain[]; - }; - font: DivineFonts; - attribute: AttributeString[]; - skill: SkillSlug[] | null; - weapons: BaseWeaponType[]; - spells: Record; - level?: never; - traits: OtherTagsOnly; -}; -type DeityCategory = "deity" | "pantheon" | "covenant" | "philosophy"; -type DeitySanctification = { - modal: "can" | "must"; - what: Sanctification[]; -}; -type DivineFonts = ["harm"] | ["heal"] | ["harm", "heal"] | never[]; -interface DeitySystemData extends Omit, Omit { -} -export type { DeityCategory, DeitySanctification, DeitySource, DeitySystemData, DeitySystemSource }; diff --git a/types/src/module/item/deity/document.d.ts b/types/src/module/item/deity/document.d.ts deleted file mode 100644 index 2f84846a8..000000000 --- a/types/src/module/item/deity/document.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import { BaseWeaponType } from "@item/weapon/types.ts"; -import { DeityCategory, DeitySource, DeitySystemData } from "./data.ts"; - -declare class DeityPF2e extends ItemPF2e { - get category(): DeityCategory; - get favoredWeapons(): BaseWeaponType[]; - prepareBaseData(): void; - prepareActorData(this: DeityPF2e): void; - /** If applicable, set a trained proficiency with this deity's favored weapon */ - setFavoredWeaponRank(this: DeityPF2e): void; - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - private getSanctificationRollOptions; -} -interface DeityPF2e extends ItemPF2e { - readonly _source: DeitySource; - system: DeitySystemData; -} -export { DeityPF2e }; diff --git a/types/src/module/item/deity/index.d.ts b/types/src/module/item/deity/index.d.ts deleted file mode 100644 index b31501217..000000000 --- a/types/src/module/item/deity/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { DeityPF2e } from "./document.ts"; -export { DeitySheetPF2e } from "./sheet.ts"; -export type { DeitySource } from "./data.ts"; diff --git a/types/src/module/item/deity/sheet.d.ts b/types/src/module/item/deity/sheet.d.ts deleted file mode 100644 index b71f32a3f..000000000 --- a/types/src/module/item/deity/sheet.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -/// -/// -/// -import type { SkillSlug } from "@actor/types.ts"; -import { type DeityPF2e } from "@item"; -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -export declare class DeitySheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - _onDrop(event: DragEvent): Promise; - /** Foundry inflexibly considers checkboxes to be booleans: set back to a string tuple for Divine Font */ - _updateObject(event: Event, formData: Record): Promise; -} -interface DeitySheetData extends ItemSheetDataPF2e { - categories: FormSelectOption[]; - sanctifications: FormSelectOption[]; - skills: Record; - divineFonts: SheetOptions; - spells: SpellBrief[]; -} -interface SpellBrief { - uuid: ItemUUID; - level: number; - name: string; - img: ImageFilePath; -} -export {}; diff --git a/types/src/module/item/deity/types.d.ts b/types/src/module/item/deity/types.d.ts deleted file mode 100644 index e4141d0d2..000000000 --- a/types/src/module/item/deity/types.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import type enJSON from "../../../../static/lang/en.json"; -type Sanctification = "holy" | "unholy"; -type DeityDomain = Lowercase; -export type { Sanctification, DeityDomain }; diff --git a/types/src/module/item/deity/values.d.ts b/types/src/module/item/deity/values.d.ts deleted file mode 100644 index 3aae86cf2..000000000 --- a/types/src/module/item/deity/values.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { DeitySanctification } from "./data.ts"; -declare const DEITY_SANCTIFICATIONS: DeitySanctification[]; -export { DEITY_SANCTIFICATIONS }; diff --git a/types/src/module/item/effect/data.d.ts b/types/src/module/item/effect/data.d.ts deleted file mode 100644 index 6f4f83f78..000000000 --- a/types/src/module/item/effect/data.d.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { - AbstractEffectSystemData, - AbstractEffectSystemSource, - DurationData, - EffectAuraData, - EffectBadge, - EffectBadgeSource, - EffectContextData, -} from "@item/abstract-effect/index.ts"; -import { BaseItemSourcePF2e, ItemFlagsPF2e } from "@item/base/data/system.ts"; - -type EffectSource = BaseItemSourcePF2e<"effect", EffectSystemSource> & { - flags: DeepPartial; -}; -type EffectFlags = ItemFlagsPF2e & { - pf2e: { - aura?: EffectAuraData; - }; -}; -interface EffectSystemSource extends AbstractEffectSystemSource { - level: { - value: number; - }; - start: { - value: number; - initiative: number | null; - }; - duration: DurationData & { - sustained: boolean; - }; - tokenIcon: { - show: boolean; - }; - unidentified: boolean; - /** A numeric value or dice expression of some rules significance to the effect */ - badge: EffectBadgeSource | null; - /** Origin, target, and roll context of the action that spawned this effect */ - context: EffectContextData | null; -} -interface EffectSystemData extends Omit, Omit { - expired: boolean; - badge: EffectBadge | null; -} -export type { EffectFlags, EffectSource, EffectSystemData }; diff --git a/types/src/module/item/effect/document.d.ts b/types/src/module/item/effect/document.d.ts deleted file mode 100644 index 9bec0a210..000000000 --- a/types/src/module/item/effect/document.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { BadgeReevaluationEventType, EffectBadge } from "@item/abstract-effect/data.ts"; -import { AbstractEffectPF2e } from "@item/abstract-effect/index.ts"; -import type { RuleElementOptions, RuleElementPF2e } from "@module/rules/index.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { EffectFlags, EffectSource, EffectSystemData } from "./data.ts"; -declare class EffectPF2e extends AbstractEffectPF2e { - #private; - get badge(): EffectBadge | null; - get level(): number; - get isExpired(): boolean; - /** Whether this effect emits an aura */ - get isAura(): boolean; - get isIdentified(): boolean; - /** Does this effect originate from an aura? */ - get fromAura(): boolean; - prepareBaseData(): void; - /** Unless this effect is temporarily constructed, ignore rule elements if it is expired */ - prepareRuleElements(options?: RuleElementOptions): RuleElementPF2e[]; - /** Increases if this is a counter effect, otherwise ignored outright */ - increase(): Promise; - /** Decreases if this is a counter effect, otherwise deletes entirely */ - decrease(): Promise; - /** Include a trimmed version of the "slug" roll option (e.g., effect:rage instead of effect:effect-rage) */ - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - /** Set the start time and initiative roll of a newly created effect */ - protected _preCreate(data: this["_source"], operation: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; - /** If applicable, reevaluate this effect's badge */ - onEncounterEvent(event: BadgeReevaluationEventType): Promise; -} -interface EffectPF2e extends AbstractEffectPF2e { - flags: EffectFlags; - readonly _source: EffectSource; - system: EffectSystemData; -} -export { EffectPF2e }; diff --git a/types/src/module/item/effect/helpers.d.ts b/types/src/module/item/effect/helpers.d.ts deleted file mode 100644 index 4758e858d..000000000 --- a/types/src/module/item/effect/helpers.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { EffectSource } from "./data.ts"; -/** Create the source data for a gag Disintegrate spell effect */ -declare const createDisintegrateEffect: () => PreCreate; -export { createDisintegrateEffect }; diff --git a/types/src/module/item/effect/index.d.ts b/types/src/module/item/effect/index.d.ts deleted file mode 100644 index 30b16ecc3..000000000 --- a/types/src/module/item/effect/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { EffectPF2e } from "./document.ts"; -export { EffectSheetPF2e } from "./sheet.ts"; -export * from "./data.ts"; diff --git a/types/src/module/item/effect/sheet.d.ts b/types/src/module/item/effect/sheet.d.ts deleted file mode 100644 index 4d0c4a393..000000000 --- a/types/src/module/item/effect/sheet.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -/// -/// -/// -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import type { EffectPF2e } from "./document.ts"; -export declare class EffectSheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - protected get validTraits(): Record; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface EffectSheetData extends ItemSheetDataPF2e { - badgeType: string; - expiryOptions: FormSelectOption[]; - reevaluateOptions: FormSelectOption[]; - timeUnits: ConfigPF2e["PF2E"]["timeUnits"]; -} -export {}; diff --git a/types/src/module/item/equipment/data.d.ts b/types/src/module/item/equipment/data.d.ts deleted file mode 100644 index 19dabf6ae..000000000 --- a/types/src/module/item/equipment/data.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import type { PhysicalItemSource } from "@item/base/data/index.ts"; -import type { BasePhysicalItemSource, Investable, PhysicalItemTraits, PhysicalSystemData, PhysicalSystemSource } from "@item/physical/data.ts"; -import type { EquipmentTrait } from "./types.ts"; -type EquipmentSource = BasePhysicalItemSource<"equipment", EquipmentSystemSource>; -interface EquipmentSystemSource extends Investable { - traits: EquipmentTraits; - usage: { - value: string; - }; - /** Doubly-embedded adjustments, attachments, talismans etc. */ - subitems: PhysicalItemSource[]; -} -interface EquipmentTraits extends PhysicalItemTraits { -} -interface EquipmentSystemData extends Omit, Omit, "subitems" | "traits"> { - stackGroup: null; -} -type SourceOmission = "apex" | "bulk" | "description" | "hp" | "identification" | "material" | "price" | "temporary" | "usage"; -export type { EquipmentSource, EquipmentSystemData, EquipmentSystemSource, EquipmentTrait }; diff --git a/types/src/module/item/equipment/document.d.ts b/types/src/module/item/equipment/document.d.ts deleted file mode 100644 index ce8c2cef5..000000000 --- a/types/src/module/item/equipment/document.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { RawItemChatData } from "@item/base/data/index.ts"; -import { PhysicalItemPF2e } from "@item/physical/index.ts"; -import { EquipmentSource, EquipmentSystemData, EquipmentTrait } from "./data.ts"; -declare class EquipmentPF2e extends PhysicalItemPF2e { - static get validTraits(): Record; - getChatData(this: EquipmentPF2e, htmlOptions?: EnrichmentOptions): Promise; - generateUnidentifiedName({ typeOnly }?: { - typeOnly?: boolean; - }): string; -} -interface EquipmentPF2e extends PhysicalItemPF2e { - readonly _source: EquipmentSource; - system: EquipmentSystemData; - get traits(): Set; -} -export { EquipmentPF2e }; diff --git a/types/src/module/item/equipment/index.d.ts b/types/src/module/item/equipment/index.d.ts deleted file mode 100644 index acf51adf9..000000000 --- a/types/src/module/item/equipment/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { EquipmentPF2e } from "./document.ts"; -export { EquipmentSheetPF2e } from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/equipment/sheet.d.ts b/types/src/module/item/equipment/sheet.d.ts deleted file mode 100644 index 7bf6026d5..000000000 --- a/types/src/module/item/equipment/sheet.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import { PhysicalItemSheetData, PhysicalItemSheetPF2e } from "@item/physical/index.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import type { EquipmentPF2e } from "./document.ts"; -export declare class EquipmentSheetPF2e extends PhysicalItemSheetPF2e { - getData(options?: Partial): Promise; -} -interface EquipmentSheetData extends PhysicalItemSheetData { - otherTags: SheetOptions; -} -export {}; diff --git a/types/src/module/item/equipment/types.d.ts b/types/src/module/item/equipment/types.d.ts deleted file mode 100644 index adc2e3f07..000000000 --- a/types/src/module/item/equipment/types.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -type EquipmentTrait = keyof typeof CONFIG.PF2E.equipmentTraits; -export type { EquipmentTrait }; diff --git a/types/src/module/item/feat/data.d.ts b/types/src/module/item/feat/data.d.ts deleted file mode 100644 index f09f7ce18..000000000 --- a/types/src/module/item/feat/data.d.ts +++ /dev/null @@ -1,112 +0,0 @@ -import type { Language, SenseAcuity, SenseType } from "@actor/creature/types.ts"; -import type { AttributeString, SaveType } from "@actor/types.ts"; -import type { SelfEffectReference, SelfEffectReferenceSource } from "@item/ability/index.ts"; -import type { AbilityTraitToggles } from "@item/ability/trait-toggles.ts"; -import type { ArmorCategory } from "@item/armor/types.ts"; -import type { - ActionType, - BaseItemSourcePF2e, - Frequency, - FrequencySource, - ItemSystemData, - ItemSystemSource, - ItemTraits, -} from "@item/base/data/system.ts"; -import type { ClassTrait } from "@item/class/types.ts"; -import type { WeaponCategory } from "@item/weapon/types.ts"; -import type { OneToFour, OneToThree } from "@module/data.ts"; -import type { FeatOrFeatureCategory, FeatTrait } from "./types.ts"; - -type FeatSource = BaseItemSourcePF2e<"feat", FeatSystemSource>; -interface PrerequisiteTagData { - value: string; -} -interface FeatSystemSource extends ItemSystemSource { - level: FeatLevelSource; - traits: FeatTraitsSource; - /** The category of feat or feature of this item */ - category: FeatOrFeatureCategory; - /** Whether this feat must be taken at character level 1 */ - onlyLevel1: boolean; - /** The maximum number of times this feat can be taken by a character. A value of `null` indicates no limit */ - maxTakable: number | null; - actionType: { - value: ActionType; - }; - actions: { - value: OneToThree | null; - }; - prerequisites: { - value: PrerequisiteTagData[]; - }; - location: string | null; - frequency?: FrequencySource; - subfeatures?: Partial; - /** A self-applied effect for simple actions */ - selfEffect?: SelfEffectReferenceSource | null; -} -interface FeatLevelSource { - value: number; - taken?: number | null; -} -interface FeatTraitsSource extends ItemTraits { - toggles?: { - mindshift?: { - selected?: boolean; - } | null; - }; -} -interface FeatSystemData extends Omit, ItemSystemData { - level: FeatLevelData; - traits: FeatTraits; - /** `null` is set to `Infinity` during data preparation */ - maxTakable: number; - frequency?: Frequency; - subfeatures: FeatSubfeatures; - /** A self-applied effect for simple actions */ - selfEffect: SelfEffectReference | null; -} -interface FeatLevelData extends Required { -} -interface FeatTraits extends FeatTraitsSource { - toggles: AbilityTraitToggles; -} -interface FeatSubfeatures { - keyOptions: AttributeString[]; - languages: LanguagesSubfeature; - proficiencies: { - [K in IncreasableProficiency]?: { - rank: OneToFour; - attribute?: AttributeString | null; - }; - }; - senses: { - [K in SenseType]?: SenseSubfeature; - }; - suppressedFeatures: ItemUUID[]; -} -interface LanguagesSubfeature { - /** A number of open slots fillable with any language */ - slots: number; - /** Additional specific languages the character knows */ - granted: Language[]; -} -interface SenseSubfeature { - acuity?: SenseAcuity; - /** The radius of the sense in feet: `null` indicates no limit. */ - range?: number | null; - /** "Special" clauses for darkvision */ - special?: { - /** Only grant darkvision if the PC's ancestry grants low-light vision. */ - ancestry: boolean; - /** - * Grant darkvision if the PC has low-light vision from any prior source (ancestry, earlier feats, etc.). This - * option is mutually exclusive with `ancestry`. - */ - llv: boolean; - /** Grant darkvision if this feat is taken a second time. */ - second: boolean; - }; -} -type IncreasableProficiency = ArmorCategory | ClassTrait | SaveType | WeaponCategory | "perception" | "spellcasting"; -export type { FeatSource, FeatSubfeatures, FeatSystemData, FeatSystemSource, FeatTraits, PrerequisiteTagData }; diff --git a/types/src/module/item/feat/document.d.ts b/types/src/module/item/feat/document.d.ts deleted file mode 100644 index 98c49541d..000000000 --- a/types/src/module/item/feat/document.d.ts +++ /dev/null @@ -1,59 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { CraftingAbility } from "@actor/character/crafting/ability.ts"; -import type { FeatGroup } from "@actor/character/feats/index.ts"; -import { type HeritagePF2e, ItemPF2e } from "@item"; -import { ActionCost, Frequency, RawItemChatData } from "@item/base/data/index.ts"; -import { Rarity } from "@module/data.ts"; -import { RuleElementOptions, RuleElementPF2e } from "@module/rules/index.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import { FeatSource, FeatSystemData } from "./data.ts"; -import { FeatOrFeatureCategory, FeatTrait } from "./types.ts"; - -declare class FeatPF2e extends ItemPF2e { - group: FeatGroup | null; - grants: (FeatPF2e | HeritagePF2e)[]; - /** If this ability can craft, what is the crafting ability */ - crafting: CraftingAbility | null; - /** If suppressed, this feature should not be assigned to any feat category nor create rule elements */ - suppressed: boolean; - static get validTraits(): Record; - get category(): FeatOrFeatureCategory; - get level(): number; - get traits(): Set; - get rarity(): Rarity; - get actionCost(): ActionCost | null; - get frequency(): Frequency | null; - get isFeature(): boolean; - get isFeat(): boolean; - /** Whether this feat must be taken at character level 1 */ - get onlyLevel1(): boolean; - /** The maximum number of times this feat can be taken */ - get maxTakable(): number; - /** Returns the number of times this feat was taken, limited by maxTakable */ - get timesTaken(): number; - prepareBaseData(): void; - prepareActorData(): void; - /** Assigns the grants of this item based on the given item. */ - establishHierarchy(): void; - prepareSiblingData(): void; - onPrepareSynthetics(this: FeatPF2e): void; - /** Overriden to not create rule elements when suppressed */ - prepareRuleElements(options?: Omit): RuleElementPF2e[]; - getChatData(this: FeatPF2e, htmlOptions?: EnrichmentOptions): Promise; - /** Generate a list of strings for use in predication */ - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - protected embedHTMLString(_config: DocumentHTMLEmbedConfig, _options: EnrichmentOptions): string; - protected _preCreate(data: this["_source"], operation: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; - /** Warn the owning user(s) if this feat was taken despite some restriction */ - protected _onCreate(data: FeatSource, operation: DatabaseCreateOperation, userId: string): void; -} -interface FeatPF2e extends ItemPF2e { - readonly _source: FeatSource; - system: FeatSystemData; - /** Interface alignment with other "attack items" */ - readonly range?: never; -} -export { FeatPF2e }; diff --git a/types/src/module/item/feat/helpers.d.ts b/types/src/module/item/feat/helpers.d.ts deleted file mode 100644 index 09def32e8..000000000 --- a/types/src/module/item/feat/helpers.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import type { FeatPF2e } from "./document.ts"; - -/** - * Whether a feat item can have key ability options - * The item must be a level-1 class feature that is either not (RE-)granted or is granted by another class feature. It - * must also only have at most a single trait (assumed to be that of the class) - */ -declare function featCanHaveKeyOptions(feat: FeatPF2e): boolean; -/** Recursively suppresses a feat and its granted feats */ -declare function suppressFeats(feats: FeatPF2e[]): void; -export { featCanHaveKeyOptions, suppressFeats }; diff --git a/types/src/module/item/feat/index.d.ts b/types/src/module/item/feat/index.d.ts deleted file mode 100644 index 530cabc62..000000000 --- a/types/src/module/item/feat/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./data.ts"; -export { FeatPF2e } from "./document.ts"; -export { FeatSheetPF2e } from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/feat/sheet.d.ts b/types/src/module/item/feat/sheet.d.ts deleted file mode 100644 index cf30eb81e..000000000 --- a/types/src/module/item/feat/sheet.d.ts +++ /dev/null @@ -1,86 +0,0 @@ -/// -/// -/// -import type { Language, SenseAcuity } from "@actor/creature/types.ts"; -import { SelfEffectReference } from "@item/ability/index.ts"; -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import type { FeatPF2e } from "@item/feat/document.ts"; -import { OneToFour } from "@module/data.ts"; - -declare class FeatSheetPF2e extends ItemSheetPF2e { - #private; - static get defaultOptions(): ItemSheetOptions; - get validTraits(): Record; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - _onDrop(event: DragEvent): Promise; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface FeatSheetData extends ItemSheetDataPF2e { - actionsNumber: typeof CONFIG.PF2E.actionsNumber; - actionTypes: typeof CONFIG.PF2E.actionTypes; - acuityOptions: typeof CONFIG.PF2E.senseAcuities; - attributes: typeof CONFIG.PF2E.abilities; - canHaveKeyOptions: boolean; - categories: typeof CONFIG.PF2E.featCategories; - frequencies: typeof CONFIG.PF2E.frequencies; - hasLanguages: boolean; - hasLineageTrait: boolean; - hasProficiencies: boolean; - hasSenses: boolean; - languages: LanguageOptions; - mandatoryTakeOnce: boolean; - maxTakableOptions: FormSelectOption[]; - proficiencies: ProficiencyOptions; - proficiencyRankOptions: Record; - selfEffect: SelfEffectReference | null; - senses: SenseOption[]; - showPrerequisites: boolean; - suppressedFeatures: { - uuid: string; - name: string; - img: string; - }[]; -} -interface LanguageOptions { - slots: number; - granted: { - available: { - slug: Language; - label: string; - }[]; - selected: { - slug: Language; - label: string; - }[]; - }; -} -interface ProficiencyOptions { - other: ProficiencyOptionGroup; - saves: ProficiencyOptionGroup; - attacks: ProficiencyOptionGroup; - defenses: ProficiencyOptionGroup; - classes: ProficiencyOptionGroup; -} -interface ProficiencyOptionGroup { - group: TGroup; - options: { - slug: string; - label: string; - rank: OneToFour | null; - }[]; -} -interface SenseOption { - acuity?: SenseAcuity | null; - canSetAcuity: boolean; - canSetRange: boolean; - label: string; - range?: number | null; - selected: boolean; - slug: string; - special: { - ancestry: boolean; - second: boolean; - } | null; -} -export { FeatSheetPF2e }; diff --git a/types/src/module/item/feat/types.d.ts b/types/src/module/item/feat/types.d.ts deleted file mode 100644 index 171e973a2..000000000 --- a/types/src/module/item/feat/types.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import type { FEAT_OR_FEATURE_CATEGORIES } from "./values.ts"; -type FeatOrFeatureCategory = SetElement; -type FeatTrait = keyof ConfigPF2e["PF2E"]["featTraits"]; -export type { FeatOrFeatureCategory, FeatTrait }; diff --git a/types/src/module/item/feat/values.d.ts b/types/src/module/item/feat/values.d.ts deleted file mode 100644 index ecdcc7def..000000000 --- a/types/src/module/item/feat/values.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -declare const FEAT_CATEGORIES: Set<"class" | "general" | "skill" | "ancestry" | "bonus">; -declare const FEATURE_CATEGORIES: Set<"curse" | "calling" | "ancestryfeature" | "classfeature" | "deityboon" | "pfsboon">; -declare const FEAT_OR_FEATURE_CATEGORIES: Set | SetElement>; -export { FEATURE_CATEGORIES, FEAT_CATEGORIES, FEAT_OR_FEATURE_CATEGORIES }; diff --git a/types/src/module/item/helpers.d.ts b/types/src/module/item/helpers.d.ts deleted file mode 100644 index 0972b9517..000000000 --- a/types/src/module/item/helpers.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { EnrichmentOptionsPF2e } from "@system/text-editor.ts"; -import type { ItemSourcePF2e, ItemType, RawItemChatData } from "./base/data/index.ts"; -import type { ItemPF2e } from "./base/document.ts"; -import type { PhysicalItemPF2e } from "./physical/document.ts"; -import type { ItemInstances } from "./types.ts"; -type ItemOrSource = PreCreate | ItemPF2e; -/** Determine in a type-safe way whether an `ItemPF2e` or `ItemSourcePF2e` is among certain types */ -declare function itemIsOfType(item: ItemOrSource, ...types: TType[]): item is ItemInstances[TType] | ItemInstances[TType]["_source"]; -declare function itemIsOfType(item: ItemOrSource, ...types: TType[]): item is TType extends "physical" ? PhysicalItemPF2e | PhysicalItemPF2e["_source"] : TType extends ItemType ? ItemInstances[TType] | ItemInstances[TType]["_source"] : never; -declare function itemIsOfType(item: ItemOrSource, type: "physical"): item is PhysicalItemPF2e | PhysicalItemPF2e["_source"]; -/** Create a "reduced" item name; that is, one without an "Effect:" or similar prefix */ -declare function reduceItemName(label: string): string; -/** A helper class to finalize data for item summaries and chat cards */ -declare class ItemChatData { - #private; - item: ItemPF2e; - data: RawItemChatData; - htmlOptions: EnrichmentOptionsPF2e; - constructor({ item, data, htmlOptions }: ItemChatDataConstructorOptions); - /** Sanitized and convert stringy markdown into stringy HTML, with any initial HTML content stripped */ - static markdownToHTML(markdown: string): string; - process(): Promise; -} -interface ItemChatDataConstructorOptions { - item: ItemPF2e; - data: RawItemChatData; - htmlOptions?: EnrichmentOptionsPF2e; -} -export { ItemChatData, itemIsOfType, reduceItemName }; diff --git a/types/src/module/item/heritage/data.d.ts b/types/src/module/item/heritage/data.d.ts deleted file mode 100644 index a4f6998e7..000000000 --- a/types/src/module/item/heritage/data.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { AncestryTraits } from "@item/ancestry/data.ts"; -import { BaseItemSourcePF2e, ItemSystemData, ItemSystemSource } from "@item/base/data/system.ts"; -type HeritageSource = BaseItemSourcePF2e<"heritage", HeritageSystemSource>; -interface HeritageSystemSource extends ItemSystemSource { - ancestry: { - name: string; - slug: string; - uuid: ItemUUID; - } | null; - traits: AncestryTraits; - level?: never; -} -interface HeritageSystemData extends Omit, Omit { -} -export type { HeritageSource, HeritageSystemData, HeritageSystemSource }; diff --git a/types/src/module/item/heritage/document.d.ts b/types/src/module/item/heritage/document.d.ts deleted file mode 100644 index 036d3f7ef..000000000 --- a/types/src/module/item/heritage/document.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { CreatureTrait } from "@actor/creature/index.ts"; -import { ItemPF2e } from "@item"; -import { Rarity } from "@module/data.ts"; -import { HeritageSource, HeritageSystemData } from "./data.ts"; -declare class HeritagePF2e extends ItemPF2e { - static get validTraits(): Record; - get traits(): Set; - get rarity(): Rarity; - get isVersatile(): boolean; - /** Prepare a character's data derived from their heritage */ - prepareActorData(this: HeritagePF2e): void; - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; -} -interface HeritagePF2e extends ItemPF2e { - readonly _source: HeritageSource; - system: HeritageSystemData; -} -export { HeritagePF2e }; diff --git a/types/src/module/item/heritage/index.d.ts b/types/src/module/item/heritage/index.d.ts deleted file mode 100644 index a302ccaf8..000000000 --- a/types/src/module/item/heritage/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { HeritagePF2e } from "./document.ts"; -export { HeritageSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/heritage/sheet.d.ts b/types/src/module/item/heritage/sheet.d.ts deleted file mode 100644 index e0a9380a9..000000000 --- a/types/src/module/item/heritage/sheet.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -/// -/// -/// -import { AncestryPF2e, type HeritagePF2e } from "@item"; -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -export declare class HeritageSheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - _onDrop(event: DragEvent): Promise; -} -interface HeritageSheetData extends ItemSheetDataPF2e { - ancestry: AncestryPF2e | null; - ancestryRefBroken: boolean; -} -export {}; diff --git a/types/src/module/item/identification.d.ts b/types/src/module/item/identification.d.ts deleted file mode 100644 index 3ad64f513..000000000 --- a/types/src/module/item/identification.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { SkillSlug } from "@actor/types.ts"; -import { DCOptions } from "../dc.ts"; -import type { PhysicalItemPF2e } from "./physical/index.ts"; - -type MagicSkill = Extract; -type IdentifyMagicDCs = Record; -type IdentifyAlchemyDCs = { - crafting: number; -}; -interface IdentifyItemOptions extends DCOptions { - notMatchingTraditionModifier: number; -} -declare function getItemIdentificationDCs(item: PhysicalItemPF2e, { pwol, notMatchingTraditionModifier }: IdentifyItemOptions): IdentifyMagicDCs | IdentifyAlchemyDCs; -declare function getUnidentifiedPlaceholderImage(item: PhysicalItemPF2e): string; -export { getItemIdentificationDCs, getUnidentifiedPlaceholderImage }; -export type { IdentifyAlchemyDCs, IdentifyMagicDCs }; diff --git a/types/src/module/item/index.d.ts b/types/src/module/item/index.d.ts deleted file mode 100644 index 8baa83f4d..000000000 --- a/types/src/module/item/index.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -export * from "./base/document.ts"; -export { ABCItemPF2e } from "./abc/document.ts"; -export { AbstractEffectPF2e } from "./abstract-effect/document.ts"; -export { PhysicalItemPF2e } from "./physical/document.ts"; -export { AfflictionPF2e } from "./affliction/document.ts"; -export { ConditionPF2e } from "./condition/document.ts"; -export { EffectPF2e } from "./effect/document.ts"; -export { ArmorPF2e } from "./armor/document.ts"; -export { BookPF2e } from "./book/document.ts"; -export { ConsumablePF2e } from "./consumable/document.ts"; -export { ContainerPF2e } from "./container/document.ts"; -export { EquipmentPF2e } from "./equipment/document.ts"; -export { ShieldPF2e } from "./shield/document.ts"; -export { TreasurePF2e } from "./treasure/document.ts"; -export { WeaponPF2e } from "./weapon/document.ts"; -export { AncestryPF2e } from "./ancestry/document.ts"; -export { BackgroundPF2e } from "./background/document.ts"; -export { ClassPF2e } from "./class/document.ts"; -export { AbilityItemPF2e } from "./ability/document.ts"; -export { CampaignFeaturePF2e } from "./campaign-feature/document.ts"; -export { DeityPF2e } from "./deity/document.ts"; -export { FeatPF2e } from "./feat/document.ts"; -export { HeritagePF2e } from "./heritage/document.ts"; -export { KitPF2e } from "./kit/document.ts"; -export { LorePF2e } from "./lore.ts"; -export { MeleePF2e } from "./melee/document.ts"; -export { SpellPF2e } from "./spell/document.ts"; -export { SpellcastingEntryPF2e } from "./spellcasting-entry/document.ts"; -export * from "./base/sheet/index.ts"; diff --git a/types/src/module/item/kit/data.d.ts b/types/src/module/item/kit/data.d.ts deleted file mode 100644 index fbdb3acd3..000000000 --- a/types/src/module/item/kit/data.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import type { KitPF2e } from "@item"; -import { ItemSystemModel, ItemSystemSchema } from "@item/base/data/model.ts"; -import type { BaseItemSourcePF2e, ItemSystemSource } from "@item/base/data/system.ts"; -import type { ClassTrait } from "@item/class/types.ts"; -import { PriceField } from "@item/physical/schema.ts"; -import { NullField, RecordField, SlugField } from "@system/schema-data-fields.ts"; -import fields = foundry.data.fields; - -declare class KitEntriesField extends RecordField, fields.SchemaField, true, false, true, true> { - /** - * @param depth The recursion depth of this field:must be between 0 and 2 - */ - constructor(depth?: number); -} -declare class KitSystemData extends ItemSystemModel { - static defineSchema(): KitSystemSchema; -} -interface KitSystemData extends ItemSystemModel, Omit, "description"> { -} -type KitEntryData = NonNullable; -type KitEntryValueSchema = { - uuid: fields.DocumentUUIDField; - img: fields.FilePathField; - quantity: fields.NumberField; - name: fields.StringField; - isContainer: fields.BooleanField; - items: KitEntriesField | NullField; -}; -type KitSystemSchema = Omit & { - traits: fields.SchemaField<{ - otherTags: fields.ArrayField, string[], string[], true, false, true>; - value: fields.ArrayField, ClassTrait[], ClassTrait[], true, false, true>; - }>; - items: KitEntriesField; - price: PriceField; -}; -type KitSystemSource = SourceFromSchema & { - level?: never; - schema?: ItemSystemSource["schema"]; -}; -type KitSource = BaseItemSourcePF2e<"kit", KitSystemSource>; -export { KitSystemData }; -export type { KitEntryData, KitSource }; diff --git a/types/src/module/item/kit/document.d.ts b/types/src/module/item/kit/document.d.ts deleted file mode 100644 index 71999d680..000000000 --- a/types/src/module/item/kit/document.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ItemPF2e, type PhysicalItemPF2e } from "@item"; -import type { ClassTrait } from "@item/class/types.ts"; -import { Price } from "@item/physical/data.ts"; -import { Size } from "@module/data.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import { KitSource, KitSystemData, type KitEntryData } from "./data.ts"; -declare class KitPF2e extends ItemPF2e { - static get validTraits(): Record; - get entries(): KitEntryData[]; - get price(): Price; - /** Expand a tree of kit entry data into a list of physical items */ - createGrantedItems(options?: { - entries?: KitEntryData[]; - containerId?: string; - size?: Size; - }): Promise[]>; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface KitPF2e extends ItemPF2e { - readonly _source: KitSource; - system: KitSystemData; -} -export { KitPF2e }; diff --git a/types/src/module/item/kit/index.d.ts b/types/src/module/item/kit/index.d.ts deleted file mode 100644 index 3ab0f1475..000000000 --- a/types/src/module/item/kit/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { KitPF2e } from "./document.ts"; -export { KitSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/kit/sheet.d.ts b/types/src/module/item/kit/sheet.d.ts deleted file mode 100644 index f96b7a742..000000000 --- a/types/src/module/item/kit/sheet.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -/// -/// -/// -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import { CoinsPF2e } from "@item/physical/index.ts"; -import { KitEntryData } from "./data.ts"; -import { KitPF2e } from "./document.ts"; -declare class KitSheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - getData(options?: Partial): Promise; - protected _onDrop(event: DragEvent): Promise; - removeItem(event: MouseEvent): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface KitSheetData extends ItemSheetDataPF2e { - priceString: CoinsPF2e; - items: Record; -} -interface KitEntrySheetData extends KitEntryData { - fromWorld: boolean; -} -export { KitSheetPF2e }; diff --git a/types/src/module/item/lore.d.ts b/types/src/module/item/lore.d.ts deleted file mode 100644 index e683089ea..000000000 --- a/types/src/module/item/lore.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ItemPF2e, ItemSheetPF2e } from "@item"; -import { BaseItemSourcePF2e, ItemSystemData, ItemSystemSource, OtherTagsOnly } from "@item/base/data/system.ts"; -import { ZeroToFour } from "@module/data.ts"; -declare class LorePF2e extends ItemPF2e { -} -interface LorePF2e extends ItemPF2e { - readonly _source: LoreSource; - system: LoreSystemData; -} -type LoreSource = BaseItemSourcePF2e<"lore", LoreSystemSource>; -interface LoreSystemSource extends ItemSystemSource { - traits: OtherTagsOnly; - mod: { - value: number; - }; - proficient: { - value: ZeroToFour; - }; - variants?: Record; - level?: never; -} -interface LoreSystemData extends Omit, ItemSystemData { - level?: never; - traits: OtherTagsOnly; -} -declare class LoreSheetPF2e extends ItemSheetPF2e { -} -export { LorePF2e, LoreSheetPF2e }; -export type { LoreSource, LoreSystemData }; diff --git a/types/src/module/item/melee/data.d.ts b/types/src/module/item/melee/data.d.ts deleted file mode 100644 index 355e69770..000000000 --- a/types/src/module/item/melee/data.d.ts +++ /dev/null @@ -1,59 +0,0 @@ -import type { MeleePF2e } from "@item"; -import { ItemSystemModel, ItemSystemSchema } from "@item/base/data/model.ts"; -import type { - BaseItemSourcePF2e, - ItemFlagsPF2e, - ItemSystemSource, - ItemTraitsNoRarity, -} from "@item/base/data/system.ts"; -import type { WeaponMaterialData } from "@item/weapon/data.ts"; -import type { WeaponPropertyRuneType } from "@item/weapon/types.ts"; -import type { DamageCategoryUnique, DamageType } from "@system/damage/types.ts"; -import { RecordField, SlugField } from "@system/schema-data-fields.ts"; -import type { NPCAttackTrait } from "./types.ts"; -import fields = foundry.data.fields; - -type MeleeSource = BaseItemSourcePF2e<"melee", MeleeSystemSource> & { - flags: DeepPartial; -}; -type MeleeFlags = ItemFlagsPF2e & { - pf2e: { - linkedWeapon?: string; - }; -}; -declare class MeleeSystemData extends ItemSystemModel { - material: WeaponMaterialData; - /** Weapon property runes (or rather the effects thereof) added via rule element */ - runes: { - property: WeaponPropertyRuneType[]; - }; - static defineSchema(): NPCAttackSystemSchema; -} -interface MeleeSystemData extends ItemSystemModel, Omit, "description"> { -} -type NPCAttackSystemSchema = Omit & { - traits: fields.SchemaField<{ - otherTags: fields.ArrayField, string[], string[], true, false, true>; - value: fields.ArrayField, NPCAttackTrait[], NPCAttackTrait[], true, false, true>; - }>; - damageRolls: RecordField, fields.SchemaField<{ - damage: fields.StringField; - damageType: fields.StringField; - category: fields.StringField; - }>, true, false, true, true>; - /** The base attack modifier for this attack */ - bonus: fields.SchemaField<{ - value: fields.NumberField; - }>; - attackEffects: fields.SchemaField<{ - value: fields.ArrayField>; - }>; -}; -type MeleeSystemSource = SourceFromSchema & { - level?: never; - schema?: ItemSystemSource["schema"]; -}; -type NPCAttackDamage = SourceFromSchema["damageRolls"]["string"]; -type NPCAttackTraits = ItemTraitsNoRarity; -export { MeleeSystemData }; -export type { MeleeFlags, MeleeSource, MeleeSystemSource, NPCAttackDamage, NPCAttackTraits }; diff --git a/types/src/module/item/melee/document.d.ts b/types/src/module/item/melee/document.d.ts deleted file mode 100644 index ab5245873..000000000 --- a/types/src/module/item/melee/document.d.ts +++ /dev/null @@ -1,52 +0,0 @@ -/// -import type { ActorPF2e } from "@actor"; -import { ItemPF2e, type WeaponPF2e } from "@item"; -import type { RangeData } from "@item/types.ts"; -import type { BaseWeaponType, WeaponCategory, WeaponGroup } from "@item/weapon/types.ts"; -import type { ChatMessagePF2e } from "@module/chat-message/document.ts"; -import { ConvertedNPCDamage } from "@system/damage/weapon.ts"; -import type { MeleeFlags, MeleeSource, MeleeSystemData } from "./data.ts"; -import type { NPCAttackTrait } from "./types.ts"; -declare class MeleePF2e extends ItemPF2e { - /** Set during data preparation if a linked weapon is found */ - category: WeaponCategory | null; - group: WeaponGroup | null; - baseType: BaseWeaponType | null; - static get validTraits(): Record; - get traits(): Set; - get isMelee(): boolean; - get isRanged(): boolean; - get isThrown(): boolean; - /** The attribute this attack is based on: determines which of the Clumsy and Enfeebled conditions apply */ - get defaultAttribute(): "str" | "dex"; - get attackModifier(): number; - get reach(): number | null; - /** The range maximum and possibly also increment if a ranged attack; otherwise null */ - get range(): RangeData | null; - /** The first of this attack's damage instances */ - get baseDamage(): ConvertedNPCDamage; - get dealsDamage(): boolean; - /** Additional effects that are part of this attack */ - get attackEffects(): string[]; - get isMagical(): boolean; - /** The linked inventory weapon, if this melee item was spawned from one */ - get linkedWeapon(): WeaponPF2e | null; - protected _initialize(options?: Record): void; - prepareBaseData(): void; - /** Set weapon category, group, and base if that information is available */ - prepareSiblingData(): void; - prepareActorData(): void; - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - /** Treat this item like a strike in this context and post it as one */ - toMessage(_event?: MouseEvent | JQuery.TriggeredEvent, { create }?: { - create?: boolean; - }): Promise; -} -interface MeleePF2e extends ItemPF2e { - flags: MeleeFlags; - readonly _source: MeleeSource; - system: MeleeSystemData; -} -export { MeleePF2e }; diff --git a/types/src/module/item/melee/index.d.ts b/types/src/module/item/melee/index.d.ts deleted file mode 100644 index 8886baedd..000000000 --- a/types/src/module/item/melee/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from "./data.ts"; -export { MeleePF2e } from "./document.ts"; -export { MeleeSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/melee/sheet.d.ts b/types/src/module/item/melee/sheet.d.ts deleted file mode 100644 index cc4579a83..000000000 --- a/types/src/module/item/melee/sheet.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -/// -/// -/// -import { ItemSheetDataPF2e, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import { DamageCategoryUnique } from "@system/damage/types.ts"; -import type { MeleePF2e } from "./index.ts"; -export declare class MeleeSheetPF2e extends ItemSheetPF2e { - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface MeleeSheetData extends ItemSheetDataPF2e { - damageTypes: ConfigPF2e["PF2E"]["damageTypes"]; - damageCategories: Record; - attackEffects: SheetOptions; -} -export {}; diff --git a/types/src/module/item/melee/types.d.ts b/types/src/module/item/melee/types.d.ts deleted file mode 100644 index 64632a908..000000000 --- a/types/src/module/item/melee/types.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -type NPCAttackTrait = keyof typeof CONFIG.PF2E.npcAttackTraits; -export type { NPCAttackTrait }; diff --git a/types/src/module/item/physical/bulk.d.ts b/types/src/module/item/physical/bulk.d.ts deleted file mode 100644 index bf60669ca..000000000 --- a/types/src/module/item/physical/bulk.d.ts +++ /dev/null @@ -1,61 +0,0 @@ -import { Size } from "@module/data.ts"; -interface StackDefinition { - size: number; - lightBulk: number; -} -type StackDefinitions = Record; -/** - * hard coded for now but could be made configurable later on. - * Describes each stack group by how much items belong in a stack - * and how much bulk a single stack produces. Bulk type has to be - * included because coins don't add light bulk below 1000, just 1 - * bulk per 1000 coins - */ -declare const STACK_DEFINITIONS: StackDefinitions; -declare class Bulk { - /** The bulk value as a number, with negligible being 0, light being 0.1, and bulk (the unit) as an integer */ - readonly value: number; - constructor(value?: number); - get normal(): number; - get light(): number; - get isNegligible(): boolean; - get isLight(): boolean; - toLightUnits(): number; - /** Increase the bulk by one step: negligible becomes light, light becomes 1 bulk, and 1+ bulk increases by 1 */ - increment(): Bulk; - plus(other: number | Bulk): Bulk; - minus(other: number | Bulk): Bulk; - times(factor: number): Bulk; - /** Produce strings like "—", "L", "2L", "3", "3; L", "4; 3L" to display bulk in the frontend bulk column */ - toString(): string; - double(): Bulk; - halve(): Bulk; - /** - * See https://2e.aonprd.com/Rules.aspx?ID=258 and https://2e.aonprd.com/Rules.aspx?ID=257 are fundamentally - * at odds with each other and there is no way to implement this RAW - * - * RAI: - * "Because the way that a creature treats Bulk and the Bulk of gear sized for it scale the same way, - * Tiny or Large (or larger) creatures can usually wear and carry about the same amount of appropriately - * sized gear as a Medium creature." - * - * Looking at table 6-20 the following rules can be deduced: - * if item size < creature size: - * for each step until you reach the target size halve bulk - * 1 bulk halved becomes L bulk - * L bulk halved becomes negligible bulk - * - * if item size > creature size: - * for each step until you reach the target size double bulk - * L bulk doubled becomes 1 bulk - * negligible bulk doubled becomes L bulk unless it's a tiny item, then it stays at negligible bulk - * - * ignore everything else - * - * @param bulk - * @param itemSize - * @param actorSize - */ - convertToSize(itemSize: Size, actorSize: Size): Bulk; -} -export { Bulk, STACK_DEFINITIONS }; diff --git a/types/src/module/item/physical/coins.d.ts b/types/src/module/item/physical/coins.d.ts deleted file mode 100644 index 03f674c2a..000000000 --- a/types/src/module/item/physical/coins.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { Size } from "@module/data.ts"; -import { Coins, PartialPrice } from "./data.ts"; -/** Coins class that exposes methods to perform operations on coins without side effects */ -declare class CoinsPF2e implements Coins { - cp: number; - sp: number; - gp: number; - pp: number; - constructor(data?: Coins | null); - /** The total value of this coins in copper */ - get copperValue(): number; - get goldValue(): number; - plus(coins: Coins): CoinsPF2e; - /** Multiply by a number and clean up result */ - scale(factor: number): CoinsPF2e; - /** Increase a price for larger physical-item sizes */ - adjustForSize(size: Size): CoinsPF2e; - /** Returns a coins data object with all zero value denominations omitted */ - toObject(): Coins; - /** Parses a price string such as "5 gp" and returns a new CoinsPF2e object */ - static fromString(coinString: string, quantity?: number): CoinsPF2e; - static fromPrice(price: PartialPrice, factor: number): CoinsPF2e; - /** Creates a new price string such as "5 gp" from this object */ - toString(): string; -} -declare const coinCompendiumIds: { - pp: string; - gp: string; - sp: string; - cp: string; -}; -export { CoinsPF2e, coinCompendiumIds }; diff --git a/types/src/module/item/physical/data.d.ts b/types/src/module/item/physical/data.d.ts deleted file mode 100644 index 228d8eb33..000000000 --- a/types/src/module/item/physical/data.d.ts +++ /dev/null @@ -1,148 +0,0 @@ -import { AttributeString } from "@actor/types.ts"; -import { AbilityTrait } from "@item/ability/types.ts"; -import { PhysicalItemSource } from "@item/base/data/index.ts"; -import { Size, TraitsWithRarity, ValuesList, ZeroToTwo } from "@module/data.ts"; -import { MaterialDamageEffect } from "@system/damage/types.ts"; -import { ActionCost, BaseItemSourcePF2e, Frequency, ItemSystemData, ItemSystemSource } from "../base/data/system.ts"; -import type { ITEM_CARRY_TYPES } from "../base/data/values.ts"; -import type { CoinsPF2e } from "./helpers.ts"; -import type { PhysicalItemTrait, PhysicalItemType, PreciousMaterialGrade, PreciousMaterialType } from "./types.ts"; -import type { UsageDetails } from "./usage.ts"; - -type ItemCarryType = (typeof ITEM_CARRY_TYPES)[number]; -type BasePhysicalItemSource = BaseItemSourcePF2e; -interface PhysicalSystemSource extends ItemSystemSource { - level: { - value: number; - }; - traits: PhysicalItemTraits; - quantity: number; - baseItem: string | null; - bulk: { - value: number; - }; - hp: PhysicalItemHPSource; - hardness: number; - price: PartialPrice; - equipped: EquippedData; - identification: IdentificationSource; - containerId: string | null; - material: ItemMaterialSource; - size: Size; - usage?: { - value: string; - }; - activations?: Record; - temporary?: boolean; - subitems?: PhysicalItemSource[]; - /** - * Data for apex items: the attribute upgraded and, in case of multiple apex items, whether the upgrade has been - * selected - */ - apex?: { - attribute: AttributeString; - selected?: boolean; - }; -} -interface IdentificationSource { - status: IdentificationStatus; - unidentified: MystifiedData; - misidentified: object; -} -interface ItemMaterialSource { - grade: PreciousMaterialGrade | null; - type: PreciousMaterialType | null; -} -interface PhysicalSystemData extends Omit, Omit { - apex?: { - attribute: AttributeString; - selected: boolean; - }; - hp: PhysicalItemHitPoints; - price: Price; - bulk: BulkData; - material: ItemMaterialData; - traits: PhysicalItemTraits; - temporary: boolean; - identification: IdentificationData; - usage: UsageDetails; - stackGroup: string | null; -} -type Investable = TData & { - equipped: { - invested: boolean | null; - }; -}; -/** The item's bulk in Light bulk units, given the item is of medium size */ -interface BulkData { - /** Held or stowed bulk */ - heldOrStowed: number; - /** The applicable bulk value between the above two */ - value: number; - /** The quantity of this item necessary to amount to the above bulk quantities: anything less is negligible */ - per: number; -} -type IdentificationStatus = "identified" | "unidentified"; -interface MystifiedData { - name: string; - img: ImageFilePath; - data: { - description: { - value: string; - }; - }; -} -interface ItemMaterialData extends ItemMaterialSource { - effects: MaterialDamageEffect[]; -} -type IdentifiedData = DeepPartial; -interface IdentificationData extends IdentificationSource { - identified: MystifiedData; -} -type EquippedData = { - carryType: ItemCarryType; - inSlot?: boolean; - handsHeld?: ZeroToTwo; - invested?: boolean | null; -}; -interface PhysicalItemTraits extends TraitsWithRarity { - otherTags: string[]; -} -interface ItemActivation { - id: string; - description: { - value: string; - }; - actionCost: ActionCost; - components: { - command: boolean; - envision: boolean; - interact: boolean; - cast: boolean; - }; - frequency?: Frequency; - traits: ValuesList; -} -interface PhysicalItemHPSource { - value: number; - max: number; -} -interface PhysicalItemHitPoints extends PhysicalItemHPSource { - brokenThreshold: number; -} -type Coins = { - pp?: number; - gp?: number; - sp?: number; - cp?: number; -}; -interface PartialPrice { - value: Coins; - per?: number; - /** Whether the price adjusts according to its size */ - sizeSensitive?: boolean; -} -interface Price extends Required { - value: CoinsPF2e; -} -export type { BasePhysicalItemSource, BulkData, Coins, EquippedData, IdentificationData, IdentificationStatus, IdentifiedData, Investable, ItemActivation, ItemCarryType, ItemMaterialData, ItemMaterialSource, MystifiedData, PartialPrice, PhysicalItemHPSource, PhysicalItemHitPoints, PhysicalItemTrait, PhysicalItemTraits, PhysicalSystemData, PhysicalSystemSource, Price, }; diff --git a/types/src/module/item/physical/document.d.ts b/types/src/module/item/physical/document.d.ts deleted file mode 100644 index aab08b824..000000000 --- a/types/src/module/item/physical/document.d.ts +++ /dev/null @@ -1,151 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { type ContainerPF2e, ItemPF2e } from "@item"; -import type { ItemSourcePF2e, PhysicalItemSource, RawItemChatData, TraitChatData } from "@item/base/data/index.ts"; -import type { Rarity, Size, ZeroToTwo } from "@module/data.ts"; -import type { EffectSpinoff } from "@module/rules/rule-element/effect-spinoff/spinoff.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import { Bulk } from "./bulk.ts"; -import type { - IdentificationStatus, - ItemActivation, - ItemCarryType, - ItemMaterialData, - MystifiedData, - PhysicalItemHitPoints, - PhysicalItemTrait, - PhysicalSystemData, - Price, -} from "./data.ts"; -import { CoinsPF2e } from "./helpers.ts"; - -declare abstract class PhysicalItemPF2e extends ItemPF2e { - /** The item in which this item is embedded */ - parentItem: PhysicalItemPF2e | null; - /** - * The cached container of this item, if in a container, or null - * @ignore - */ - private _container?; - /** Doubly-embedded adjustments, attachments, talismans etc. */ - subitems: Collection>; - /** A map of effect spinoff objects, which can be used to create new effects from using certain items */ - effectSpinoffs: Map; - constructor(data: PreCreate, context?: PhysicalItemConstructionContext); - get level(): number; - get rarity(): Rarity; - get traits(): Set; - get quantity(): number; - get size(): Size; - get hitPoints(): PhysicalItemHitPoints; - get hardness(): number; - get isEquipped(): boolean; - get carryType(): ItemCarryType; - /** Whether the item is currently being held */ - get isHeld(): boolean; - /** The number of hands being used to hold this item */ - get handsHeld(): ZeroToTwo; - /** Whether the item is currently being worn */ - get isWorn(): boolean; - /** Whether the item has an attached (or affixed, applied, etc.) usage */ - get isAttachable(): boolean; - get price(): Price; - /** The monetary value of the entire item stack */ - get assetValue(): CoinsPF2e; - get identificationStatus(): IdentificationStatus; - get isIdentified(): boolean; - get isAlchemical(): boolean; - get isMagical(): boolean; - get isInvested(): boolean | null; - get isCursed(): boolean; - get isTemporary(): boolean; - get isShoddy(): boolean; - get isDamaged(): boolean; - get isBroken(): boolean; - get isDestroyed(): boolean; - get material(): ItemMaterialData; - /** Whether this is a specific magic item: applicable to armor, shields, and weapons */ - get isSpecific(): boolean; - get isInContainer(): boolean; - /** Returns true if any of this item's containers is a stowing container */ - get isStowed(): boolean; - /** Get this item's container, returning null if it is not in a container */ - get container(): ContainerPF2e | null; - /** Returns the bulk of this item and all sub-containers */ - get bulk(): Bulk; - get activations(): (ItemActivation & { - componentsLabel: string; - })[]; - get uuid(): ItemUUID; - /** Whether other items can be attached (or affixed, applied, etc.) to this item */ - acceptsSubitem(candidate: PhysicalItemPF2e): boolean; - /** Generate a list of strings for use in predication */ - getRollOptions(prefix: string, options?: { - includeGranter?: boolean; - }): string[]; - protected _initialize(options?: Record): void; - prepareBaseData(): void; - /** Refresh certain derived properties in case of special data preparation from subclasses */ - prepareDerivedData(): void; - prepareSiblingData(): void; - /** After item alterations have occurred, ensure that this item's hit points are no higher than its maximum */ - onPrepareSynthetics(): void; - prepareActorData(): void; - getEmbeddedDocument(embeddedName: string, id: string, { strict }: { - strict: true; - }): foundry.abstract.Document; - getEmbeddedDocument(embeddedName: string, id: string, { strict }: { - strict: false; - }): foundry.abstract.Document | undefined; - getEmbeddedDocument(embeddedName: string, id: string, options?: { - strict?: boolean; - }): foundry.abstract.Document | undefined; - /** Can the provided item stack with this item? */ - isStackableWith(item: PhysicalItemPF2e): boolean; - /** Combine this item with a target item if possible */ - stackWith(targetItem: PhysicalItemPF2e): Promise; - /** - * Move this item somewhere else in the inventory, possibly before or after another item or in or out of a container. - * If this item and the target item are stackable they will be stacked automatically - * @param options Options to control where this item is moved to - * @param options.relativeTo An optional target item to sort this item relative to - * @param options.sortBefore Should this item be sorted before or after the target item? - * @param options.toContainer An optional container to move this item into. If the target item is in a container this can be omitted - * @param options.render Render the update? Overridden by moving the item in or out of a container. Defaults to true - * @returns - */ - move({ relativeTo, sortBefore, toContainer, toStack, render, }: { - relativeTo?: PhysicalItemPF2e; - sortBefore?: boolean; - toContainer?: ContainerPF2e | null; - toStack?: PhysicalItemPF2e; - render?: boolean; - }): Promise; - getMystifiedData(status: IdentificationStatus, _options?: Record): MystifiedData; - getChatData(): Promise; - setIdentificationStatus(status: IdentificationStatus): Promise; - generateUnidentifiedName({ typeOnly }?: { - typeOnly?: boolean; - }): string; - /** Updates this container's cache while also resolving cyclical references. Skips if already cached */ - protected updateContainerCache(seen?: string[]): void; - /** Include mystification-related rendering instructions for views that will display this data. */ - traitChatData(dictionary?: Record): TraitChatData[]; - /** Redirect subitem updates to the parent item */ - update(data: Record, operation?: Partial>): Promise; - /** Redirect subitem deletes to parent-item updates */ - delete(operation?: Partial>): Promise; - /** Set to unequipped upon acquiring */ - protected _preCreate(data: this["_source"], options: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _preUpdate(changed: DeepPartial, operation: PhysicalItemUpdateOperation, user: UserPF2e): Promise; -} -interface PhysicalItemPF2e extends ItemPF2e { - readonly _source: PhysicalItemSource; - system: PhysicalSystemData; -} -interface PhysicalItemConstructionContext extends DocumentConstructionContext { - parentItem?: PhysicalItemPF2e; -} -interface PhysicalItemUpdateOperation extends DatabaseUpdateOperation { - checkHP?: boolean; -} -export { PhysicalItemPF2e, type PhysicalItemConstructionContext }; diff --git a/types/src/module/item/physical/helpers.d.ts b/types/src/module/item/physical/helpers.d.ts deleted file mode 100644 index a9007ba54..000000000 --- a/types/src/module/item/physical/helpers.d.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { ActorPF2e } from "@actor"; -import type { ContainerPF2e, PhysicalItemPF2e } from "@item"; -import { PhysicalItemSource } from "@item/base/data/index.ts"; -import { ContainerBulkData } from "@item/container/data.ts"; -import { Rarity } from "@module/data.ts"; -import { CoinsPF2e } from "./coins.ts"; -import { BulkData, EquippedData } from "./data.ts"; - -declare function computeLevelRarityPrice(item: PhysicalItemPF2e): { - level: number; - rarity: Rarity; - price: CoinsPF2e; -}; -/** - * Generate a modified item name based on precious materials and runes. Currently only armor and weapon documents - * have significant implementations. - */ -declare function generateItemName(item: PhysicalItemPF2e): string; -/** Validate HP changes to a physical item and also adjust current HP when max HP changes */ -declare function handleHPChange(item: PhysicalItemPF2e, changed: DeepPartial): void; -/** Add and adjust properties on an item's bulk data object */ -declare function prepareBulkData(item: TItem): TItem extends ContainerPF2e ? ContainerBulkData : BulkData; -/** - * Detach a subitem from another physical item, either creating it as a new, independent item or incrementing the - * quantity of aan existing stack. - */ -declare function detachSubitem(subitem: PhysicalItemPF2e, skipConfirm: boolean): Promise; -/** Clone an item, sizing it appropriately for the actor. For larger PCs, set the price's sensitity to false. */ -declare function sizeItemForActor(item: TItem, actor: ActorPF2e): TItem; -/** Returns the default equip status for this item, called in order to "reset" the equip status */ -declare function getDefaultEquipStatus(item: PhysicalItemPF2e): EquippedData; -export { coinCompendiumIds } from "./coins.ts"; -export { CoinsPF2e, computeLevelRarityPrice, detachSubitem, generateItemName, getDefaultEquipStatus, handleHPChange, prepareBulkData, sizeItemForActor, }; diff --git a/types/src/module/item/physical/index.d.ts b/types/src/module/item/physical/index.d.ts deleted file mode 100644 index 6fa25aaf1..000000000 --- a/types/src/module/item/physical/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export { PhysicalItemPF2e } from "./document.ts"; -export * from "./bulk.ts"; -export * from "./data.ts"; -export * from "./helpers.ts"; -export * from "./materials.ts"; -export * from "./runes.ts"; -export * from "./sheet.ts"; -export * from "./types.ts"; -export * from "./usage.ts"; diff --git a/types/src/module/item/physical/materials.d.ts b/types/src/module/item/physical/materials.d.ts deleted file mode 100644 index a04d3f31e..000000000 --- a/types/src/module/item/physical/materials.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import type { Rarity } from "@module/data.ts"; -import type { PhysicalItemPF2e } from "./document.ts"; -import type { PreciousMaterialGrade, PreciousMaterialType } from "./types.ts"; - -interface MaterialGradeData { - level: number; - price: number; - hardness?: number; - maxHP?: number; - rarity: Rarity; -} -type MaterialValuationData = Partial>>; -declare function getMaterialValuationData(item: PhysicalItemPF2e): MaterialGradeData | null; -declare const OBJECT_MATERIAL_VALUATION_DATA: MaterialValuationData; -declare const MATERIAL_DATA: { - armor: Partial>>; - object: Partial>>; - shield: { - shield: Partial>>; - buckler: Partial>>; - towerShield: Partial>>; - }; - weapon: Partial>>; -}; -export { MATERIAL_DATA, OBJECT_MATERIAL_VALUATION_DATA, getMaterialValuationData }; -export type { MaterialGradeData, MaterialValuationData }; diff --git a/types/src/module/item/physical/runes.d.ts b/types/src/module/item/physical/runes.d.ts deleted file mode 100644 index 87d726217..000000000 --- a/types/src/module/item/physical/runes.d.ts +++ /dev/null @@ -1,249 +0,0 @@ -import type { CreatureTrait } from "@actor/creature/index.ts"; -import { - DamageDiceParameters, - DamageDicePF2e, - ModifierAdjustment, - ModifierObjectParams, - ModifierPF2e, -} from "@actor/modifiers.ts"; -import { ResistanceType } from "@actor/types.ts"; -import type { ArmorPF2e, MeleePF2e, PhysicalItemPF2e, WeaponPF2e } from "@item"; -import { ArmorPropertyRuneType, ResilientRuneType } from "@item/armor/types.ts"; -import { SpellTrait } from "@item/spell/types.ts"; -import { StrikingRuneType, WeaponPropertyRuneType } from "@item/weapon/types.ts"; -import { OneToFour, Rarity, ZeroToFour, ZeroToSix } from "@module/data.ts"; -import { RollNoteSource } from "@module/notes.ts"; -import { StrikeAdjustment } from "@module/rules/synthetics.ts"; -import { DegreeOfSuccessAdjustment } from "@system/degree-of-success.ts"; - -declare function getPropertyRuneSlots(item: WeaponPF2e | ArmorPF2e): ZeroToFour; -/** Remove duplicate and lesser versions from an array of property runes */ -declare function prunePropertyRunes(runes: (string | null)[], validTypes: Record): T[]; -declare function getRuneValuationData(item: PhysicalItemPF2e): RuneData[]; -declare function getPropertyRuneDegreeAdjustments(item: WeaponPF2e): DegreeOfSuccessAdjustment[]; -declare function getPropertyRuneDamage(weapon: WeaponPF2e | MeleePF2e, runes: WeaponPropertyRuneType[], options: Set): (DamageDicePF2e | ModifierPF2e)[]; -declare function getPropertyRuneStrikeAdjustments(runes: WeaponPropertyRuneType[]): StrikeAdjustment[]; -declare function getPropertyRuneModifierAdjustments(runes: WeaponPropertyRuneType[]): ModifierAdjustment[]; -type RuneDiceProperty = "slug" | "damageType" | "category" | "predicate" | "critical"; -type RuneAdditionalDamageDice = Partial> & Required>; -type RuneAdditionalDamageModifier = Omit & { - modifier: string | number; -}; -type RuneAdditionalDamage = RuneAdditionalDamageDice | RuneAdditionalDamageModifier; -type RuneTrait = SpellTrait | CreatureTrait | "saggorak"; -interface RuneData { - name: string; - level: number; - price: number; - rarity: Rarity; - traits: RuneTrait[]; -} -interface PotencyRuneData extends RuneData { - value: OneToFour; -} -interface SecondaryFundamentalRuneData extends RuneData { - slug: TSlug; -} -interface ReinforcingRuneData extends RuneData { - hardness: { - increase: number; - max: number; - }; - maxHP: { - increase: number; - max: number; - }; -} -type FundamentalShieldRuneData = { - reinforcing: Record; -}; -interface PropertyRuneData extends RuneData { - slug: TSlug; -} -interface ArmorPropertyRuneData extends PropertyRuneData { -} -interface WeaponPropertyRuneData extends PropertyRuneData { - attack?: { - /** Degree-of-success adjustments */ - dosAdjustments?: DegreeOfSuccessAdjustment[]; - notes?: RuneNoteData[]; - }; - damage?: { - additional?: RuneAdditionalDamage[]; - notes?: RuneNoteData[]; - adjustments?: ModifierAdjustment[]; - /** - * A list of resistances this weapon's damage will ignore--not limited to damage from the rune. - * If `max` is numeric, the resistance ignored will be equal to the lower of the provided maximum and the - * target's resistance. - */ - ignoredResistances?: { - type: ResistanceType; - max: number; - }[]; - }; - strikeAdjustments?: Pick[]; -} -/** Title and text are mandatory for these notes */ -interface RuneNoteData extends Pick { - title: string; - text: string; -} -export declare const ARMOR_PROPERTY_RUNES: { - [T in ArmorPropertyRuneType]: ArmorPropertyRuneData; -}; -declare const RUNE_DATA: { - armor: { - property: { - shadow: ArmorPropertyRuneData<"shadow">; - ethereal: ArmorPropertyRuneData<"ethereal">; - portable: ArmorPropertyRuneData<"portable">; - acidResistant: ArmorPropertyRuneData<"acidResistant">; - advancing: ArmorPropertyRuneData<"advancing">; - aimAiding: ArmorPropertyRuneData<"aimAiding">; - antimagic: ArmorPropertyRuneData<"antimagic">; - assisting: ArmorPropertyRuneData<"assisting">; - bitter: ArmorPropertyRuneData<"bitter">; - coldResistant: ArmorPropertyRuneData<"coldResistant">; - deathless: ArmorPropertyRuneData<"deathless">; - electricityResistant: ArmorPropertyRuneData<"electricityResistant">; - energyAdaptive: ArmorPropertyRuneData<"energyAdaptive">; - fireResistant: ArmorPropertyRuneData<"fireResistant">; - fortification: ArmorPropertyRuneData<"fortification">; - glamered: ArmorPropertyRuneData<"glamered">; - gliding: ArmorPropertyRuneData<"gliding">; - greaterAcidResistant: ArmorPropertyRuneData<"greaterAcidResistant">; - greaterAdvancing: ArmorPropertyRuneData<"greaterAdvancing">; - greaterColdResistant: ArmorPropertyRuneData<"greaterColdResistant">; - greaterDread: ArmorPropertyRuneData<"greaterDread">; - greaterElectricityResistant: ArmorPropertyRuneData<"greaterElectricityResistant">; - greaterFireResistant: ArmorPropertyRuneData<"greaterFireResistant">; - greaterFortification: ArmorPropertyRuneData<"greaterFortification">; - greaterInvisibility: ArmorPropertyRuneData<"greaterInvisibility">; - greaterQuenching: ArmorPropertyRuneData<"greaterQuenching">; - greaterReady: ArmorPropertyRuneData<"greaterReady">; - greaterShadow: ArmorPropertyRuneData<"greaterShadow">; - greaterSlick: ArmorPropertyRuneData<"greaterSlick">; - greaterStanching: ArmorPropertyRuneData<"greaterStanching">; - greaterSwallowSpike: ArmorPropertyRuneData<"greaterSwallowSpike">; - greaterWinged: ArmorPropertyRuneData<"greaterWinged">; - immovable: ArmorPropertyRuneData<"immovable">; - implacable: ArmorPropertyRuneData<"implacable">; - invisibility: ArmorPropertyRuneData<"invisibility">; - lesserDread: ArmorPropertyRuneData<"lesserDread">; - magnetizing: ArmorPropertyRuneData<"magnetizing">; - majorQuenching: ArmorPropertyRuneData<"majorQuenching">; - majorShadow: ArmorPropertyRuneData<"majorShadow">; - majorSlick: ArmorPropertyRuneData<"majorSlick">; - majorStanching: ArmorPropertyRuneData<"majorStanching">; - majorSwallowSpike: ArmorPropertyRuneData<"majorSwallowSpike">; - malleable: ArmorPropertyRuneData<"malleable">; - misleading: ArmorPropertyRuneData<"misleading">; - moderateDread: ArmorPropertyRuneData<"moderateDread">; - quenching: ArmorPropertyRuneData<"quenching">; - raiment: ArmorPropertyRuneData<"raiment">; - ready: ArmorPropertyRuneData<"ready">; - rockBraced: ArmorPropertyRuneData<"rockBraced">; - sinisterKnight: ArmorPropertyRuneData<"sinisterKnight">; - sizeChanging: ArmorPropertyRuneData<"sizeChanging">; - slick: ArmorPropertyRuneData<"slick">; - soaring: ArmorPropertyRuneData<"soaring">; - stanching: ArmorPropertyRuneData<"stanching">; - swallowSpike: ArmorPropertyRuneData<"swallowSpike">; - trueQuenching: ArmorPropertyRuneData<"trueQuenching">; - trueStanching: ArmorPropertyRuneData<"trueStanching">; - winged: ArmorPropertyRuneData<"winged">; - }; - potency: Record; - resilient: Record | null>; - }; - shield: FundamentalShieldRuneData; - weapon: { - property: { - holy: WeaponPropertyRuneData<"holy">; - unholy: WeaponPropertyRuneData<"unholy">; - vorpal: WeaponPropertyRuneData<"vorpal">; - astral: WeaponPropertyRuneData<"astral">; - speed: WeaponPropertyRuneData<"speed">; - ancestralEchoing: WeaponPropertyRuneData<"ancestralEchoing">; - anchoring: WeaponPropertyRuneData<"anchoring">; - ashen: WeaponPropertyRuneData<"ashen">; - authorized: WeaponPropertyRuneData<"authorized">; - bane: WeaponPropertyRuneData<"bane">; - bloodbane: WeaponPropertyRuneData<"bloodbane">; - bloodthirsty: WeaponPropertyRuneData<"bloodthirsty">; - brilliant: WeaponPropertyRuneData<"brilliant">; - called: WeaponPropertyRuneData<"called">; - coating: WeaponPropertyRuneData<"coating">; - conducting: WeaponPropertyRuneData<"conducting">; - corrosive: WeaponPropertyRuneData<"corrosive">; - crushing: WeaponPropertyRuneData<"crushing">; - cunning: WeaponPropertyRuneData<"cunning">; - dancing: WeaponPropertyRuneData<"dancing">; - deathdrinking: WeaponPropertyRuneData<"deathdrinking">; - decaying: WeaponPropertyRuneData<"decaying">; - demolishing: WeaponPropertyRuneData<"demolishing">; - disrupting: WeaponPropertyRuneData<"disrupting">; - earthbinding: WeaponPropertyRuneData<"earthbinding">; - energizing: WeaponPropertyRuneData<"energizing">; - extending: WeaponPropertyRuneData<"extending">; - fanged: WeaponPropertyRuneData<"fanged">; - fearsome: WeaponPropertyRuneData<"fearsome">; - flaming: WeaponPropertyRuneData<"flaming">; - flickering: WeaponPropertyRuneData<"flickering">; - flurrying: WeaponPropertyRuneData<"flurrying">; - frost: WeaponPropertyRuneData<"frost">; - ghostTouch: WeaponPropertyRuneData<"ghostTouch">; - giantKilling: WeaponPropertyRuneData<"giantKilling">; - greaterGiantKilling: WeaponPropertyRuneData<"greaterGiantKilling">; - greaterAnchoring: WeaponPropertyRuneData<"greaterAnchoring">; - greaterAshen: WeaponPropertyRuneData<"greaterAshen">; - greaterAstral: WeaponPropertyRuneData<"greaterAstral">; - greaterBloodbane: WeaponPropertyRuneData<"greaterBloodbane">; - greaterBrilliant: WeaponPropertyRuneData<"greaterBrilliant">; - greaterCorrosive: WeaponPropertyRuneData<"greaterCorrosive">; - greaterCrushing: WeaponPropertyRuneData<"greaterCrushing">; - greaterDecaying: WeaponPropertyRuneData<"greaterDecaying">; - greaterDisrupting: WeaponPropertyRuneData<"greaterDisrupting">; - greaterExtending: WeaponPropertyRuneData<"greaterExtending">; - greaterFanged: WeaponPropertyRuneData<"greaterFanged">; - greaterFearsome: WeaponPropertyRuneData<"greaterFearsome">; - greaterFlaming: WeaponPropertyRuneData<"greaterFlaming">; - greaterFrost: WeaponPropertyRuneData<"greaterFrost">; - greaterHauling: WeaponPropertyRuneData<"greaterHauling">; - greaterImpactful: WeaponPropertyRuneData<"greaterImpactful">; - greaterRooting: WeaponPropertyRuneData<"greaterRooting">; - greaterShock: WeaponPropertyRuneData<"greaterShock">; - greaterThundering: WeaponPropertyRuneData<"greaterThundering">; - grievous: WeaponPropertyRuneData<"grievous">; - hauling: WeaponPropertyRuneData<"hauling">; - hopeful: WeaponPropertyRuneData<"hopeful">; - hooked: WeaponPropertyRuneData<"hooked">; - impactful: WeaponPropertyRuneData<"impactful">; - impossible: WeaponPropertyRuneData<"impossible">; - keen: WeaponPropertyRuneData<"keen">; - kinWarding: WeaponPropertyRuneData<"kinWarding">; - majorFanged: WeaponPropertyRuneData<"majorFanged">; - majorRooting: WeaponPropertyRuneData<"majorRooting">; - merciful: WeaponPropertyRuneData<"merciful">; - nightmare: WeaponPropertyRuneData<"nightmare">; - pacifying: WeaponPropertyRuneData<"pacifying">; - returning: WeaponPropertyRuneData<"returning">; - rooting: WeaponPropertyRuneData<"rooting">; - serrating: WeaponPropertyRuneData<"serrating">; - shifting: WeaponPropertyRuneData<"shifting">; - shock: WeaponPropertyRuneData<"shock">; - shockwave: WeaponPropertyRuneData<"shockwave">; - spellStoring: WeaponPropertyRuneData<"spellStoring">; - swarming: WeaponPropertyRuneData<"swarming">; - thundering: WeaponPropertyRuneData<"thundering">; - trueRooting: WeaponPropertyRuneData<"trueRooting">; - underwater: WeaponPropertyRuneData<"underwater">; - wounding: WeaponPropertyRuneData<"wounding">; - }; - potency: Record; - striking: Record | null>; - }; -}; -export { RUNE_DATA, getPropertyRuneDamage, getPropertyRuneDegreeAdjustments, getPropertyRuneModifierAdjustments, getPropertyRuneSlots, getPropertyRuneStrikeAdjustments, getRuneValuationData, prunePropertyRunes, }; -export type { RuneData, WeaponPropertyRuneData }; diff --git a/types/src/module/item/physical/schema.d.ts b/types/src/module/item/physical/schema.d.ts deleted file mode 100644 index 197f699ea..000000000 --- a/types/src/module/item/physical/schema.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { CoinsPF2e } from "./coins.ts"; -import type { Price } from "./index.ts"; -import fields = foundry.data.fields; - -declare class PriceField extends fields.SchemaField, Price> { - constructor(); - initialize(source: SourceFromSchema): Price; -} -type CoinsField = fields.SchemaField, CoinsPF2e, true, false, true>; -type CoinsSchema = { - cp: fields.NumberField; - sp: fields.NumberField; - gp: fields.NumberField; - pp: fields.NumberField; -}; -type PriceSchema = { - value: CoinsField; - per: fields.NumberField; - sizeSensitive: fields.BooleanField; -}; -export { PriceField }; diff --git a/types/src/module/item/physical/sheet.d.ts b/types/src/module/item/physical/sheet.d.ts deleted file mode 100644 index 231fbda1f..000000000 --- a/types/src/module/item/physical/sheet.d.ts +++ /dev/null @@ -1,59 +0,0 @@ -/// -/// -/// -import type { PhysicalItemPF2e } from "@item"; -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import { CoinsPF2e, ItemActivation, MaterialValuationData } from "./index.ts"; -declare class PhysicalItemSheetPF2e extends ItemSheetPF2e { - static get defaultOptions(): ItemSheetOptions; - /** Show the identified data for editing purposes */ - getData(options?: Partial): Promise>; - /** If the item is unidentified, prevent players from opening this sheet. */ - render(force?: boolean, options?: RenderOptions): this; - protected getMaterialSheetData(item: PhysicalItemPF2e, valuationData: MaterialValuationData): MaterialSheetData; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface PhysicalItemSheetData extends ItemSheetDataPF2e { - sidebarTemplate: string; - isApex: boolean; - isPhysical: true; - bulkAdjustment: string | null; - adjustedBulkHint?: string | null; - adjustedLevelHint: string | null; - basePrice: CoinsPF2e; - priceAdjustment: string | null; - adjustedPriceHint: string | null; - attributes: typeof CONFIG.PF2E.abilities; - actionTypes: typeof CONFIG.PF2E.actionTypes; - actionsNumber: typeof CONFIG.PF2E.actionsNumber; - bulks: { - value: number; - label: string; - }[]; - frequencies: typeof CONFIG.PF2E.frequencies; - sizes: Omit; - usages: typeof CONFIG.PF2E.usages; - usageOptions: FormSelectOption[]; - identificationStatusOptions: FormSelectOption[]; - bulkDisabled: boolean; - activations: { - action: ItemActivation; - id: string; - base: string; - description: string; - traits: SheetOptions; - }[]; -} -interface MaterialSheetEntry { - value: string; - label: string; - group: string; -} -interface MaterialSheetData { - value: string; - materials: MaterialSheetEntry[]; -} -export { PhysicalItemSheetPF2e }; -export type { MaterialSheetData, MaterialSheetEntry, PhysicalItemSheetData }; diff --git a/types/src/module/item/physical/types.d.ts b/types/src/module/item/physical/types.d.ts deleted file mode 100644 index 881e6a108..000000000 --- a/types/src/module/item/physical/types.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { ArmorTrait } from "@item/armor/types.ts"; -import type { ConsumableTrait } from "@item/consumable/types.ts"; -import type { EquipmentTrait } from "@item/equipment/types.ts"; -import type { ShieldTrait } from "@item/shield/types.ts"; -import type { WeaponTrait } from "@item/weapon/types.ts"; -import type { PHYSICAL_ITEM_TYPES, PRECIOUS_MATERIAL_GRADES, PRECIOUS_MATERIAL_TYPES } from "./values.ts"; -type BaseMaterialType = "bone" | "cloth" | "glass" | "leather" | "paper" | "rope" | "steel" | "stone" | "wood"; -type BaseMaterialThickness = "thin" | "standard" | "structure"; -type BaseMaterial = { - type: BaseMaterialType; - thickness: BaseMaterialThickness; -}; -type CoinDenomination = "pp" | "gp" | "sp" | "cp"; -type PhysicalItemTrait = ArmorTrait | ConsumableTrait | EquipmentTrait | ShieldTrait | WeaponTrait; -type PhysicalItemType = SetElement; -type PreciousMaterialType = SetElement; -type PreciousMaterialGrade = SetElement; -export type { BaseMaterial, CoinDenomination, PhysicalItemTrait, PhysicalItemType, PreciousMaterialGrade, PreciousMaterialType, }; diff --git a/types/src/module/item/physical/usage.d.ts b/types/src/module/item/physical/usage.d.ts deleted file mode 100644 index 0e2384cac..000000000 --- a/types/src/module/item/physical/usage.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { EquippedData } from "./data.ts"; -interface HeldUsage { - value: string; - type: "held"; - where?: never; - hands: 1 | 2; -} -interface WornUsage { - value: string; - type: "worn"; - where?: string | null; - hands?: 0; -} -interface AttachedUsage { - value: string; - type: "attached"; - where: string; - hands?: 0; -} -interface CarriedUsage { - value: "carried"; - type: "carried"; - where?: never; - hands?: 0; -} -type UsageDetails = HeldUsage | WornUsage | AttachedUsage | CarriedUsage; -type UsageType = UsageDetails["type"]; -declare function isEquipped(usage: UsageDetails, equipped: EquippedData): boolean; -declare function getUsageDetails(usage: string): UsageDetails; -export { getUsageDetails, isEquipped }; -export type { CarriedUsage, HeldUsage, UsageDetails, UsageType, WornUsage }; diff --git a/types/src/module/item/physical/values.d.ts b/types/src/module/item/physical/values.d.ts deleted file mode 100644 index 05f8d80c1..000000000 --- a/types/src/module/item/physical/values.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -declare const PHYSICAL_ITEM_TYPES: Set<"armor" | "shield" | "consumable" | "backpack" | "book" | "equipment" | "treasure" | "weapon">; -declare const PRECIOUS_MATERIAL_TYPES: Set<"abysium" | "adamantine" | "dawnsilver" | "djezet" | "duskwood" | "inubrix" | "noqual" | "orichalcum" | "siccatite" | "silver" | "cold-iron" | "dragonhide" | "dreamweb" | "grisantian-pelt" | "keep-stone" | "peachwood" | "sisterstone" | "sisterstone-dusk" | "sisterstone-scarlet" | "sloughstone" | "sovereign-steel" | "warpglass">; -declare const PRECIOUS_MATERIAL_GRADES: Set<"low" | "standard" | "high">; -declare const DENOMINATIONS: readonly ["pp", "gp", "sp", "cp"]; -export { DENOMINATIONS, PHYSICAL_ITEM_TYPES, PRECIOUS_MATERIAL_GRADES, PRECIOUS_MATERIAL_TYPES }; diff --git a/types/src/module/item/shield/data.d.ts b/types/src/module/item/shield/data.d.ts deleted file mode 100644 index d559bf85b..000000000 --- a/types/src/module/item/shield/data.d.ts +++ /dev/null @@ -1,58 +0,0 @@ -import { PhysicalItemSource } from "@item/base/data/index.ts"; -import { BasePhysicalItemSource, PhysicalItemTraits, PhysicalSystemData, PhysicalSystemSource } from "@item/physical/data.ts"; -import { HeldUsage } from "@item/physical/usage.ts"; -import { WeaponRuneData, WeaponRuneSource } from "@item/weapon/data.ts"; -import { ZeroToSix } from "@module/data.ts"; -import { DamageType } from "@system/damage/types.ts"; -import { BaseShieldType, ShieldTrait } from "./types.ts"; -type ShieldSource = BasePhysicalItemSource<"shield", ShieldSystemSource>; -interface ShieldSystemSource extends PhysicalSystemSource { - traits: ShieldTraitsSource; - baseItem: BaseShieldType | null; - acBonus: number; - speedPenalty: number; - /** Data stored at the time of marking a shield as specific */ - specific: SpecificShieldData | null; - /** Currently supports reinforcing runes */ - runes: ShieldRuneData; - /** Usage for shields isn't stored. */ - readonly usage?: never; - /** Doubly-embedded adjustments, attachments, talismans etc. */ - subitems: PhysicalItemSource[]; -} -interface IntegratedWeaponSource { - runes: WeaponRuneSource; - versatile: { - selected: DamageType; - } | null; -} -interface ShieldTraitsSource extends PhysicalItemTraits { - integrated: IntegratedWeaponSource | null; -} -type ShieldRuneData = { - reinforcing: ZeroToSix; -}; -/** A weapon can either be unspecific or specific along with baseline material and runes */ -interface SpecificShieldData extends Pick { - integrated: { - runes: Omit; - } | null; -} -interface ShieldSystemData extends Omit, Omit { - traits: ShieldTraits; - /** Shields are always held. */ - usage: HeldUsage; - stackGroup: null; -} -type SourceOmission = "apex" | "bulk" | "description" | "hp" | "identification" | "material" | "price" | "temporary" | "usage"; -interface IntegratedWeaponData extends IntegratedWeaponSource { - damageType: DamageType; - versatile: { - options: DamageType[]; - selected: DamageType; - } | null; -} -interface ShieldTraits extends ShieldTraitsSource { - integrated: IntegratedWeaponData | null; -} -export type { IntegratedWeaponData, IntegratedWeaponSource, ShieldSource, ShieldSystemData, ShieldSystemSource, SpecificShieldData, }; diff --git a/types/src/module/item/shield/document.d.ts b/types/src/module/item/shield/document.d.ts deleted file mode 100644 index 9ae17e4e4..000000000 --- a/types/src/module/item/shield/document.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { type WeaponPF2e } from "@item"; -import { RawItemChatData } from "@item/base/data/index.ts"; -import { PhysicalItemPF2e } from "@item/physical/index.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import { ShieldSource, ShieldSystemData } from "./data.ts"; -import { BaseShieldType, ShieldTrait } from "./types.ts"; -declare class ShieldPF2e extends PhysicalItemPF2e { - static get validTraits(): Record; - get baseType(): BaseShieldType | null; - get isBuckler(): boolean; - get isTowerShield(): boolean; - get speedPenalty(): number; - get acBonus(): number; - get isSpecific(): boolean; - /** Given this is a shield, is it raised? */ - get isRaised(): boolean; - isStackableWith(item: PhysicalItemPF2e): boolean; - acceptsSubitem(candidate: PhysicalItemPF2e): boolean; - /** Generate a list of strings for use in predication */ - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - prepareBaseData(): void; - prepareDerivedData(): void; - prepareActorData(this: ShieldPF2e): void; - onPrepareSynthetics(this: ShieldPF2e): void; - getChatData(this: ShieldPF2e, htmlOptions?: EnrichmentOptions): Promise; - generateUnidentifiedName({ typeOnly }?: { - typeOnly?: boolean; - }): string; - /** Generate a shield bash or other weapon(-like) item from this shield */ - generateWeapon(): WeaponPF2e | null; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface ShieldPF2e extends PhysicalItemPF2e { - readonly _source: ShieldSource; - system: ShieldSystemData; - get traits(): Set; -} -export { ShieldPF2e }; diff --git a/types/src/module/item/shield/helpers.d.ts b/types/src/module/item/shield/helpers.d.ts deleted file mode 100644 index 183de22bf..000000000 --- a/types/src/module/item/shield/helpers.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ShieldPF2e } from "./document.ts"; -declare function setActorShieldData(shield: ShieldPF2e): void; -export { setActorShieldData }; diff --git a/types/src/module/item/shield/sheet.d.ts b/types/src/module/item/shield/sheet.d.ts deleted file mode 100644 index b2dfe38a5..000000000 --- a/types/src/module/item/shield/sheet.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -/// -/// -/// -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import { CoinsPF2e, MaterialSheetData, PhysicalItemSheetData, PhysicalItemSheetPF2e, RUNE_DATA } from "@item/physical/index.ts"; -import { WeaponPropertyRuneType } from "@item/weapon/types.ts"; -import type { ShieldPF2e } from "./document.ts"; -import { BaseShieldType } from "./types.ts"; -declare class ShieldSheetPF2e extends PhysicalItemSheetPF2e { - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface ShieldSheetData extends PhysicalItemSheetData { - baseHardness: number; - basePrice: CoinsPF2e; - baseTypes: Record; - canChangeMaterial: boolean; - preciousMaterials: MaterialSheetData; - propertyRuneSlots: { - slug: WeaponPropertyRuneType | null; - disabled: boolean; - readOnly: boolean; - }[]; - reinforcing: Record; - weaponRunes: typeof RUNE_DATA.weapon | null; -} -export { ShieldSheetPF2e }; diff --git a/types/src/module/item/shield/types.d.ts b/types/src/module/item/shield/types.d.ts deleted file mode 100644 index 144fb178d..000000000 --- a/types/src/module/item/shield/types.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -type BaseShieldType = keyof typeof CONFIG.PF2E.baseShieldTypes; -type ShieldTrait = keyof typeof CONFIG.PF2E.shieldTraits; -export type { BaseShieldType, ShieldTrait }; diff --git a/types/src/module/item/shield/values.d.ts b/types/src/module/item/shield/values.d.ts deleted file mode 100644 index ca4cd0eda..000000000 --- a/types/src/module/item/shield/values.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -declare const REINFORCING_RUNE_LOC_PATHS: readonly [null, "PF2E.Item.Shield.Rune.Reinforcing.Minor", "PF2E.Item.Shield.Rune.Reinforcing.Lesser", "PF2E.Item.Shield.Rune.Reinforcing.Moderate", "PF2E.Item.Shield.Rune.Reinforcing.Greater", "PF2E.Item.Shield.Rune.Reinforcing.Major", "PF2E.Item.Shield.Rune.Reinforcing.Supreme"]; -export { REINFORCING_RUNE_LOC_PATHS }; diff --git a/types/src/module/item/spell/data.d.ts b/types/src/module/item/spell/data.d.ts deleted file mode 100644 index ed6303220..000000000 --- a/types/src/module/item/spell/data.d.ts +++ /dev/null @@ -1,129 +0,0 @@ -import type { SaveType } from "@actor/types.ts"; -import type { BaseItemSourcePF2e, ItemSystemData, ItemSystemSource, ItemTraits } from "@item/base/data/system.ts"; -import type { OneToTen, ValueAndMax, ZeroToThree } from "@module/data.ts"; -import type { DamageCategoryUnique, DamageKind, DamageType, MaterialDamageEffect } from "@system/damage/index.ts"; -import type { EffectAreaShape, MagicTradition, SpellTrait } from "./types.ts"; - -type SpellSource = BaseItemSourcePF2e<"spell", SpellSystemSource>; -interface SpellSystemSource extends ItemSystemSource { - traits: SpellTraits; - level: { - value: OneToTen; - }; - requirements: string; - target: { - value: string; - }; - range: { - value: string; - }; - area: SpellArea | null; - time: { - value: string; - }; - duration: { - value: string; - sustained: boolean; - }; - damage: Record; - heightening?: SpellHeighteningFixed | SpellHeighteningInterval; - overlays?: Record; - defense: SpellDefenseSource | null; - cost: { - value: string; - }; - counteraction: boolean; - ritual: RitualData | null; - location: { - value: string | null; - signature?: boolean; - heightenedLevel?: number; - /** The level to heighten this spell to if it's a cantrip or focus spell */ - autoHeightenLevel?: OneToTen | null; - /** Number of uses if this is an innate spell */ - uses?: ValueAndMax; - }; -} -interface SpellTraits extends ItemTraits { - traditions: MagicTradition[]; -} -interface SpellArea { - type: EffectAreaShape; - value: number; - /** - * Legacy text information about spell effect areas: - * if present, includes information not representable in a structured way - */ - details?: string; -} -interface SpellDamageSource { - formula: string; - kinds?: DamageKind[]; - applyMod?: boolean; - type: DamageType; - category: DamageCategoryUnique | null; - materials: MaterialDamageEffect[]; -} -interface SpellDefenseSource { - passive: { - statistic: SpellPassiveDefense; - } | null; - save: { - statistic: SaveType; - basic: boolean; - } | null; -} -type SpellPassiveDefense = "ac" | `${SaveType}-dc`; -interface SpellHeighteningInterval { - type: "interval"; - interval: number; - area: number; - damage: Record; -} -interface SpellHeighteningFixed { - type: "fixed"; - levels: { - [K in OneToTen]?: Partial; - }; -} -interface SpellHeightenLayer { - level: number; - system: Partial; -} -interface SpellOverlayOverride { - system?: DeepPartial; - name?: string; - overlayType: "override"; - sort: number; -} -interface SpellSystemData extends Omit, Omit { - /** Time and resources consumed in the casting of this spell */ - cast: SpellCastData; - damage: Record; - defense: SpellDefenseData | null; -} -interface SpellCastData { - focusPoints: ZeroToThree; -} -interface SpellDamage extends Omit { - kinds: Set; -} -interface SpellDefenseData extends SpellDefenseSource { - passive: { - statistic: SpellPassiveDefense; - } | null; -} -type SpellOverlay = SpellOverlayOverride; -type SpellOverlayType = SpellOverlay["overlayType"]; -interface RitualData { - /** Details of the primary check for the ritual */ - primary: { - check: string; - }; - /** Details of the secondary check(s) for the ritual and maximum number of casters */ - secondary: { - checks: string; - casters: number; - }; -} -export type { SpellArea, SpellDamage, SpellDamageSource, SpellHeighteningInterval, SpellHeightenLayer, SpellOverlay, SpellOverlayOverride, SpellOverlayType, SpellPassiveDefense, SpellSource, SpellSystemData, SpellSystemSource, }; diff --git a/types/src/module/item/spell/document.d.ts b/types/src/module/item/spell/document.d.ts deleted file mode 100644 index b864a3ddb..000000000 --- a/types/src/module/item/spell/document.d.ts +++ /dev/null @@ -1,144 +0,0 @@ -/// -import type { ActorPF2e } from "@actor"; -import { AttributeString } from "@actor/types.ts"; -import type { ConsumablePF2e } from "@item"; -import { ItemPF2e } from "@item"; -import { ItemSourcePF2e, RawItemChatData } from "@item/base/data/index.ts"; -import { SpellSlotGroupId } from "@item/spellcasting-entry/collection.ts"; -import { BaseSpellcastingEntry } from "@item/spellcasting-entry/types.ts"; -import { RangeData } from "@item/types.ts"; -import { MeasuredTemplatePF2e } from "@module/canvas/index.ts"; -import { ChatMessagePF2e, ItemOriginFlag } from "@module/chat-message/index.ts"; -import { OneToTen, Rarity, ZeroToTwo } from "@module/data.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import { CheckRoll } from "@system/check/index.ts"; -import { DamageRoll } from "@system/damage/roll.ts"; -import { DamageDamageContext, DamageKind, SpellDamageTemplate } from "@system/damage/types.ts"; -import { StatisticRollParameters } from "@system/statistic/index.ts"; -import { EnrichmentOptionsPF2e } from "@system/text-editor.ts"; -import { SpellArea, SpellHeightenLayer, SpellOverlayType, SpellSource, SpellSystemData } from "./data.ts"; -import { SpellOverlayCollection } from "./overlay.ts"; -import { MagicTradition, SpellTrait } from "./types.ts"; -declare class SpellPF2e extends ItemPF2e { - readonly parentItem: ConsumablePF2e | null; - /** The original spell. Only exists if this is a variant */ - original?: SpellPF2e; - /** The overlays that were applied to create this variant */ - appliedOverlays?: Map; - overlays: SpellOverlayCollection; - constructor(data: PreCreate, context?: SpellConstructionContext); - static get validTraits(): Record; - /** The id of the override overlay that constitutes this variant */ - get variantId(): string | null; - /** The spell's "base" rank; that is, before heightening */ - get baseRank(): OneToTen; - /** Legacy getter, though not yet deprecated */ - get baseLevel(): OneToTen; - /** - * Heightened rank of the spell if heightened, otherwise base. - * This applies for spontaneous or innate spells usually, but not prepared ones. - */ - get rank(): OneToTen; - /** - * Legacy getter: only deprecated internally - * @deprecated - */ - get level(): number; - get traits(): Set; - get rarity(): Rarity; - get traditions(): Set; - get actionGlyph(): string | null; - get defense(): { - slug: string; - label: string; - } | null; - get spellcasting(): BaseSpellcastingEntry> | null; - get isAttack(): boolean; - get isCantrip(): boolean; - get isFocusSpell(): boolean; - get isRitual(): boolean; - get attribute(): AttributeString; - /** Whether this spell has unlimited uses */ - get atWill(): boolean; - get isVariant(): boolean; - get hasVariants(): boolean; - /** - * Attempt to parse out range data. - * @todo Migrate me. - */ - get range(): RangeData | null; - get isMelee(): boolean; - get isRanged(): boolean; - get area(): (SpellArea & { - label: string; - }) | null; - /** Whether the "damage" roll of this spell deals damage or heals (or both, depending on the target) */ - get damageKinds(): Set; - get uuid(): ItemUUID; - /** Given a slot level, compute the actual level the spell will be cast at */ - computeCastRank(slotNumber?: number): OneToTen; - getRollData(rollOptions?: { - castRank?: number | string; - }): NonNullable; - getDamage(params?: SpellDamageOptions): Promise; - /** - * Loads an alternative version of this spell, called a variant. - * The variant is created via the application of one or more overlays based on parameters. - * This handles heightening as well as alternative cast modes of spells. - * If there's nothing to apply, returns null. - */ - loadVariant(options?: SpellVariantOptions): this | null; - getHeightenLayers(rank?: number): SpellHeightenLayer[]; - placeTemplate(message?: ChatMessagePF2e): Promise; - prepareBaseData(): void; - prepareSiblingData(this: SpellPF2e): void; - prepareActorData(): void; - onPrepareSynthetics(this: SpellPF2e): void; - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - includeVariants?: boolean; - }): string[]; - toMessage(event?: Maybe, { create, data, rollMode }?: SpellToMessageOptions): Promise; - getChatData(this: SpellPF2e, htmlOptions?: EnrichmentOptionsPF2e, rollOptions?: { - castRank?: number | string; - groupId?: SpellSlotGroupId; - }): Promise; - rollAttack(this: SpellPF2e, event: MouseEvent | JQuery.ClickEvent, attackNumber?: number, context?: StatisticRollParameters): Promise | null>; - rollDamage(this: SpellPF2e, event: MouseEvent | JQuery.ClickEvent, mapIncreases?: ZeroToTwo): Promise | null>; - /** Roll counteract check */ - rollCounteract(event?: MouseEvent | JQuery.ClickEvent): Promise | null>; - getOriginData(): ItemOriginFlag; - update(data: Record, operation?: Partial>): Promise; - protected _preCreate(data: this["_source"], operation: DatabaseCreateOperation, user: UserPF2e): Promise; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; -} -interface SpellPF2e extends ItemPF2e { - readonly _source: SpellSource; - system: SpellSystemData; -} -interface SpellConstructionContext extends DocumentConstructionContext { - parentItem?: Maybe>; -} -interface SpellDamage { - template: SpellDamageTemplate; - context: DamageDamageContext; -} -interface SpellToMessageOptions { - create?: boolean; - rollMode?: RollMode; - data?: { - castRank?: number; - }; -} -interface SpellDamageOptions { - rollMode?: RollMode | "roll"; - skipDialog?: boolean; - target?: Maybe; -} -interface SpellVariantOptions { - castRank?: number; - overlayIds?: string[]; - entryId?: string | null; -} -export { SpellPF2e, type SpellToMessageOptions }; diff --git a/types/src/module/item/spell/helpers.d.ts b/types/src/module/item/spell/helpers.d.ts deleted file mode 100644 index c1d9801cc..000000000 --- a/types/src/module/item/spell/helpers.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import type { SpellArea, SpellPF2e } from "./index.ts"; - -declare function createSpellRankLabel(spell: SpellPF2e, castRank?: number): string; -declare function createSpellAreaLabel(areaData: SpellArea): string; -declare function createDescriptionPrepend(spell: SpellPF2e, { includeTraditions }: { - includeTraditions: boolean; -}): Promise; -declare function getPassiveDefenseLabel(statistic: string, { localize }?: { - localize?: boolean | undefined; -}): string | null; -export { createDescriptionPrepend, createSpellAreaLabel, createSpellRankLabel, getPassiveDefenseLabel }; diff --git a/types/src/module/item/spell/index.d.ts b/types/src/module/item/spell/index.d.ts deleted file mode 100644 index e2118f330..000000000 --- a/types/src/module/item/spell/index.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export * from "./data.ts"; -export * from "./document.ts"; -export * from "./overlay.ts"; -export * from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/spell/overlay.d.ts b/types/src/module/item/spell/overlay.d.ts deleted file mode 100644 index c8cc5aeed..000000000 --- a/types/src/module/item/spell/overlay.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { SpellOverlay, SpellOverlayType, SpellSource } from "./data.ts"; -import type { SpellPF2e } from "./document.ts"; -declare class SpellOverlayCollection extends Collection { - readonly spell: SpellPF2e; - constructor(spell: SpellPF2e, entries?: Record); - /** Returns all variants based on override overlays */ - get overrideVariants(): SpellPF2e[]; - getType(overlayId: string): SpellOverlayType; - create(overlayType: SpellOverlayType, options?: { - renderSheet: boolean; - }): Promise; - updateOverride(variantSpell: TSpell, data: Partial, operation?: Partial>): Promise; - deleteOverlay(overlayId: string): Promise; - protected verifyOverlayId(overlayId: string): void; -} -export { SpellOverlayCollection }; diff --git a/types/src/module/item/spell/sheet.d.ts b/types/src/module/item/spell/sheet.d.ts deleted file mode 100644 index c764138f1..000000000 --- a/types/src/module/item/spell/sheet.d.ts +++ /dev/null @@ -1,65 +0,0 @@ -/// -/// -/// -import { ItemSheetDataPF2e, ItemSheetOptions, ItemSheetPF2e } from "@item/base/sheet/sheet.ts"; -import { TagifyEntry } from "@module/sheet/helpers.ts"; -import { DamageCategoryUnique, DamageType } from "@system/damage/types.ts"; -import type { EffectAreaShape, SpellPF2e, SpellSystemData, SpellSystemSource } from "./index.ts"; - -export declare class SpellSheetPF2e extends ItemSheetPF2e { - #private; - static get defaultOptions(): ItemSheetOptions; - get id(): string; - protected get validTraits(): Record; - getData(options?: Partial): Promise; - get title(): string; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; - protected _onDragStart(event: DragEvent): void; - protected _onDrop(event: DragEvent): Promise; - private getAvailableHeightenLevels; -} -interface SpellSheetData extends ItemSheetDataPF2e { - isVariant: boolean; - variants: { - name: string; - variantId: string | null; - sort: number; - actions: string; - }[]; - materials: typeof CONFIG.PF2E.materialDamageEffects; - damageTypes: Record; - damageSubtypes: Pick; - damageKinds: Record; - areaShapes: Record; - heightenIntervals: FormSelectOption[]; - heightenOverlays: SpellSheetHeightenOverlayData[]; - canHeighten: boolean; - defensePassiveOptions: FormSelectOption[]; - defenseSaveOptions: typeof CONFIG.PF2E.saves; -} -interface SpellSheetOverlayData { - id: string | null; - /** Base path to the property, dot delimited */ - base: string; - /** Base path to the spell override data, dot delimited. Currently this is the same as base */ - dataPath: string; - level: number | null; - type: "heighten" | "variant"; - system: Partial | null; -} -interface SpellSheetHeightenOverlayData extends SpellSheetOverlayData { - system: Partial; - heightenLevels: FormSelectOption[]; - missing: { - key: keyof SpellSystemData; - label: string; - }[]; - traits?: TagifyEntry[] | null; -} -export {}; diff --git a/types/src/module/item/spell/types.d.ts b/types/src/module/item/spell/types.d.ts deleted file mode 100644 index a8310ab32..000000000 --- a/types/src/module/item/spell/types.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { EFFECT_AREA_SHAPES, MAGIC_TRADITIONS } from "./values.ts"; -type MagicTradition = SetElement; -type SpellTrait = keyof typeof CONFIG.PF2E.spellTraits; -type EffectAreaShape = (typeof EFFECT_AREA_SHAPES)[number]; -export type { EffectAreaShape, MagicTradition, SpellTrait }; diff --git a/types/src/module/item/spell/values.d.ts b/types/src/module/item/spell/values.d.ts deleted file mode 100644 index 13224c005..000000000 --- a/types/src/module/item/spell/values.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -declare const EFFECT_AREA_SHAPES: readonly ["burst", "cone", "cube", "cylinder", "emanation", "line", "square"]; -declare const MAGIC_TRADITIONS: Set<"arcane" | "divine" | "occult" | "primal">; -export { EFFECT_AREA_SHAPES, MAGIC_TRADITIONS }; diff --git a/types/src/module/item/spellcasting-entry/collection.d.ts b/types/src/module/item/spellcasting-entry/collection.d.ts deleted file mode 100644 index 47fe9715f..000000000 --- a/types/src/module/item/spellcasting-entry/collection.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { SpellPF2e } from "@item"; -import { OneToTen, ZeroToTen } from "@module/data.ts"; -import { BaseSpellcastingEntry, SpellPrepEntry, SpellcastingSlotGroup } from "./types.ts"; -declare class SpellCollection extends Collection> { - #private; - readonly entry: BaseSpellcastingEntry; - readonly actor: TActor; - readonly name: string; - constructor(entry: BaseSpellcastingEntry, name?: string); - get id(): string; - get highestRank(): OneToTen; - /** - * Adds a spell to this spellcasting entry, either moving it from another one if its the same actor, - * or creating a new spell if its not. If given a rank, it will heighten to that rank if it can be. - */ - addSpell(spell: SpellPF2e, options?: { - groupId?: Maybe; - }): Promise | null>; - /** Swap positions of two spells in the same spell collection and slot group */ - swapSlotPositions(groupId: string, slotIndexA: number, slotIndexB: number): Promise; - /** Save the prepared spell slot data to the spellcasting entry */ - prepareSpell(spell: SpellPF2e, groupId: SpellSlotGroupId, slotIndex: number): Promise; - /** Clear the spell slot and updates the spellcasting entry */ - unprepareSpell(groupId: SpellSlotGroupId, slotIndex: number): Promise; - /** Sets the expended state of a spell slot and updates the spellcasting entry */ - setSlotExpendedState(groupId: SpellSlotGroupId, slotIndex: number, value: boolean): Promise; - getSpellData({ prepList }?: { - prepList?: boolean | undefined; - }): Promise; - protected getSpellPrepList(spells: SpellPF2e[]): Record; -} -type SpellSlotGroupId = "cantrips" | OneToTen; -interface SpellCollectionData { - groups: SpellcastingSlotGroup[]; - flexibleAvailable?: { - value: number; - max: number; - } | null; - prepList: Record | null; -} -export { SpellCollection }; -export type { SpellCollectionData, SpellSlotGroupId }; diff --git a/types/src/module/item/spellcasting-entry/data.d.ts b/types/src/module/item/spellcasting-entry/data.d.ts deleted file mode 100644 index d8f169be9..000000000 --- a/types/src/module/item/spellcasting-entry/data.d.ts +++ /dev/null @@ -1,63 +0,0 @@ -import { AttributeString } from "@actor/types.ts"; -import { BaseItemSourcePF2e, ItemSystemData, ItemSystemSource, OtherTagsOnly } from "@item/base/data/system.ts"; -import { MagicTradition } from "@item/spell/types.ts"; -import { OneToTen, ZeroToFour, ZeroToTen } from "@module/data.ts"; -import type { RollNotePF2e } from "@module/notes.ts"; -import { SpellcastingCategory } from "./types.ts"; - -type SlotKey = `slot${ZeroToTen}`; -type SpellcastingEntrySource = BaseItemSourcePF2e<"spellcastingEntry", SpellcastingEntrySystemSource>; -interface SpellDifficultyClass { - breakdown: string; - notes: RollNotePF2e[]; - value: number; -} -interface SpellPrepData { - id: string | null; - expended: boolean; -} -interface SpellSlotData { - prepared: SpellPrepData[]; - value: number; - max: number; -} -interface SpellcastingEntrySystemSource extends ItemSystemSource { - traits: OtherTagsOnly; - ability: { - value: AttributeString | ""; - }; - spelldc: { - value: number; - dc: number; - }; - tradition: { - value: MagicTradition | ""; - }; - prepared: SpellCollectionTypeSource; - showSlotlessLevels: { - value: boolean; - }; - proficiency: { - slug: string; - value: ZeroToFour; - }; - slots: SpellcastingEntrySlots; - autoHeightenLevel: { - value: OneToTen | null; - }; - level?: never; -} -type SpellcastingEntrySlots = Record; -interface SpellCollectionTypeSource { - value: SpellcastingCategory; - flexible?: boolean; - validItems?: "scroll" | "" | null; -} -interface SpellcastingEntrySystemData extends Omit, Omit { - prepared: SpellCollectionTypeData; -} -interface SpellCollectionTypeData extends SpellCollectionTypeSource { - flexible: boolean; - validItems: "scroll" | null; -} -export type { SlotKey, SpellDifficultyClass, SpellcastingEntrySlots, SpellcastingEntrySource, SpellcastingEntrySystemData, SpellcastingEntrySystemSource, }; diff --git a/types/src/module/item/spellcasting-entry/document.d.ts b/types/src/module/item/spellcasting-entry/document.d.ts deleted file mode 100644 index ce31bb48c..000000000 --- a/types/src/module/item/spellcasting-entry/document.d.ts +++ /dev/null @@ -1,78 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { AttributeString } from "@actor/types.ts"; -import { ItemPF2e, PhysicalItemPF2e, type SpellPF2e } from "@item"; -import { MagicTradition } from "@item/spell/types.ts"; -import { ZeroToFour, ZeroToTen } from "@module/data.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import { Statistic } from "@system/statistic/index.ts"; -import { SpellCollection, type SpellSlotGroupId } from "./collection.ts"; -import { SpellcastingEntrySource, SpellcastingEntrySystemData } from "./data.ts"; -import { CastOptions, SpellcastingCategory, SpellcastingEntry, SpellcastingSheetData } from "./types.ts"; - -declare class SpellcastingEntryPF2e extends ItemPF2e implements SpellcastingEntry { - spells: SpellCollection> | null; - /** Spellcasting attack and dc data created during actor preparation */ - statistic: Statistic; - get attribute(): AttributeString; - get counteraction(): Statistic; - /** This entry's magic tradition, null if the spell's tradition should be used instead */ - get tradition(): MagicTradition | null; - get category(): SpellcastingCategory; - /** - * Returns the proficiency used for calculations. - * For innate spells, this is the highest spell proficiency (min trained) - */ - get rank(): ZeroToFour; - get isPrepared(): boolean; - get isFlexible(): boolean; - get isSpontaneous(): boolean; - get isInnate(): boolean; - get isFocusPool(): boolean; - /** Ritual spellcasting is handled separately */ - get isRitual(): false; - get isEphemeral(): false; - get highestRank(): ZeroToTen; - get showSlotlessRanks(): boolean; - prepareBaseData(): void; - prepareSiblingData(this: SpellcastingEntryPF2e): void; - prepareActorData(this: SpellcastingEntryPF2e): void; - /** Prepares the statistic for this spellcasting entry */ - prepareStatistic(): void; - /** All spells associated with this spellcasting entry on the actor that should also be deleted */ - getLinkedItems(): SpellPF2e[]; - /** Whether the spell is valid to cast by this spellcasting entry */ - canCast(spell: SpellPF2e, { origin }?: { - origin?: PhysicalItemPF2e; - }): boolean; - /** Cast the given spell as if it was part of this spellcasting entry. */ - cast(spell: SpellPF2e, options?: CastOptions): Promise; - consume(spell: SpellPF2e, rank: number, slotIndex?: number): Promise; - /** - * Adds a spell to this spellcasting entry, either moving it from another one if its the same actor, - * or creating a new spell if its not. - */ - addSpell(spell: SpellPF2e>, { groupId }: { - groupId: Maybe; - }): Promise> | null>; - /** Saves the prepared spell slot data to the spellcasting entry */ - prepareSpell(spell: SpellPF2e, groupId: SpellSlotGroupId, spellSlot: number): Promise>; - /** Removes the spell slot and updates the spellcasting entry */ - unprepareSpell(groupId: SpellSlotGroupId, slotId: number): Promise>; - /** Sets the expended state of a spell slot and updates the spellcasting entry */ - setSlotExpendedState(groupId: SpellSlotGroupId, slotId: number, value: boolean): Promise>; - /** Returns rendering data to display the spellcasting entry in the sheet */ - getSheetData({ prepList }?: { - prepList?: boolean | undefined; - }): Promise; - getRollOptions(prefix?: string): string[]; - protected _preUpdate(changed: DeepPartial, options: DatabaseUpdateOperation, user: UserPF2e): Promise; - /** - * @deprecated - */ - getSpellData(): Promise; -} -interface SpellcastingEntryPF2e extends ItemPF2e { - readonly _source: SpellcastingEntrySource; - system: SpellcastingEntrySystemData; -} -export { SpellcastingEntryPF2e }; diff --git a/types/src/module/item/spellcasting-entry/helpers.d.ts b/types/src/module/item/spellcasting-entry/helpers.d.ts deleted file mode 100644 index 76f94da3f..000000000 --- a/types/src/module/item/spellcasting-entry/helpers.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ZeroToTen } from "@module/data.ts"; -import { Statistic } from "@system/statistic/statistic.ts"; -import type { SpellSlotGroupId } from "./collection.ts"; -import type { SpellcastingEntry } from "./types.ts"; -/** Create a statistic that draws from limited domains for the purpose of counteracting. */ -declare function createCounteractStatistic(ability: SpellcastingEntry): Statistic; -declare function spellSlotGroupIdToNumber(groupId: SpellSlotGroupId): ZeroToTen; -declare function spellSlotGroupIdToNumber(groupId: Maybe): ZeroToTen | null; -/** Try to coerce some value (typically from user input) to a slot group ID */ -declare function coerceToSpellGroupId(value: unknown): SpellSlotGroupId | null; -export { coerceToSpellGroupId, createCounteractStatistic, spellSlotGroupIdToNumber }; diff --git a/types/src/module/item/spellcasting-entry/index.d.ts b/types/src/module/item/spellcasting-entry/index.d.ts deleted file mode 100644 index a80358c5b..000000000 --- a/types/src/module/item/spellcasting-entry/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from "./data.ts"; -export { SpellcastingEntryPF2e } from "./document.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/spellcasting-entry/item-spellcasting.d.ts b/types/src/module/item/spellcasting-entry/item-spellcasting.d.ts deleted file mode 100644 index 87a6295c2..000000000 --- a/types/src/module/item/spellcasting-entry/item-spellcasting.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -import type { CreaturePF2e } from "@actor"; -import { AttributeString } from "@actor/types.ts"; -import type { PhysicalItemPF2e, SpellPF2e } from "@item"; -import { MagicTradition } from "@item/spell/types.ts"; -import type { Predicate } from "@system/predication.ts"; -import type { Statistic } from "@system/statistic/statistic.ts"; -import { SpellCollection } from "./collection.ts"; -import type { CastOptions, SpellcastingEntry, SpellcastingSheetData } from "./types.ts"; -/** An in-memory spellcasting entry for items-only spellcasting */ -declare class ItemSpellcasting implements SpellcastingEntry { - id: string; - name: string; - actor: TActor; - statistic: Statistic; - tradition: MagicTradition | null; - /** A predicate to test against a physical item to determine whether its contained spell can be cast */ - castPredicate: Predicate; - constructor({ id, name, actor, statistic, tradition, castPredicate }: ItemsSpellcastingConstructorParams); - get counteraction(): Statistic; - get attribute(): AttributeString; - get category(): "items"; - get sort(): number; - get spells(): null; - get isFlexible(): false; - get isFocusPool(): false; - get isInnate(): false; - get isPrepared(): false; - get isSpontaneous(): false; - get isRitual(): false; - get isEphemeral(): true; - canCast(spell: SpellPF2e, { origin }?: { - origin?: Maybe; - }): boolean; - cast(spell: SpellPF2e, options?: CastOptions): Promise; - getSheetData({ spells }?: { - spells?: SpellCollection; - }): Promise; -} -interface ItemsSpellcastingConstructorParams { - id: string; - name: string; - actor: TActor; - statistic: Statistic; - tradition?: Maybe; - castPredicate: Predicate; -} -export { ItemSpellcasting }; diff --git a/types/src/module/item/spellcasting-entry/rituals.d.ts b/types/src/module/item/spellcasting-entry/rituals.d.ts deleted file mode 100644 index 28a5dea8e..000000000 --- a/types/src/module/item/spellcasting-entry/rituals.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { SpellPF2e } from "@item"; -import { SpellCollection } from "./collection.ts"; -import { BaseSpellcastingEntry, CastOptions, SpellcastingSheetData } from "./types.ts"; -/** An in-memory spellcasting entry for rituals */ -export declare class RitualSpellcasting implements BaseSpellcastingEntry { - actor: TActor; - spells: SpellCollection; - constructor(actor: TActor); - get id(): string; - get name(): string; - get sort(): number; - get category(): "ritual"; - get tradition(): null; - get isFlexible(): false; - get isFocusPool(): false; - get isInnate(): false; - get isPrepared(): false; - get isRitual(): true; - get isSpontaneous(): false; - get isEphemeral(): true; - canCast(spell: SpellPF2e): boolean; - cast(spell: SpellPF2e, options?: CastOptions): Promise; - getSheetData(): Promise; -} diff --git a/types/src/module/item/spellcasting-entry/trick.d.ts b/types/src/module/item/spellcasting-entry/trick.d.ts deleted file mode 100644 index cc2b3f739..000000000 --- a/types/src/module/item/spellcasting-entry/trick.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { AttributeString, SkillSlug } from "@actor/types.ts"; -import { SpellPF2e } from "@item"; -import { MagicTradition } from "@item/spell/types.ts"; -import { Statistic } from "@system/statistic/index.ts"; -import { CastOptions, SpellcastingEntry, SpellcastingSheetData } from "./types.ts"; -declare const TRICK_MAGIC_SKILLS: readonly ["arcana", "nature", "occultism", "religion"]; -type TrickMagicItemSkill = (typeof TRICK_MAGIC_SKILLS)[number]; -declare const traditionSkills: { - readonly arcane: "arcana"; - readonly divine: "religion"; - readonly occult: "occultism"; - readonly primal: "nature"; -}; -/** A pseudo spellcasting entry used to trick magic item for a single skill */ -declare class TrickMagicItemEntry implements SpellcastingEntry { - readonly id: string; - actor: TActor; - skill: SkillSlug; - statistic: Statistic; - get counteraction(): Statistic; - attribute: AttributeString; - tradition: MagicTradition; - constructor(actor: TActor, skill: TrickMagicItemSkill); - get name(): string; - /** Unused since a Trick Magic Item ability isn't displayed in an actor sheet */ - get sort(): number; - get category(): "items"; - get spells(): null; - get isFlexible(): false; - get isFocusPool(): false; - get isInnate(): false; - get isPrepared(): false; - get isRitual(): false; - get isSpontaneous(): false; - get isEphemeral(): true; - /** Currently no checks for whether a magic item can be tricked */ - canCast(): boolean; - cast(spell: SpellPF2e, options?: CastOptions): Promise; - getSheetData(): Promise; -} -export { TRICK_MAGIC_SKILLS, TrickMagicItemEntry, traditionSkills }; -export type { TrickMagicItemSkill }; diff --git a/types/src/module/item/spellcasting-entry/types.d.ts b/types/src/module/item/spellcasting-entry/types.d.ts deleted file mode 100644 index 5f8d461fe..000000000 --- a/types/src/module/item/spellcasting-entry/types.d.ts +++ /dev/null @@ -1,102 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { AttributeString } from "@actor/types.ts"; -import { PhysicalItemPF2e } from "@item/physical/index.ts"; -import { SpellPF2e } from "@item/spell/document.ts"; -import { MagicTradition } from "@item/spell/types.ts"; -import { OneToTen } from "@module/data.ts"; -import { Statistic, StatisticChatData } from "@system/statistic/index.ts"; -import { SpellCollection, SpellCollectionData, SpellSlotGroupId } from "./collection.ts"; -import { SpellcastingEntrySystemData } from "./data.ts"; -interface BaseSpellcastingEntry { - id: string; - name: string; - actor: TActor; - sort: number; - category: SpellcastingCategory; - attribute?: Maybe; - isFlexible: boolean; - isFocusPool: boolean; - isInnate: boolean; - isPrepared: boolean; - isRitual: boolean; - isSpontaneous: boolean; - isEphemeral: boolean; - statistic?: Statistic | null; - /** A related but more-limited statistic for making counteract checks */ - counteraction?: Statistic | null; - tradition: MagicTradition | null; - spells: SpellCollection> | null; - system?: SpellcastingEntrySystemData; - getSheetData(options?: GetSheetDataOptions>): Promise; - getRollOptions?(prefix: "spellcasting"): string[]; - canCast(spell: SpellPF2e, options?: { - origin?: PhysicalItemPF2e; - }): boolean; - cast(spell: SpellPF2e, options: CastOptions): Promise; -} -interface GetSheetDataOptions { - spells?: Maybe>; - prepList?: boolean; -} -interface SpellcastingEntry extends BaseSpellcastingEntry { - attribute: AttributeString; - statistic: Statistic; - counteraction: Statistic; -} -type SpellcastingCategory = keyof ConfigPF2e["PF2E"]["preparationType"]; -interface CastOptions { - slotId?: number; - /** The rank at which to cast the spell */ - rank?: OneToTen; - consume?: boolean; - message?: boolean; - rollMode?: RollMode; -} -type UnusedProperties = "actor" | "spells" | "getSheetData" | "cast" | "canCast"; -type OptionalProperties = "isFlexible" | "isFocusPool" | "isInnate" | "isPrepared" | "isRitual" | "isSpontaneous"; -/** Spell list render data for a `BaseSpellcastingEntry` */ -interface SpellcastingSheetData extends Omit, "statistic" | OptionalProperties | UnusedProperties>, SpellCollectionData { - statistic: StatisticChatData | null; - hasCollection: boolean; - isFlexible?: boolean; - isFocusPool?: boolean; - isInnate?: boolean; - isPrepared?: boolean; - isRitual?: boolean; - isSpontaneous?: boolean; - usesSpellProficiency: boolean; - showSlotlessLevels?: boolean; -} -interface SpellcastingSlotGroup { - id: SpellSlotGroupId; - label: string; - /** The highest spell rank that can be present in this slot group */ - maxRank: OneToTen; - /** - * Number of uses and max slots or spells. - * If this is null, allowed usages are infinite. - * If value is undefined then it's not expendable, it's a count of total spells instead. - */ - uses?: { - value?: number; - max: number; - }; - /** The number corresponding with spellcasting entries' "slotN" object */ - number?: number; - active: (ActiveSpell | null)[]; -} -interface SpellPrepEntry { - spell: SpellPF2e; - signature: boolean; -} -interface ActiveSpell { - spell: SpellPF2e; - /** The rank at which a spell is cast (if prepared or automatically heighted) */ - castRank?: number; - expended?: boolean; - /** Is this spell marked as signature/collection */ - signature?: boolean; - /** Is the spell not actually of this rank? */ - virtual?: boolean; -} -export type { ActiveSpell, BaseSpellcastingEntry, CastOptions, SpellPrepEntry, SpellcastingCategory, SpellcastingEntry, SpellcastingSheetData, SpellcastingSlotGroup, }; diff --git a/types/src/module/item/treasure/data.d.ts b/types/src/module/item/treasure/data.d.ts deleted file mode 100644 index 5a3d80433..000000000 --- a/types/src/module/item/treasure/data.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import type { BasePhysicalItemSource, EquippedData, PhysicalItemTraits, PhysicalSystemData, PhysicalSystemSource } from "@item/physical/data.ts"; -import type { CarriedUsage } from "@item/physical/usage.ts"; -type TreasureSource = BasePhysicalItemSource<"treasure", TreasureSystemSource>; -interface TreasureSystemSource extends PhysicalSystemSource { - traits: PhysicalItemTraits; - stackGroup: "coins" | "gems" | null; - apex?: never; - subitems?: never; - usage?: never; -} -interface TreasureSystemData extends PhysicalSystemData { - traits: PhysicalItemTraits; - equipped: TreasureEquippedData; - /** Treasure need only be on one's person. */ - usage: CarriedUsage; - stackGroup: "coins" | "gems" | null; - apex?: never; - subitems?: never; -} -interface TreasureEquippedData extends EquippedData { - invested?: never; -} -export type { TreasureSource, TreasureSystemData, TreasureSystemSource }; diff --git a/types/src/module/item/treasure/document.d.ts b/types/src/module/item/treasure/document.d.ts deleted file mode 100644 index 385c30d19..000000000 --- a/types/src/module/item/treasure/document.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { RawItemChatData } from "@item/base/data/index.ts"; -import { PhysicalItemPF2e } from "@item/physical/index.ts"; -import type { CoinDenomination } from "@item/physical/types.ts"; -import type { TreasureSource, TreasureSystemData } from "./data.ts"; -declare class TreasurePF2e extends PhysicalItemPF2e { - get isCoinage(): boolean; - get denomination(): CoinDenomination | null; - /** Set non-coinage treasure price from its numeric value and denomination */ - prepareBaseData(): void; - getChatData(this: TreasurePF2e, htmlOptions?: EnrichmentOptions): Promise; -} -interface TreasurePF2e extends PhysicalItemPF2e { - readonly _source: TreasureSource; - system: TreasureSystemData; -} -export { TreasurePF2e }; diff --git a/types/src/module/item/treasure/index.d.ts b/types/src/module/item/treasure/index.d.ts deleted file mode 100644 index 8cddfdf1d..000000000 --- a/types/src/module/item/treasure/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { TreasurePF2e } from "./document.ts"; -export { TreasureSheetPF2e } from "./sheet.ts"; diff --git a/types/src/module/item/treasure/sheet.d.ts b/types/src/module/item/treasure/sheet.d.ts deleted file mode 100644 index d970e5e42..000000000 --- a/types/src/module/item/treasure/sheet.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import { PhysicalItemSheetData, PhysicalItemSheetPF2e } from "@item/physical/index.ts"; -import type { TreasurePF2e } from "./document.ts"; -export declare class TreasureSheetPF2e extends PhysicalItemSheetPF2e { - getData(options?: Partial): Promise; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface TreasureSheetData extends PhysicalItemSheetData { - currencies: ConfigPF2e["PF2E"]["currencies"]; - stackGroups: Pick; -} -export {}; diff --git a/types/src/module/item/types.d.ts b/types/src/module/item/types.d.ts deleted file mode 100644 index a3277ecf1..000000000 --- a/types/src/module/item/types.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type * as ItemInstance from "@item"; -interface ItemInstances { - action: ItemInstance.AbilityItemPF2e; - affliction: ItemInstance.AfflictionPF2e; - ancestry: ItemInstance.AncestryPF2e; - armor: ItemInstance.ArmorPF2e; - background: ItemInstance.BackgroundPF2e; - backpack: ItemInstance.ContainerPF2e; - book: ItemInstance.BookPF2e; - campaignFeature: ItemInstance.CampaignFeaturePF2e; - class: ItemInstance.ClassPF2e; - condition: ItemInstance.ConditionPF2e; - consumable: ItemInstance.ConsumablePF2e; - deity: ItemInstance.DeityPF2e; - effect: ItemInstance.EffectPF2e; - equipment: ItemInstance.EquipmentPF2e; - feat: ItemInstance.FeatPF2e; - heritage: ItemInstance.HeritagePF2e; - kit: ItemInstance.KitPF2e; - lore: ItemInstance.LorePF2e; - melee: ItemInstance.MeleePF2e; - shield: ItemInstance.ShieldPF2e; - spell: ItemInstance.SpellPF2e; - spellcastingEntry: ItemInstance.SpellcastingEntryPF2e; - treasure: ItemInstance.TreasurePF2e; - weapon: ItemInstance.WeaponPF2e; -} -/** Data describing the range restrictions of an action, weapon, spell, etc. */ -type RangeData = { - increment: number | null; - max: number; -}; -export type { ItemInstances, RangeData }; diff --git a/types/src/module/item/values.d.ts b/types/src/module/item/values.d.ts deleted file mode 100644 index badb92fbe..000000000 --- a/types/src/module/item/values.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -/** Item types representing the variant components of a PC actor type */ -declare const PC_ITEM_TYPES: Set<"class" | "ancestry" | "feat" | "background" | "deity" | "heritage">; -export { PC_ITEM_TYPES }; diff --git a/types/src/module/item/weapon/data.d.ts b/types/src/module/item/weapon/data.d.ts deleted file mode 100644 index 4dc10b3fe..000000000 --- a/types/src/module/item/weapon/data.d.ts +++ /dev/null @@ -1,186 +0,0 @@ -import { AttributeString } from "@actor/types.ts"; -import type { PhysicalItemSource } from "@item/base/data/index.ts"; -import { ItemFlagsPF2e } from "@item/base/data/system.ts"; -import type { - BasePhysicalItemSource, - Investable, - ItemMaterialData, - ItemMaterialSource, - PhysicalItemTraits, - PhysicalSystemData, - PhysicalSystemSource, - UsageDetails, -} from "@item/physical/index.ts"; -import { ZeroToFour } from "@module/data.ts"; -import { DamageDieSize, DamageType } from "@system/damage/index.ts"; -import type { WeaponTraitToggles } from "./trait-toggles.ts"; -import type { - BaseWeaponType, - MeleeWeaponGroup, - OtherWeaponTag, - WeaponCategory, - WeaponGroup, - WeaponMaterialType, - WeaponPropertyRuneType, - WeaponRangeIncrement, - WeaponReloadTime, - WeaponTrait, -} from "./types.ts"; - -type WeaponSource = BasePhysicalItemSource<"weapon", WeaponSystemSource> & { - flags: DeepPartial; -}; -type WeaponFlags = ItemFlagsPF2e & { - pf2e: { - /** Whether this attack is compatible with a battle form */ - battleForm?: boolean; - /** Whether the weapon is a combination weapon in its melee form */ - comboMeleeUsage: boolean; - /** - * Used for NPC attacks generated from strike rule elements: if numeric, it will be used as the NPC attack's - * modifier, and damage will also not be recalculated. - */ - fixedAttack?: number | null; - /** A logging of this weapon's attack item bonus, whatever the source (rune, bomb innate item bonus, etc.) */ - attackItemBonus: number; - /** A tracking property of whether the damage die size has been upgraded */ - damageFacesUpgraded: boolean; - }; -}; -interface WeaponSystemSource extends Investable { - traits: WeaponTraitsSource; - material: WeaponMaterialSource; - category: WeaponCategory; - group: WeaponGroup | null; - /** A base shield type can be used for attacks generated from shields */ - baseItem: BaseWeaponType | null; - bonus: { - value: number; - }; - damage: WeaponDamage; - bonusDamage: { - value: number; - }; - splashDamage: { - value: number; - }; - range: WeaponRangeIncrement | null; - maxRange?: number | null; - reload: { - value: WeaponReloadTime | null; - }; - usage: { - canBeAmmo?: boolean; - value: "worngloves" | "held-in-one-hand" | "held-in-one-plus-hands" | "held-in-two-hands"; - }; - runes: WeaponRuneSource; - /** An optional override of the default ability modifier used in attack rolls with this weapon */ - attribute?: AttributeString | null; - /** A combination weapon's melee usage */ - meleeUsage?: ComboWeaponMeleeUsage; - /** Whether the weapon is a "specific magic weapon" */ - specific: SpecificWeaponData | null; - /** Whether this is an unarmed attack that is a grasping appendage, requiring a free hand for use */ - graspingAppendage?: boolean; - /** Doubly-embedded adjustments, attachments, talismans etc. */ - subitems: PhysicalItemSource[]; - property1: { - value: string; - dice: number; - die: DamageDieSize; - damageType: DamageType | ""; - critDice: number; - critDie: DamageDieSize; - critDamage: string; - critDamageType: DamageType | ""; - }; - selectedAmmoId: string | null; -} -interface WeaponTraitsSource extends PhysicalItemTraits { - otherTags: OtherWeaponTag[]; - toggles?: { - doubleBarrel?: { - selected: boolean; - }; - modular?: { - selected: DamageType | null; - }; - versatile?: { - selected: DamageType | null; - }; - }; -} -interface WeaponDamage { - /** The number of dice */ - dice: number; - /** The die size (d4-d12) */ - die: DamageDieSize | null; - damageType: DamageType; - modifier: number; - /** Optional persistent damage */ - persistent: WeaponPersistentDamage | null; -} -interface WeaponPersistentDamage { - /** A number of dice if `faces` is numeric, otherwise a constant */ - number: number; - /** A number of die faces */ - faces: 4 | 6 | 8 | 10 | 12 | null; - /** Usually the same as the weapon's own base damage type, but open for the user to change */ - type: DamageType; -} -/** A weapon can either be unspecific or specific along with baseline material and runes */ -type SpecificWeaponData = { - material: WeaponMaterialSource; - runes: WeaponRuneSource; -}; -interface WeaponMaterialSource extends ItemMaterialSource { - type: WeaponMaterialType | null; -} -type WeaponRuneSource = { - potency: ZeroToFour; - striking: ZeroToFour; - property: WeaponPropertyRuneType[]; -}; -interface WeaponSystemData extends Omit, Omit, "material" | "subitems"> { - traits: WeaponTraits; - baseItem: BaseWeaponType | null; - material: WeaponMaterialData; - maxRange: number | null; - reload: { - value: WeaponReloadTime | null; - /** Whether the ammunition (or the weapon itself, if thrown) should be consumed upon firing */ - consume: boolean | null; - /** A display label for use in any view */ - label: string | null; - }; - runes: WeaponRuneData; - usage: WeaponUsageDetails; - graspingAppendage: boolean; - meleeUsage?: Required; - stackGroup: null; -} -type SourceOmission = "apex" | "bulk" | "description" | "hp" | "identification" | "price" | "temporary"; -type WeaponUsageDetails = UsageDetails & Required; -interface WeaponTraits extends WeaponTraitsSource { - otherTags: OtherWeaponTag[]; - toggles: WeaponTraitToggles; -} -interface WeaponMaterialData extends ItemMaterialData { - type: WeaponMaterialType | null; -} -interface WeaponRuneData extends WeaponRuneSource { - effects: WeaponPropertyRuneType[]; -} -interface ComboWeaponMeleeUsage { - damage: { - type: DamageType; - die: DamageDieSize; - }; - group: MeleeWeaponGroup; - traits?: WeaponTrait[]; - traitToggles?: { - modular: DamageType | null; - versatile: DamageType | null; - }; -} -export type { ComboWeaponMeleeUsage, SpecificWeaponData, WeaponDamage, WeaponFlags, WeaponMaterialData, WeaponMaterialSource, WeaponPersistentDamage, WeaponRuneData, WeaponRuneSource, WeaponSource, WeaponSystemData, WeaponSystemSource, WeaponTraitsSource, }; diff --git a/types/src/module/item/weapon/document.d.ts b/types/src/module/item/weapon/document.d.ts deleted file mode 100644 index bd2f6c461..000000000 --- a/types/src/module/item/weapon/document.d.ts +++ /dev/null @@ -1,121 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { AttributeString } from "@actor/types.ts"; -import type { ConsumablePF2e, MeleePF2e, ShieldPF2e } from "@item"; -import { PhysicalItemPF2e } from "@item"; -import type { ItemSourcePF2e, RawItemChatData } from "@item/base/data/index.ts"; -import type { NPCAttackTrait } from "@item/melee/types.ts"; -import type { PhysicalItemConstructionContext } from "@item/physical/document.ts"; -import { IdentificationStatus, MystifiedData } from "@item/physical/index.ts"; -import type { RangeData } from "@item/types.ts"; -import type { StrikeRuleElement } from "@module/rules/rule-element/strike.ts"; -import type { UserPF2e } from "@module/user/document.ts"; -import type { WeaponDamage, WeaponFlags, WeaponSource, WeaponSystemData } from "./data.ts"; -import type { - BaseWeaponType, - OtherWeaponTag, - WeaponCategory, - WeaponGroup, - WeaponReloadTime, - WeaponTrait, -} from "./types.ts"; - -declare class WeaponPF2e extends PhysicalItemPF2e { - shield?: ShieldPF2e; - /** The rule element that generated this weapon, if applicable */ - rule?: StrikeRuleElement; - static get validTraits(): Record; - constructor(data: PreCreate, context?: WeaponConstructionContext); - /** Given this weapon is an alternative usage, whether it is melee or thrown */ - altUsageType: "melee" | "thrown" | null; - get isEquipped(): boolean; - /** Weapons may have "attached" traits instead of "attached" usages. */ - get isAttachable(): boolean; - get baseType(): BaseWeaponType | null; - get group(): WeaponGroup | null; - get category(): WeaponCategory; - /** The default attribute used in attack rolls */ - get defaultAttribute(): AttributeString; - get hands(): "0" | "1" | "1+" | "2"; - /** The maximum range of this weapon: `null` if melee, and usually 6 * range increment if ranged */ - get maxRange(): number | null; - /** A single object containing range increment and maximum */ - get range(): RangeData | null; - get reload(): WeaponReloadTime | null; - get isSpecific(): boolean; - get isMelee(): boolean; - get isRanged(): boolean; - /** Whether the weapon in its current usage is thrown: a thrown-only weapon or a thrown usage of a melee weapon */ - get isThrown(): boolean; - /** Whether the weapon is _can be_ thrown: a thrown-only weapon or one that has a throwable usage */ - get isThrowable(): boolean; - get isOversized(): boolean; - /** This weapon's damage before modification by creature abilities, effects, etc. */ - get baseDamage(): WeaponDamage; - /** Does this weapon deal damage? */ - get dealsDamage(): boolean; - /** The number of units of ammunition required to attack with this weapon */ - get ammoRequired(): number; - get ammo(): ConsumablePF2e | WeaponPF2e | null; - get otherTags(): Set; - acceptsSubitem(candidate: PhysicalItemPF2e): boolean; - isStackableWith(item: PhysicalItemPF2e): boolean; - /** Whether this weapon can serve as ammunition for another weapon */ - isAmmoFor(weapon: WeaponPF2e): boolean; - /** Generate a list of strings for use in predication */ - getRollOptions(prefix?: string, options?: { - includeGranter?: boolean; - }): string[]; - prepareBaseData(): void; - /** Add the rule elements of this weapon's linked ammunition to its own list */ - prepareSiblingData(): void; - onPrepareSynthetics(): void; - getChatData(this: WeaponPF2e, htmlOptions?: EnrichmentOptions): Promise; - getMystifiedData(status: IdentificationStatus, { source }?: { - source?: boolean | undefined; - }): MystifiedData; - generateUnidentifiedName({ typeOnly }?: { - typeOnly?: boolean; - }): string; - /** - * Get the "alternative usages" of a weapon: melee (in the case of combination weapons) and thrown (in the case - * of thrown melee weapons) - * @param [options.recurse=true] Whether to get the alternative usages of alternative usages - */ - getAltUsages(options?: { - recurse?: boolean; - }): this[]; - clone(data: Record | undefined, context: Omit & { - save: true; - }): Promise; - clone(data?: Record, context?: Omit & { - save?: false; - }): this; - clone(data?: Record, context?: WeaponCloneContext): this | Promise; - /** Generate a clone of this thrown melee weapon with its thrown usage overlain, or `null` if not applicable */ - private toThrownUsage; - /** Generate a clone of this combination weapon with its melee usage overlain, or `null` if not applicable */ - private toMeleeUsage; - /** Generate a melee item from this weapon for use by NPCs */ - toNPCAttacks(this: WeaponPF2e>, { keepId }?: { - keepId?: boolean | undefined; - }): MeleePF2e>[]; - /** Consume a unit of ammunition used by this weapon */ - consumeAmmo(): Promise; - protected _preUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, user: UserPF2e): Promise; - /** Remove links to this weapon from NPC attacks */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface WeaponPF2e extends PhysicalItemPF2e { - flags: WeaponFlags; - readonly _source: WeaponSource; - system: WeaponSystemData; - get traits(): Set; -} -interface WeaponConstructionContext extends PhysicalItemConstructionContext { - shield?: ShieldPF2e; -} -interface WeaponCloneContext extends DocumentCloneContext { - /** If this clone is an alternative usage, the type */ - altUsage?: "melee" | "thrown"; -} -export { WeaponPF2e }; diff --git a/types/src/module/item/weapon/helpers.d.ts b/types/src/module/item/weapon/helpers.d.ts deleted file mode 100644 index 870041830..000000000 --- a/types/src/module/item/weapon/helpers.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { WeaponPF2e } from "./document.ts"; -/** Upgrade a trait with a dice annotation, if possible, or otherwise return the original trait. */ -declare function upgradeWeaponTrait(trait: TTrait): TTrait; -/** - * Add a trait to an array of traits--unless it matches an existing trait except by annotation. Replace the trait if - * the new trait is an upgrade, or otherwise do nothing. - */ -declare function addOrUpgradeTrait(traits: TTrait[], newTrait: TTrait): TTrait[]; -/** Apply a two-hand trait to a weapon's damage dice. */ -declare function processTwoHandTrait(weapon: WeaponPF2e): void; -export { addOrUpgradeTrait, processTwoHandTrait, upgradeWeaponTrait }; diff --git a/types/src/module/item/weapon/index.d.ts b/types/src/module/item/weapon/index.d.ts deleted file mode 100644 index 7ed9c518d..000000000 --- a/types/src/module/item/weapon/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./data.ts"; -export { WeaponPF2e } from "./document.ts"; -export { WeaponSheetPF2e } from "./sheet.ts"; -export * from "./types.ts"; diff --git a/types/src/module/item/weapon/sheet.d.ts b/types/src/module/item/weapon/sheet.d.ts deleted file mode 100644 index 2f69ccd4b..000000000 --- a/types/src/module/item/weapon/sheet.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -/// -/// -/// -import { ItemSheetOptions } from "@item/base/sheet/sheet.ts"; -import { MaterialSheetData, PhysicalItemSheetData, PhysicalItemSheetPF2e, RUNE_DATA } from "@item/physical/index.ts"; -import { SheetOptions } from "@module/sheet/helpers.ts"; -import { ComboWeaponMeleeUsage, SpecificWeaponData } from "./data.ts"; -import type { WeaponPF2e } from "./document.ts"; -export declare class WeaponSheetPF2e extends PhysicalItemSheetPF2e { - protected get validTraits(): Record; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface PropertyRuneSheetSlot { - slug: string | null; - label: string | null; - disabled: boolean; -} -interface WeaponSheetData extends PhysicalItemSheetData { - abpEnabled: boolean; - adjustedDiceHint: string | null; - adjustedLevelHint: string | null; - adjustedPriceHint: string | null; - baseTypes: typeof CONFIG.PF2E.baseWeaponTypes; - categories: typeof CONFIG.PF2E.weaponCategories; - conditionTypes: typeof CONFIG.PF2E.conditionTypes; - damageDice: typeof CONFIG.PF2E.damageDice; - damageDie: typeof CONFIG.PF2E.damageDie; - damageDieFaces: Record; - damageTypes: typeof CONFIG.PF2E.damageTypes; - groups: typeof CONFIG.PF2E.weaponGroups; - isBomb: boolean; - isComboWeapon: boolean; - itemBonuses: typeof CONFIG.PF2E.itemBonuses; - mandatoryMelee: boolean; - mandatoryRanged: boolean; - meleeGroups: typeof CONFIG.PF2E.meleeWeaponGroups; - meleeUsage: ComboWeaponMeleeUsage | undefined; - meleeUsageBaseDamage: FormSelectOption[]; - meleeUsageTraits: SheetOptions; - otherTags: SheetOptions; - preciousMaterials: MaterialSheetData; - propertyRuneSlots: PropertyRuneSheetSlot[]; - runeTypes: typeof RUNE_DATA.weapon; - specificMagicData: SpecificWeaponData; - weaponMAP: typeof CONFIG.PF2E.weaponMAP; - weaponRanges: Record; - weaponReload: typeof CONFIG.PF2E.weaponReload; -} -export {}; diff --git a/types/src/module/item/weapon/trait-toggles.d.ts b/types/src/module/item/weapon/trait-toggles.d.ts deleted file mode 100644 index 24fc7ab07..000000000 --- a/types/src/module/item/weapon/trait-toggles.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { WeaponPF2e } from "@item"; -import type { DamageType } from "@system/damage/types.ts"; -/** A helper class to handle toggleable weapon traits */ -declare class WeaponTraitToggles { - #private; - parent: WeaponPF2e; - constructor(weapon: WeaponPF2e); - get actor(): ActorPF2e | null; - get doubleBarrel(): { - selected: boolean; - }; - get modular(): { - options: DamageType[]; - selected: DamageType | null; - }; - get versatile(): { - options: DamageType[]; - selected: DamageType | null; - }; - applyChanges(): void; - /** - * Update a modular or versatile weapon to change its damage type - * @returns A promise indicating whether an update was made - */ - update({ trait, selected }: ToggleWeaponTraitParams): Promise; -} -interface ToggleDoubleBarrelParams { - trait: "double-barrel"; - selected: boolean; -} -interface ToggleModularVersatileParams { - trait: "modular" | "versatile"; - selected: DamageType | null; -} -type ToggleWeaponTraitParams = ToggleDoubleBarrelParams | ToggleModularVersatileParams; -export { WeaponTraitToggles }; diff --git a/types/src/module/item/weapon/types.d.ts b/types/src/module/item/weapon/types.d.ts deleted file mode 100644 index 7faa6526b..000000000 --- a/types/src/module/item/weapon/types.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { PreciousMaterialType } from "@item/physical/types.ts"; -import type { - MELEE_WEAPON_GROUPS, - WEAPON_CATEGORIES, - WEAPON_GROUPS, - WEAPON_PROPERTY_RUNE_TYPES, - WEAPON_RANGES, -} from "./values.ts"; - -type WeaponPropertyRuneType = SetElement; -type WeaponCategory = (typeof WEAPON_CATEGORIES)[number]; -type MeleeWeaponGroup = SetElement; -type WeaponGroup = SetElement; -type BaseWeaponType = keyof typeof CONFIG.PF2E.baseWeaponTypes | keyof typeof CONFIG.PF2E.baseShieldTypes; -type WeaponTrait = keyof typeof CONFIG.PF2E.weaponTraits; -type OtherWeaponTag = "improvised" | "shoddy" | "handwraps-of-mighty-blows"; -type WeaponRangeIncrement = SetElement; -type WeaponReloadTime = "-" | "0" | "1" | "2" | "3" | "10"; -type StrikingRuneType = "striking" | "greaterStriking" | "majorStriking" | "mythicStriking"; -type WeaponMaterialType = Exclude; -export type { BaseWeaponType, MeleeWeaponGroup, OtherWeaponTag, StrikingRuneType, WeaponCategory, WeaponGroup, WeaponMaterialType, WeaponPropertyRuneType, WeaponRangeIncrement, WeaponReloadTime, WeaponTrait, }; diff --git a/types/src/module/item/weapon/values.d.ts b/types/src/module/item/weapon/values.d.ts deleted file mode 100644 index d955d857b..000000000 --- a/types/src/module/item/weapon/values.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { WeaponGroup, WeaponTrait } from "./types.ts"; - -declare const WEAPON_CATEGORIES: readonly ["unarmed", "simple", "martial", "advanced"]; -declare const WEAPON_GROUPS: Set<"axe" | "bomb" | "bow" | "brawling" | "club" | "crossbow" | "dart" | "firearm" | "flail" | "hammer" | "knife" | "pick" | "polearm" | "shield" | "sling" | "spear" | "sword">; -declare const MELEE_WEAPON_GROUPS: Set<"axe" | "brawling" | "club" | "dart" | "flail" | "hammer" | "knife" | "pick" | "polearm" | "shield" | "spear" | "sword">; -/** Groups that will be forced as ranged weapons */ -declare const MANDATORY_RANGED_GROUPS: Set; -declare const WEAPON_PROPERTY_RUNE_TYPES: Set<"holy" | "unholy" | "vorpal" | "astral" | "speed" | "ancestralEchoing" | "anchoring" | "ashen" | "authorized" | "bane" | "bloodbane" | "bloodthirsty" | "brilliant" | "called" | "coating" | "conducting" | "corrosive" | "crushing" | "cunning" | "dancing" | "deathdrinking" | "decaying" | "demolishing" | "disrupting" | "earthbinding" | "energizing" | "extending" | "fanged" | "fearsome" | "flaming" | "flickering" | "flurrying" | "frost" | "ghostTouch" | "giantKilling" | "greaterGiantKilling" | "greaterAnchoring" | "greaterAshen" | "greaterAstral" | "greaterBloodbane" | "greaterBrilliant" | "greaterCorrosive" | "greaterCrushing" | "greaterDecaying" | "greaterDisrupting" | "greaterExtending" | "greaterFanged" | "greaterFearsome" | "greaterFlaming" | "greaterFrost" | "greaterHauling" | "greaterImpactful" | "greaterRooting" | "greaterShock" | "greaterThundering" | "grievous" | "hauling" | "hopeful" | "hooked" | "impactful" | "impossible" | "keen" | "kinWarding" | "majorFanged" | "majorRooting" | "merciful" | "nightmare" | "pacifying" | "returning" | "rooting" | "serrating" | "shifting" | "shock" | "shockwave" | "spellStoring" | "swarming" | "thundering" | "trueRooting" | "underwater" | "wounding">; -declare const THROWN_RANGES: Set<15 | 10 | 20 | 30 | 40 | 100 | 80 | 60>; -declare const WEAPON_RANGES: Set<15 | 10 | 20 | 200 | 30 | 40 | 50 | 100 | 80 | 60 | 70 | 90 | 110 | 120 | 140 | 150 | 180 | 240 | 300>; -declare const RANGED_ONLY_TRAITS: Set; -declare const MELEE_ONLY_TRAITS: Set; -export { MANDATORY_RANGED_GROUPS, MELEE_ONLY_TRAITS, MELEE_WEAPON_GROUPS, RANGED_ONLY_TRAITS, THROWN_RANGES, WEAPON_CATEGORIES, WEAPON_GROUPS, WEAPON_PROPERTY_RUNE_TYPES, WEAPON_RANGES, }; diff --git a/types/src/module/journal-entry/sheet.d.ts b/types/src/module/journal-entry/sheet.d.ts deleted file mode 100644 index 3f8167314..000000000 --- a/types/src/module/journal-entry/sheet.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -declare class JournalSheetPF2e extends JournalSheet { - /** Start pagination at 1 🤫 */ - getData(options?: Partial): Promise>; -} -export { JournalSheetPF2e }; diff --git a/types/src/module/macro.d.ts b/types/src/module/macro.d.ts deleted file mode 100644 index 43d8ceb9e..000000000 --- a/types/src/module/macro.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare class MacroPF2e extends Macro { - /** Raise permission requirement of world macro visibility to observer */ - get visible(): boolean; -} diff --git a/types/src/module/migration/base.d.ts b/types/src/module/migration/base.d.ts deleted file mode 100644 index 97331ac2c..000000000 --- a/types/src/module/migration/base.d.ts +++ /dev/null @@ -1,80 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { ScenePF2e } from "@scene/index.ts"; -/** - * This is the base class for a migration. - * If you make a change to the database schema (i.e. anything in template.json or data-definitions.ts), - * you should create a migration. To do so, there are several steps: - * - Bump the schema number in system.json - * - Make a class that inherits this base class and implements `updateActor` or `updateItem` using the - * new value of the schema number as the version - * - Add this class to getAllMigrations() in src/module/migrations/index.ts - * - Test that your changes work. We have unit tests in tests/module/migration.test.ts as well as you - * should add your migration to packs/run-migration - */ -declare abstract class MigrationBase { - /** - * This is the schema version. Make sure it matches the new version in system.json - */ - static readonly version: number; - readonly version: number; - /** - * Setting requiresFlush to true will indicate that the migration runner should not call any more - * migrations after this in a batch. Use this if you are adding items to actors for instance. - */ - requiresFlush: boolean; -} -/** Optional methods */ -interface MigrationBase { - /** - * Update the actor to the latest schema version. - * @param source This should be effectively a `ActorSourcePF2e` from the previous version. - */ - updateActor?(source: ActorSourcePF2e): Promise; - /** - * Update the item to the latest schema version, handling changes that must happen before any other migration in a - * given list. - * @param source Item to update. This should be an `ItemData` from the previous version - * @param actorSource If the item is part of an actor, this is set to the actor source - */ - preUpdateItem?(source: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; - /** - * Update the item to the latest schema version. - * @param source Item to update. This should be an `ItemData` from the previous version. - * @param actorSource If the item is part of an actor, this is set to the actor. For instance - */ - updateItem?(source: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; - /** - * Update the macro to the latest schema version. - * @param source Macro data to update. This should be a `MacroData` from the previous version. - */ - updateJournalEntry?(source: foundry.documents.JournalEntrySource): Promise; - /** - * Update the macro to the latest schema version. - * @param source Macro data to update. This should be a `MacroData` from the previous version. - */ - updateMacro?(source: foundry.documents.MacroSource): Promise; - /** - * Update the rollable table to the latest schema version. - * @param source Rolltable data to update. This should be a `RollTableData` from the previous version. - */ - updateTable?(source: foundry.documents.RollTableSource): Promise; - /** - * Update the token to the latest schema version. - * @param tokenData Token data to update. This should be a `TokenData` from the previous version. - */ - updateToken?(tokenData: foundry.documents.TokenSource, actor: Readonly, scene: Readonly): Promise; - /** - * Update the user to the latest schema version. - * @param userData User's data to update. This should be a `UserData` from the previous version. - */ - updateUser?(userData: foundry.documents.UserSource): Promise; - /** - * Run migrations for this schema version. - * Sometimes there needs to be custom steps run during a migration. For instance, if the change - * isn't actor or item related. This function will be called during the migration. - */ - migrate?(): Promise; -} -export { MigrationBase }; diff --git a/types/src/module/migration/index.d.ts b/types/src/module/migration/index.d.ts deleted file mode 100644 index 21c7e65e6..000000000 --- a/types/src/module/migration/index.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { MigrationBase } from "./base.ts"; -export { MigrationRunner } from "./runner/index.ts"; -export declare class MigrationList { - #private; - static get latestVersion(): number; - static constructAll(): MigrationBase[]; - static constructFromVersion(version: number | null): MigrationBase[]; - static constructRange(min: number, max?: number): MigrationBase[]; -} diff --git a/types/src/module/migration/migrations/700-single-class-features.d.ts b/types/src/module/migration/migrations/700-single-class-features.d.ts deleted file mode 100644 index f533a6a28..000000000 --- a/types/src/module/migration/migrations/700-single-class-features.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Consolidate all class features with multiple instances for different levels to single items */ -export declare class Migration700SingleClassFeatures extends MigrationBase { - #private; - static version: number; - /** The first ID of each feature is the one that will stay */ - private itemIds; - private features; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/701-modifier-name-to-slug.d.ts b/types/src/module/migration/migrations/701-modifier-name-to-slug.d.ts deleted file mode 100644 index 12588dc75..000000000 --- a/types/src/module/migration/migrations/701-modifier-name-to-slug.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Rename the `name` property on FlatModifier and DamageDice REs to `slug` to better represent its purpose */ -export declare class Migration701ModifierNameToSlug extends MigrationBase { - static version: number; - updateItem(itemSource: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/702-re-formulas-at-instance-level.d.ts b/types/src/module/migration/migrations/702-re-formulas-at-instance-level.d.ts deleted file mode 100644 index f325153fc..000000000 --- a/types/src/module/migration/migrations/702-re-formulas-at-instance-level.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Change RE formula data replacement to operate at actor and item instance levels */ -export declare class Migration702REFormulasAtInstanceLevel extends MigrationBase { - static version: number; - protected raiseToInstanceLevel(value: string): string; - updateItem(itemSource: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/703-spell-damage-structure.d.ts b/types/src/module/migration/migrations/703-spell-damage-structure.d.ts deleted file mode 100644 index d479d25e9..000000000 --- a/types/src/module/migration/migrations/703-spell-damage-structure.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Correct the structure of spell damage in case it slipped past a previous migration */ -export declare class Migration703SpellDamageStructure extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/704-martial-proficiency-re.d.ts b/types/src/module/migration/migrations/704-martial-proficiency-re.d.ts deleted file mode 100644 index 0be1b0d7c..000000000 --- a/types/src/module/migration/migrations/704-martial-proficiency-re.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert `LinkedProficiency` rules elements to `MartialProficiency` ones, apply to gunslinger class */ -export declare class Migration704MartialProficiencyRE extends MigrationBase { - static version: number; - updateItem(itemSource: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/705-gunslinger-catch-up.d.ts b/types/src/module/migration/migrations/705-gunslinger-catch-up.d.ts deleted file mode 100644 index 36ebc9d42..000000000 --- a/types/src/module/migration/migrations/705-gunslinger-catch-up.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Catch up Gunslinger class features with newly-included REs */ -export declare class Migration705GunslingerCatchUp extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/706-formulas-at-instance-level-everything-else.d.ts b/types/src/module/migration/migrations/706-formulas-at-instance-level-everything-else.d.ts deleted file mode 100644 index 3099ea419..000000000 --- a/types/src/module/migration/migrations/706-formulas-at-instance-level-everything-else.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { Migration702REFormulasAtInstanceLevel } from "./702-re-formulas-at-instance-level.ts"; -/** Change RE formula data replacement to operate at actor and item instance levels */ -export declare class Migration706FormulasAtInstanceLevelEverythingElse extends Migration702REFormulasAtInstanceLevel { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; - private replaceInlineRolls; -} diff --git a/types/src/module/migration/migrations/707-bracketed-formulas-at-instance-level.d.ts b/types/src/module/migration/migrations/707-bracketed-formulas-at-instance-level.d.ts deleted file mode 100644 index 3251e4078..000000000 --- a/types/src/module/migration/migrations/707-bracketed-formulas-at-instance-level.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import { Migration702REFormulasAtInstanceLevel } from "./702-re-formulas-at-instance-level.ts"; -export declare class Migration707BracketedFormulasAtInstanceLevel extends Migration702REFormulasAtInstanceLevel { - static version: number; -} diff --git a/types/src/module/migration/migrations/708-specific-rule-label.d.ts b/types/src/module/migration/migrations/708-specific-rule-label.d.ts deleted file mode 100644 index a76e26211..000000000 --- a/types/src/module/migration/migrations/708-specific-rule-label.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration708SpecificRuleLabel extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/709-re-formulas-at-instance-level-redux.d.ts b/types/src/module/migration/migrations/709-re-formulas-at-instance-level-redux.d.ts deleted file mode 100644 index 292f732b5..000000000 --- a/types/src/module/migration/migrations/709-re-formulas-at-instance-level-redux.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { Migration702REFormulasAtInstanceLevel } from "./702-re-formulas-at-instance-level.ts"; -export declare class Migration709REFormulasAtInstanceLevelRedux extends Migration702REFormulasAtInstanceLevel { - static version: number; - private walkObject; - private findAndMigrateFormulas; - /** Migrate nested roll formulas on rule elements */ - updateItem(itemSource: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/710-rarity-to-string.d.ts b/types/src/module/migration/migrations/710-rarity-to-string.d.ts deleted file mode 100644 index e81e861db..000000000 --- a/types/src/module/migration/migrations/710-rarity-to-string.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration710RarityToString extends MigrationBase { - static version: number; - private updateTraits; - updateActor(actorSource: ActorSourcePF2e): Promise; - updateItem(itemSource: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/711-heritage-items.d.ts b/types/src/module/migration/migrations/711-heritage-items.d.ts deleted file mode 100644 index 3239656fd..000000000 --- a/types/src/module/migration/migrations/711-heritage-items.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration711HeritageItems extends MigrationBase { - #private; - static version: number; - updateActor(actorSource: ActorSourcePF2e): Promise; - updateItem(itemSource: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/712-actor-shield-structure.d.ts b/types/src/module/migration/migrations/712-actor-shield-structure.d.ts deleted file mode 100644 index 1ff933929..000000000 --- a/types/src/module/migration/migrations/712-actor-shield-structure.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Make attributes.shield ephemeral on PCs and NPCs */ -export declare class Migration712ActorShieldStructure extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/713-fist-to-strike-re.d.ts b/types/src/module/migration/migrations/713-fist-to-strike-re.d.ts deleted file mode 100644 index b453e94c2..000000000 --- a/types/src/module/migration/migrations/713-fist-to-strike-re.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Grant an extra fist attack from the "Powerful Fist" and "Martial Artist Dedication" items */ -export declare class Migration713FistToStrikeRE extends MigrationBase { - static version: number; - updateItem(itemSource: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/714-range-increment-res.d.ts b/types/src/module/migration/migrations/714-range-increment-res.d.ts deleted file mode 100644 index 1a14989f6..000000000 --- a/types/src/module/migration/migrations/714-range-increment-res.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add rule elements to feats(ures) that increase range increments or allow one to ignore/mitigate range penalties */ -export declare class Migration714RangeIncrementREs extends MigrationBase { - static version: number; - private farLobber; - private farShot; - private farThrow; - private huntPrey; - private legendaryShot; - private masterfulHunter; - private shootistsEdge; - private triangulate; - private uncannyBombs; - private unerringShot; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/715-dangerous-sorcery.d.ts b/types/src/module/migration/migrations/715-dangerous-sorcery.d.ts deleted file mode 100644 index d8e253c38..000000000 --- a/types/src/module/migration/migrations/715-dangerous-sorcery.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration715DangerousSorcery extends MigrationBase { - static version: number; - private dangerousSorcery; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/716-strike-damage-selector.d.ts b/types/src/module/migration/migrations/716-strike-damage-selector.d.ts deleted file mode 100644 index d6f352ed9..000000000 --- a/types/src/module/migration/migrations/716-strike-damage-selector.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration716StrikeDamageSelector extends MigrationBase { - static version: number; - private itemsToSkip; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/717-take-feat-limits.d.ts b/types/src/module/migration/migrations/717-take-feat-limits.d.ts deleted file mode 100644 index be153f127..000000000 --- a/types/src/module/migration/migrations/717-take-feat-limits.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Indicate whether a feat must be taken at level 1 or may only be taken a limited number of times */ -export declare class Migration717TakeFeatLimits extends MigrationBase { - static version: number; - private levelOneOnly; - private maxTakeable; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/718-carry-type.d.ts b/types/src/module/migration/migrations/718-carry-type.d.ts deleted file mode 100644 index 024ac21d4..000000000 --- a/types/src/module/migration/migrations/718-carry-type.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update physical item usage and equipped to reflect carry types (held, worn, stowed) */ -export declare class Migration718CarryType extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e, actor?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/719-shrug-flanking.d.ts b/types/src/module/migration/migrations/719-shrug-flanking.d.ts deleted file mode 100644 index 89e3edeaf..000000000 --- a/types/src/module/migration/migrations/719-shrug-flanking.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add roll options to abilities allowing one to ignore the flat-footed condition from being flanked */ -export declare class Migration719ShrugFlanking extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/720-update-spell-descriptions.d.ts b/types/src/module/migration/migrations/720-update-spell-descriptions.d.ts deleted file mode 100644 index aaf17eb4d..000000000 --- a/types/src/module/migration/migrations/720-update-spell-descriptions.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update the descriptions of several spells with new effect items */ -export declare class Migration720UpdateSpellDescriptions extends MigrationBase { - static version: number; - private spellUUIDs; - private spells; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/721-set-reload-values.d.ts b/types/src/module/migration/migrations/721-set-reload-values.d.ts deleted file mode 100644 index 00754e04b..000000000 --- a/types/src/module/migration/migrations/721-set-reload-values.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Set a reload of value of 0 to several weapons that had no reload */ -export declare class Migration721SetReloadValues extends MigrationBase { - static version: number; - private toUpdate; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/722-crafting-system-data.d.ts b/types/src/module/migration/migrations/722-crafting-system-data.d.ts deleted file mode 100644 index 8559ff367..000000000 --- a/types/src/module/migration/migrations/722-crafting-system-data.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Ensure `crafting` property in character system data has the correct structure */ -export declare class Migration722CraftingSystemData extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/723-cumulative-item-bonuses.d.ts b/types/src/module/migration/migrations/723-cumulative-item-bonuses.d.ts deleted file mode 100644 index 49013dfd7..000000000 --- a/types/src/module/migration/migrations/723-cumulative-item-bonuses.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update feats, items, and rule elements to accurately process cumulative item bonuses */ -export declare class Migration723CumulativeItemBonuses extends MigrationBase { - static version: number; - /** Feat items: Animal Skin, Mountance Stance, Mountance Quake, and Mountance Stronghold */ - private stanceFeats; - /** Slug pattern for the same */ - private mountainPattern; - /** Remove old Mountain Stance effects */ - updateActor(source: ActorSourcePF2e): Promise; - /** Update feat, effect, and equipment items */ - updateItem(source: ItemSourcePF2e): Promise; - /** Replace the retired toggle macro with a simple hotbar-drop effect macro */ - updateMacro(source: foundry.documents.MacroSource): Promise; -} diff --git a/types/src/module/migration/migrations/724-crafting-max-item-level.d.ts b/types/src/module/migration/migrations/724-crafting-max-item-level.d.ts deleted file mode 100644 index 822d944a3..000000000 --- a/types/src/module/migration/migrations/724-crafting-max-item-level.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Predicate rule elements related to crafting entries to protect against partial entry data getting created */ -export declare class Migration724CraftingMaxItemLevel extends MigrationBase { - static version: number; - private pathPattern; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/725-quick-climb-rule-elements.d.ts b/types/src/module/migration/migrations/725-quick-climb-rule-elements.d.ts deleted file mode 100644 index 4c15ce782..000000000 --- a/types/src/module/migration/migrations/725-quick-climb-rule-elements.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Predicate rule elements related to crafting entries to protect against partial entry data getting created */ -export declare class Migration725QuickClimbREs extends MigrationBase { - static version: number; - private quickClimb; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/726-journal-setting.d.ts b/types/src/module/migration/migrations/726-journal-setting.d.ts deleted file mode 100644 index 176541db3..000000000 --- a/types/src/module/migration/migrations/726-journal-setting.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { MigrationBase } from "../base.ts"; -/** Remove the journal theme setting, changing the default sheet according to the stored setting value */ -export declare class Migration726JournalSetting extends MigrationBase { - static version: number; - migrate(): Promise; -} diff --git a/types/src/module/migration/migrations/727-trim-self-roll-options.d.ts b/types/src/module/migration/migrations/727-trim-self-roll-options.d.ts deleted file mode 100644 index 1184d1f46..000000000 --- a/types/src/module/migration/migrations/727-trim-self-roll-options.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Trim roll options with "self:" prefixes but are unnecessary for targeting */ -export declare class Migration727TrimSelfRollOptions extends MigrationBase { - #private; - static version: number; - protected optionPattern: RegExp; - protected optionReplacement: string; - protected trimPredicates(obj: Record): Record; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/728-flatten-physical-properties.d.ts b/types/src/module/migration/migrations/728-flatten-physical-properties.d.ts deleted file mode 100644 index b3b4b8c99..000000000 --- a/types/src/module/migration/migrations/728-flatten-physical-properties.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Flatten several physical-item properties, remove others no longer in use */ -export declare class Migration728FlattenPhysicalProperties extends MigrationBase { - static version: number; - private booleanKeys; - private numericKeys; - private stringKeys; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/729-cumulative-item-bonus-cleanup.d.ts b/types/src/module/migration/migrations/729-cumulative-item-bonus-cleanup.d.ts deleted file mode 100644 index fb82d5fee..000000000 --- a/types/src/module/migration/migrations/729-cumulative-item-bonus-cleanup.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Clean up after bug overhauling cumulative item bonuses */ -export declare class Migration729CumulativeItemBonusCleanup extends MigrationBase { - #private; - static version: number; - private isExplorersClothing; - private isStanceEffectOrAnimalSkinFeat; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/730-derune-handwraps.d.ts b/types/src/module/migration/migrations/730-derune-handwraps.d.ts deleted file mode 100644 index d57600d86..000000000 --- a/types/src/module/migration/migrations/730-derune-handwraps.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove Potency and Striking rule elements from handwraps of mighty blows */ -export declare class Migration730DeruneHandwraps extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/731-toggle-property-to-roll-option.d.ts b/types/src/module/migration/migrations/731-toggle-property-to-roll-option.d.ts deleted file mode 100644 index 0bb86b2ec..000000000 --- a/types/src/module/migration/migrations/731-toggle-property-to-roll-option.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { Migration727TrimSelfRollOptions } from "./727-trim-self-roll-options.ts"; -/** Retire ToggleProperty rule element, converting them to toggleable RollOption ones */ -export declare class Migration731TogglePropertyToRollOption extends Migration727TrimSelfRollOptions { - static version: number; - protected optionPattern: RegExp; - protected optionReplacement: string; - pathPattern: RegExp; - updateItem(source: ItemSourcePF2e): Promise; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/732-fix-dedication-feat-types.d.ts b/types/src/module/migration/migrations/732-fix-dedication-feat-types.d.ts deleted file mode 100644 index 170f535df..000000000 --- a/types/src/module/migration/migrations/732-fix-dedication-feat-types.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Fix featType properties erroneously set to a non-existent "dedication" type */ -export declare class Migration732FixDedicationFeatTypes extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/733-item-bonus-from-equipment.d.ts b/types/src/module/migration/migrations/733-item-bonus-from-equipment.d.ts deleted file mode 100644 index 2f293f4f4..000000000 --- a/types/src/module/migration/migrations/733-item-bonus-from-equipment.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Fix featType properties erroneously set to a non-existent "dedication" type */ -export declare class Migration733ItemBonusFromEquipment extends MigrationBase { - static version: number; - slugs: Set; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/734-spell-location-props-and-signature.d.ts b/types/src/module/migration/migrations/734-spell-location-props-and-signature.d.ts deleted file mode 100644 index 088fd950a..000000000 --- a/types/src/module/migration/migrations/734-spell-location-props-and-signature.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Certain actor specific spell properties moved to spell.location such as signature */ -export declare class Migration734SpellLocationPropsAndSignature extends MigrationBase { - static version: number; - updateActor(actor: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e, actor?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/735-firearm-ammo-alchemical.d.ts b/types/src/module/migration/migrations/735-firearm-ammo-alchemical.d.ts deleted file mode 100644 index c328a517d..000000000 --- a/types/src/module/migration/migrations/735-firearm-ammo-alchemical.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add the "alchemical" trait to all firearm ammunition */ -export declare class Migration735FirearmAmmoAlchemical extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/736-remove-broken-threshold.d.ts b/types/src/module/migration/migrations/736-remove-broken-threshold.d.ts deleted file mode 100644 index da1f6e149..000000000 --- a/types/src/module/migration/migrations/736-remove-broken-threshold.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove brokenThreshold property left undeleted in `Migration728FlattenPhysicalProperties` */ -export declare class Migration736RemoveBrokenThreshold extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/737-normalize-re-keys.d.ts b/types/src/module/migration/migrations/737-normalize-re-keys.d.ts deleted file mode 100644 index e93b59349..000000000 --- a/types/src/module/migration/migrations/737-normalize-re-keys.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { Migration731TogglePropertyToRollOption } from "./731-toggle-property-to-roll-option.ts"; -/** Ensure RE keys do not begin with PF2E.RuleElement, rerun migration 731 */ -export declare class Migration737NormalizeRuleElementKeys extends Migration731TogglePropertyToRollOption { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/738-update-laughing-shadow.d.ts b/types/src/module/migration/migrations/738-update-laughing-shadow.d.ts deleted file mode 100644 index caad0e3cd..000000000 --- a/types/src/module/migration/migrations/738-update-laughing-shadow.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update the rule elements of the Laughing Shadow hybrid study, remove its presence from Arcane Cascade rules */ -export declare class Migration738UpdateLaughingShadow extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/739-recovery-check-dc.d.ts b/types/src/module/migration/migrations/739-recovery-check-dc.d.ts deleted file mode 100644 index 2bcfbbecf..000000000 --- a/types/src/module/migration/migrations/739-recovery-check-dc.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration739RecoveryCheckDC extends MigrationBase { - static version: number; - private toughness; - private defyDeath; - private mountainsStoutness; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/740-fix-max-takable.d.ts b/types/src/module/migration/migrations/740-fix-max-takable.d.ts deleted file mode 100644 index f0e900a5a..000000000 --- a/types/src/module/migration/migrations/740-fix-max-takable.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove maxTaken property from feats leftover from development */ -export declare class Migration740MaxTakable extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/741-roll-option-toggle-to-item.d.ts b/types/src/module/migration/migrations/741-roll-option-toggle-to-item.d.ts deleted file mode 100644 index 593202bb6..000000000 --- a/types/src/module/migration/migrations/741-roll-option-toggle-to-item.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move tracking of roll-option toggles to the rules themselves */ -export declare class Migration741RollOptionToggleToItem extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/742-rm-class-ability-boost-levels.d.ts b/types/src/module/migration/migrations/742-rm-class-ability-boost-levels.d.ts deleted file mode 100644 index d45130490..000000000 --- a/types/src/module/migration/migrations/742-rm-class-ability-boost-levels.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove ability boost levels data from class items */ -export declare class Migration742RMAbilityBoostLevels extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/743-fix-weakness-structure.d.ts b/types/src/module/migration/migrations/743-fix-weakness-structure.d.ts deleted file mode 100644 index fce3c911f..000000000 --- a/types/src/module/migration/migrations/743-fix-weakness-structure.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move tracking of roll-option toggles to the rules themselves */ -export declare class Migration743FixWeaknessStructure extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/744-migrate-spell-heighten.d.ts b/types/src/module/migration/migrations/744-migrate-spell-heighten.d.ts deleted file mode 100644 index 857588e06..000000000 --- a/types/src/module/migration/migrations/744-migrate-spell-heighten.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration744MigrateSpellHeighten extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/745-effect-target-to-choice-set.d.ts b/types/src/module/migration/migrations/745-effect-target-to-choice-set.d.ts deleted file mode 100644 index 5dc2f0ab6..000000000 --- a/types/src/module/migration/migrations/745-effect-target-to-choice-set.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert EffectTarget REs into ChoiceSets */ -export declare class Migration745EffectTargetToChoiceSet extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/746-standardize-pricing.d.ts b/types/src/module/migration/migrations/746-standardize-pricing.d.ts deleted file mode 100644 index 0b70666f7..000000000 --- a/types/src/module/migration/migrations/746-standardize-pricing.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration746StandardizePricing extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/747-fixed-heightening.d.ts b/types/src/module/migration/migrations/747-fixed-heightening.d.ts deleted file mode 100644 index e75a24f1c..000000000 --- a/types/src/module/migration/migrations/747-fixed-heightening.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import type { SpellPF2e } from "@item"; -import { ItemSourcePF2e, SpellSource } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Handle spells gaining fixed level heightening */ -export declare class Migration747FixedHeightening extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; - protected overwriteDamage(spell: SpellSource, newSpell: SpellPF2e): void; - protected loadSpells(): Promise>; - fixedHeightenSpells: Set; -} diff --git a/types/src/module/migration/migrations/748-batch-consumable-pricing.d.ts b/types/src/module/migration/migrations/748-batch-consumable-pricing.d.ts deleted file mode 100644 index dc50a92ea..000000000 --- a/types/src/module/migration/migrations/748-batch-consumable-pricing.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration748BatchConsumablePricing extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/749-assurance-res.d.ts b/types/src/module/migration/migrations/749-assurance-res.d.ts deleted file mode 100644 index 60e5772a0..000000000 --- a/types/src/module/migration/migrations/749-assurance-res.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration749AssuranceREs extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/750-fix-corrupted-price.d.ts b/types/src/module/migration/migrations/750-fix-corrupted-price.d.ts deleted file mode 100644 index e590e9395..000000000 --- a/types/src/module/migration/migrations/750-fix-corrupted-price.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration750FixCorruptedPrice extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/751-reset-roll-options.d.ts b/types/src/module/migration/migrations/751-reset-roll-options.d.ts deleted file mode 100644 index e03868492..000000000 --- a/types/src/module/migration/migrations/751-reset-roll-options.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Reset all roll options now that most are no longer stored on actors */ -export declare class Migration751ResetRollOptions extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/752-strike-vs-weapon-traits.d.ts b/types/src/module/migration/migrations/752-strike-vs-weapon-traits.d.ts deleted file mode 100644 index 363006cbd..000000000 --- a/types/src/module/migration/migrations/752-strike-vs-weapon-traits.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Change several AdjustStrike rule elements to modify weapon traits rather than action traits */ -export declare class Migration752StrikeVsWeaponTraits extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/753-weapon-reload-times.d.ts b/types/src/module/migration/migrations/753-weapon-reload-times.d.ts deleted file mode 100644 index 6f46c21b7..000000000 --- a/types/src/module/migration/migrations/753-weapon-reload-times.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Ensure "backpack" weapons and alchemical bombs have correct reload times */ -export declare class Migration753WeaponReloadTimes extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/754-mighty-bulwark-adjust-modifiers.d.ts b/types/src/module/migration/migrations/754-mighty-bulwark-adjust-modifiers.d.ts deleted file mode 100644 index 35b7c9d3c..000000000 --- a/types/src/module/migration/migrations/754-mighty-bulwark-adjust-modifiers.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add Adjust Modifier REs to Mighty Bulwark to suppress dexterity and standard bulwark modifiers */ -export declare class Migration754MightyBulwarkAdjustModifiers extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/755-grant-ids-to-data.d.ts b/types/src/module/migration/migrations/755-grant-ids-to-data.d.ts deleted file mode 100644 index 93cbed2dc..000000000 --- a/types/src/module/migration/migrations/755-grant-ids-to-data.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert grant flags containing IDs to `ItemGrantData` objects */ -export declare class Migration755GrantIdsToData extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/756-rm-stored-resource-maxes.d.ts b/types/src/module/migration/migrations/756-rm-stored-resource-maxes.d.ts deleted file mode 100644 index b3aa89f6f..000000000 --- a/types/src/module/migration/migrations/756-rm-stored-resource-maxes.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove inadvertently stored focus and infused-reagents maxes caused by bug in Rest for the Night script */ -export declare class Migration756RMStoredResourceMaxes extends MigrationBase { - static version: number; - updateActor(source: ActorSourceWithDeletions): Promise; -} -type ActorSourceWithDeletions = ActorSourcePF2e & { - "system.resources.focus.-=max"?: null; - "system.resources.crafting.infusedReagents.-=max"?: null; - "system.resources.-=investiture"?: null; -}; -export {}; diff --git a/types/src/module/migration/migrations/757-hillock-halfling.d.ts b/types/src/module/migration/migrations/757-hillock-halfling.d.ts deleted file mode 100644 index 4d02af107..000000000 --- a/types/src/module/migration/migrations/757-hillock-halfling.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add recovery bonus to Hillock Halfling heritage */ -export declare class Migration757HillockHalfling extends MigrationBase { - static version: number; - updateItem(itemSource: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/758-prune-pc-attributes.d.ts b/types/src/module/migration/migrations/758-prune-pc-attributes.d.ts deleted file mode 100644 index 65aedeaee..000000000 --- a/types/src/module/migration/migrations/758-prune-pc-attributes.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove inadvertently stored attributes caused by bug in Rest for the Night script */ -export declare class Migration758PrunePCAttributes extends MigrationBase { - static version: number; - toDelete: readonly ["-=ac", "-=ancestryhp", "-=battleForm", "-=classDC", "-=classOrSpellDC", "-=classhp", "-=dexCap", "-=doomed", "-=dying", "-=familiarAbilities", "-=flanking", "-=flatbonushp", "-=flatbonussp", "-=handsFree", "-=hardness", "hp.-=breakdown", "hp.-=details", "hp.-=max", "hp.-=name", "hp.-=negativeHealing", "hp.-=recoveryMultiplier", "hp.-=totalModifier", "hp.-=tempsource", "hp.-=_modifiers", "initiative.-=_modifiers", "initiative.-=breakdown", "initiative.-=label", "initiative.-=name", "initiative.-=roll", "initiative.-=tiebreakPriority", "initiative.-=totalModifier", "-=levelbonushp", "-=levelbonussp", "-=perception", "-=polymorphed", "-=reach", "-=shield", "speed.-=_modifiers", "speed.-=breakdown", "speed.-=name", "speed.-=total", "speed.-=totalModifier", "speed.-=type", "-=spellDC", "-=wounded"]; - updateActor(source: ActorSourceWithDeletions): Promise; -} -type ActorSourceWithDeletions = ActorSourcePF2e & { - [K in `system.attributes.${Migration758PrunePCAttributes["toDelete"][number]}`]?: null; -}; -export {}; diff --git a/types/src/module/migration/migrations/759-crit-spec-re.d.ts b/types/src/module/migration/migrations/759-crit-spec-re.d.ts deleted file mode 100644 index 31cc8ad10..000000000 --- a/types/src/module/migration/migrations/759-crit-spec-re.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Replace critical specialization roll notes with CritSpec RE */ -export declare class Migration759CritSpecRE extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/760-separate-note-title.d.ts b/types/src/module/migration/migrations/760-separate-note-title.d.ts deleted file mode 100644 index 8ffe16c25..000000000 --- a/types/src/module/migration/migrations/760-separate-note-title.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Replace inline HTML in roll note text with separate title and visibility */ -export declare class Migration760SeparateNoteTitle extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/761-update-shot-rules.d.ts b/types/src/module/migration/migrations/761-update-shot-rules.d.ts deleted file mode 100644 index 2ae8c9b34..000000000 --- a/types/src/module/migration/migrations/761-update-shot-rules.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update rule elements on Double Shot, Triple Shot, and Stance: Multishot Stance */ -export declare class Migration761ShotRules extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/762-update-background-items.d.ts b/types/src/module/migration/migrations/762-update-background-items.d.ts deleted file mode 100644 index 3d6fd9530..000000000 --- a/types/src/module/migration/migrations/762-update-background-items.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add missing third boost from a pair of backgrounds */ -export declare class Migration762UpdateBackgroundItems extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/763-restore-animal-strike-options.d.ts b/types/src/module/migration/migrations/763-restore-animal-strike-options.d.ts deleted file mode 100644 index 7a6144421..000000000 --- a/types/src/module/migration/migrations/763-restore-animal-strike-options.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Restore options array to Strike REs on Animal Instinct class features */ -export declare class Migration763RestoreAnimalStrikeOptions extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/764-panache-vivacious-res.d.ts b/types/src/module/migration/migrations/764-panache-vivacious-res.d.ts deleted file mode 100644 index 843f5529a..000000000 --- a/types/src/module/migration/migrations/764-panache-vivacious-res.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove rule elements from Panache class feature, add slugs to Vivacious Speed REs */ -export declare class Migration764PanacheVivaciousREs extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/765-choice-owned-item-types.d.ts b/types/src/module/migration/migrations/765-choice-owned-item-types.d.ts deleted file mode 100644 index c36abc55d..000000000 --- a/types/src/module/migration/migrations/765-choice-owned-item-types.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** The types choices was never enforced when it only worked for weapons */ -export declare class Migration765ChoiceOwnedItemTypes extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/766-wipe-url-sources.d.ts b/types/src/module/migration/migrations/766-wipe-url-sources.d.ts deleted file mode 100644 index acde9ba55..000000000 --- a/types/src/module/migration/migrations/766-wipe-url-sources.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Wipe URL sources (typically Archives of Nethys) */ -export declare class Migration766WipeURLSources extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/767-convert-voluntary-flaws.d.ts b/types/src/module/migration/migrations/767-convert-voluntary-flaws.d.ts deleted file mode 100644 index ef6cd0fe6..000000000 --- a/types/src/module/migration/migrations/767-convert-voluntary-flaws.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration767ConvertVoluntaryFlaws extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/768-add-new-auras.d.ts b/types/src/module/migration/migrations/768-add-new-auras.d.ts deleted file mode 100644 index dcc916618..000000000 --- a/types/src/module/migration/migrations/768-add-new-auras.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add the new Aura rule element to the Marshal Dedication feat */ -export declare class Migration768AddNewAuras extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/769-no-universalist-focus-pool.d.ts b/types/src/module/migration/migrations/769-no-universalist-focus-pool.d.ts deleted file mode 100644 index 327d84e9d..000000000 --- a/types/src/module/migration/migrations/769-no-universalist-focus-pool.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Exclude the Universalist wizard feature from receiving an initial focus pool */ -export declare class Migration769NoUniversalistFocusPool extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/770-re-data-to-system.d.ts b/types/src/module/migration/migrations/770-re-data-to-system.d.ts deleted file mode 100644 index 2fb655256..000000000 --- a/types/src/module/migration/migrations/770-re-data-to-system.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert object paths with ; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/771-spell-variants-to-system.d.ts b/types/src/module/migration/migrations/771-spell-variants-to-system.d.ts deleted file mode 100644 index bddc71d69..000000000 --- a/types/src/module/migration/migrations/771-spell-variants-to-system.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert embedded spell variant `data` properties to use `system` */ -export declare class Migration771SpellVariantsToSystem extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/772-v10-embedded-spell-data.d.ts b/types/src/module/migration/migrations/772-v10-embedded-spell-data.d.ts deleted file mode 100644 index 19465aa39..000000000 --- a/types/src/module/migration/migrations/772-v10-embedded-spell-data.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Push back embedded spell property one object-nesting level */ -export declare class Migration772V10EmbeddedSpellData extends MigrationBase { - static version: number; - preUpdateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/773-religious-symbol-usage.d.ts b/types/src/module/migration/migrations/773-religious-symbol-usage.d.ts deleted file mode 100644 index 9ddd01b3c..000000000 --- a/types/src/module/migration/migrations/773-religious-symbol-usage.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Change `usage` of religious symbols to "held-in-one-hand" */ -export declare class Migration773ReligiousSymbolUsage extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/774-unpersist-crafting-entries.d.ts b/types/src/module/migration/migrations/774-unpersist-crafting-entries.d.ts deleted file mode 100644 index bd90497ca..000000000 --- a/types/src/module/migration/migrations/774-unpersist-crafting-entries.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { PhysicalItemTrait } from "@item/physical/data.ts"; -import { PredicateStatement } from "@system/predication.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert crafting entry `requiredTrait` properties to be predicates */ -export declare class Migration774UnpersistCraftingEntries extends MigrationBase { - static version: number; - munitionsCrafterPredicate: OldRawPredicate; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; - generatePredicateFromRequiredTraits(requiredTraits: PhysicalItemTrait[][]): OldRawPredicate; -} -interface OldRawPredicate { - all?: PredicateStatement[]; - any?: PredicateStatement[]; - not?: PredicateStatement[]; -} -export {}; diff --git a/types/src/module/migration/migrations/775-agile-finesse-ranged.d.ts b/types/src/module/migration/migrations/775-agile-finesse-ranged.d.ts deleted file mode 100644 index ac157e1ec..000000000 --- a/types/src/module/migration/migrations/775-agile-finesse-ranged.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update features that require agile, finesse or ranged weapons to reflect current melee/ranged classification */ -export declare class Migration775AgileFinesseRanged extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/776-sluggify-condition-overrides.d.ts b/types/src/module/migration/migrations/776-sluggify-condition-overrides.d.ts deleted file mode 100644 index 7d17bc403..000000000 --- a/types/src/module/migration/migrations/776-sluggify-condition-overrides.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Sluggify values in condition `overrides` arrays */ -export declare class Migration776SlugifyConditionOverrides extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/777-hand-of-the-apprentice.d.ts b/types/src/module/migration/migrations/777-hand-of-the-apprentice.d.ts deleted file mode 100644 index 92309ced8..000000000 --- a/types/src/module/migration/migrations/777-hand-of-the-apprentice.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Have Hand of the Apprentice feat enlarge focus pool */ -export declare class Migration777HandOfTheApprentice extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/778-rename-feature-effects-refs.d.ts b/types/src/module/migration/migrations/778-rename-feature-effects-refs.d.ts deleted file mode 100644 index 6dfa366e5..000000000 --- a/types/src/module/migration/migrations/778-rename-feature-effects-refs.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Rename references to retired compendiums */ -export declare class Migration778RenameRetiredPackRefs extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/779-elite-weak.d.ts b/types/src/module/migration/migrations/779-elite-weak.d.ts deleted file mode 100644 index 06c350253..000000000 --- a/types/src/module/migration/migrations/779-elite-weak.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Store indication of NPC elite/weak adjustment in attributes instead of traits */ -export declare class Migration779EliteWeak extends MigrationBase { - static version: number; - updateActor(source: MaybeWithExtraNestedTraits): Promise; -} -type MaybeWithExtraNestedTraits = ActorSourcePF2e & { - system: { - traits: { - traits?: { - value: string[]; - }; - }; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/780-numify-speeds.d.ts b/types/src/module/migration/migrations/780-numify-speeds.d.ts deleted file mode 100644 index 7073b8fcc..000000000 --- a/types/src/module/migration/migrations/780-numify-speeds.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Ensure actor speed values are numbers */ -export declare class Migration780NumifySpeeds extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/781-suppress-no-crowbar.d.ts b/types/src/module/migration/migrations/781-suppress-no-crowbar.d.ts deleted file mode 100644 index 6eea62d2b..000000000 --- a/types/src/module/migration/migrations/781-suppress-no-crowbar.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Suppress the "no-crowbar" penalty applied to the Force Open action */ -export declare class Migration781SuppressNoCrowbar extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/782-unnest-actor-traits.d.ts b/types/src/module/migration/migrations/782-unnest-actor-traits.d.ts deleted file mode 100644 index 2f2bff327..000000000 --- a/types/src/module/migration/migrations/782-unnest-actor-traits.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { MigrationBase } from "../base.ts"; -/** Unnest actor traits by one object level */ -export declare class Migration782UnnestActorTraits extends MigrationBase { - static version: number; - updateActor(source: MaybeWithExtraNestedTraits): Promise; -} -type MaybeWithExtraNestedTraits = { - system: { - traits?: { - value?: string[]; - traits?: { - value: string[]; - }; - "-=traits"?: null; - }; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/783-remove-class-skill-ae-likes.d.ts b/types/src/module/migration/migrations/783-remove-class-skill-ae-likes.d.ts deleted file mode 100644 index 111775c12..000000000 --- a/types/src/module/migration/migrations/783-remove-class-skill-ae-likes.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove class AE-likes setting skill proficiencies to trained */ -export declare class Migration783RemoveClassSkillAELikes extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/784-comp-browser-pack-setting.d.ts b/types/src/module/migration/migrations/784-comp-browser-pack-setting.d.ts deleted file mode 100644 index e47e9e78e..000000000 --- a/types/src/module/migration/migrations/784-comp-browser-pack-setting.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { MigrationBase } from "../base.ts"; -/** Migrate Compendium Browser packs selection setting to an object */ -export declare class Migration784CompBrowserPackSetting extends MigrationBase { - static version: number; - migrate(): Promise; -} diff --git a/types/src/module/migration/migrations/785-abc-kit-items.d.ts b/types/src/module/migration/migrations/785-abc-kit-items.d.ts deleted file mode 100644 index 3a58338db..000000000 --- a/types/src/module/migration/migrations/785-abc-kit-items.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert kit and ABC item pack/id references to UUIDs */ -export declare class Migration785ABCKitItemUUIDs extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/786-remove-identified-data.d.ts b/types/src/module/migration/migrations/786-remove-identified-data.d.ts deleted file mode 100644 index aff7f78ed..000000000 --- a/types/src/module/migration/migrations/786-remove-identified-data.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove stored `system.identification.identified` properties on physical items */ -export declare class Migration786RemoveIdentifiedData extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/787-resolvables-to-system.d.ts b/types/src/module/migration/migrations/787-resolvables-to-system.d.ts deleted file mode 100644 index 90dfefb0d..000000000 --- a/types/src/module/migration/migrations/787-resolvables-to-system.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert object paths of weapon and spell resolvables with ; -} diff --git a/types/src/module/migration/migrations/788-update-tanglefoot-bags.d.ts b/types/src/module/migration/migrations/788-update-tanglefoot-bags.d.ts deleted file mode 100644 index a6b6aa23f..000000000 --- a/types/src/module/migration/migrations/788-update-tanglefoot-bags.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update roll notes on tanglefoot bags to have titled roll notes and no damage dice */ -export declare class Migration788UpdateTanglefootBags extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/789-update-precise-strike.d.ts b/types/src/module/migration/migrations/789-update-precise-strike.d.ts deleted file mode 100644 index 0c4904eba..000000000 --- a/types/src/module/migration/migrations/789-update-precise-strike.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Fix the predicate on the Precise Strike's DamageDice rule element */ -export declare class Migration789UpdatePreciseStrike extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/790-multiple-class-dcs.d.ts b/types/src/module/migration/migrations/790-multiple-class-dcs.d.ts deleted file mode 100644 index 3f2acc734..000000000 --- a/types/src/module/migration/migrations/790-multiple-class-dcs.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add support for multiple class DCs */ -export declare class Migration790MultipleClassDCs extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/791-ruffian-hands.d.ts b/types/src/module/migration/migrations/791-ruffian-hands.d.ts deleted file mode 100644 index a9f6b1d2e..000000000 --- a/types/src/module/migration/migrations/791-ruffian-hands.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add critical specialization effect to the Ruffian class feature, DamageDice REs to healing/harming hands */ -export declare class Migration791RuffianHands extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/792-remove-token-ae-likes.d.ts b/types/src/module/migration/migrations/792-remove-token-ae-likes.d.ts deleted file mode 100644 index 53ff68f57..000000000 --- a/types/src/module/migration/migrations/792-remove-token-ae-likes.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove older AE-like REs that set properties in an actor's prototype token */ -export declare class Migration792RemoveTokenAELikes extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/793-make-predicates-arrays.d.ts b/types/src/module/migration/migrations/793-make-predicates-arrays.d.ts deleted file mode 100644 index d80f13834..000000000 --- a/types/src/module/migration/migrations/793-make-predicates-arrays.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert predicate properties of rule elements to arrays */ -export declare class Migration793MakePredicatesArrays extends MigrationBase { - #private; - static version: number; - /** Clear predicates in custom modifiers */ - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/794-add-wild-shape-choices.d.ts b/types/src/module/migration/migrations/794-add-wild-shape-choices.d.ts deleted file mode 100644 index d8b6bcd94..000000000 --- a/types/src/module/migration/migrations/794-add-wild-shape-choices.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add AE-likes forming a UUID choice set for Wild Shape effect */ -export declare class Migration794AddWildShapeChoices extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/795-cleanup-flat-footed-toggle.d.ts b/types/src/module/migration/migrations/795-cleanup-flat-footed-toggle.d.ts deleted file mode 100644 index 72f0a5e14..000000000 --- a/types/src/module/migration/migrations/795-cleanup-flat-footed-toggle.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove stored roll options, add flat-footed toggle to select items */ -export declare class Migration795CleanupFlatFootedToggle extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/796-item-grants-to-objects.d.ts b/types/src/module/migration/migrations/796-item-grants-to-objects.d.ts deleted file mode 100644 index 1b12be8a0..000000000 --- a/types/src/module/migration/migrations/796-item-grants-to-objects.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert `itemGrants` flags from arrays to `Record`s */ -export declare class Migration796ItemGrantsToObjects extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/797-metagame-settings.d.ts b/types/src/module/migration/migrations/797-metagame-settings.d.ts deleted file mode 100644 index c9e4f0cfb..000000000 --- a/types/src/module/migration/migrations/797-metagame-settings.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { MigrationBase } from "../base.ts"; -/** Migrate all metagame settings from . to _ prefixes, and the visibility ones to booleans */ -export declare class Migration797MetagameSetting extends MigrationBase { - static version: number; - visibilitySettings: string[]; - settings: string[]; - migrate(): Promise; -} diff --git a/types/src/module/migration/migrations/798-weapon-to-item-statements.d.ts b/types/src/module/migration/migrations/798-weapon-to-item-statements.d.ts deleted file mode 100644 index 621a51b9b..000000000 --- a/types/src/module/migration/migrations/798-weapon-to-item-statements.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Change all "weapon:*" predication statements to "item:*" ones */ -export declare class Migration798WeaponToItemStatements extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/799-rm-recall-knowledge-duplicates.d.ts b/types/src/module/migration/migrations/799-rm-recall-knowledge-duplicates.d.ts deleted file mode 100644 index 993109157..000000000 --- a/types/src/module/migration/migrations/799-rm-recall-knowledge-duplicates.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove duplicate Recall Knowledge action items */ -export declare class Migration799RMRecallKnowledgeDuplicates extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/800-self-effect-panache-rage.d.ts b/types/src/module/migration/migrations/800-self-effect-panache-rage.d.ts deleted file mode 100644 index 9bf8c7814..000000000 --- a/types/src/module/migration/migrations/800-self-effect-panache-rage.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Rename any predicate statement of "rage" or "panache" to a statement that the effect is present */ -export declare class Migration800SelfEffectPanacheRage extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/801-color-darkvision.d.ts b/types/src/module/migration/migrations/801-color-darkvision.d.ts deleted file mode 100644 index 66ba16c31..000000000 --- a/types/src/module/migration/migrations/801-color-darkvision.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add color darkvision flags to fetchlings and the Resonant Reflection of Life */ -export declare class Migration801ColorDarkvision extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/802-strip-feat-action-category.d.ts b/types/src/module/migration/migrations/802-strip-feat-action-category.d.ts deleted file mode 100644 index 3d550109c..000000000 --- a/types/src/module/migration/migrations/802-strip-feat-action-category.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration802StripFeatActionCategory extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/803-normalize-spell-area.d.ts b/types/src/module/migration/migrations/803-normalize-spell-area.d.ts deleted file mode 100644 index 45ae0af6f..000000000 --- a/types/src/module/migration/migrations/803-normalize-spell-area.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Ensure spell-area values are numbers, null out area object if not in use */ -export declare class Migration803NormalizeSpellArea extends MigrationBase { - #private; - static version: number; - updateItem(source: MaybeWithAreasize): Promise; -} -type MaybeWithAreasize = ItemSourcePF2e & { - system: { - areasize?: unknown; - "-=areasize"?: unknown; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/804-remove-consumable-properties.d.ts b/types/src/module/migration/migrations/804-remove-consumable-properties.d.ts deleted file mode 100644 index 636cc15e8..000000000 --- a/types/src/module/migration/migrations/804-remove-consumable-properties.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration804RemoveConsumableProperties extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/805-inline-damage-formulas.d.ts b/types/src/module/migration/migrations/805-inline-damage-formulas.d.ts deleted file mode 100644 index 6036cb764..000000000 --- a/types/src/module/migration/migrations/805-inline-damage-formulas.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update inline damage-roll links to be formatted to new standard */ -export declare class Migration805InlineDamageRolls extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; - updateJournalEntry(source: foundry.documents.JournalEntrySource): Promise; -} diff --git a/types/src/module/migration/migrations/806-torch-improvised-othertags.d.ts b/types/src/module/migration/migrations/806-torch-improvised-othertags.d.ts deleted file mode 100644 index abfbbdef9..000000000 --- a/types/src/module/migration/migrations/806-torch-improvised-othertags.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move torch improvised from traits to otherTags */ -export declare class Migration806TorchImprovisedOtherTags extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/807-rm-activated-effect-fields.d.ts b/types/src/module/migration/migrations/807-rm-activated-effect-fields.d.ts deleted file mode 100644 index eff8aa95a..000000000 --- a/types/src/module/migration/migrations/807-rm-activated-effect-fields.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove properties from unused "activatedEffect" template defaults */ -export declare class Migration807RMActivatedEffectFields extends MigrationBase { - static version: number; - updateItem(source: ItemSourceWithDeletions): Promise; -} -type ActivatedEffectKey = "activation" | "duration" | "range" | "target" | "uses"; -type ItemSourceWithDeletions = ItemSourcePF2e & { - system: { - [K in ActivatedEffectKey | `-=${ActivatedEffectKey}`]?: unknown; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/808-count-damage-dice.d.ts b/types/src/module/migration/migrations/808-count-damage-dice.d.ts deleted file mode 100644 index 161e5203e..000000000 --- a/types/src/module/migration/migrations/808-count-damage-dice.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Have REs counting dice damage via "1 + @weapon.system.runes.striking" instead use "@weapon.system.damage.dice" */ -export declare class Migration808CountDamageDice extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/809-automaton-enhancements.d.ts b/types/src/module/migration/migrations/809-automaton-enhancements.d.ts deleted file mode 100644 index 3c2b46e4f..000000000 --- a/types/src/module/migration/migrations/809-automaton-enhancements.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add base REs to Automaton anncestry to allow for automation of enhancements */ -export declare class Migration809AutomatonEnhancements extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/810-loot-description-value.d.ts b/types/src/module/migration/migrations/810-loot-description-value.d.ts deleted file mode 100644 index 3babbfd35..000000000 --- a/types/src/module/migration/migrations/810-loot-description-value.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove value property from loot actor description */ -export declare class Migration810LootDescriptionValue extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/811-inline-damage-rolls-persistent.d.ts b/types/src/module/migration/migrations/811-inline-damage-rolls-persistent.d.ts deleted file mode 100644 index f9ff91486..000000000 --- a/types/src/module/migration/migrations/811-inline-damage-rolls-persistent.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update persistent damage roll links to also be formatted to new standard */ -export declare class Migration811InlineDamageRollsPersistent extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; - updateJournalEntry(source: foundry.documents.JournalEntrySource): Promise; -} diff --git a/types/src/module/migration/migrations/812-restructure-iwr.d.ts b/types/src/module/migration/migrations/812-restructure-iwr.d.ts deleted file mode 100644 index b36a84dad..000000000 --- a/types/src/module/migration/migrations/812-restructure-iwr.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move IWR data to `actor.system.attributes` */ -export declare class Migration812RestructureIWR extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - /** Sluggify precious material types, normalize precious material grades */ - updateItem(source: MaybeWithOldMaterialData): Promise; -} -type MaybeWithOldMaterialData = ItemSourcePF2e & { - system: { - preciousMaterial?: { - value?: unknown; - }; - preciousMaterialGrade?: { - value?: unknown; - }; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/813-normalize-cold-iron.d.ts b/types/src/module/migration/migrations/813-normalize-cold-iron.d.ts deleted file mode 100644 index adc7fdeee..000000000 --- a/types/src/module/migration/migrations/813-normalize-cold-iron.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Normalize "cold-iron" slug in armor, weapon and melee items */ -export declare class Migration813NormalizeColdIron extends MigrationBase { - #private; - static version: number; - updateItem(source: MaybeWithOldMaterialData): Promise; -} -type MaybeWithOldMaterialData = ItemSourcePF2e & { - system: { - preciousMaterial?: { - value?: unknown; - }; - preciousMaterialGrade?: { - value?: unknown; - }; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/814-calculated-expanded-splash.d.ts b/types/src/module/migration/migrations/814-calculated-expanded-splash.d.ts deleted file mode 100644 index 0a8092462..000000000 --- a/types/src/module/migration/migrations/814-calculated-expanded-splash.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add/update rule elements for the Calculated Splash and Expanded Splash feats */ -export declare class Migration814CalculatedExpandedSplash extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/815-consumable-data-cleanup.d.ts b/types/src/module/migration/migrations/815-consumable-data-cleanup.d.ts deleted file mode 100644 index a8e231520..000000000 --- a/types/src/module/migration/migrations/815-consumable-data-cleanup.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Clean up entries of consumable system data */ -export declare class Migration815ConsumableDataCleanup extends MigrationBase { - static version: number; - consumableKeys: Set; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/816-alchemist-research-fields.d.ts b/types/src/module/migration/migrations/816-alchemist-research-fields.d.ts deleted file mode 100644 index 35c213e39..000000000 --- a/types/src/module/migration/migrations/816-alchemist-research-fields.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** - * Update rule elements on Bomber, Chirurgeon, Mutagenist, Toxicologist, Research Field, Field Discovery, - * Greater Field Discovery, Perpetual Infusions, Perpetual Potency and Perpetual Perfection - */ -export declare class Migration816AlchemistResearchFields extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/817-field-discovery-predicates.d.ts b/types/src/module/migration/migrations/817-field-discovery-predicates.d.ts deleted file mode 100644 index 462909c32..000000000 --- a/types/src/module/migration/migrations/817-field-discovery-predicates.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert crafting-entry field discovery data to predicates */ -export declare class Migration817FieldDiscoveryPredicates extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/818-basic-undead-negative-healing.d.ts b/types/src/module/migration/migrations/818-basic-undead-negative-healing.d.ts deleted file mode 100644 index 3f1795652..000000000 --- a/types/src/module/migration/migrations/818-basic-undead-negative-healing.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add negative healing to basic undead benefits */ -export declare class Migration818BasicUndeadNegativeHealing extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/819-spin-tale-adventure-specific.d.ts b/types/src/module/migration/migrations/819-spin-tale-adventure-specific.d.ts deleted file mode 100644 index f29f24425..000000000 --- a/types/src/module/migration/migrations/819-spin-tale-adventure-specific.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Replace links to adventure-specific Spin Tale */ -export declare class Migration819SpinTaleAdventureSpecific extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/820-remove-unused-traits-data.d.ts b/types/src/module/migration/migrations/820-remove-unused-traits-data.d.ts deleted file mode 100644 index d4533cd4f..000000000 --- a/types/src/module/migration/migrations/820-remove-unused-traits-data.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Removed unused traits data structures from items that don't use them */ -export declare class Migration820RemoveUnusedTraitsData extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/821-inline-damage-rolls.d.ts b/types/src/module/migration/migrations/821-inline-damage-rolls.d.ts deleted file mode 100644 index d3dc3b911..000000000 --- a/types/src/module/migration/migrations/821-inline-damage-rolls.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update damage roll links to be formatted to new standard */ -export declare class Migration821InlineDamageRolls extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; - updateJournalEntry(source: foundry.documents.JournalEntrySource): Promise; -} diff --git a/types/src/module/migration/migrations/822-blade-ally-consolidation.d.ts b/types/src/module/migration/migrations/822-blade-ally-consolidation.d.ts deleted file mode 100644 index 81f7ecc15..000000000 --- a/types/src/module/migration/migrations/822-blade-ally-consolidation.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Rename references to retired compendiums */ -export declare class Migration822BladeAllyConsolidation extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/823-heritage-ancestry-slug.d.ts b/types/src/module/migration/migrations/823-heritage-ancestry-slug.d.ts deleted file mode 100644 index 7db7efd16..000000000 --- a/types/src/module/migration/migrations/823-heritage-ancestry-slug.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Set a slug in heritages' ancestry data */ -export declare class Migration823HeritageAncestrySlug extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/824-sneak-attack-damage-source.d.ts b/types/src/module/migration/migrations/824-sneak-attack-damage-source.d.ts deleted file mode 100644 index f08d1331e..000000000 --- a/types/src/module/migration/migrations/824-sneak-attack-damage-source.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Record PC sneak attack damage in an actor flag for reuse by related abilities */ -export declare class Migration824SneakAttackDamageSource extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/825-khakkhara-feng-huo-lun.d.ts b/types/src/module/migration/migrations/825-khakkhara-feng-huo-lun.d.ts deleted file mode 100644 index c7b381329..000000000 --- a/types/src/module/migration/migrations/825-khakkhara-feng-huo-lun.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update from khakkara to khakkhara; wind and fire wheel to feng huo lun */ -export declare class Migration825KhakkharaFengHuoLun extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/826-gut-condition-data.d.ts b/types/src/module/migration/migrations/826-gut-condition-data.d.ts deleted file mode 100644 index fb92f2e6e..000000000 --- a/types/src/module/migration/migrations/826-gut-condition-data.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove unused cruft from condition data */ -export declare class Migration826GutConditionData extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/827-fix-tv-shield-traits.d.ts b/types/src/module/migration/migrations/827-fix-tv-shield-traits.d.ts deleted file mode 100644 index 60f5b7147..000000000 --- a/types/src/module/migration/migrations/827-fix-tv-shield-traits.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Fix unannotated shield traits added from Lost Omens: Treasure Vault */ -export declare class Migration827FixTVShieldTraits extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/828-prune-invalid-traits.d.ts b/types/src/module/migration/migrations/828-prune-invalid-traits.d.ts deleted file mode 100644 index 5f0f3b89f..000000000 --- a/types/src/module/migration/migrations/828-prune-invalid-traits.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Prune traits from actors and items that are invalid for the given type */ -export declare class Migration828PruneInvalidTraits extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/829-rm-ritual-entries.d.ts b/types/src/module/migration/migrations/829-rm-ritual-entries.d.ts deleted file mode 100644 index 282051d85..000000000 --- a/types/src/module/migration/migrations/829-rm-ritual-entries.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove ritual spellcasting entries */ -export declare class Migration829RMRitualEntries extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/830-condense-instincts.d.ts b/types/src/module/migration/migrations/830-condense-instincts.d.ts deleted file mode 100644 index 041b54c4a..000000000 --- a/types/src/module/migration/migrations/830-condense-instincts.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove links to deleted compendium items */ -export declare class Migration830BarbarianRework extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/831-cleric-doctrines.d.ts b/types/src/module/migration/migrations/831-cleric-doctrines.d.ts deleted file mode 100644 index 5418ac8e0..000000000 --- a/types/src/module/migration/migrations/831-cleric-doctrines.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** - * Update rule elements on the Cleric doctrines to include references to the granted doctrines. - */ -export declare class Migration831ClericDoctrines extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/832-choice-set-flags.d.ts b/types/src/module/migration/migrations/832-choice-set-flags.d.ts deleted file mode 100644 index 95fd294b0..000000000 --- a/types/src/module/migration/migrations/832-choice-set-flags.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Ensure flags in Choice Set rule elements are in dromedary case */ -export declare class Migration832ChoiceSetFlags extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/833-add-rogue-toys-fix-precision.d.ts b/types/src/module/migration/migrations/833-add-rogue-toys-fix-precision.d.ts deleted file mode 100644 index 9c0c058ed..000000000 --- a/types/src/module/migration/migrations/833-add-rogue-toys-fix-precision.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add rule elements to Surprise Attack and Dread Striker, fix damage type of Precision edge */ -export declare class Migration833AddRogueToysFixPrecision extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/834-feat-categories.d.ts b/types/src/module/migration/migrations/834-feat-categories.d.ts deleted file mode 100644 index 0011f0e10..000000000 --- a/types/src/module/migration/migrations/834-feat-categories.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Rename `featType.value` to `category`, remove "archetype" category */ -export declare class Migration834FeatCategories extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/835-initiative-longform.d.ts b/types/src/module/migration/migrations/835-initiative-longform.d.ts deleted file mode 100644 index 74fa03a2a..000000000 --- a/types/src/module/migration/migrations/835-initiative-longform.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Converts sheet selected skills from shortform (ath) to longform (athletics) */ -export declare class Migration835InitiativeLongform extends MigrationBase { - static version: number; - updateActor(actor: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/836-energizing-consolidation.d.ts b/types/src/module/migration/migrations/836-energizing-consolidation.d.ts deleted file mode 100644 index 0ed29f169..000000000 --- a/types/src/module/migration/migrations/836-energizing-consolidation.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Rename references to retired compendiums */ -export declare class Migration836EnergizingConsolidation extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/837-move-hazard-book-source.d.ts b/types/src/module/migration/migrations/837-move-hazard-book-source.d.ts deleted file mode 100644 index 10bf80170..000000000 --- a/types/src/module/migration/migrations/837-move-hazard-book-source.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move hazard source(book) object to be in line with NPCs */ -export declare class Migration837MoveHazardBookSources extends MigrationBase { - static version: number; - updateActor(source: MaybeWithMisplacedSource): Promise; -} -type MaybeWithMisplacedSource = ActorSourcePF2e & { - system: { - source?: unknown; - "-=source"?: null; - details: { - source?: object; - }; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/838-strike-attack-roll-selector.d.ts b/types/src/module/migration/migrations/838-strike-attack-roll-selector.d.ts deleted file mode 100644 index a3ac9fafd..000000000 --- a/types/src/module/migration/migrations/838-strike-attack-roll-selector.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Replace all instances of "mundane-attack" selector with "strike-attack-roll" */ -export declare class Migration838StrikeAttackRollSelector extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/839-action-categories.d.ts b/types/src/module/migration/migrations/839-action-categories.d.ts deleted file mode 100644 index fe1643793..000000000 --- a/types/src/module/migration/migrations/839-action-categories.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** actionCategory changed from a value object to just a string */ -export declare class Migration839ActionCategories extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/840-array-wrap-predicates.d.ts b/types/src/module/migration/migrations/840-array-wrap-predicates.d.ts deleted file mode 100644 index 18960876d..000000000 --- a/types/src/module/migration/migrations/840-array-wrap-predicates.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Ensure predicates are wrapped in ensures following stricter validation */ -export declare class Migration840ArrayWrapPredicates extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/841-v11-uuid-format.d.ts b/types/src/module/migration/migrations/841-v11-uuid-format.d.ts deleted file mode 100644 index 85a57051d..000000000 --- a/types/src/module/migration/migrations/841-v11-uuid-format.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert UUIDs to V11 format */ -export declare class Migration841V11UUIDFormat extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; - updateJournalEntry(source: foundry.documents.JournalEntrySource): Promise; -} diff --git a/types/src/module/migration/migrations/842-numify-numeric-settings.d.ts b/types/src/module/migration/migrations/842-numify-numeric-settings.d.ts deleted file mode 100644 index 629b11b32..000000000 --- a/types/src/module/migration/migrations/842-numify-numeric-settings.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { MigrationBase } from "../base.ts"; -/** Work around upstream issue (as of 11.301) in which settings are no longer checked or coerced for type validity */ -export declare class Migration842NumifyNumericSettings extends MigrationBase { - static version: number; - migrate(): Promise; -} diff --git a/types/src/module/migration/migrations/843-rm-armor-custom-modifiers.d.ts b/types/src/module/migration/migrations/843-rm-armor-custom-modifiers.d.ts deleted file mode 100644 index e54e2d991..000000000 --- a/types/src/module/migration/migrations/843-rm-armor-custom-modifiers.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove custom modifiers in the "armor" statistic */ -export declare class Migration843RMArmorCustomModifiers extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/844-deity-domains-uuids.d.ts b/types/src/module/migration/migrations/844-deity-domains-uuids.d.ts deleted file mode 100644 index 46a79d1d1..000000000 --- a/types/src/module/migration/migrations/844-deity-domains-uuids.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update UUIDS of domain journal entries to newer pages */ -export declare class Migration844DeityDomainUUIDs extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/845-empty-spell-consumables.d.ts b/types/src/module/migration/migrations/845-empty-spell-consumables.d.ts deleted file mode 100644 index ca205f7c3..000000000 --- a/types/src/module/migration/migrations/845-empty-spell-consumables.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Ensure partial spell consumables (from missed prior migration) are nulled out */ -export declare class Migration845EmptySpellConsumables extends MigrationBase { - static version: number; - preUpdateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/846-spell-school-optional.d.ts b/types/src/module/migration/migrations/846-spell-school-optional.d.ts deleted file mode 100644 index 85bb8911b..000000000 --- a/types/src/module/migration/migrations/846-spell-school-optional.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration846SpellSchoolOptional extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/847-temp-hp-rule-events.d.ts b/types/src/module/migration/migrations/847-temp-hp-rule-events.d.ts deleted file mode 100644 index 0ac2e7a6c..000000000 --- a/types/src/module/migration/migrations/847-temp-hp-rule-events.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move TempHPRuleElement source `onCreate` and `onTurnStart` to `events` object */ -export declare class Migration847TempHPRuleEvents extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/848-numeric-armor-properties.d.ts b/types/src/module/migration/migrations/848-numeric-armor-properties.d.ts deleted file mode 100644 index a7ab7d0e7..000000000 --- a/types/src/module/migration/migrations/848-numeric-armor-properties.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Flatten several numeric value object properties into numbers */ -export declare class Migration848NumericArmorProperties extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemMaybeWithOldProperty): Promise; -} -type ItemMaybeWithOldProperty = ItemSourcePF2e & { - system: { - armor?: unknown; - "-=armor"?: unknown; - dex?: unknown; - "-=dex"?: unknown; - check?: unknown; - "-=check"?: unknown; - speed?: unknown; - "-=speed"?: unknown; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/849-delete-broken-threshold.d.ts b/types/src/module/migration/migrations/849-delete-broken-threshold.d.ts deleted file mode 100644 index e66b12abb..000000000 --- a/types/src/module/migration/migrations/849-delete-broken-threshold.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove broken threshold from physical item source data */ -export declare class Migration849DeleteBrokenThreshold extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/850-flat-footed-to-off-guard.d.ts b/types/src/module/migration/migrations/850-flat-footed-to-off-guard.d.ts deleted file mode 100644 index fb2888f50..000000000 --- a/types/src/module/migration/migrations/850-flat-footed-to-off-guard.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { JournalEntrySource } from "types/foundry/common/documents/journal-entry.d.ts"; -import { MigrationBase } from "../base.ts"; -/** Rename all uses and mentions of "flat-footed" to "off-guard" */ -export declare class Migration850FlatFootedToOffGuard extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; - updateJournalEntry(source: JournalEntrySource): Promise; -} diff --git a/types/src/module/migration/migrations/851-just-innovation-id.d.ts b/types/src/module/migration/migrations/851-just-innovation-id.d.ts deleted file mode 100644 index 037f298bd..000000000 --- a/types/src/module/migration/migrations/851-just-innovation-id.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Set the same flag ("pf2e.innovationId") from all innovation class features */ -export declare class Migration851JustInnovationId extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/852-ability-scores-to-modifiers.d.ts b/types/src/module/migration/migrations/852-ability-scores-to-modifiers.d.ts deleted file mode 100644 index 7237c37d7..000000000 --- a/types/src/module/migration/migrations/852-ability-scores-to-modifiers.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert ability scores to attribute modifiers */ -export declare class Migration852AbilityScoresToModifiers extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - /** Convert AE-like rule elements (typically on apex items) to increase ability modifiers instead of scores */ - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/853-remaster-languages.d.ts b/types/src/module/migration/migrations/853-remaster-languages.d.ts deleted file mode 100644 index 8711373e6..000000000 --- a/types/src/module/migration/migrations/853-remaster-languages.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Change languages renamed in Rage of Elements */ -export declare class Migration853RemasterLanguages extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/854-bracketed-ability-scores-to-modifiers.d.ts b/types/src/module/migration/migrations/854-bracketed-ability-scores-to-modifiers.d.ts deleted file mode 100644 index 282f0a0d9..000000000 --- a/types/src/module/migration/migrations/854-bracketed-ability-scores-to-modifiers.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert bracketed AE-like rule elements changing ability scores to instead change attribute modifiers */ -export declare class Migration854BracketedAbilityScoresToModifiers extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/855-apex-equipment-system-data.d.ts b/types/src/module/migration/migrations/855-apex-equipment-system-data.d.ts deleted file mode 100644 index af90af14a..000000000 --- a/types/src/module/migration/migrations/855-apex-equipment-system-data.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move handling of Apex attribute boosts from rule elements to equipment system data */ -export declare class Migration855ApexEquipmentSystemData extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/856-no-system-dot-custom.d.ts b/types/src/module/migration/migrations/856-no-system-dot-custom.d.ts deleted file mode 100644 index e05b9f726..000000000 --- a/types/src/module/migration/migrations/856-no-system-dot-custom.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move paths of "system.custom.*" set by AE-likes to flags. */ -export declare class Migration856NoSystemDotCustom extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/857-weapon-spec-re.d.ts b/types/src/module/migration/migrations/857-weapon-spec-re.d.ts deleted file mode 100644 index 0fbebaaca..000000000 --- a/types/src/module/migration/migrations/857-weapon-spec-re.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** - * Move weapon specialization to rule elements. - */ -export declare class Migration857WeaponSpecializationRE extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/858-fake-weapon-specialization.d.ts b/types/src/module/migration/migrations/858-fake-weapon-specialization.d.ts deleted file mode 100644 index 649fd7f43..000000000 --- a/types/src/module/migration/migrations/858-fake-weapon-specialization.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** - * Several classes have their own ad-hoc "weapon specialization" that injected a roll option to trick the system, which were - * removed for a more "correct" solution, but unfortunately it turns out they're actually required for things like barbarian rage. - */ -export declare class Migration858FakeWeaponSpecialization extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/859-material-type-grade.d.ts b/types/src/module/migration/migrations/859-material-type-grade.d.ts deleted file mode 100644 index 1a4ca3c54..000000000 --- a/types/src/module/migration/migrations/859-material-type-grade.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move physical-item material data to a single property. */ -export declare class Migration859MaterialTypeGrade extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/860-rm-group.d.ts b/types/src/module/migration/migrations/860-rm-group.d.ts deleted file mode 100644 index 9eea60109..000000000 --- a/types/src/module/migration/migrations/860-rm-group.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove `group` property that got wrongly stored in some item system data */ -export declare class Migration860RMGroup extends MigrationBase { - static version: number; - updateItem(source: MaybeWithDeletableGroup): Promise; -} -type MaybeWithDeletableGroup = ItemSourcePF2e & { - system: { - "-=group"?: unknown; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/861-aura-colors-to-appearance.d.ts b/types/src/module/migration/migrations/861-aura-colors-to-appearance.d.ts deleted file mode 100644 index d3697a66d..000000000 --- a/types/src/module/migration/migrations/861-aura-colors-to-appearance.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move aura RE `colors` data to `appearance` property */ -export declare class Migration861AuraColorsToAppearance extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/862-specific-magic-armor.d.ts b/types/src/module/migration/migrations/862-specific-magic-armor.d.ts deleted file mode 100644 index 6c3f4e56a..000000000 --- a/types/src/module/migration/migrations/862-specific-magic-armor.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Attempt to infer armor intened as specific magic armor and mark it as such. */ -export declare class Migration862SpecificMagicArmor extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/863-fix-misspelled-organaizations-property.d.ts b/types/src/module/migration/migrations/863-fix-misspelled-organaizations-property.d.ts deleted file mode 100644 index 32643b7a6..000000000 --- a/types/src/module/migration/migrations/863-fix-misspelled-organaizations-property.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Correct a misspelling in the character biography data. */ -export declare class Migration863FixMisspelledOrganaizationsProperty extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/864-rm-weapon-map.d.ts b/types/src/module/migration/migrations/864-rm-weapon-map.d.ts deleted file mode 100644 index c9c68bb07..000000000 --- a/types/src/module/migration/migrations/864-rm-weapon-map.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove MAP property from weapon system data, transferring to a rule element if set. */ -export declare class Migration864RemoveWeaponMAP extends MigrationBase { - static version: number; - updateItem(source: MaybeWithMAPProperty): Promise; -} -type MaybeWithMAPProperty = ItemSourcePF2e & { - system: { - MAP?: unknown; - "-=MAP"?: null; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/865-vitality-void.d.ts b/types/src/module/migration/migrations/865-vitality-void.d.ts deleted file mode 100644 index c75f43d02..000000000 --- a/types/src/module/migration/migrations/865-vitality-void.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Replace all uses of and references to positive/negative to vitality/void. */ -export declare class Migration865VitalityVoid extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/866-link-to-actor-size-again.d.ts b/types/src/module/migration/migrations/866-link-to-actor-size-again.d.ts deleted file mode 100644 index c678b5cef..000000000 --- a/types/src/module/migration/migrations/866-link-to-actor-size-again.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration866LinkToActorSizeAgain extends MigrationBase { - static version: number; - updateActor(actorSource: ActorSourcePF2e): Promise; - updateToken(tokenSource: foundry.documents.TokenSource, actor: ActorPF2e | null): Promise; -} diff --git a/types/src/module/migration/migrations/867-damage-roll-domain-fix.d.ts b/types/src/module/migration/migrations/867-damage-roll-domain-fix.d.ts deleted file mode 100644 index f22b9e75b..000000000 --- a/types/src/module/migration/migrations/867-damage-roll-domain-fix.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration867DamageRollDomainFix extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/868-strike-re-range.d.ts b/types/src/module/migration/migrations/868-strike-re-range.d.ts deleted file mode 100644 index e4dbb6e5c..000000000 --- a/types/src/module/migration/migrations/868-strike-re-range.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert `range` and `maxRange` properties of Strike rule elements to single `RangeData` object */ -export declare class Migration868StrikeRERange extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/869-refresh-mighty-bulwark.d.ts b/types/src/module/migration/migrations/869-refresh-mighty-bulwark.d.ts deleted file mode 100644 index a7a0c7538..000000000 --- a/types/src/module/migration/migrations/869-refresh-mighty-bulwark.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Refresh rule elements on mighty bulwark feat. */ -export declare class Migration869RefreshMightyBulwark extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/870-martial-to-proficiencies.d.ts b/types/src/module/migration/migrations/870-martial-to-proficiencies.d.ts deleted file mode 100644 index 588f83dcc..000000000 --- a/types/src/module/migration/migrations/870-martial-to-proficiencies.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move data in `CharacterSystemSource#martial` to `#proficiencies`. */ -export declare class Migration870MartialToProficiencies extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/871-migrate-rollactionmacro-params.d.ts b/types/src/module/migration/migrations/871-migrate-rollactionmacro-params.d.ts deleted file mode 100644 index b64524888..000000000 --- a/types/src/module/migration/migrations/871-migrate-rollactionmacro-params.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { MacroSource } from "types/foundry/common/documents/macro.d.ts"; -import { MigrationBase } from "../base.ts"; -/** Migrate rollActionMacro function parameters to an object */ -export declare class Migration871MigrateRollActionMacroParams extends MigrationBase { - static version: number; - updateMacro(source: MacroSource): Promise; -} diff --git a/types/src/module/migration/migrations/872-move-schema-property.d.ts b/types/src/module/migration/migrations/872-move-schema-property.d.ts deleted file mode 100644 index b28ee4c70..000000000 --- a/types/src/module/migration/migrations/872-move-schema-property.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove the `schema` property and create a new `_migration` one */ -export declare class Migration872MoveSchemaProperty extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/873-remove-bonus-bulk-limit.d.ts b/types/src/module/migration/migrations/873-remove-bonus-bulk-limit.d.ts deleted file mode 100644 index fcb2f0089..000000000 --- a/types/src/module/migration/migrations/873-remove-bonus-bulk-limit.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration873RemoveBonusBulkLimit extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/874-move-stamina-stuff.d.ts b/types/src/module/migration/migrations/874-move-stamina-stuff.d.ts deleted file mode 100644 index 41636134d..000000000 --- a/types/src/module/migration/migrations/874-move-stamina-stuff.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move stamina/resolve and update setting to be a boolean. */ -export declare class Migration874MoveStaminaStuff extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; - migrate(): Promise; -} diff --git a/types/src/module/migration/migrations/875-set-innovation-id-early.d.ts b/types/src/module/migration/migrations/875-set-innovation-id-early.d.ts deleted file mode 100644 index f1a6425ea..000000000 --- a/types/src/module/migration/migrations/875-set-innovation-id-early.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Set very low priority orders on AE-likes setting inventor innovation ID. */ -export declare class Migration875SetInnovationIdEarly extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/876-feat-level-taken.d.ts b/types/src/module/migration/migrations/876-feat-level-taken.d.ts deleted file mode 100644 index 23e5cd004..000000000 --- a/types/src/module/migration/migrations/876-feat-level-taken.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Record the level each feat is taken by PCs. */ -export declare class Migration876FeatLevelTaken extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/877-publication-data.d.ts b/types/src/module/migration/migrations/877-publication-data.d.ts deleted file mode 100644 index 87df0fcb2..000000000 --- a/types/src/module/migration/migrations/877-publication-data.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import type { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Standardize location and structure of actor/item publication data */ -export declare class Migration877PublicationData extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorWithOldPublicationData): Promise; - updateItem(source: ItemWithOldPublicationData): Promise; -} -type ActorWithOldPublicationData = ActorSourcePF2e & { - system: { - source?: unknown; - "-=source"?: null; - details: { - source?: unknown; - "-=source"?: null; - }; - }; -}; -type ItemWithOldPublicationData = ItemSourcePF2e & { - system: { - source?: unknown; - "-=source"?: null; - "-=details"?: null; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/878-take-a-breather.d.ts b/types/src/module/migration/migrations/878-take-a-breather.d.ts deleted file mode 100644 index 2b3a3d361..000000000 --- a/types/src/module/migration/migrations/878-take-a-breather.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { MacroSource } from "types/foundry/common/documents/macro.d.ts"; -import { MigrationBase } from "../base.ts"; -/** Migrate "Take a Breather" macro to use function exposed at `game.pf2e.actions` */ -export declare class Migration878TakeABreather extends MigrationBase { - static version: number; - updateMacro(source: MacroSource): Promise; -} diff --git a/types/src/module/migration/migrations/879-devise-a-stratagem-and-friends.d.ts b/types/src/module/migration/migrations/879-devise-a-stratagem-and-friends.d.ts deleted file mode 100644 index ce260ed32..000000000 --- a/types/src/module/migration/migrations/879-devise-a-stratagem-and-friends.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Update rule element on Devise a Stratagem action and related feats. */ -export declare class Migration879DeviseAStratagemAndFriends extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/880-split-show-dialogs-setting.d.ts b/types/src/module/migration/migrations/880-split-show-dialogs-setting.d.ts deleted file mode 100644 index e0d4f1ab1..000000000 --- a/types/src/module/migration/migrations/880-split-show-dialogs-setting.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { MigrationBase } from "../base.ts"; -/** Migrate the old "showRollDialogs" setting into the new pair. */ -export declare class Migration880SplitShowDialogsSettings extends MigrationBase { - static version: number; - migrate(): Promise; -} diff --git a/types/src/module/migration/migrations/881-no-hb-prefix.d.ts b/types/src/module/migration/migrations/881-no-hb-prefix.d.ts deleted file mode 100644 index 5b0b57877..000000000 --- a/types/src/module/migration/migrations/881-no-hb-prefix.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove "hb_" prefixes from homebrew element slugs. */ -export declare class Migration881NoHBPrefix extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/882-spell-data-reorganization.d.ts b/types/src/module/migration/migrations/882-spell-data-reorganization.d.ts deleted file mode 100644 index 049f25a84..000000000 --- a/types/src/module/migration/migrations/882-spell-data-reorganization.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Simplify data structure of spells, add damage `kinds` */ -export declare class Migration882SpellDataReorganization extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: DeepPartial, actorSource?: ActorSourcePF2e, - /** Whether this is the top level of the spell item rather than internal partial data */ - { topLevel }?: { - topLevel?: boolean | undefined; - }): Promise; -} diff --git a/types/src/module/migration/migrations/883-banish-alignment.d.ts b/types/src/module/migration/migrations/883-banish-alignment.d.ts deleted file mode 100644 index bc8854748..000000000 --- a/types/src/module/migration/migrations/883-banish-alignment.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** - * Remove actor alignment data, generating invalid alignment traits to be surfaced by a module. - * Also convert deity alignments to sanctifications - */ -export declare class Migration883BanishAlignment extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/884-unified-spellcasting.d.ts b/types/src/module/migration/migrations/884-unified-spellcasting.d.ts deleted file mode 100644 index 470e18d3e..000000000 --- a/types/src/module/migration/migrations/884-unified-spellcasting.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration884UnifiedSpellcasting extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/885-convert-alignment-damage.d.ts b/types/src/module/migration/migrations/885-convert-alignment-damage.d.ts deleted file mode 100644 index 451c37e5e..000000000 --- a/types/src/module/migration/migrations/885-convert-alignment-damage.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Replace all alignment damage and IWR with spirit damage and/or the holy trait */ -export declare class Migration885ConvertAlignmentDamage extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e, actorSource?: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/886-crossbow-group.d.ts b/types/src/module/migration/migrations/886-crossbow-group.d.ts deleted file mode 100644 index 204f4a6e7..000000000 --- a/types/src/module/migration/migrations/886-crossbow-group.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert weapons with the "crossbow" tag to the PC1 crossbow group */ -export declare class Migration886CrossbowGroup extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/887-redirect-spell-links.d.ts b/types/src/module/migration/migrations/887-redirect-spell-links.d.ts deleted file mode 100644 index 818e08b42..000000000 --- a/types/src/module/migration/migrations/887-redirect-spell-links.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { JournalEntrySource } from "types/foundry/common/documents/journal-entry.d.ts"; -import { MigrationBase } from "../base.ts"; -/** Redirect links some to-be-deleted spells to replacements */ -export declare class Migration887RedirectSpellLinks extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; - updateJournalEntry(source: JournalEntrySource): Promise; -} diff --git a/types/src/module/migration/migrations/888-remaster-languages-heritages.d.ts b/types/src/module/migration/migrations/888-remaster-languages-heritages.d.ts deleted file mode 100644 index d3aa1f799..000000000 --- a/types/src/module/migration/migrations/888-remaster-languages-heritages.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert weapons with the "crossbow" tag to the PC1 crossbow group */ -export declare class Migration888RemasterLanguagesHeritages extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/889-remove-focus-max-increases.d.ts b/types/src/module/migration/migrations/889-remove-focus-max-increases.d.ts deleted file mode 100644 index 3c2e097ec..000000000 --- a/types/src/module/migration/migrations/889-remove-focus-max-increases.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove AE-likes that increase the size of a PC's focus pool. */ -export declare class Migration889RemoveFocusMaxIncreases extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/890-rm-class-item-class-dc.d.ts b/types/src/module/migration/migrations/890-rm-class-item-class-dc.d.ts deleted file mode 100644 index 38a843c5f..000000000 --- a/types/src/module/migration/migrations/890-rm-class-item-class-dc.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove AE-likes that increase the size of a PC's focus pool. */ -export declare class Migration890RMClassItemClassDC extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/891-druidic-to-wildsong.d.ts b/types/src/module/migration/migrations/891-druidic-to-wildsong.d.ts deleted file mode 100644 index 5be4cedaa..000000000 --- a/types/src/module/migration/migrations/891-druidic-to-wildsong.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove AE-likes that increase the size of a PC's focus pool. */ -export declare class Migration891DruidicToWildsong extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/892-choice-re-adjust-name-value.d.ts b/types/src/module/migration/migrations/892-choice-re-adjust-name-value.d.ts deleted file mode 100644 index e643cfa1c..000000000 --- a/types/src/module/migration/migrations/892-choice-re-adjust-name-value.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert string values in adjustName property to a boolean */ -export declare class Migration892ChoiceSetREAdjustNameValue extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/893-no-hb-prefix-settings.d.ts b/types/src/module/migration/migrations/893-no-hb-prefix-settings.d.ts deleted file mode 100644 index 682451881..000000000 --- a/types/src/module/migration/migrations/893-no-hb-prefix-settings.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { MigrationBase } from "../base.ts"; -/** Remove "hb_" prefixes from homebrew element slugs. */ -export declare class Migration893NoHBPrefixSettings extends MigrationBase { - static version: number; - migrate(): Promise; -} diff --git a/types/src/module/migration/migrations/894-no-lay-on-hands-vs-undead.d.ts b/types/src/module/migration/migrations/894-no-lay-on-hands-vs-undead.d.ts deleted file mode 100644 index 5b8693978..000000000 --- a/types/src/module/migration/migrations/894-no-lay-on-hands-vs-undead.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert string values in adjustName property to a boolean */ -export declare class Migration894NoLayOnHandsVsUndead extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/895-fix-variant-spell-traits.d.ts b/types/src/module/migration/migrations/895-fix-variant-spell-traits.d.ts deleted file mode 100644 index 14246346c..000000000 --- a/types/src/module/migration/migrations/895-fix-variant-spell-traits.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Fix traits on spell variants */ -export declare class Migration895FixVariantSpellTraits extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/896-healing-domains.d.ts b/types/src/module/migration/migrations/896-healing-domains.d.ts deleted file mode 100644 index cb978df12..000000000 --- a/types/src/module/migration/migrations/896-healing-domains.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Fix traits on spell variants */ -export declare class Migration896HealingDomains extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/897-clear-lay-on-hands-damage.d.ts b/types/src/module/migration/migrations/897-clear-lay-on-hands-damage.d.ts deleted file mode 100644 index bcf161497..000000000 --- a/types/src/module/migration/migrations/897-clear-lay-on-hands-damage.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Clear the top level of Lay on Hands (and Touch of Corruption) damage so that it is not added to overlays */ -export declare class Migration897ClearLayOnHandsDamage extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/898-no-hb-again.d.ts b/types/src/module/migration/migrations/898-no-hb-again.d.ts deleted file mode 100644 index c6672c6ad..000000000 --- a/types/src/module/migration/migrations/898-no-hb-again.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove "hb_" prefixes from homebrew element slugs. */ -export declare class Migration898NoHBAgain extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/899-armor-shields-to-shield-shields.d.ts b/types/src/module/migration/migrations/899-armor-shields-to-shield-shields.d.ts deleted file mode 100644 index 8a5927bee..000000000 --- a/types/src/module/migration/migrations/899-armor-shields-to-shield-shields.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Convert shield "armor" items to shield items */ -export declare class Migration899ArmorShieldToShieldShield extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/900-class-spellcasting-proficiency.d.ts b/types/src/module/migration/migrations/900-class-spellcasting-proficiency.d.ts deleted file mode 100644 index cf97c6405..000000000 --- a/types/src/module/migration/migrations/900-class-spellcasting-proficiency.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Record initial spellcasting proficiency in class item data */ -export declare class Migration900ClassSpellcastingProficiency extends MigrationBase { - static version: number; - /** Remove persisted spellcasting proficiency */ - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/901-reorganize-bulk-data.d.ts b/types/src/module/migration/migrations/901-reorganize-bulk-data.d.ts deleted file mode 100644 index bf7ffd255..000000000 --- a/types/src/module/migration/migrations/901-reorganize-bulk-data.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Reorganize bulk data on physical items into single object */ -export declare class Migration901ReorganizeBulkData extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/902-duskwood-dawnsilver.d.ts b/types/src/module/migration/migrations/902-duskwood-dawnsilver.d.ts deleted file mode 100644 index b25d1de71..000000000 --- a/types/src/module/migration/migrations/902-duskwood-dawnsilver.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Reorganize bulk data on physical items into single object */ -export declare class Migration902DuskwoodDawnsilver extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/903-physical-numeric-data.d.ts b/types/src/module/migration/migrations/903-physical-numeric-data.d.ts deleted file mode 100644 index 8a216d1f9..000000000 --- a/types/src/module/migration/migrations/903-physical-numeric-data.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Ensure some physical numeric data is non-null. */ -export declare class Migration903PhysicalNumericData extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/904-undercommon-to-sakvroth.d.ts b/types/src/module/migration/migrations/904-undercommon-to-sakvroth.d.ts deleted file mode 100644 index beedb8886..000000000 --- a/types/src/module/migration/migrations/904-undercommon-to-sakvroth.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Change all instances of "undercommon" to "sakvroth". */ -export declare class Migration904UndercommonToSakvroth extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/905-unpersist-usage.d.ts b/types/src/module/migration/migrations/905-unpersist-usage.d.ts deleted file mode 100644 index 11d8e0f18..000000000 --- a/types/src/module/migration/migrations/905-unpersist-usage.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove `usage` properties from items with only a single (or no) usage */ -export declare class Migration905UnpersistUsage extends MigrationBase { - static version: number; - updateItem(source: MaybeWithToBeDeletedUsage): Promise; -} -type MaybeWithToBeDeletedUsage = ItemSourcePF2e & { - system: { - "-=usage"?: null; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/906-limit-stack-group.d.ts b/types/src/module/migration/migrations/906-limit-stack-group.d.ts deleted file mode 100644 index 811121f01..000000000 --- a/types/src/module/migration/migrations/906-limit-stack-group.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Limit `stackGroup` property to consumables and treasure */ -export declare class Migration906LimitStackGroup extends MigrationBase { - static version: number; - updateItem(source: MaybeWithToBeDeletedStackGroup): Promise; -} -type MaybeWithToBeDeletedStackGroup = ItemSourcePF2e & { - system: { - "-=stackGroup"?: null; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/907-restructure-armor-weapon-runes.d.ts b/types/src/module/migration/migrations/907-restructure-armor-weapon-runes.d.ts deleted file mode 100644 index 1d4c32818..000000000 --- a/types/src/module/migration/migrations/907-restructure-armor-weapon-runes.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move armor and weapon runes to a single object. */ -export declare class Migration907RestructureArmorWeaponRunes extends MigrationBase { - #private; - static version: number; - updateItem(source: MaybeWithRuneDeletions): Promise; -} -type OldRunePropertyKey = "potencyRune" | "resiliencyRune" | "strikingRune" | "propertyRune1" | "propertyRune2" | "propertyRune3" | "propertyRune4"; -type MaybeWithRuneDeletions = ItemSourcePF2e & { - system: { - [K in `-=${OldRunePropertyKey}`]?: null; - }; -}; -export {}; diff --git a/types/src/module/migration/migrations/908-true-gang-up.d.ts b/types/src/module/migration/migrations/908-true-gang-up.d.ts deleted file mode 100644 index dae0d8ea5..000000000 --- a/types/src/module/migration/migrations/908-true-gang-up.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add roll options to abilities allowing one to ignore the flat-footed condition from being flanked */ -export declare class Migration908TrueGangUp extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/909-refine-consumable-data.d.ts b/types/src/module/migration/migrations/909-refine-consumable-data.d.ts deleted file mode 100644 index 4f21735de..000000000 --- a/types/src/module/migration/migrations/909-refine-consumable-data.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Crunch down some needless "value objects" in consumable data, expand damage formula data */ -export declare class Migration909RefineConsumableData extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/910-edicts-anathema-arrays.d.ts b/types/src/module/migration/migrations/910-edicts-anathema-arrays.d.ts deleted file mode 100644 index 551a2cf65..000000000 --- a/types/src/module/migration/migrations/910-edicts-anathema-arrays.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Turn edicts and anathema into arrays. */ -export declare class Migration910EdictsAnathemaArrays extends MigrationBase { - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/911-coin-bulk.d.ts b/types/src/module/migration/migrations/911-coin-bulk.d.ts deleted file mode 100644 index d48965eda..000000000 --- a/types/src/module/migration/migrations/911-coin-bulk.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Fix bulk of coins */ -export declare class Migration911CoinBulk extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/912-rm-focus-trait-focus-cantrips.d.ts b/types/src/module/migration/migrations/912-rm-focus-trait-focus-cantrips.d.ts deleted file mode 100644 index a98f1dd77..000000000 --- a/types/src/module/migration/migrations/912-rm-focus-trait-focus-cantrips.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove the "focus" traits from focus cantrips. */ -export declare class Migration912RmFocusTraitFocusCantrips extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/913-spell-sustained-text.d.ts b/types/src/module/migration/migrations/913-spell-sustained-text.d.ts deleted file mode 100644 index a86b672f0..000000000 --- a/types/src/module/migration/migrations/913-spell-sustained-text.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove redundant "sustained for up to" in free-text spell durations. */ -export declare class Migration913SpellSustainedText extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/914-move-perception-senses.d.ts b/types/src/module/migration/migrations/914-move-perception-senses.d.ts deleted file mode 100644 index 2515ede14..000000000 --- a/types/src/module/migration/migrations/914-move-perception-senses.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move perception and initiative to top level of PC and NPC data, and senses to within perceptive data. */ -export declare class Migration914MovePerceptionSenses extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/915-move-languages.d.ts b/types/src/module/migration/migrations/915-move-languages.d.ts deleted file mode 100644 index 98ea86a3b..000000000 --- a/types/src/module/migration/migrations/915-move-languages.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { Migration914MovePerceptionSenses } from "./914-move-perception-senses.ts"; -/** Move languages from traits to details. */ -export declare class Migration915MoveLanguages extends Migration914MovePerceptionSenses { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/916-new-pc-toys.d.ts b/types/src/module/migration/migrations/916-new-pc-toys.d.ts deleted file mode 100644 index e986fa778..000000000 --- a/types/src/module/migration/migrations/916-new-pc-toys.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Add new rule elements to various classes and feats (covers Gunslinger, Inventor, and Swashbuckler). */ -export declare class Migration916NewPCToys extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/917-scroll-wand-spell-ids.d.ts b/types/src/module/migration/migrations/917-scroll-wand-spell-ids.d.ts deleted file mode 100644 index d41d0a3df..000000000 --- a/types/src/module/migration/migrations/917-scroll-wand-spell-ids.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Populate `_id` field of spells embedded in old scrolls and wands. */ -export declare class Migration917ScrollWandSpellIds extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/918-deity-skills.d.ts b/types/src/module/migration/migrations/918-deity-skills.d.ts deleted file mode 100644 index c5cb6efee..000000000 --- a/types/src/module/migration/migrations/918-deity-skills.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Fix skills section of deities */ -export declare class Migration918DeitySkills extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/919-trait-toggle-structure.d.ts b/types/src/module/migration/migrations/919-trait-toggle-structure.d.ts deleted file mode 100644 index 8d7d9dca4..000000000 --- a/types/src/module/migration/migrations/919-trait-toggle-structure.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Adjust weapon trait toggles to use "selected" instead of "selection" */ -export declare class Migration919WeaponToggleStructure extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/920-suboption-selection.d.ts b/types/src/module/migration/migrations/920-suboption-selection.d.ts deleted file mode 100644 index 3f75981b3..000000000 --- a/types/src/module/migration/migrations/920-suboption-selection.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move RollOption RE suboption selections to top level of object. */ -export declare class Migration920SuboptionSelection extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e, actorSource: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/921-spell-slot-arrays.d.ts b/types/src/module/migration/migrations/921-spell-slot-arrays.d.ts deleted file mode 100644 index 32fe131fc..000000000 --- a/types/src/module/migration/migrations/921-spell-slot-arrays.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Restore prepared spells slots to their initial array state. */ -export declare class Migration921SpellSlotArrays extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/922-swashbuckler-finisher-suboptions.d.ts b/types/src/module/migration/migrations/922-swashbuckler-finisher-suboptions.d.ts deleted file mode 100644 index f6f837416..000000000 --- a/types/src/module/migration/migrations/922-swashbuckler-finisher-suboptions.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move existing swashbucklers finishers to the new mergeable suboptions **/ -export declare class Migration922SwashbucklerFinishers extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/923-kineticist-restructure.d.ts b/types/src/module/migration/migrations/923-kineticist-restructure.d.ts deleted file mode 100644 index 2d1012833..000000000 --- a/types/src/module/migration/migrations/923-kineticist-restructure.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Move existing kineticists to the new class automation structure **/ -export declare class Migration923KineticistRestructure extends MigrationBase { - #private; - static version: number; - updateActor(actorSource: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/924-jiu-huan-dao.d.ts b/types/src/module/migration/migrations/924-jiu-huan-dao.d.ts deleted file mode 100644 index 853cd4460..000000000 --- a/types/src/module/migration/migrations/924-jiu-huan-dao.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Rename all instances of and references to "Nine-Ring Sword" to "Jiu Huan Doa". **/ -export declare class Migration924JiuHuanDoa extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/925-touch-of-corruption.d.ts b/types/src/module/migration/migrations/925-touch-of-corruption.d.ts deleted file mode 100644 index b9d26ee4f..000000000 --- a/types/src/module/migration/migrations/925-touch-of-corruption.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove links to removed Touch of Corruption variant **/ -export declare class Migration925TouchOfCorruption extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/926-remove-vision-feature-links.d.ts b/types/src/module/migration/migrations/926-remove-vision-feature-links.d.ts deleted file mode 100644 index 358550c97..000000000 --- a/types/src/module/migration/migrations/926-remove-vision-feature-links.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Remove links to removed vision features to prevent broken links **/ -export declare class Migration926RemoveVisionFeatureLinks extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/927-class-background-skill-longform.d.ts b/types/src/module/migration/migrations/927-class-background-skill-longform.d.ts deleted file mode 100644 index a6d3b9876..000000000 --- a/types/src/module/migration/migrations/927-class-background-skill-longform.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; - -export declare class Migration927ClassBackgroundBattleFormSkillLongform extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} -export declare const SKILL_DICTIONARY: { - readonly acr: "acrobatics"; - readonly arc: "arcana"; - readonly ath: "athletics"; - readonly cra: "crafting"; - readonly dec: "deception"; - readonly dip: "diplomacy"; - readonly itm: "intimidation"; - readonly med: "medicine"; - readonly nat: "nature"; - readonly occ: "occultism"; - readonly prf: "performance"; - readonly rel: "religion"; - readonly soc: "society"; - readonly ste: "stealth"; - readonly sur: "survival"; - readonly thi: "thievery"; -}; -export type SkillAbbreviation = keyof typeof SKILL_DICTIONARY; -export declare const SKILL_ABBREVIATIONS: ("med" | "acr" | "arc" | "ath" | "cra" | "dec" | "dip" | "itm" | "nat" | "occ" | "prf" | "rel" | "soc" | "ste" | "sur" | "thi")[]; diff --git a/types/src/module/migration/migrations/928-character-skills-longform.d.ts b/types/src/module/migration/migrations/928-character-skills-longform.d.ts deleted file mode 100644 index d417f13e5..000000000 --- a/types/src/module/migration/migrations/928-character-skills-longform.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration928CharacterSkillsLongform extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/929-remove-skill-abbreviations.d.ts b/types/src/module/migration/migrations/929-remove-skill-abbreviations.d.ts deleted file mode 100644 index f06e1527c..000000000 --- a/types/src/module/migration/migrations/929-remove-skill-abbreviations.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { SkillSlug } from "@actor/types.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { ChoiceSetSource } from "@module/rules/rule-element/choice-set/data.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration929RemoveSkillAbbreviations extends MigrationBase { - #private; - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} -export declare function isSizeChoice(rule: ChoiceSetSource): boolean; -export declare function resolveLongForm(value: T): T | SkillSlug; diff --git a/types/src/module/migration/migrations/930-choice-set-medium.d.ts b/types/src/module/migration/migrations/930-choice-set-medium.d.ts deleted file mode 100644 index 9c36c3952..000000000 --- a/types/src/module/migration/migrations/930-choice-set-medium.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; -/** Migration 929 originally failed to filter out size choicesets when updating the selection */ -export declare class Migration930ChoiceSetMedium extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/931-expand-re-permissions.d.ts b/types/src/module/migration/migrations/931-expand-re-permissions.d.ts deleted file mode 100644 index f3a52a9f7..000000000 --- a/types/src/module/migration/migrations/931-expand-re-permissions.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import { MigrationBase } from "../base.ts"; -/** Migrate from boolean "enabledRulesUI" to "minimumRulesUI" choices. */ -export declare class Migration931ExpandREPermissions extends MigrationBase { - static version: number; - migrate(): Promise; -} diff --git a/types/src/module/migration/migrations/932-npc-system-skills.d.ts b/types/src/module/migration/migrations/932-npc-system-skills.d.ts deleted file mode 100644 index a2d020447..000000000 --- a/types/src/module/migration/migrations/932-npc-system-skills.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { MigrationBase } from "../base.ts"; -export declare class Migration932NPCSystemSkills extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/933-crafting-ability.d.ts b/types/src/module/migration/migrations/933-crafting-ability.d.ts deleted file mode 100644 index 6aed5fe84..000000000 --- a/types/src/module/migration/migrations/933-crafting-ability.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; - -/** Renames CraftingEntry to CraftingAbility, and updates prepared formulas to no longer have the sort property */ -export declare class Migration933CraftingAbility extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/934-mythic-calling-category.d.ts b/types/src/module/migration/migrations/934-mythic-calling-category.d.ts deleted file mode 100644 index bfa836eb9..000000000 --- a/types/src/module/migration/migrations/934-mythic-calling-category.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { MigrationBase } from "../base.ts"; - -/** Clean up Calling items, setting a category and removing tags */ -export declare class Migration934MythicCallingCategory extends MigrationBase { - static version: number; - updateItem(source: ItemSourcePF2e): Promise; -} diff --git a/types/src/module/migration/migrations/935-deity-icon-paths.d.ts b/types/src/module/migration/migrations/935-deity-icon-paths.d.ts deleted file mode 100644 index de59fae88..000000000 --- a/types/src/module/migration/migrations/935-deity-icon-paths.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { ActorSourcePF2e } from "@actor/data/index.ts"; -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { TokenSource } from "types/foundry/common/documents/token.d.ts"; -import { MigrationBase } from "../base.ts"; - -/** Clean up Calling items, setting a category and removing tags */ -export declare class Migration935DeityIconPaths extends MigrationBase { - #private; - static version: number; - updateActor(source: ActorSourcePF2e): Promise; - updateItem(source: ItemSourcePF2e): Promise; - updateToken(source: TokenSource): Promise; -} diff --git a/types/src/module/migration/migrations/index.d.ts b/types/src/module/migration/migrations/index.d.ts deleted file mode 100644 index 63cc07c3e..000000000 --- a/types/src/module/migration/migrations/index.d.ts +++ /dev/null @@ -1,236 +0,0 @@ -export { Migration700SingleClassFeatures } from "./700-single-class-features.ts"; -export { Migration701ModifierNameToSlug } from "./701-modifier-name-to-slug.ts"; -export { Migration702REFormulasAtInstanceLevel } from "./702-re-formulas-at-instance-level.ts"; -export { Migration703SpellDamageStructure } from "./703-spell-damage-structure.ts"; -export { Migration704MartialProficiencyRE } from "./704-martial-proficiency-re.ts"; -export { Migration705GunslingerCatchUp } from "./705-gunslinger-catch-up.ts"; -export { Migration706FormulasAtInstanceLevelEverythingElse } from "./706-formulas-at-instance-level-everything-else.ts"; -export { Migration707BracketedFormulasAtInstanceLevel } from "./707-bracketed-formulas-at-instance-level.ts"; -export { Migration708SpecificRuleLabel } from "./708-specific-rule-label.ts"; -export { Migration709REFormulasAtInstanceLevelRedux } from "./709-re-formulas-at-instance-level-redux.ts"; -export { Migration710RarityToString } from "./710-rarity-to-string.ts"; -export { Migration711HeritageItems } from "./711-heritage-items.ts"; -export { Migration712ActorShieldStructure } from "./712-actor-shield-structure.ts"; -export { Migration713FistToStrikeRE } from "./713-fist-to-strike-re.ts"; -export { Migration714RangeIncrementREs } from "./714-range-increment-res.ts"; -export { Migration715DangerousSorcery } from "./715-dangerous-sorcery.ts"; -export { Migration716StrikeDamageSelector } from "./716-strike-damage-selector.ts"; -export { Migration717TakeFeatLimits } from "./717-take-feat-limits.ts"; -export { Migration718CarryType } from "./718-carry-type.ts"; -export { Migration719ShrugFlanking } from "./719-shrug-flanking.ts"; -export { Migration720UpdateSpellDescriptions } from "./720-update-spell-descriptions.ts"; -export { Migration721SetReloadValues } from "./721-set-reload-values.ts"; -export { Migration722CraftingSystemData } from "./722-crafting-system-data.ts"; -export { Migration723CumulativeItemBonuses } from "./723-cumulative-item-bonuses.ts"; -export { Migration724CraftingMaxItemLevel } from "./724-crafting-max-item-level.ts"; -export { Migration725QuickClimbREs } from "./725-quick-climb-rule-elements.ts"; -export { Migration726JournalSetting } from "./726-journal-setting.ts"; -export { Migration727TrimSelfRollOptions } from "./727-trim-self-roll-options.ts"; -export { Migration728FlattenPhysicalProperties } from "./728-flatten-physical-properties.ts"; -export { Migration729CumulativeItemBonusCleanup } from "./729-cumulative-item-bonus-cleanup.ts"; -export { Migration730DeruneHandwraps } from "./730-derune-handwraps.ts"; -export { Migration731TogglePropertyToRollOption } from "./731-toggle-property-to-roll-option.ts"; -export { Migration732FixDedicationFeatTypes } from "./732-fix-dedication-feat-types.ts"; -export { Migration733ItemBonusFromEquipment } from "./733-item-bonus-from-equipment.ts"; -export { Migration734SpellLocationPropsAndSignature } from "./734-spell-location-props-and-signature.ts"; -export { Migration735FirearmAmmoAlchemical } from "./735-firearm-ammo-alchemical.ts"; -export { Migration736RemoveBrokenThreshold } from "./736-remove-broken-threshold.ts"; -export { Migration737NormalizeRuleElementKeys } from "./737-normalize-re-keys.ts"; -export { Migration738UpdateLaughingShadow } from "./738-update-laughing-shadow.ts"; -export { Migration739RecoveryCheckDC } from "./739-recovery-check-dc.ts"; -export { Migration740MaxTakable } from "./740-fix-max-takable.ts"; -export { Migration741RollOptionToggleToItem } from "./741-roll-option-toggle-to-item.ts"; -export { Migration742RMAbilityBoostLevels } from "./742-rm-class-ability-boost-levels.ts"; -export { Migration743FixWeaknessStructure } from "./743-fix-weakness-structure.ts"; -export { Migration744MigrateSpellHeighten } from "./744-migrate-spell-heighten.ts"; -export { Migration745EffectTargetToChoiceSet } from "./745-effect-target-to-choice-set.ts"; -export { Migration746StandardizePricing } from "./746-standardize-pricing.ts"; -export { Migration747FixedHeightening } from "./747-fixed-heightening.ts"; -export { Migration748BatchConsumablePricing } from "./748-batch-consumable-pricing.ts"; -export { Migration749AssuranceREs } from "./749-assurance-res.ts"; -export { Migration750FixCorruptedPrice } from "./750-fix-corrupted-price.ts"; -export { Migration751ResetRollOptions } from "./751-reset-roll-options.ts"; -export { Migration752StrikeVsWeaponTraits } from "./752-strike-vs-weapon-traits.ts"; -export { Migration753WeaponReloadTimes } from "./753-weapon-reload-times.ts"; -export { Migration754MightyBulwarkAdjustModifiers } from "./754-mighty-bulwark-adjust-modifiers.ts"; -export { Migration755GrantIdsToData } from "./755-grant-ids-to-data.ts"; -export { Migration756RMStoredResourceMaxes } from "./756-rm-stored-resource-maxes.ts"; -export { Migration757HillockHalfling } from "./757-hillock-halfling.ts"; -export { Migration758PrunePCAttributes } from "./758-prune-pc-attributes.ts"; -export { Migration759CritSpecRE } from "./759-crit-spec-re.ts"; -export { Migration760SeparateNoteTitle } from "./760-separate-note-title.ts"; -export { Migration761ShotRules } from "./761-update-shot-rules.ts"; -export { Migration762UpdateBackgroundItems } from "./762-update-background-items.ts"; -export { Migration763RestoreAnimalStrikeOptions } from "./763-restore-animal-strike-options.ts"; -export { Migration764PanacheVivaciousREs } from "./764-panache-vivacious-res.ts"; -export { Migration765ChoiceOwnedItemTypes } from "./765-choice-owned-item-types.ts"; -export { Migration766WipeURLSources } from "./766-wipe-url-sources.ts"; -export { Migration767ConvertVoluntaryFlaws } from "./767-convert-voluntary-flaws.ts"; -export { Migration768AddNewAuras } from "./768-add-new-auras.ts"; -export { Migration769NoUniversalistFocusPool } from "./769-no-universalist-focus-pool.ts"; -export { Migration770REDataToSystem } from "./770-re-data-to-system.ts"; -export { Migration771SpellVariantsToSystem } from "./771-spell-variants-to-system.ts"; -export { Migration772V10EmbeddedSpellData } from "./772-v10-embedded-spell-data.ts"; -export { Migration773ReligiousSymbolUsage } from "./773-religious-symbol-usage.ts"; -export { Migration774UnpersistCraftingEntries } from "./774-unpersist-crafting-entries.ts"; -export { Migration775AgileFinesseRanged } from "./775-agile-finesse-ranged.ts"; -export { Migration776SlugifyConditionOverrides } from "./776-sluggify-condition-overrides.ts"; -export { Migration777HandOfTheApprentice } from "./777-hand-of-the-apprentice.ts"; -export { Migration778RenameRetiredPackRefs } from "./778-rename-feature-effects-refs.ts"; -export { Migration779EliteWeak } from "./779-elite-weak.ts"; -export { Migration780NumifySpeeds } from "./780-numify-speeds.ts"; -export { Migration781SuppressNoCrowbar } from "./781-suppress-no-crowbar.ts"; -export { Migration782UnnestActorTraits } from "./782-unnest-actor-traits.ts"; -export { Migration783RemoveClassSkillAELikes } from "./783-remove-class-skill-ae-likes.ts"; -export { Migration784CompBrowserPackSetting } from "./784-comp-browser-pack-setting.ts"; -export { Migration785ABCKitItemUUIDs } from "./785-abc-kit-items.ts"; -export { Migration786RemoveIdentifiedData } from "./786-remove-identified-data.ts"; -export { Migration787ResolvablesToSystem } from "./787-resolvables-to-system.ts"; -export { Migration788UpdateTanglefootBags } from "./788-update-tanglefoot-bags.ts"; -export { Migration789UpdatePreciseStrike } from "./789-update-precise-strike.ts"; -export { Migration790MultipleClassDCs } from "./790-multiple-class-dcs.ts"; -export { Migration791RuffianHands } from "./791-ruffian-hands.ts"; -export { Migration792RemoveTokenAELikes } from "./792-remove-token-ae-likes.ts"; -export { Migration793MakePredicatesArrays } from "./793-make-predicates-arrays.ts"; -export { Migration794AddWildShapeChoices } from "./794-add-wild-shape-choices.ts"; -export { Migration795CleanupFlatFootedToggle } from "./795-cleanup-flat-footed-toggle.ts"; -export { Migration796ItemGrantsToObjects } from "./796-item-grants-to-objects.ts"; -export { Migration797MetagameSetting } from "./797-metagame-settings.ts"; -export { Migration798WeaponToItemStatements } from "./798-weapon-to-item-statements.ts"; -export { Migration799RMRecallKnowledgeDuplicates } from "./799-rm-recall-knowledge-duplicates.ts"; -export { Migration800SelfEffectPanacheRage } from "./800-self-effect-panache-rage.ts"; -export { Migration801ColorDarkvision } from "./801-color-darkvision.ts"; -export { Migration802StripFeatActionCategory } from "./802-strip-feat-action-category.ts"; -export { Migration803NormalizeSpellArea } from "./803-normalize-spell-area.ts"; -export { Migration804RemoveConsumableProperties } from "./804-remove-consumable-properties.ts"; -export { Migration805InlineDamageRolls } from "./805-inline-damage-formulas.ts"; -export { Migration806TorchImprovisedOtherTags } from "./806-torch-improvised-othertags.ts"; -export { Migration807RMActivatedEffectFields } from "./807-rm-activated-effect-fields.ts"; -export { Migration808CountDamageDice } from "./808-count-damage-dice.ts"; -export { Migration809AutomatonEnhancements } from "./809-automaton-enhancements.ts"; -export { Migration810LootDescriptionValue } from "./810-loot-description-value.ts"; -export { Migration811InlineDamageRollsPersistent } from "./811-inline-damage-rolls-persistent.ts"; -export { Migration812RestructureIWR } from "./812-restructure-iwr.ts"; -export { Migration813NormalizeColdIron } from "./813-normalize-cold-iron.ts"; -export { Migration814CalculatedExpandedSplash } from "./814-calculated-expanded-splash.ts"; -export { Migration815ConsumableDataCleanup } from "./815-consumable-data-cleanup.ts"; -export { Migration816AlchemistResearchFields } from "./816-alchemist-research-fields.ts"; -export { Migration817FieldDiscoveryPredicates } from "./817-field-discovery-predicates.ts"; -export { Migration818BasicUndeadNegativeHealing } from "./818-basic-undead-negative-healing.ts"; -export { Migration819SpinTaleAdventureSpecific } from "./819-spin-tale-adventure-specific.ts"; -export { Migration820RemoveUnusedTraitsData } from "./820-remove-unused-traits-data.ts"; -export { Migration821InlineDamageRolls } from "./821-inline-damage-rolls.ts"; -export { Migration822BladeAllyConsolidation } from "./822-blade-ally-consolidation.ts"; -export { Migration823HeritageAncestrySlug } from "./823-heritage-ancestry-slug.ts"; -export { Migration824SneakAttackDamageSource } from "./824-sneak-attack-damage-source.ts"; -export { Migration825KhakkharaFengHuoLun } from "./825-khakkhara-feng-huo-lun.ts"; -export { Migration826GutConditionData } from "./826-gut-condition-data.ts"; -export { Migration827FixTVShieldTraits } from "./827-fix-tv-shield-traits.ts"; -export { Migration828PruneInvalidTraits } from "./828-prune-invalid-traits.ts"; -export { Migration829RMRitualEntries } from "./829-rm-ritual-entries.ts"; -export { Migration830BarbarianRework } from "./830-condense-instincts.ts"; -export { Migration831ClericDoctrines } from "./831-cleric-doctrines.ts"; -export { Migration832ChoiceSetFlags } from "./832-choice-set-flags.ts"; -export { Migration833AddRogueToysFixPrecision } from "./833-add-rogue-toys-fix-precision.ts"; -export { Migration834FeatCategories } from "./834-feat-categories.ts"; -export { Migration835InitiativeLongform } from "./835-initiative-longform.ts"; -export { Migration836EnergizingConsolidation } from "./836-energizing-consolidation.ts"; -export { Migration837MoveHazardBookSources } from "./837-move-hazard-book-source.ts"; -export { Migration838StrikeAttackRollSelector } from "./838-strike-attack-roll-selector.ts"; -export { Migration839ActionCategories } from "./839-action-categories.ts"; -export { Migration840ArrayWrapPredicates } from "./840-array-wrap-predicates.ts"; -export { Migration841V11UUIDFormat } from "./841-v11-uuid-format.ts"; -export { Migration842NumifyNumericSettings } from "./842-numify-numeric-settings.ts"; -export { Migration843RMArmorCustomModifiers } from "./843-rm-armor-custom-modifiers.ts"; -export { Migration844DeityDomainUUIDs } from "./844-deity-domains-uuids.ts"; -export { Migration845EmptySpellConsumables } from "./845-empty-spell-consumables.ts"; -export { Migration846SpellSchoolOptional } from "./846-spell-school-optional.ts"; -export { Migration847TempHPRuleEvents } from "./847-temp-hp-rule-events.ts"; -export { Migration848NumericArmorProperties } from "./848-numeric-armor-properties.ts"; -export { Migration849DeleteBrokenThreshold } from "./849-delete-broken-threshold.ts"; -export { Migration850FlatFootedToOffGuard } from "./850-flat-footed-to-off-guard.ts"; -export { Migration851JustInnovationId } from "./851-just-innovation-id.ts"; -export { Migration852AbilityScoresToModifiers } from "./852-ability-scores-to-modifiers.ts"; -export { Migration853RemasterLanguages } from "./853-remaster-languages.ts"; -export { Migration854BracketedAbilityScoresToModifiers } from "./854-bracketed-ability-scores-to-modifiers.ts"; -export { Migration855ApexEquipmentSystemData } from "./855-apex-equipment-system-data.ts"; -export { Migration856NoSystemDotCustom } from "./856-no-system-dot-custom.ts"; -export { Migration857WeaponSpecializationRE } from "./857-weapon-spec-re.ts"; -export { Migration858FakeWeaponSpecialization } from "./858-fake-weapon-specialization.ts"; -export { Migration859MaterialTypeGrade } from "./859-material-type-grade.ts"; -export { Migration860RMGroup } from "./860-rm-group.ts"; -export { Migration861AuraColorsToAppearance } from "./861-aura-colors-to-appearance.ts"; -export { Migration862SpecificMagicArmor } from "./862-specific-magic-armor.ts"; -export { Migration863FixMisspelledOrganaizationsProperty } from "./863-fix-misspelled-organaizations-property.ts"; -export { Migration864RemoveWeaponMAP } from "./864-rm-weapon-map.ts"; -export { Migration865VitalityVoid } from "./865-vitality-void.ts"; -export { Migration866LinkToActorSizeAgain } from "./866-link-to-actor-size-again.ts"; -export { Migration867DamageRollDomainFix } from "./867-damage-roll-domain-fix.ts"; -export { Migration868StrikeRERange } from "./868-strike-re-range.ts"; -export { Migration869RefreshMightyBulwark } from "./869-refresh-mighty-bulwark.ts"; -export { Migration870MartialToProficiencies } from "./870-martial-to-proficiencies.ts"; -export { Migration871MigrateRollActionMacroParams } from "./871-migrate-rollactionmacro-params.ts"; -export { Migration872MoveSchemaProperty } from "./872-move-schema-property.ts"; -export { Migration873RemoveBonusBulkLimit } from "./873-remove-bonus-bulk-limit.ts"; -export { Migration874MoveStaminaStuff } from "./874-move-stamina-stuff.ts"; -export { Migration875SetInnovationIdEarly } from "./875-set-innovation-id-early.ts"; -export { Migration876FeatLevelTaken } from "./876-feat-level-taken.ts"; -export { Migration877PublicationData } from "./877-publication-data.ts"; -export { Migration878TakeABreather } from "./878-take-a-breather.ts"; -export { Migration879DeviseAStratagemAndFriends } from "./879-devise-a-stratagem-and-friends.ts"; -export { Migration880SplitShowDialogsSettings } from "./880-split-show-dialogs-setting.ts"; -export { Migration881NoHBPrefix } from "./881-no-hb-prefix.ts"; -export { Migration882SpellDataReorganization } from "./882-spell-data-reorganization.ts"; -export { Migration883BanishAlignment } from "./883-banish-alignment.ts"; -export { Migration884UnifiedSpellcasting } from "./884-unified-spellcasting.ts"; -export { Migration885ConvertAlignmentDamage } from "./885-convert-alignment-damage.ts"; -export { Migration886CrossbowGroup } from "./886-crossbow-group.ts"; -export { Migration887RedirectSpellLinks } from "./887-redirect-spell-links.ts"; -export { Migration888RemasterLanguagesHeritages } from "./888-remaster-languages-heritages.ts"; -export { Migration889RemoveFocusMaxIncreases } from "./889-remove-focus-max-increases.ts"; -export { Migration890RMClassItemClassDC } from "./890-rm-class-item-class-dc.ts"; -export { Migration891DruidicToWildsong } from "./891-druidic-to-wildsong.ts"; -export { Migration892ChoiceSetREAdjustNameValue } from "./892-choice-re-adjust-name-value.ts"; -export { Migration893NoHBPrefixSettings } from "./893-no-hb-prefix-settings.ts"; -export { Migration894NoLayOnHandsVsUndead } from "./894-no-lay-on-hands-vs-undead.ts"; -export { Migration895FixVariantSpellTraits } from "./895-fix-variant-spell-traits.ts"; -export { Migration896HealingDomains } from "./896-healing-domains.ts"; -export { Migration897ClearLayOnHandsDamage } from "./897-clear-lay-on-hands-damage.ts"; -export { Migration898NoHBAgain } from "./898-no-hb-again.ts"; -export { Migration899ArmorShieldToShieldShield } from "./899-armor-shields-to-shield-shields.ts"; -export { Migration900ClassSpellcastingProficiency } from "./900-class-spellcasting-proficiency.ts"; -export { Migration901ReorganizeBulkData } from "./901-reorganize-bulk-data.ts"; -export { Migration902DuskwoodDawnsilver } from "./902-duskwood-dawnsilver.ts"; -export { Migration903PhysicalNumericData } from "./903-physical-numeric-data.ts"; -export { Migration904UndercommonToSakvroth } from "./904-undercommon-to-sakvroth.ts"; -export { Migration905UnpersistUsage } from "./905-unpersist-usage.ts"; -export { Migration906LimitStackGroup } from "./906-limit-stack-group.ts"; -export { Migration907RestructureArmorWeaponRunes } from "./907-restructure-armor-weapon-runes.ts"; -export { Migration908TrueGangUp } from "./908-true-gang-up.ts"; -export { Migration909RefineConsumableData } from "./909-refine-consumable-data.ts"; -export { Migration910EdictsAnathemaArrays } from "./910-edicts-anathema-arrays.ts"; -export { Migration911CoinBulk } from "./911-coin-bulk.ts"; -export { Migration912RmFocusTraitFocusCantrips } from "./912-rm-focus-trait-focus-cantrips.ts"; -export { Migration913SpellSustainedText } from "./913-spell-sustained-text.ts"; -export { Migration914MovePerceptionSenses } from "./914-move-perception-senses.ts"; -export { Migration915MoveLanguages } from "./915-move-languages.ts"; -export { Migration916NewPCToys } from "./916-new-pc-toys.ts"; -export { Migration917ScrollWandSpellIds } from "./917-scroll-wand-spell-ids.ts"; -export { Migration918DeitySkills } from "./918-deity-skills.ts"; -export { Migration919WeaponToggleStructure } from "./919-trait-toggle-structure.ts"; -export { Migration920SuboptionSelection } from "./920-suboption-selection.ts"; -export { Migration921SpellSlotArrays } from "./921-spell-slot-arrays.ts"; -export { Migration922SwashbucklerFinishers } from "./922-swashbuckler-finisher-suboptions.ts"; -export { Migration923KineticistRestructure } from "./923-kineticist-restructure.ts"; -export { Migration924JiuHuanDoa } from "./924-jiu-huan-dao.ts"; -export { Migration925TouchOfCorruption } from "./925-touch-of-corruption.ts"; -export { Migration926RemoveVisionFeatureLinks } from "./926-remove-vision-feature-links.ts"; -export { Migration927ClassBackgroundBattleFormSkillLongform } from "./927-class-background-skill-longform.ts"; -export { Migration928CharacterSkillsLongform } from "./928-character-skills-longform.ts"; -export { Migration929RemoveSkillAbbreviations } from "./929-remove-skill-abbreviations.ts"; -export { Migration930ChoiceSetMedium } from "./930-choice-set-medium.ts"; -export { Migration931ExpandREPermissions } from "./931-expand-re-permissions.ts"; -export { Migration932NPCSystemSkills } from "./932-npc-system-skills.ts"; -export { Migration933CraftingAbility } from "./933-crafting-ability.ts"; -export { Migration934MythicCallingCategory } from "./934-mythic-calling-category.ts"; -export { Migration935DeityIconPaths } from "./935-deity-icon-paths.ts"; diff --git a/types/src/module/migration/runner/base.d.ts b/types/src/module/migration/runner/base.d.ts deleted file mode 100644 index 83d210617..000000000 --- a/types/src/module/migration/runner/base.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { ActorSourcePF2e } from "@actor/data/index.ts"; -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { MigrationBase } from "@module/migration/base.ts"; -import type { ScenePF2e, TokenDocumentPF2e } from "@scene"; - -interface CollectionDiff { - inserted: T[]; - deleted: string[]; - updated: T[]; -} -export declare class MigrationRunnerBase { - #private; - migrations: MigrationBase[]; - static LATEST_SCHEMA_VERSION: number; - static MINIMUM_SAFE_VERSION: number; - static RECOMMENDED_SAFE_VERSION: number; - /** The minimum schema version for the foundry version number */ - static FOUNDRY_SCHEMA_VERSIONS: { - 0.8: number; - 9: number; - 10: number; - 11: number; - 12: number; - }; - constructor(migrations?: MigrationBase[]); - needsMigration(currentVersion: number): boolean; - diffCollection(orig: ItemSourcePF2e[], updated: ItemSourcePF2e[]): CollectionDiff; - getUpdatedActor(actor: ActorSourcePF2e, migrations: MigrationBase[]): Promise; - getUpdatedItem(item: ItemSourcePF2e, migrations: MigrationBase[]): Promise; - getUpdatedTable(tableSource: foundry.documents.RollTableSource, migrations: MigrationBase[]): Promise; - getUpdatedMacro(macroSource: foundry.documents.MacroSource, migrations: MigrationBase[]): Promise; - getUpdatedJournalEntry(source: foundry.documents.JournalEntrySource, migrations: MigrationBase[]): Promise; - getUpdatedToken(token: TokenDocumentPF2e, migrations: MigrationBase[]): Promise; - getUpdatedUser(userData: foundry.documents.UserSource, migrations: MigrationBase[]): Promise; -} -export {}; diff --git a/types/src/module/migration/runner/index.d.ts b/types/src/module/migration/runner/index.d.ts deleted file mode 100644 index 6c03d3710..000000000 --- a/types/src/module/migration/runner/index.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import type { MigrationBase } from "@module/migration/base.ts"; -import { MigrationRunnerBase } from "@module/migration/runner/base.ts"; -export declare class MigrationRunner extends MigrationRunnerBase { - #private; - needsMigration(): boolean; - /** Ensure that an actor or item reflects the current data schema before it is created */ - static ensureSchemaVersion(document: ActorPF2e | ItemPF2e, migrations: MigrationBase[]): Promise; - /** Migrates all documents in a compendium. Since getDocuments() already migrates, this merely loads and saves them */ - runCompendiumMigration | ItemPF2e>(compendium: CompendiumCollection): Promise; - runMigrations(migrations: MigrationBase[]): Promise; - runMigration(force?: boolean): Promise; -} diff --git a/types/src/module/notes.d.ts b/types/src/module/notes.d.ts deleted file mode 100644 index ce4fdf6a7..000000000 --- a/types/src/module/notes.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { UserVisibility } from "@scripts/ui/user-visibility.ts"; -import { DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import { Predicate, RawPredicate } from "@system/predication.ts"; -import type { RuleElementPF2e } from "./rules/index.ts"; -declare class RollNotePF2e { - /** The selector used to determine on which rolls the note will be shown for. */ - selector: string; - /** An optional title for the note */ - title: string | null; - /** The text content of this note. */ - text: string; - /** If true, these dice are user-provided/custom. */ - predicate: Predicate; - /** List of outcomes to show this note for; or all outcomes if none are specified */ - outcome: DegreeOfSuccessString[]; - /** An optional visibility restriction for the note */ - visibility: UserVisibility | null; - /** The originating rule element of this modifier, if any: used to retrieve "parent" item roll options */ - rule: RuleElementPF2e | null; - constructor(params: RollNoteParams); - /** Convert an array of notes to a UL element, or null if the array is empty. */ - static notesToHTML(notes: RollNotePF2e[]): HTMLUListElement | null; - toHTML(): HTMLLIElement; - clone(): RollNotePF2e; - toObject(): RollNoteSource; -} -interface RollNoteSource { - selector: string; - title?: string | null; - text: string; - predicate?: RawPredicate; - outcome?: DegreeOfSuccessString[]; - visibility?: UserVisibility | null; -} -interface RollNoteParams extends RollNoteSource { - rule?: RuleElementPF2e | null; -} -export { RollNotePF2e, type RollNoteSource }; diff --git a/types/src/module/recall-knowledge.d.ts b/types/src/module/recall-knowledge.d.ts deleted file mode 100644 index 4277ea36a..000000000 --- a/types/src/module/recall-knowledge.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { NPCPF2e } from "@actor"; -import { SkillSlug } from "@actor/types.ts"; -import { DCAdjustment, DCOptions } from "./dc.ts"; -declare function creatureIdentificationDCs(creature: NPCPF2e, { pwol }?: DCOptions): CreatureIdentificationData; -interface RecallKnowledgeDC { - dc: number; - progression: number[]; - start: DCAdjustment; -} -interface CreatureIdentificationData { - skills: SkillSlug[]; - standard: RecallKnowledgeDC; - lore: [RecallKnowledgeDC, RecallKnowledgeDC]; -} -export { creatureIdentificationDCs, type CreatureIdentificationData }; diff --git a/types/src/module/rules/helpers.d.ts b/types/src/module/rules/helpers.d.ts deleted file mode 100644 index 1f5036d25..000000000 --- a/types/src/module/rules/helpers.d.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { - DamageDicePF2e, - DeferredDamageDiceOptions, - DeferredValueParams, - ModifierAdjustment, - ModifierPF2e, -} from "@actor/modifiers.ts"; -import { ItemPF2e } from "@item"; -import { ConditionSource, EffectSource } from "@item/base/data/index.ts"; -import { RollNotePF2e } from "@module/notes.ts"; -import { BaseDamageData } from "@system/damage/index.ts"; -import { DegreeOfSuccessAdjustment } from "@system/degree-of-success.ts"; -import { RollTwiceOption } from "@system/rolls.ts"; -import { DamageAlteration } from "./rule-element/damage-alteration/alteration.ts"; -import { BracketedValue, RuleElementPF2e } from "./rule-element/index.ts"; -import { DamageDiceSynthetics, RollSubstitution, RollTwiceSynthetic, RuleElementSynthetics } from "./synthetics.ts"; - -/** Extracts a list of all cloned modifiers across all given keys in a single list. */ -declare function extractModifiers(synthetics: RuleElementSynthetics, domains: string[], options?: DeferredValueParams): ModifierPF2e[]; -declare function extractModifierAdjustments(adjustmentsRecord: RuleElementSynthetics["modifierAdjustments"], selectors: string[], slug: string): ModifierAdjustment[]; -declare function extractDamageAlterations(alterationsRecord: Record, selectors: string[], slug: string): DamageAlteration[]; -/** Extracts a list of all cloned notes across all given keys in a single list. */ -declare function extractNotes(rollNotes: Record, selectors: string[]): RollNotePF2e[]; -declare function extractDamageDice(synthetics: DamageDiceSynthetics, options: DeferredDamageDiceOptions): DamageDicePF2e[]; -declare function processDamageCategoryStacking(base: BaseDamageData[], options: { - modifiers: ModifierPF2e[]; - dice: DamageDicePF2e[]; - test: Set; -}): { - modifiers: ModifierPF2e[]; - dice: DamageDicePF2e[]; -}; -declare function extractEphemeralEffects({ affects, origin, target, item, domains, options, }: ExtractEphemeralEffectsParams): Promise<(ConditionSource | EffectSource)[]>; -interface ExtractEphemeralEffectsParams { - affects: "target" | "origin"; - origin: ActorPF2e | null; - target: ActorPF2e | null; - item: ItemPF2e | null; - domains: string[]; - options: Set | string[]; -} -declare function extractRollTwice(rollTwices: Record, selectors: string[], options: Set): RollTwiceOption; -declare function extractRollSubstitutions(substitutions: Record, domains: string[], rollOptions: Set): RollSubstitution[]; -declare function extractDegreeOfSuccessAdjustments(synthetics: Pick, selectors: string[]): DegreeOfSuccessAdjustment[]; -declare function isBracketedValue(value: unknown): value is BracketedValue; -declare function processPreUpdateActorHooks(changed: Record, { pack }: { - pack: string | null; -}): Promise; -/** Gets the item update info that applies an update to all given rules */ -declare function createBatchRuleElementUpdate(rules: RuleElementPF2e[], update: Record): EmbeddedDocumentUpdateData[]; -export { createBatchRuleElementUpdate, extractDamageAlterations, extractDamageDice, extractDegreeOfSuccessAdjustments, extractEphemeralEffects, extractModifierAdjustments, extractModifiers, extractNotes, extractRollSubstitutions, extractRollTwice, isBracketedValue, processDamageCategoryStacking, processPreUpdateActorHooks, }; diff --git a/types/src/module/rules/index.d.ts b/types/src/module/rules/index.d.ts deleted file mode 100644 index d45cda6d1..000000000 --- a/types/src/module/rules/index.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { LaxSchemaField } from "@system/schema-data-fields.ts"; -import { RuleElementPF2e } from "./rule-element/base.ts"; -import type { RuleElementOptions, RuleElementSchema, RuleElementSource } from "./rule-element/index.ts"; - -export type { RuleElementSynthetics } from "./synthetics.ts"; -/** - * @category RuleElement - */ -declare class RuleElements { - static readonly builtin: Record; - static custom: Record; - static get all(): Record; - static fromOwnedItem(options: RuleElementOptions): RuleElementPF2e[]; -} -type RuleElementConstructor = { - schema: LaxSchemaField; -} & (new (data: RuleElementSource, options: RuleElementOptions) => RuleElementPF2e); -export { RuleElementOptions, RuleElementPF2e, RuleElementSource, RuleElements }; diff --git a/types/src/module/rules/rule-element/actor-traits.d.ts b/types/src/module/rules/rule-element/actor-traits.d.ts deleted file mode 100644 index e8845fa09..000000000 --- a/types/src/module/rules/rule-element/actor-traits.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { ActorType } from "@actor/types.ts"; -import { ModelPropsFromRESchema } from "./data.ts"; -import { RuleElementPF2e, RuleElementSchema } from "./index.ts"; -import fields = foundry.data.fields; - -declare class ActorTraitsRuleElement extends RuleElementPF2e { - #private; - protected static validActorTypes: ActorType[]; - static defineSchema(): ActorTraitsRuleSchema; - onApplyActiveEffects(): void; -} -type ActorTraitsRuleSchema = RuleElementSchema & { - add: fields.ArrayField>; - remove: fields.ArrayField>; -}; -interface ActorTraitsRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -export { ActorTraitsRuleElement }; diff --git a/types/src/module/rules/rule-element/adjust-degree-of-success.d.ts b/types/src/module/rules/rule-element/adjust-degree-of-success.d.ts deleted file mode 100644 index ba1181fcf..000000000 --- a/types/src/module/rules/rule-element/adjust-degree-of-success.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import type { ActorType, CharacterPF2e, NPCPF2e } from "@actor"; -import { DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import { RecordField } from "@system/schema-data-fields.ts"; -import { ModelPropsFromRESchema } from "./data.ts"; -import { RuleElementPF2e, RuleElementSchema } from "./index.ts"; -import fields = foundry.data.fields; - -/** - * @category RuleElement - */ -declare class AdjustDegreeOfSuccessRuleElement extends RuleElementPF2e { - protected static validActorTypes: ActorType[]; - static defineSchema(): AdjustDegreeRuleSchema; - beforePrepareData(): void; -} -interface AdjustDegreeOfSuccessRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - get actor(): CharacterPF2e | NPCPF2e; -} -declare const degreeAdjustmentAmountString: readonly ["one-degree-better", "one-degree-worse", "two-degrees-better", "two-degrees-worse", "to-critical-failure", "to-failure", "to-success", "to-critical-success"]; -type DegreeAdjustmentAmountString = (typeof degreeAdjustmentAmountString)[number]; -type AdjustDegreeRuleSchema = RuleElementSchema & { - selector: fields.StringField; - adjustment: RecordField, fields.StringField>; -}; -export { AdjustDegreeOfSuccessRuleElement }; diff --git a/types/src/module/rules/rule-element/adjust-modifier.d.ts b/types/src/module/rules/rule-element/adjust-modifier.d.ts deleted file mode 100644 index 2fa0e1011..000000000 --- a/types/src/module/rules/rule-element/adjust-modifier.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import { AELikeChangeMode } from "./ae-like.ts"; -import { ModelPropsFromRESchema, ResolvableValueField } from "./data.ts"; -import { RuleElementOptions, RuleElementPF2e, RuleElementSchema, RuleElementSource } from "./index.ts"; -import fields = foundry.data.fields; - -/** Adjust the value of a modifier, change its damage type (in case of damage modifiers) or suppress it entirely */ -declare class AdjustModifierRuleElement extends RuleElementPF2e { - /** The number of times this adjustment has been applied */ - applications: number; - constructor(source: AdjustModifierSource, options: RuleElementOptions); - static defineSchema(): AdjustModifierSchema; - static validateJoint(data: SourceFromSchema): void; - /** Instead of applying the change directly to a property path, defer it to a synthetic */ - beforePrepareData(): void; -} -interface AdjustModifierRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - suppress: boolean; - maxApplications: number; -} -type AdjustModifierSchema = RuleElementSchema & { - mode: fields.StringField; - /** An optional relabeling of the adjusted modifier */ - relabel: fields.StringField; - selector: fields.StringField; - selectors: fields.ArrayField>; - damageType: fields.StringField; - /** Rather than changing a modifier's value, ignore it entirely */ - suppress: fields.BooleanField; - /** The maximum number of times this adjustment can be applied */ - maxApplications: fields.NumberField; - value: ResolvableValueField; -}; -interface AdjustModifierSource extends RuleElementSource { - mode?: unknown; - selector?: unknown; - selectors?: unknown; - relabel?: unknown; - damageType?: unknown; - suppress?: unknown; -} -export { AdjustModifierRuleElement }; diff --git a/types/src/module/rules/rule-element/adjust-strike.d.ts b/types/src/module/rules/rule-element/adjust-strike.d.ts deleted file mode 100644 index 83d5afd9e..000000000 --- a/types/src/module/rules/rule-element/adjust-strike.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import type { ActorType } from "@actor/types.ts"; -import { PredicateField } from "@system/schema-data-fields.ts"; -import { AELikeChangeMode } from "./ae-like.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -declare class AdjustStrikeRuleElement extends RuleElementPF2e { - protected static validActorTypes: ActorType[]; - constructor(data: AdjustStrikeSource, options: RuleElementOptions); - static VALID_PROPERTIES: Set<"traits" | "materials" | "range-increment" | "weapon-traits" | "property-runes">; - static defineSchema(): AdjustStrikeSchema; - /** Instead of applying the change directly to a property path, defer it to a synthetic */ - beforePrepareData(): void; -} -interface AdjustStrikeRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type AdjustStrikeSchema = RuleElementSchema & { - mode: fields.StringField; - /** The property of the strike to adjust */ - property: fields.StringField; - /** The definition of the strike in terms of its item (weapon) roll options */ - definition: PredicateField; - value: ResolvableValueField; -}; -type AdjustStrikeProperty = SetElement<(typeof AdjustStrikeRuleElement)["VALID_PROPERTIES"]>; -interface AdjustStrikeSource extends RuleElementSource { - mode?: unknown; - property?: unknown; - definition?: unknown; -} -export { AdjustStrikeRuleElement }; diff --git a/types/src/module/rules/rule-element/ae-like.d.ts b/types/src/module/rules/rule-element/ae-like.d.ts deleted file mode 100644 index e44f992f0..000000000 --- a/types/src/module/rules/rule-element/ae-like.d.ts +++ /dev/null @@ -1,68 +0,0 @@ -import type { DataModelValidationFailure } from "types/foundry/common/data/validation-failure.d.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * Make a numeric modification to an arbitrary property in a similar way as `ActiveEffect`s - * @category RuleElement - */ -declare class AELikeRuleElement extends RuleElementPF2e { - #private; - static defineSchema(): AELikeSchema; - static CHANGE_MODE_DEFAULT_PRIORITIES: { - multiply: number; - add: number; - subtract: number; - remove: number; - downgrade: number; - upgrade: number; - override: number; - }; - static PHASES: readonly ["applyAEs", "beforeDerived", "afterDerived", "beforeRoll"]; - static validateJoint(data: SourceFromSchema): void; - /** Process this rule element during item pre-creation to inform subsequent choice sets. */ - preCreate(): Promise; - /** Apply the modifications immediately after proper ActiveEffects are applied */ - onApplyActiveEffects(): void; - /** Apply the modifications near the beginning of the actor's derived-data preparation */ - beforePrepareData(): void; - /** Apply the modifications at the conclusion of the actor's derived-data preparation */ - afterPrepareData(): void; - /** Apply the modifications prior to a Check (roll) */ - beforeRoll(_domains: string[], rollOptions: Set): void; - static getNewValue(mode: AELikeChangeMode, current: number, change: number, merge?: boolean): number; - static getNewValue(mode: AELikeChangeMode, current: TCurrent, change: TCurrent extends (infer TValue)[] ? TValue : TCurrent, merge?: boolean): (TCurrent extends (infer TValue)[] ? TValue : TCurrent) | DataModelValidationFailure; -} -interface AELikeRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -interface AutoChangeEntry { - source: string; - level: number | null; - value: boolean | number | string | null; - mode: AELikeChangeMode; -} -type AELikeSchema = RuleElementSchema & { - /** How to apply the `value` at the `path` */ - mode: fields.StringField; - /** The data property path to modify on the parent item's actor */ - path: fields.StringField; - /** Which phase of data preparation to run in */ - phase: fields.StringField; - /** The value to applied at the `path` */ - value: ResolvableValueField; - /** A list of additional domains to include in predicate testing */ - testDomains: fields.ArrayField, string[], string[], false, false, true>; - /** Whether to merge two objects given a `mode` of "override" */ - merge: fields.BooleanField; -}; -type AELikeChangeMode = keyof typeof AELikeRuleElement.CHANGE_MODE_DEFAULT_PRIORITIES; -type AELikeDataPrepPhase = (typeof AELikeRuleElement.PHASES)[number]; -interface AELikeSource extends RuleElementSource { - mode?: JSONValue; - path?: JSONValue; - phase?: JSONValue; - value?: JSONValue; -} -export { AELikeRuleElement }; -export type { AELikeChangeMode, AELikeDataPrepPhase, AELikeSchema, AELikeSource, AutoChangeEntry }; diff --git a/types/src/module/rules/rule-element/aura.d.ts b/types/src/module/rules/rule-element/aura.d.ts deleted file mode 100644 index cd33ca302..000000000 --- a/types/src/module/rules/rule-element/aura.d.ts +++ /dev/null @@ -1,122 +0,0 @@ -import type { SaveType } from "@actor/types.ts"; -import type { EffectTrait } from "@item/abstract-effect/types.ts"; -import { DataUnionField, PredicateField, StrictArrayField } from "@system/schema-data-fields.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { - ModelPropsFromRESchema, - ResolvableValueField, - RuleElementSchema, - RuleElementSource, - RuleValue, -} from "./data.ts"; -import { ItemAlteration } from "./item-alteration/alteration.ts"; -import fields = foundry.data.fields; - -/** A Pathfinder 2e aura, capable of transmitting effects and with a visual representation on the canvas */ -declare class AuraRuleElement extends RuleElementPF2e { - #private; - constructor(source: AuraRuleElementSource, options: RuleElementOptions); - static defineSchema(): AuraSchema; - afterPrepareData(): void; -} -interface AuraRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - slug: string; - effects: AuraEffectREData[]; -} -type AuraSchema = RuleElementSchema & { - /** The radius of the order in feet, or a string that will resolve to one */ - radius: ResolvableValueField; - /** An optional level for the aura, to be used to set the level of the effects it transmits */ - level: ResolvableValueField; - /** Associated traits, including ones that determine transmission through walls ("visual", "auditory") */ - traits: fields.ArrayField, EffectTrait[], EffectTrait[], true, false, true>; - /** References to effects included in this aura */ - effects: StrictArrayField, SourceFromSchema[], ModelPropsFromSchema[], true, false, true>; - /** - * Custom border, highlight, and texture for the aura: if omitted, the border color will be black, the fill - * color the user's configured color, and no texture. - */ - appearance: fields.SchemaField, ModelPropsFromSchema, true, false, true>; - /** - * If another aura with the same slug is already being emitted, merge this aura's data in with the other's, - * combining traits and effects as well as merging `colors` data. - */ - mergeExisting: fields.BooleanField; -}; -type AuraEffectSchema = { - uuid: fields.DocumentUUIDField; - affects: fields.StringField<"allies" | "enemies" | "all", "allies" | "enemies" | "all", true, false, true>; - events: fields.ArrayField, ("enter" | "turn-start" | "turn-end")[], ("enter" | "turn-start" | "turn-end")[], true, false, true>; - save: fields.SchemaField<{ - type: fields.StringField; - dc: ResolvableValueField; - }, { - type: SaveType; - dc: RuleValue; - }, { - type: SaveType; - dc: RuleValue; - }, true, true, true>; - /** A predicating limiting whether the effect is transmitted to an actor */ - predicate: PredicateField; - /** Whether to remove the effect from an actor immediately after its token exits the area */ - removeOnExit: fields.BooleanField; - /** Whether the effect is applied to the actor emitting the aura */ - includesSelf: fields.BooleanField; - /** An array of alterations to apply to the effect before transmitting it */ - alterations: StrictArrayField>; -}; -type AuraAppearanceSchema = { - /** Configuration of the border's color and alpha */ - border: fields.SchemaField<{ - color: DataUnionField | fields.ColorField, true, false, true>; - alpha: fields.AlphaField; - }, { - color: "user-color" | HexColorString; - alpha: number; - }, { - color: "user-color" | Color; - alpha: number; - }, false, true, true>; - /** Configuration of the highlight's color and alpha */ - highlight: fields.SchemaField<{ - color: DataUnionField | fields.ColorField, true, false, true>; - alpha: fields.AlphaField; - }, { - color: "user-color" | HexColorString; - alpha: number; - }, { - color: "user-color" | Color; - alpha: number; - }, false, false, true>; - /** Configuration for a texture (image or video) drawn as part of the aura */ - texture: fields.SchemaField, ModelPropsFromSchema, false, true, true>; -}; -type AuraTextureSchema = { - /** The path to the texture file: can be injected */ - src: fields.StringField; - alpha: fields.AlphaField; - /** A manual rescaling of the texture resource */ - scale: fields.NumberField; - /** A manual x/y translation of the texture resource */ - translation: fields.SchemaField, ModelPropsFromSchema, false, true, true>; - /** If the `src` is a video, whether to loop it */ - loop: fields.BooleanField; - /** If the `src` is a video, the playback rate of resulting `HTMLVideoElement` */ - playbackRate: fields.NumberField; -}; -type XYPairSchema = { - x: fields.NumberField; - y: fields.NumberField; -}; -interface AuraEffectREData extends ModelPropsFromSchema { - includesSelf: boolean; - removeOnExit: boolean; -} -interface AuraRuleElementSource extends RuleElementSource { - radius?: unknown; - effects?: unknown; - traits?: unknown; -} -export { AuraRuleElement }; -export type { AuraSchema as AuraRuleElementSchema, AuraTextureSchema as AuraRuleElementTextureSchema }; diff --git a/types/src/module/rules/rule-element/base-speed.d.ts b/types/src/module/rules/rule-element/base-speed.d.ts deleted file mode 100644 index 4a590bb65..000000000 --- a/types/src/module/rules/rule-element/base-speed.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import type { ActorType, CreaturePF2e } from "@actor"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * @category RuleElement - */ -declare class BaseSpeedRuleElement extends RuleElementPF2e { - #private; - protected static validActorTypes: ActorType[]; - constructor(data: RuleElementSource, options: RuleElementOptions); - static defineSchema(): BaseSpeedRuleSchema; - beforePrepareData(): void; -} -interface BaseSpeedRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - get actor(): CreaturePF2e; -} -type BaseSpeedRuleSchema = RuleElementSchema & { - selector: fields.StringField; - value: ResolvableValueField; -}; -export { BaseSpeedRuleElement }; diff --git a/types/src/module/rules/rule-element/base.d.ts b/types/src/module/rules/rule-element/base.d.ts deleted file mode 100644 index 2f2d9bd29..000000000 --- a/types/src/module/rules/rule-element/base.d.ts +++ /dev/null @@ -1,212 +0,0 @@ -import type { ActorPF2e, ActorType } from "@actor"; -import type { CheckModifier, DamageDicePF2e, ModifierPF2e } from "@actor/modifiers.ts"; -import { ItemPF2e, type WeaponPF2e } from "@item"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { TokenDocumentPF2e } from "@scene/index.ts"; -import { CheckCheckContext, CheckRoll } from "@system/check/index.ts"; -import { LaxSchemaField } from "@system/schema-data-fields.ts"; -import type { DataModelValidationOptions } from "types/foundry/common/abstract/data.d.ts"; -import { BracketedValue, RuleElementSchema, RuleElementSource, RuleValue } from "./data.ts"; -/** - * Rule Elements allow you to modify actorData and tokenData values when present on items. They can be configured - * in the item's Rules tab which has to be enabled using the "Advanced Rule Element UI" system setting. - * - * @category RuleElement - */ -declare abstract class RuleElementPF2e extends foundry.abstract - .DataModel, TSchema> { - #private; - protected static _schema: LaxSchemaField | undefined; - label: string; - sourceIndex: number | null; - protected suppressWarnings: boolean; - /** A list of actor types on which this rule element can operate (all unless overridden) */ - protected static validActorTypes: ActorType[]; - /** - * @param source unserialized JSON data from the actual rule input - * @param item where the rule is persisted on - */ - constructor(source: RuleElementSource, options: RuleElementOptions); - static defineSchema(): RuleElementSchema; - /** Use a "lax" schema field that preserves properties not defined in the `DataSchema` */ - static get schema(): LaxSchemaField; - get item(): this["parent"]; - get actor(): ActorPF2e; - /** Retrieves the token from the actor, or from the active tokens. */ - get token(): TokenDocumentPF2e | null; - /** Generate a label without a leading title (such as "Effect:") */ - protected getReducedLabel(label?: string): string; - /** Include parent item's name and UUID in `DataModel` validation error messages */ - validate(options?: DataModelValidationOptions): boolean; - /** Test this rule element's predicate, if present */ - protected test(rollOptions?: string[] | Set): boolean; - /** Send a deferred warning to the console indicating that a rule element's validation failed */ - protected failValidation(...message: string[]): void; - /** - * Callback used to parse and look up values when calculating rules. Parses strings that look like - * {actor|x.y.z}, {item|x.y.z} or {rule|x.y.z} where x.y.z is the path on the current actor, item or rule. - * It's useful if you want to include something like the item's ID in a modifier selector (for applying the - * modifier only to a specific weapon, for example), or include the item's name in some text. - * - * Example: - * { - * "key": "PF2E.RuleElement.Note", - * "selector": "will", - * "text": "{item|name} A success on a Will save vs fear is treated as a critical success.", - * "predicate": { - * "all": ["fear"] - * } - * } - * - * @param source The string that is to be resolved - * @param options.warn Whether to warn on a failed resolution - * @return the looked up value on the specific object - */ - resolveInjectedProperties(source: T, options?: { - injectables?: Record; - warn?: boolean; - }): T; - /** - * Parses the value attribute on a rule. - * - * @param valueData can be one of 3 different formats: - * * {value: 5}: returns 5 - * * {value: "4 + @details.level.value"}: uses foundry's built in roll syntax to evaluate it - * * { - * field: "item|data.level.value", - * brackets: [ - * {start: 1, end: 4, value: 5}], - * {start: 5, end: 9, value: 10}], - * }: compares the value from field to >= start and <= end of a bracket and uses that value - * @param defaultValue if no value is found, use that one - * @return the evaluated value - */ - resolveValue(value: unknown, defaultValue?: Exclude | null, { evaluate, resolvables, warn }?: ResolveValueParams): number | string | boolean | object | null; - protected isBracketedValue(value: unknown): value is BracketedValue; -} -interface RuleElementPF2e extends foundry.abstract.DataModel, TSchema>, ModelPropsFromSchema { - constructor: typeof RuleElementPF2e; - get schema(): LaxSchemaField; - /** - * Run between Actor#applyActiveEffects and Actor#prepareDerivedData. Generally limited to ActiveEffect-Like - * elements - */ - onApplyActiveEffects?(): void; - /** - * Run in Actor#prepareDerivedData which is similar to an init method and is the very first thing that is run after - * an actor.update() was called. Use this hook if you want to save or modify values on the actual data objects - * after actor changes. Those values should not be saved back to the actor unless we mess up. - * - * This callback is run for each rule in random order and is run very often, so watch out for performance. - */ - beforePrepareData?(): void; - /** Run after all actor preparation callbacks have been run so you should see all final values here. */ - afterPrepareData?(): void; - /** - * Run just prior to a check roll, passing along roll options already accumulated - * @param domains Applicable predication domains for pending check - * @param rollOptions Currently accumulated roll options for the pending check - */ - beforeRoll?(domains: string[], rollOptions: Set): void; - /** - * Run following a check roll, passing along roll options already accumulated - * @param domains Applicable selectors for the pending check - * @param domains Applicable predication domains for pending check - * @param rollOptions Currently accumulated roll options for the pending check - */ - afterRoll?(params: RuleElementPF2e.AfterRollParams): Promise; - /** Runs before the rule's parent item's owning actor is updated */ - preUpdateActor?(): Promise<{ - create: ItemSourcePF2e[]; - delete: string[]; - }>; - /** - * Runs before this rules element's parent item is created. The item is temporarilly constructed. A rule element can - * alter itself before its parent item is stored on an actor; it can also alter the item source itself in the same - * manner. - */ - preCreate?({ ruleSource, itemSource, pendingItems, operation }: RuleElementPF2e.PreCreateParams): Promise; - /** - * Runs before this rules element's parent item is created. The item is temporarilly constructed. A rule element can - * alter itself before its parent item is stored on an actor; it can also alter the item source itself in the same - * manner. - */ - preDelete?({ pendingItems, operation }: RuleElementPF2e.PreDeleteParams): Promise; - /** - * Runs before this rules element's parent item is updated */ - preUpdate?(changes: DeepPartial): Promise; - /** - * Runs after an item holding this rule is added to an actor. If you modify or add the rule after the item - * is already present on the actor, nothing will happen. Rules that add toggles won't work here since this method is - * only called on item add. - * - * @param actorUpdates The first time a rule is run it receives an empty object. After all rules set various values - * on the object, this object is then passed to actor.update(). This is useful if you want to set specific values on - * the actor when an item is added. Keep in mind that the object for actor.update() is flattened, e.g. - * {'data.attributes.hp.value': 5}. - */ - onCreate?(actorUpdates: Record): void; - /** - * Run at certain encounter events, such as the start of the actor's turn. Similar to onCreate and onDelete, this provides an opportunity to make - * updates to the actor. - * @param data.event The type of event that triggered this callback - * @param data.actorUpdates A record containing update data for the actor - */ - onUpdateEncounter?(data: { - event: "initiative-roll" | "turn-start"; - actorUpdates: Record; - }): Promise; - /** - * Runs after an item holding this rule is removed from an actor. This method is used for cleaning up any values - * on the actorData or token objects (e.g., removing temp HP). - * - * @param actorData data of the actor that holds the item - * @param item the removed item data - * @param actorUpdates see onCreate - * @param tokens see onCreate - */ - onDelete?(actorUpdates: Record): void; - /** An optional method for excluding damage modifiers and extra dice */ - applyDamageExclusion?(weapon: WeaponPF2e, modifiers: (DamageDicePF2e | ModifierPF2e)[]): void; -} -declare namespace RuleElementPF2e { - interface PreCreateParams { - /** The source partial of the rule element's parent item to be created */ - itemSource: ItemSourcePF2e; - /** The source of the rule in `itemSource`'s `system.rules` array */ - ruleSource: T; - /** All items pending creation in a `ItemPF2e.createDocuments` call */ - pendingItems: ItemSourcePF2e[]; - /** Items temporarily constructed from pending item source */ - tempItems: ItemPF2e[]; - /** The `operation` object from the `ItemPF2e.createDocuments` call */ - operation: Partial>; - /** Whether this preCreate run is from a pre-update reevaluation */ - reevaluation?: boolean; - } - interface PreDeleteParams { - /** All items pending deletion in a `ItemPF2e.deleteDocuments` call */ - pendingItems: ItemPF2e[]; - /** The context object from the `ItemPF2e.deleteDocuments` call */ - operation: Partial>; - } - interface AfterRollParams { - roll: Rolled; - check: CheckModifier; - context: CheckCheckContext; - domains: string[]; - rollOptions: Set; - } -} -interface ResolveValueParams { - evaluate?: boolean; - resolvables?: Record; - warn?: boolean; -} -interface RuleElementOptions extends ParentedDataModelConstructionOptions> { - /** If created from an item, the index in the source data */ - sourceIndex?: number; - /** If data validation fails for any reason, do not emit console warnings */ - suppressWarnings?: boolean; -} -export { RuleElementPF2e, type RuleElementOptions }; diff --git a/types/src/module/rules/rule-element/battle-form/rule-element.d.ts b/types/src/module/rules/rule-element/battle-form/rule-element.d.ts deleted file mode 100644 index 4e10243c3..000000000 --- a/types/src/module/rules/rule-element/battle-form/rule-element.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import type { ActorType, CharacterPF2e } from "@actor"; -import { DamageDicePF2e, ModifierPF2e } from "@actor/modifiers.ts"; -import { WeaponPF2e } from "@item"; -import { RuleElementOptions, RuleElementPF2e } from "../base.ts"; -import { ModelPropsFromRESchema } from "../data.ts"; -import { BattleFormRuleSchema } from "./schema.ts"; -import { BattleFormSource } from "./types.ts"; -declare class BattleFormRuleElement extends RuleElementPF2e { - #private; - protected static validActorTypes: ActorType[]; - /** The label given to modifiers of AC, skills, and strikes */ - modifierLabel: string; - constructor(data: BattleFormSource, options: RuleElementOptions); - static defineSchema(): BattleFormRuleSchema; - preCreate({ itemSource, ruleSource }: RuleElementPF2e.PreCreateParams): Promise; - /** Set temporary hit points */ - onCreate(actorUpdates: Record): void; - beforePrepareData(): void; - afterPrepareData(): void; - /** Remove temporary hit points */ - onDelete(actorUpdates: Record): void; - /** Disable ineligible damage adjustments (modifiers, bonuses, additional damage) */ - applyDamageExclusion(weapon: WeaponPF2e, modifiers: (DamageDicePF2e | ModifierPF2e)[]): void; -} -interface BattleFormRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - get actor(): CharacterPF2e; -} -export { BattleFormRuleElement }; diff --git a/types/src/module/rules/rule-element/battle-form/schema.d.ts b/types/src/module/rules/rule-element/battle-form/schema.d.ts deleted file mode 100644 index 4ef6abd5e..000000000 --- a/types/src/module/rules/rule-element/battle-form/schema.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import type { CreatureTrait } from "@actor/creature/index.ts"; -import type { SenseAcuity, SenseType } from "@actor/creature/types.ts"; -import type { RecordField } from "@system/schema-data-fields.ts"; -import type * as fields from "types/foundry/common/data/fields.d.ts"; -import type { ResolvableValueField, RuleElementSchema } from "../data.ts"; -import type { ImmunityRuleElement, ResistanceRuleElement, WeaknessRuleElement } from "../iwr/index.ts"; -import type { BattleFormSkills, BattleFormSpeeds, BattleFormStrike } from "./types.ts"; - -type OverrideACSchema = { - modifier: ResolvableValueField; - ignoreCheckPenalty: fields.BooleanField; - ignoreSpeedPenalty: fields.BooleanField; - ownIfHigher: fields.BooleanField; -}; -type OverrideSenseSchema = { - acuity: fields.StringField; - range: fields.NumberField; -}; -type BattleFormRuleOverrideSchema = { - traits: fields.ArrayField>; - armorClass: fields.SchemaField, ModelPropsFromSchema, false, false, true>; - tempHP: ResolvableValueField; - senses: RecordField, fields.SchemaField, false, false, true>; - size: fields.StringField; - speeds: fields.ObjectField; - skills: fields.ObjectField; - strikes: fields.ObjectField, Record, false, false, true>; - immunities: fields.ArrayField>>; - weaknesses: fields.ArrayField>>; - resistances: fields.ArrayField>>; -}; -type BattleFormRuleSchema = RuleElementSchema & { - value: ResolvableValueField; - overrides: fields.SchemaField; - canCast: fields.BooleanField; - canSpeak: fields.BooleanField; - hasHands: fields.BooleanField; - /** Whether the actor uses its own unarmed attacks while in battle form */ - ownUnarmed: fields.BooleanField; -}; -export type { BattleFormRuleOverrideSchema, BattleFormRuleSchema }; diff --git a/types/src/module/rules/rule-element/battle-form/types.d.ts b/types/src/module/rules/rule-element/battle-form/types.d.ts deleted file mode 100644 index c196efc95..000000000 --- a/types/src/module/rules/rule-element/battle-form/types.d.ts +++ /dev/null @@ -1,77 +0,0 @@ -import type { CreatureTrait, SenseAcuity, SenseType } from "@actor/creature/index.ts"; -import type { AttributeString, MovementType, SkillSlug } from "@actor/types.ts"; -import type { WeaponDamage } from "@item/weapon/data.ts"; -import type { BaseWeaponType, WeaponCategory, WeaponGroup, WeaponTrait } from "@item/weapon/types.ts"; -import type { Size } from "@module/data.ts"; -import type { RawPredicate } from "@system/predication.ts"; -import type { RuleElementSource } from "../index.ts"; -import type { ImmunityRuleElement, ResistanceRuleElement, WeaknessRuleElement } from "../iwr/index.ts"; - -interface BattleFormSource extends RuleElementSource { - overrides?: BattleFormOverrides; - canCast?: boolean; - canSpeak?: boolean; - /** Does the character have hands, allowing it to use manipulate actions? */ - hasHands?: boolean; - /** Can the character utilize its own unarmed strikes? */ - ownUnarmed?: boolean; -} -interface BattleFormOverrides { - traits?: CreatureTrait[]; - armorClass?: BattleFormAC; - tempHP?: number | null; - senses?: BattleFormSenses; - size?: Size | null; - speeds?: BattleFormSpeeds; - skills?: BattleFormSkills; - strikes?: Record; - immunities?: Omit[]; - weaknesses?: Omit[]; - resistances?: Omit[]; -} -interface BattleFormAC { - modifier?: string | number; - ignoreCheckPenalty?: boolean; - ignoreSpeedPenalty?: boolean; -} -interface BattleFormSense { - acuity?: SenseAcuity; - range?: number | null; -} -interface BattleFormSkill { - modifier: string | number; - ownIfHigher?: boolean; -} -type BattleFormSenses = { - [K in SenseType]?: BattleFormSense; -}; -type BattleFormSkills = { - [K in SkillSlug]?: BattleFormSkill; -}; -type BattleFormSpeeds = { - [K in MovementType]?: number; -}; -interface BattleFormStrike { - label: string; - img?: ImageFilePath; - predicate?: RawPredicate; - ability?: AttributeString; - category: WeaponCategory; - group: WeaponGroup | null; - baseType?: BaseWeaponType | null; - traits: WeaponTrait[]; - modifier: string | number; - damage: WeaponDamage; - ownIfHigher?: boolean; - range?: { - increment?: number | null; - max?: number | null; - }; -} -interface BattleFormStrikeQuery { - pack: string; - query: string; - modifier: number; - ownIfHigher: boolean; -} -export type { BattleFormAC, BattleFormOverrides, BattleFormSenses, BattleFormSkills, BattleFormSource, BattleFormSpeeds, BattleFormStrike, BattleFormStrikeQuery, }; diff --git a/types/src/module/rules/rule-element/choice-set/data.d.ts b/types/src/module/rules/rule-element/choice-set/data.d.ts deleted file mode 100644 index ac9522d20..000000000 --- a/types/src/module/rules/rule-element/choice-set/data.d.ts +++ /dev/null @@ -1,97 +0,0 @@ -import { ItemType } from "@item/base/data/index.ts"; -import { PickableThing } from "@module/apps/pick-a-thing-prompt.ts"; -import { RawPredicate } from "@system/predication.ts"; -import type { DataUnionField, PredicateField, StrictArrayField, StrictBooleanField, StrictObjectField, StrictStringField } from "@system/schema-data-fields.ts"; -import type { BooleanField, SchemaField, StringField } from "types/foundry/common/data/fields.d.ts"; -import type { RuleElementSchema, RuleElementSource } from "../data.ts"; -type ChoiceSetSchema = RuleElementSchema & { - /** - * The options from which the user can choose. If a string is provided, it is treated as a reference to a record in - * `CONFIG.PF2E`, and the `PromptChoice` array is composed from its entries. - */ - choices: DataUnionField, PickableThing[], PickableThing[], true, false, false> | StrictObjectField | StrictStringField, true, false, false>; - /** The prompt to present in the ChoiceSet application window */ - prompt: StringField; - /** Whether the parent item's name should be adjusted to reflect the choice made */ - adjustName: DataUnionField | StrictStringField, true, false, true>; - /** - * The name of the flag that will contain the user's selection. If not set, it defaults to the camel-casing of the - * parent item's slug, falling back to name. - */ - flag: StringField; - /** - * Whether to propagate the flag to the actor: instead of `flags.pf2e.rulesSelections.${flag}`, it will take the - * form of `flags.pf2e.${flag}`. - */ - actorFlag: BooleanField; - /** An optional roll option to be set from the selection */ - rollOption: StringField; - /** A predicate indicating valid dropped item selections */ - allowedDrops: SchemaField, ModelPropsFromSchema, false, true, false>; - /** Allow the user to make no selection without suppressing all other rule elements on the parent item */ - allowNoSelection: StrictBooleanField; -}; -type AllowedDropsSchema = { - label: StringField; - predicate: PredicateField; -}; -type AllowedDropsData = ModelPropsFromSchema; -type ChoiceSetObject = ChoiceSetOwnedItems | ChoiceSetAttacks | ChoiceSetPackQuery | ChoiceSetConfig; -type UninflatedChoiceSet = string | PickableThing[] | ChoiceSetObject; -interface ChoiceSetSource extends RuleElementSource { - choices?: unknown; - flag?: unknown; - prompt?: unknown; - selection?: unknown; - adjustName?: unknown; - recordSlug?: unknown; - allowedDrops?: unknown; - allowNoSelection?: unknown; - rollOption?: unknown; -} -interface ChoiceSetOwnedItems { - /** Whether the choices should pull from items on the actor. */ - ownedItems: boolean; - /** Whether the choices should include handwraps of mighty blows in addition to weapons */ - includeHandwraps?: boolean; - /** The filter to apply the actor's own weapons/unarmed attacks */ - predicate: RawPredicate; - attacks?: never; - unarmedAttacks?: never; - config?: never; - types: (ItemType | "physical")[]; -} -interface ChoiceSetAttacks { - /** Include all attacks, limited by predicate */ - attacks?: boolean; - /** Include only unarmed attacks as the basis of the choices */ - unarmedAttacks?: boolean; - /** The filter to apply the actor's own weapons/unarmed attacks */ - predicate: RawPredicate; - ownedItems?: never; - config?: never; -} -interface ChoiceSetPackQuery { - /** A system item type: defaults to "feat" */ - itemType?: ItemType; - /** An optional pack to restrict the search to */ - pack?: boolean; - /** A predicate used to filter items constructed from index data */ - filter: RawPredicate; - /** Use the item slugs as values instead of their UUIDs */ - slugsAsValues?: boolean; - ownedItems?: never; - attacks?: never; - unarmedAttacks?: never; - config?: never; -} -interface ChoiceSetConfig { - /** The config path to pull this choice set from */ - config: string; - /** The filter to apply to the config options */ - predicate: RawPredicate; - ownedItems?: never; - attacks?: never; - unarmedAttacks?: never; -} -export type { AllowedDropsData, ChoiceSetAttacks, ChoiceSetConfig, ChoiceSetObject, ChoiceSetOwnedItems, ChoiceSetPackQuery, ChoiceSetSchema, ChoiceSetSource, UninflatedChoiceSet, }; diff --git a/types/src/module/rules/rule-element/choice-set/prompt.d.ts b/types/src/module/rules/rule-element/choice-set/prompt.d.ts deleted file mode 100644 index 9f1c63041..000000000 --- a/types/src/module/rules/rule-element/choice-set/prompt.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import { PickableThing, PickAThingConstructorArgs, PickAThingPrompt, PromptTemplateData } from "@module/apps/pick-a-thing-prompt.ts"; -import type { Predicate } from "@system/predication.ts"; -/** Prompt the user for a selection among a set of options */ -declare class ChoiceSetPrompt extends PickAThingPrompt, string | number | object> { - /** The prompt statement to present the user in this application's window */ - prompt: string; - /** Does this choice set contain items? If true, an item-drop zone may be added */ - containsItems: boolean; - /** A predicate validating a dragged & dropped item selection */ - allowedDrops: { - label: string | null; - predicate: Predicate; - } | null; - constructor(data: ChoiceSetPromptData); - static get defaultOptions(): ApplicationOptions; - getData(): Promise; - activateListeners($html: JQuery): void; - /** Return early if there is only one choice */ - resolveSelection(): Promise | null>; - close(options?: { - force?: boolean; - }): Promise; - /** Handle a dropped homebrew item */ - protected _onDrop(event: DragEvent): Promise; - protected _canDragDrop(): boolean; -} -interface ChoiceSetPrompt extends PickAThingPrompt, string | number | object> { - getSelection(event: MouseEvent): ChoiceSetChoice | null; -} -interface ChoiceSetPromptData extends PickAThingConstructorArgs, string | number | object> { - prompt: string; - containsItems: boolean; - allowedDrops: { - label: string | null; - predicate: Predicate; - } | null; -} -interface ChoiceSetChoice extends PickableThing { - hasUUID: boolean; -} -interface ChoiceSetTemplateData extends PromptTemplateData { - prompt: string; - choices: ChoiceSetChoice[]; - /** Whether to use a select menu instead of a column of buttons */ - selectMenu: boolean; - includeDropZone: boolean; - allowNoSelection: boolean; - containsItems: boolean; -} -export { ChoiceSetPrompt }; diff --git a/types/src/module/rules/rule-element/choice-set/rule-element.d.ts b/types/src/module/rules/rule-element/choice-set/rule-element.d.ts deleted file mode 100644 index c2e83c92e..000000000 --- a/types/src/module/rules/rule-element/choice-set/rule-element.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import { PickableThing } from "@module/apps/pick-a-thing-prompt.ts"; -import { RuleElementOptions, RuleElementPF2e } from "../base.ts"; -import { ModelPropsFromRESchema } from "../data.ts"; -import { AllowedDropsData, ChoiceSetPackQuery, ChoiceSetSchema, ChoiceSetSource, UninflatedChoiceSet } from "./data.ts"; -/** - * Present a set of options to the user and assign their selection to an injectable property - * @category RuleElement - */ -declare class ChoiceSetRuleElement extends RuleElementPF2e { - #private; - choices: UninflatedChoiceSet; - flag: string; - allowedDrops: AllowedDropsData | null; - allowNoSelection: boolean; - /** Whether this choice set consists of items */ - containsItems: boolean; - /** The user's selection from among the options in `choices`, or otherwise `null` */ - selection: string | number | object | null; - constructor(data: ChoiceSetSource, options: RuleElementOptions); - static defineSchema(): ChoiceSetSchema; - /** - * Adjust the effect's name and set the targetId from the user's selection, or set the entire rule element to be - * ignored if no selection was made. - */ - preCreate({ itemSource, ruleSource, tempItems, }: RuleElementPF2e.PreCreateParams): Promise; - /** - * If an array was passed, localize & sort the labels and return. If a string, look it up in CONFIG.PF2E and - * create an array of choices. - * @param rollOptions A set of actor roll options to for use in predicate testing - * @param tempItems Items passed to #queryCompendium for checking max takability of feats - * @returns The array of choices to present to the user - */ - inflateChoices(rollOptions: Set, tempItems: ItemPF2e[]): Promise; - /** Perform a query via predicate testing against compendium items */ - queryCompendium(choices: ChoiceSetPackQuery, actorRollOptions: Set, tempItems: ItemPF2e[]): Promise[]>; -} -interface ChoiceSetRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -export { ChoiceSetRuleElement }; diff --git a/types/src/module/rules/rule-element/crafting-ability.d.ts b/types/src/module/rules/rule-element/crafting-ability.d.ts deleted file mode 100644 index a2f264adc..000000000 --- a/types/src/module/rules/rule-element/crafting-ability.d.ts +++ /dev/null @@ -1,64 +0,0 @@ -import type { ActorType, CharacterPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import { PredicateField } from "@system/schema-data-fields.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * @category RuleElement - */ -declare class CraftingAbilityRuleElement extends RuleElementPF2e { - protected static validActorTypes: ActorType[]; - constructor(data: CraftingAbilityRuleSource, options: RuleElementOptions); - static defineSchema(): CraftingAbilityRuleSchema; - onApplyActiveEffects(): void; - /** Attach the crafting ability to the feat or ability if not prepared */ - afterPrepareData(): void; -} -interface CraftingAbilityRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - readonly parent: ItemPF2e; - slug: string; - get actor(): CharacterPF2e; -} -type CraftingAbilityRuleSchema = RuleElementSchema & { - resource: fields.StringField; - isAlchemical: fields.BooleanField; - isDailyPrep: fields.BooleanField; - isPrepared: fields.BooleanField; - batchSizes: fields.SchemaField<{ - default: fields.NumberField; - other: fields.ArrayField; - definition: PredicateField; - }>>; - }>; - maxItemLevel: ResolvableValueField; - maxSlots: ResolvableValueField; - craftableItems: PredicateField; - prepared: fields.ArrayField>; -}; -type PreparedFormulaSchema = { - uuid: fields.DocumentUUIDField; - quantity: fields.NumberField; - expended: fields.BooleanField; - isSignatureItem: fields.BooleanField; -}; -type CraftingAbilityRuleData = Omit, "preparedFormulas"> & { - prepared: (Partial> & { - uuid: string; - })[]; -}; -interface CraftingAbilityRuleSource extends RuleElementSource { - resource?: unknown; - batchSizes?: unknown; - isAlchemical?: unknown; - isDailyPrep?: unknown; - isPrepared?: unknown; - maxItemLevel?: unknown; - maxSlots?: unknown; - craftableItems?: unknown; - prepared?: unknown; -} -export { CraftingAbilityRuleElement }; -export type { CraftingAbilityRuleData, CraftingAbilityRuleSource }; diff --git a/types/src/module/rules/rule-element/creature-size.d.ts b/types/src/module/rules/rule-element/creature-size.d.ts deleted file mode 100644 index 93c80341e..000000000 --- a/types/src/module/rules/rule-element/creature-size.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import type { ActorType, CreaturePF2e } from "@actor"; -import { Size } from "@module/data.ts"; -import { RecordField } from "@system/schema-data-fields.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * @category RuleElement - * Change a creature's size - */ -declare class CreatureSizeRuleElement extends RuleElementPF2e { - #private; - protected static validActorTypes: ActorType[]; - constructor(data: RuleElementSource, options: RuleElementOptions); - static defineSchema(): CreatureSizeRuleSchema; - private static wordToAbbreviation; - private static incrementMap; - private static decrementMap; - private incrementSize; - private decrementSize; - beforePrepareData(): void; -} -interface CreatureSizeRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - get actor(): CreaturePF2e; -} -type CreatureSizeRuleSchema = RuleElementSchema & { - value: ResolvableValueField; - reach: RecordField, ResolvableValueField, false, false, false>; - resizeEquipment: fields.BooleanField; - minimumSize: fields.StringField; - maximumSize: fields.StringField; -}; -export { CreatureSizeRuleElement }; diff --git a/types/src/module/rules/rule-element/crit-spec.d.ts b/types/src/module/rules/rule-element/crit-spec.d.ts deleted file mode 100644 index 75b757681..000000000 --- a/types/src/module/rules/rule-element/crit-spec.d.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { ModifierType } from "@actor/modifiers.ts"; -import type { ActorType } from "@actor/types.ts"; -import { DamageCategoryUnique, DamageType } from "@system/damage/types.ts"; -import type { SchemaField } from "types/foundry/common/data/fields.d.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleValue } from "./data.ts"; -import fields = foundry.data.fields; - -/** Substitute a pre-determined result for a check's D20 roll */ -declare class CritSpecRuleElement extends RuleElementPF2e { - #private; - static validActorTypes: ActorType[]; - static defineSchema(): CritSpecRuleSchema; - static validateJoint(data: SourceFromSchema): void; - beforePrepareData(): void; -} -interface CritSpecRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type DamageDieFaces = 4 | 6 | 8 | 10 | 12; -type CritSpecRuleSchema = RuleElementSchema & { - /** Whether this critical specialization note substitutes for the standard one of a given weapon group */ - alternate: fields.BooleanField; - /** Alternative note text: if not provided, the standard one for a given weapon group is used */ - text: fields.StringField; - /** Alternative damage dice */ - damageDice: SchemaField<{ - number: ResolvableValueField; - faces: fields.NumberField; - damageType: fields.StringField; - category: fields.StringField; - }, { - number: RuleValue; - faces: DamageDieFaces; - damageType: DamageType | null; - category: DamageCategoryUnique | null; - }, { - number: RuleValue; - faces: DamageDieFaces; - damageType: DamageType | null; - category: DamageCategoryUnique | null; - }, false, true, true>; - /** Alternative modifier */ - modifier: fields.SchemaField<{ - type: fields.StringField; - damageType: fields.StringField; - category: fields.StringField; - value: ResolvableValueField; - }, { - type: ModifierType; - damageType: DamageType | null; - category: DamageCategoryUnique | null; - value: RuleValue; - }, { - type: ModifierType; - damageType: DamageType | null; - category: DamageCategoryUnique | null; - value: RuleValue; - }, false, true, true>; -}; -export { CritSpecRuleElement }; diff --git a/types/src/module/rules/rule-element/damage-alteration/alteration.d.ts b/types/src/module/rules/rule-element/damage-alteration/alteration.d.ts deleted file mode 100644 index 638240577..000000000 --- a/types/src/module/rules/rule-element/damage-alteration/alteration.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { DamageDicePF2e, ModifierPF2e } from "@actor/modifiers.ts"; -import type { ItemPF2e } from "@item"; -import { BaseDamageData } from "@system/damage/types.ts"; -import { Predicate } from "@system/predication.ts"; -import type { RuleValue } from "../data.ts"; -import type { DamageAlterationProperty, DamageAlterationRuleElement, DamageAlterationValue } from "./rule-element.ts"; -declare class DamageAlteration { - #private; - slug: string | null; - property: DamageAlterationProperty; - value: RuleValue | null; - constructor(rule: PartialRuleElement); - getNewValue(damage: BaseDamageData | DamageDicePF2e | ModifierPF2e, item: ItemPF2e | null): DamageAlterationValue | null; - applyTo(damage: TDamage, options: { - item: ItemPF2e; - test: string[] | Set; - }): TDamage; -} -interface PartialRuleElement extends Pick { - resolveValue?: DamageAlterationRuleElement["resolveValue"]; - ignored?: boolean; - parent?: ItemPF2e; - predicate?: Predicate; -} -export { DamageAlteration }; diff --git a/types/src/module/rules/rule-element/damage-alteration/rule-element.d.ts b/types/src/module/rules/rule-element/damage-alteration/rule-element.d.ts deleted file mode 100644 index 6e404b7f4..000000000 --- a/types/src/module/rules/rule-element/damage-alteration/rule-element.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { DamageType } from "@system/damage/types.ts"; -import { StrictArrayField } from "@system/schema-data-fields.ts"; -import { type AELikeChangeMode } from "../ae-like.ts"; -import type { ModelPropsFromRESchema, RuleElementSchema } from "../data.ts"; -import { ResolvableValueField, RuleElementPF2e } from "../index.ts"; -import fields = foundry.data.fields; - -/** Alter certain aspects of individual components (modifiers and dice) of a damage roll. */ -declare class DamageAlterationRuleElement extends RuleElementPF2e { - static defineSchema(): DamageAlterationSchema; - resolveValue(value: unknown, defaultValue: null, options: { - resolvables: Record; - }): DamageAlterationValue | null; - beforePrepareData(): void; -} -interface DamageAlterationRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type DamageAlterationProperty = "dice-faces" | "dice-number" | "damage-type" | "tags"; -type DamageAlterationSchema = RuleElementSchema & { - selectors: StrictArrayField>; - mode: fields.StringField; - property: fields.StringField; - value: ResolvableValueField; - /** An optional relabeling of the altered unit of damage */ - relabel: fields.StringField; -}; -type DamageAlterationValue = DamageType | number | string[]; -export { DamageAlterationRuleElement }; -export type { DamageAlterationProperty, DamageAlterationValue }; diff --git a/types/src/module/rules/rule-element/damage-dice.d.ts b/types/src/module/rules/rule-element/damage-dice.d.ts deleted file mode 100644 index 79a362681..000000000 --- a/types/src/module/rules/rule-element/damage-dice.d.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { DamageDiceOverride } from "@actor/modifiers.ts"; -import { SlugField } from "@system/schema-data-fields.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -declare class DamageDiceRuleElement extends RuleElementPF2e { - #private; - constructor(data: DamageDiceSource, options: RuleElementOptions); - static defineSchema(): DamageDiceRuleSchema; - beforePrepareData(): void; -} -interface DamageDiceSource extends RuleElementSource { - selector?: JSONValue; - name?: JSONValue; - diceNumber?: JSONValue; - dieSize?: JSONValue; - override?: JSONValue; - value?: JSONValue; - damageType?: JSONValue; - critical?: JSONValue; - category?: JSONValue; - damageCategory?: JSONValue; - hideIfDisabled?: JSONValue; -} -interface DamageDiceRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type DamageDiceRuleSchema = RuleElementSchema & { - /** All domains to add a modifier to */ - selector: fields.ArrayField>; - /** The number of dice to add */ - diceNumber: ResolvableValueField; - /** The damage die size */ - dieSize: fields.StringField; - /** The damage type */ - damageType: fields.StringField; - /** True means the dice are added to critical without doubling; false means the dice are never added to - * critical damage; omitted means add to normal damage and double on critical damage. - */ - critical: fields.BooleanField; - /** The damage category */ - category: fields.StringField<"persistent" | "precision" | "splash", "persistent" | "precision" | "splash", false, false, false>; - /** A list of tags associated with this damage */ - tags: fields.ArrayField, string[], string[], false, false, true>; - /** Resolvable bracket data */ - brackets: ResolvableValueField; - /** Damage dice override data */ - override: fields.ObjectField; - /** Hide this dice change from breakdown tooltips if it is disabled */ - hideIfDisabled: fields.BooleanField; -}; -export { DamageDiceRuleElement }; diff --git a/types/src/module/rules/rule-element/data.d.ts b/types/src/module/rules/rule-element/data.d.ts deleted file mode 100644 index 07fa8cd2c..000000000 --- a/types/src/module/rules/rule-element/data.d.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { PredicateField, SlugField } from "@system/schema-data-fields.ts"; -import type { BooleanField, NumberField, StringField } from "types/foundry/common/data/fields.d.ts"; -type RuleElementSource = { - key?: JSONValue; - label?: JSONValue; - slug?: JSONValue; - predicate?: JSONValue; - priority?: JSONValue; - ignored?: JSONValue; - requiresInvestment?: JSONValue; - requiresEquipped?: JSONValue; - removeUponCreate?: JSONValue; -}; -type RuleValue = string | number | boolean | object | BracketedValue; -interface Bracket { - start?: number; - end?: number; - value: T; -} -interface BracketedValue { - field?: string; - brackets: Bracket[]; -} -type RuleElementSchema = { - key: StringField; - /** An identifying slug for the rule element: its significance and restrictions are determined per RE type */ - slug: SlugField; - /** A label for use by any rule element for display in an interface */ - label: StringField; - /** The place in order of application (ascending), among an actor's list of rule elements */ - priority: NumberField; - /** A test of whether the rules element is to be applied */ - predicate: PredicateField; - /** Whether the rule element is ignored and deactivated */ - ignored: BooleanField; - /** Whether the rule element requires that the parent item (if physical) be equipped */ - requiresEquipped: BooleanField; - /** Whether the rule element requires that the parent item (if physical) be invested */ - requiresInvestment: BooleanField; - /** A grouping slug to mark a rule as a part of a spinoff effect, which some item types can compose */ - spinoff: SlugField; -}; -declare class ResolvableValueField extends foundry.data.fields.DataField { - #private; - protected _validateType(value: JSONValue): boolean; - /** No casting is applied to this value */ - protected _cast(value: JSONValue): JSONValue; - protected _cleanType(value: RuleValue): RuleValue; -} -type ModelPropsFromRESchema = Omit, "label">; -export { ResolvableValueField }; -export type { Bracket, BracketedValue, ModelPropsFromRESchema, RuleElementSchema, RuleElementSource, RuleValue }; diff --git a/types/src/module/rules/rule-element/dexterity-modifier-cap.d.ts b/types/src/module/rules/rule-element/dexterity-modifier-cap.d.ts deleted file mode 100644 index 24b2a54b8..000000000 --- a/types/src/module/rules/rule-element/dexterity-modifier-cap.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import type { ActorType, CharacterPF2e, NPCPF2e } from "@actor"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -/** - * @category RuleElement - */ -declare class DexterityModifierCapRuleElement extends RuleElementPF2e { - protected static validActorTypes: ActorType[]; - static defineSchema(): DexterityModifierCapRuleSchema; - beforePrepareData(): void; -} -interface DexterityModifierCapRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - get actor(): CharacterPF2e | NPCPF2e; -} -type DexterityModifierCapRuleSchema = RuleElementSchema & { - value: ResolvableValueField; -}; -export { DexterityModifierCapRuleElement }; diff --git a/types/src/module/rules/rule-element/effect-spinoff/rule-element.d.ts b/types/src/module/rules/rule-element/effect-spinoff/rule-element.d.ts deleted file mode 100644 index f76cdff23..000000000 --- a/types/src/module/rules/rule-element/effect-spinoff/rule-element.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { PhysicalItemPF2e } from "@item"; -import { SlugField } from "@system/schema-data-fields.ts"; -import { RuleElementOptions, RuleElementPF2e } from "../base.ts"; -import type { ModelPropsFromRESchema, RuleElementSchema, RuleElementSource } from "../data.ts"; -import fields = foundry.data.fields; - -declare class EffectSpinoffRuleElement extends RuleElementPF2e { - constructor(source: RuleElementSource, options: RuleElementOptions); - static defineSchema(): EffectSpinoffSchema; - /** Allow an effect spinoff to be available even if its parent is an unequipped physical item. */ - protected _initialize(options?: Record | undefined): void; - afterPrepareData(): void; -} -interface EffectSpinoffRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - slug: string; - get item(): PhysicalItemPF2e; -} -type ActivateTimeUnit = "actions" | "reaction" | "minutes" | "hours"; -type ActivationTrait = "concentrate" | "manipulate"; -type ActivationSchema = fields.SchemaField<{ - label: fields.StringField; - time: fields.SchemaField<{ - value: fields.NumberField; - unit: fields.StringField; - }>; - traits: fields.ArrayField>; - details: fields.StringField; -}, { - label: string | null; - time: { - value: number; - unit: ActivateTimeUnit; - }; - details: string | null; - traits: ActivationTrait[]; -}, { - label: string | null; - time: { - value: number; - unit: ActivateTimeUnit; - }; - details: string | null; - traits: ActivationTrait[]; -}, true, true, true>; -type EffectSpinoffSchema = Omit & { - slug: SlugField; - activation: ActivationSchema; - description: fields.StringField; -}; -export { EffectSpinoffRuleElement }; diff --git a/types/src/module/rules/rule-element/effect-spinoff/spinoff.d.ts b/types/src/module/rules/rule-element/effect-spinoff/spinoff.d.ts deleted file mode 100644 index d39dc0c19..000000000 --- a/types/src/module/rules/rule-element/effect-spinoff/spinoff.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { TraitViewData } from "@actor/data/base.ts"; -import { type PhysicalItemPF2e } from "@item"; -import type { EffectSource } from "@item/effect/data.ts"; -import type { EffectSpinoffRuleElement } from "./rule-element.ts"; -declare class EffectSpinoff { - item: PhysicalItemPF2e; - slug: string; - label: string; - img: ImageFilePath; - activation: SpinoffActivationData | null; - description: { - value: string; - markdown: boolean; - }; - constructor(rule: EffectSpinoffRuleElement); - createEffect(): EffectSource; -} -interface SpinoffActivationData { - label: string | null; - glyph: string; - traits: TraitViewData[]; - details: string | null; -} -export { EffectSpinoff }; diff --git a/types/src/module/rules/rule-element/ephemeral-effect.d.ts b/types/src/module/rules/rule-element/ephemeral-effect.d.ts deleted file mode 100644 index 080dde17d..000000000 --- a/types/src/module/rules/rule-element/ephemeral-effect.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, RuleElementSchema } from "./data.ts"; -import { ItemAlteration } from "./item-alteration/alteration.ts"; -import fields = foundry.data.fields; - -/** An effect that applies ephemerally during a single action, such as a strike */ -declare class EphemeralEffectRuleElement extends RuleElementPF2e { - #private; - static defineSchema(): EphemeralEffectSchema; - static validateJoint(data: SourceFromSchema): void; - afterPrepareData(): void; -} -interface EphemeralEffectRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type EphemeralEffectSchema = RuleElementSchema & { - affects: fields.StringField<"target" | "origin", "target" | "origin", true, false, true>; - selectors: fields.ArrayField>; - uuid: fields.StringField; - adjustName: fields.BooleanField; - alterations: fields.ArrayField>; -}; -export { EphemeralEffectRuleElement }; diff --git a/types/src/module/rules/rule-element/fast-healing.d.ts b/types/src/module/rules/rule-element/fast-healing.d.ts deleted file mode 100644 index 36e8f0dee..000000000 --- a/types/src/module/rules/rule-element/fast-healing.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { ActorType } from "@actor/types.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * Rule element to implement fast healing and regeneration. - * Creates a chat card every round of combat. - * @category RuleElement - */ -declare class FastHealingRuleElement extends RuleElementPF2e { - static validActorTypes: ActorType[]; - static defineSchema(): FastHealingRuleSchema; - static validateJoint(data: SourceFromSchema): void; - /** Send a message with a "healing" (damage) roll at the start of its turn */ - onUpdateEncounter({ event }: { - event: "initiative-roll" | "turn-start"; - }): Promise; -} -type FastHealingRuleSchema = RuleElementSchema & { - value: ResolvableValueField; - type: fields.StringField; - details: fields.StringField; - deactivatedBy: fields.ArrayField, string[], string[], false, false, false>; -}; -interface FastHealingRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type FastHealingType = "fast-healing" | "regeneration"; -type FastHealingSource = SourceFromSchema; -export { FastHealingRuleElement }; -export type { FastHealingSource, FastHealingType }; diff --git a/types/src/module/rules/rule-element/flat-modifier.d.ts b/types/src/module/rules/rule-element/flat-modifier.d.ts deleted file mode 100644 index b42023d1b..000000000 --- a/types/src/module/rules/rule-element/flat-modifier.d.ts +++ /dev/null @@ -1,81 +0,0 @@ -import { ModifierType } from "@actor/modifiers.ts"; -import { AttributeString } from "@actor/types.ts"; -import { DamageCategoryUnique } from "@system/damage/types.ts"; -import { - DataUnionField, - PredicateField, - SlugField, - StrictBooleanField, - StrictStringField, -} from "@system/schema-data-fields.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { - ModelPropsFromRESchema, - ResolvableValueField, - RuleElementSchema, - RuleElementSource, - RuleValue, -} from "./data.ts"; -import fields = foundry.data.fields; - -/** - * Apply a constant modifier (or penalty/bonus) to a statistic or usage thereof - * @category RuleElement - */ -declare class FlatModifierRuleElement extends RuleElementPF2e { - constructor(source: FlatModifierSource, options: RuleElementOptions); - static validateJoint(data: SourceFromSchema): void; - static defineSchema(): FlatModifierSchema; - get selectors(): string[]; - beforePrepareData(): void; - /** Remove this rule element's parent item after a roll */ - afterRoll({ check, rollOptions }: RuleElementPF2e.AfterRollParams): Promise; -} -interface FlatModifierRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - value: RuleValue; -} -type FlatModifierSchema = RuleElementSchema & { - /** All domains to add a modifier to */ - selector: fields.ArrayField, string[], string[], true, false, false>; - /** The modifier (or bonus/penalty) type */ - type: fields.StringField; - /** If this is an ability modifier, the ability score it modifies */ - ability: fields.StringField; - /** Hide this modifier from breakdown tooltips if it is disabled */ - min: fields.NumberField; - max: fields.NumberField; - hideIfDisabled: fields.BooleanField; - /** Whether to use this bonus/penalty/modifier even if it isn't the greatest magnitude */ - force: fields.BooleanField; - /** Whether this modifier comes from equipment or an equipment effect */ - fromEquipment: fields.BooleanField; - /** If a damage modifier, a damage type */ - damageType: fields.StringField; - /** If a damage modifier, a special category */ - damageCategory: fields.StringField; - /** If a damage modifier, whether it applies given the presence or absence of a critically successful attack roll */ - critical: fields.BooleanField; - /** The numeric value of the modifier */ - value: ResolvableValueField; - /** A list of tags associated with this modifier */ - tags: fields.ArrayField, string[], string[], false, false, true>; - /** - * Remove the parent item (must be an effect) after a roll: - * The value may be a boolean, "if-enabled", or a predicate to be tested against the roll options from the roll. - */ - removeAfterRoll: DataUnionField | StrictBooleanField | PredicateField, false, false, true>; -}; -interface FlatModifierSource extends RuleElementSource { - selector?: JSONValue; - min?: JSONValue; - max?: JSONValue; - type?: JSONValue; - value?: JSONValue; - ability?: JSONValue; - force?: JSONValue; - damageType?: JSONValue; - damageCategory?: JSONValue; - critical?: JSONValue; - hideIfDisabled?: JSONValue; -} -export { FlatModifierRuleElement, type FlatModifierSource }; diff --git a/types/src/module/rules/rule-element/grant-item/helpers.d.ts b/types/src/module/rules/rule-element/grant-item/helpers.d.ts deleted file mode 100644 index ff687baf7..000000000 --- a/types/src/module/rules/rule-element/grant-item/helpers.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -/** Check an item prior to its deletion for GrantItem on-delete actions */ -declare function processGrantDeletions(item: ItemPF2e, pendingItems: ItemPF2e[]): Promise; -export { processGrantDeletions }; diff --git a/types/src/module/rules/rule-element/grant-item/index.d.ts b/types/src/module/rules/rule-element/grant-item/index.d.ts deleted file mode 100644 index 3b5e92cdf..000000000 --- a/types/src/module/rules/rule-element/grant-item/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { GrantItemRuleElement } from "./rule-element.ts"; diff --git a/types/src/module/rules/rule-element/grant-item/rule-element.d.ts b/types/src/module/rules/rule-element/grant-item/rule-element.d.ts deleted file mode 100644 index a8b6d77f9..000000000 --- a/types/src/module/rules/rule-element/grant-item/rule-element.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -import type { ActorType } from "@actor"; -import type { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { ItemGrantDeleteAction } from "@item/base/data/system.ts"; -import { RuleElementOptions, RuleElementPF2e } from "../base.ts"; -import { ModelPropsFromRESchema, RuleElementSource } from "../data.ts"; -import { GrantItemSchema } from "./schema.ts"; - -declare class GrantItemRuleElement extends RuleElementPF2e { - #private; - static validActorTypes: ActorType[]; - /** The id of the granted item */ - grantedId: string | null; - /** - * If the granted item has a `ChoiceSet`, its selection may be predetermined. The key of the record must be the - * `ChoiceSet`'s designated `flag` property. - */ - preselectChoices: Record; - /** Actions taken when either the parent or child item are deleted */ - onDeleteActions: Partial | null; - constructor(data: GrantItemSource, options: RuleElementOptions); - static defineSchema(): GrantItemSchema; - static ON_DELETE_ACTIONS: readonly ["cascade", "detach", "restrict"]; - static validateJoint(data: SourceFromSchema): void; - preCreate(args: RuleElementPF2e.PreCreateParams): Promise; - /** Grant an item if this rule element permits it and the predicate passes */ - preUpdateActor(): Promise<{ - create: ItemSourcePF2e[]; - delete: string[]; - }>; - /** Add an in-memory-only condition to the actor */ - onApplyActiveEffects(): void; -} -interface GrantItemRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -interface GrantItemSource extends RuleElementSource { - uuid?: unknown; - preselectChoices?: unknown; - reevaluateOnUpdate?: unknown; - inMemoryOnly?: unknown; - allowDuplicate?: unknown; - onDeleteActions?: unknown; - flag?: unknown; - alterations?: unknown; -} -interface OnDeleteActions { - granter: ItemGrantDeleteAction; - grantee: ItemGrantDeleteAction; -} -export { GrantItemRuleElement, type GrantItemSource }; diff --git a/types/src/module/rules/rule-element/grant-item/schema.d.ts b/types/src/module/rules/rule-element/grant-item/schema.d.ts deleted file mode 100644 index b02fc61c4..000000000 --- a/types/src/module/rules/rule-element/grant-item/schema.d.ts +++ /dev/null @@ -1,30 +0,0 @@ -import type { SlugField, StrictArrayField } from "@system/schema-data-fields.ts"; -import type * as fields from "types/foundry/common/data/fields.d.ts"; -import type { RuleElementSchema } from "../data.ts"; -import type { ItemAlteration } from "../item-alteration/alteration.ts"; - -type GrantItemSchema = RuleElementSchema & { - /** The UUID of the item to grant: must be a compendium or world item */ - uuid: fields.StringField; - /** A flag for referencing the granted item ID in other rule elements */ - flag: SlugField; - /** Permit this grant to be applied during an actor update--if it isn't already granted and the predicate passes */ - reevaluateOnUpdate: fields.BooleanField; - /** - * Instead of creating a new item in the actor's embedded collection, add a "virtual" one. Usable only with - * conditions - */ - inMemoryOnly: fields.BooleanField; - /** Allow multiple of the same item (as determined by source ID) to be granted */ - allowDuplicate: fields.BooleanField; - /** Visually nest this granted item under its granter: only applies to feats and features */ - nestUnderGranter: fields.BooleanField; - /** A list of alterations to make on the item before granting it */ - alterations: StrictArrayField>; - /** - * Track a granted physical item from roll options: the sluggified `flag` will serve as a prefix for item roll - * options, which are added to the `all` domain. - */ - track: fields.BooleanField; -}; -export type { GrantItemSchema }; diff --git a/types/src/module/rules/rule-element/index.d.ts b/types/src/module/rules/rule-element/index.d.ts deleted file mode 100644 index 08559f4a6..000000000 --- a/types/src/module/rules/rule-element/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { RuleElementPF2e, type RuleElementOptions } from "./base.ts"; -export { ResolvableValueField } from "./data.ts"; -export type { BracketedValue, RuleElementSchema, RuleElementSource, RuleValue } from "./data.ts"; diff --git a/types/src/module/rules/rule-element/item-alteration/alteration.d.ts b/types/src/module/rules/rule-element/item-alteration/alteration.d.ts deleted file mode 100644 index cfd50d049..000000000 --- a/types/src/module/rules/rule-element/item-alteration/alteration.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { StringField } from "types/foundry/common/data/fields.d.ts"; -import { AELikeChangeMode } from "../ae-like.ts"; -import type { RuleElementPF2e } from "../base.ts"; -import { ResolvableValueField } from "../data.ts"; -declare class ItemAlteration extends foundry.abstract.DataModel { - #private; - static VALID_PROPERTIES: readonly ["ac-bonus", "area-size", "badge-max", "badge-value", "bulk", "category", "check-penalty", "damage-dice-faces", "damage-type", "defense-passive", "description", "dex-cap", "focus-point-cost", "frequency-max", "frequency-per", "hardness", "hp-max", "material-type", "other-tags", "pd-recovery-dc", "persistent-damage", "rarity", "speed-penalty", "strength", "traits"]; - static defineSchema(): ItemAlterationSchema; - get rule(): RuleElementPF2e; - get actor(): ActorPF2e; - /** - * Apply this alteration to an item (or source) - * @param item The item to be altered - */ - applyTo(item: ItemPF2e | ItemSourcePF2e): void; -} -interface ItemAlteration extends foundry.abstract.DataModel, ModelPropsFromSchema { -} -type ItemAlterationSchema = { - mode: StringField; - property: StringField; - value: ResolvableValueField; -}; -type ItemAlterationProperty = (typeof ItemAlteration.VALID_PROPERTIES)[number]; -export { ItemAlteration }; -export type { ItemAlterationProperty, ItemAlterationSchema }; diff --git a/types/src/module/rules/rule-element/item-alteration/index.d.ts b/types/src/module/rules/rule-element/item-alteration/index.d.ts deleted file mode 100644 index f09a832af..000000000 --- a/types/src/module/rules/rule-element/item-alteration/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export * from "./rule-element.ts"; diff --git a/types/src/module/rules/rule-element/item-alteration/rule-element.d.ts b/types/src/module/rules/rule-element/item-alteration/rule-element.d.ts deleted file mode 100644 index cf66e5260..000000000 --- a/types/src/module/rules/rule-element/item-alteration/rule-element.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import type { ItemType } from "@item/base/data/index.ts"; -import { RuleElementPF2e } from "../base.ts"; -import type { ModelPropsFromRESchema, RuleElementSchema } from "../data.ts"; -import { ItemAlterationSchema } from "./alteration.ts"; -import fields = foundry.data.fields; - -declare class ItemAlterationRuleElement extends RuleElementPF2e { - #private; - static defineSchema(): ItemAlterationRuleSchema; - static validateJoint(data: SourceFromSchema): void; - preCreate({ tempItems }: RuleElementPF2e.PreCreateParams): Promise; - onApplyActiveEffects(): void; - afterPrepareData(): void; - applyAlteration({ singleItem, additionalItems }?: ApplyAlterationOptions): void; -} -interface ItemAlterationRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - constructor: typeof ItemAlterationRuleElement; -} -type ItemAlterationRuleSchema = RuleElementSchema & ItemAlterationSchema & { - /** The type of items to alter */ - itemType: fields.StringField; - /** As an alternative to specifying item types, an exact item ID can be provided */ - itemId: fields.StringField; -}; -interface ApplyAlterationOptions { - /** A single item to on which to run alterations instead of all qualifying items owned by the actor */ - singleItem?: ItemPF2e | null; - additionalItems?: ItemPF2e[]; -} -export { ItemAlterationRuleElement }; diff --git a/types/src/module/rules/rule-element/item-alteration/schemas.d.ts b/types/src/module/rules/rule-element/item-alteration/schemas.d.ts deleted file mode 100644 index 619c084bd..000000000 --- a/types/src/module/rules/rule-element/item-alteration/schemas.d.ts +++ /dev/null @@ -1,204 +0,0 @@ -import type { ItemPF2e } from "@item"; -import type { ItemSourcePF2e, ItemType } from "@item/base/data/index.ts"; -import type { ItemTrait } from "@item/base/types.ts"; -import { type DamageType } from "@system/damage/types.ts"; -import { PredicateField, SlugField, StrictNumberField } from "@system/schema-data-fields.ts"; -import type { - ArrayField, - BooleanField, - DataField, - DataFieldOptions, - NumberField, - SchemaField, - StringField, -} from "types/foundry/common/data/fields.d.ts"; -import type { DataModelValidationFailure } from "types/foundry/common/data/validation-failure.d.ts"; -import type { AELikeChangeMode } from "../ae-like.ts"; - -declare const fields: typeof foundry.data.fields; -/** A `SchemaField` reappropriated for validation of specific item alterations */ -declare class ItemAlterationValidator extends fields.SchemaField { - #private; - operableOnInstances: boolean; - operableOnSource: boolean; - constructor(fields: TSchema, options?: AlterationFieldOptions>); - /** - * A type-safe affirmation of full validity of an alteration _and_ its applicable to a particular item - * Errors will bubble all the way up to the originating parent rule element - */ - isValid(data: { - item: ItemPF2e | ItemSourcePF2e; - alteration: MaybeAlterationData; - }): data is { - item: ItemOrSource["itemType"]>; - alteration: SourceFromSchema; - }; -} -type ItemOrSource = InstanceType | InstanceType["_source"]; -type MaybeAlterationData = { - mode: string; - itemType: string; - value: unknown; -}; -declare const ITEM_ALTERATION_VALIDATORS: { - "ac-bonus": ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: NumberField, true, false, boolean>; - }>; - "area-size": ItemAlterationValidator<{ - itemType: StringField<"spell", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: NumberField, true, false, boolean>; - }>; - "badge-max": ItemAlterationValidator<{ - itemType: StringField<"effect", ItemType, true, false, false>; - mode: StringField<"downgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: NumberField, true, false, boolean>; - }>; - "badge-value": ItemAlterationValidator<{ - itemType: StringField<"condition" | "effect", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: NumberField, true, false, boolean>; - }>; - bulk: ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield" | "consumable" | "backpack" | "book" | "equipment" | "treasure" | "weapon", ItemType, true, false, false>; - mode: StringField<"override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StrictNumberField; - }>; - category: ItemAlterationValidator<{ - itemType: StringField<"armor", ItemType, true, false, false>; - mode: StringField<"override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StringField<"light" | "medium" | "heavy", NonNullable, true, false, boolean>; - }>; - "check-penalty": ItemAlterationValidator<{ - itemType: StringField<"armor", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StrictNumberField, true, false, boolean>; - }>; - "damage-dice-faces": ItemAlterationValidator<{ - itemType: StringField<"weapon", ItemType, true, false, false>; - mode: StringField<"downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StrictNumberField<4 | 6 | 8 | 12 | 10, 4 | 6 | 8 | 12 | 10, true, true, true>; - }>; - "damage-type": ItemAlterationValidator<{ - itemType: StringField<"weapon", ItemType, true, false, false>; - mode: StringField<"override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StringField<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped", NonNullable, true, false, boolean>; - }>; - /** The passive defense targeted by an attack spell */ - "defense-passive": ItemAlterationValidator<{ - itemType: StringField<"spell", ItemType, true, false, false>; - mode: StringField<"override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StringField<"ac" | "fortitude-dc" | "reflex-dc" | "will-dc", NonNullable, true, false, boolean>; - }>; - description: ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield" | "consumable" | "class" | "ancestry" | "action" | "feat" | "affliction" | "background" | "campaignFeature" | "condition" | "deity" | "effect" | "heritage" | "kit" | "lore" | "melee" | "spell" | "spellcastingEntry" | "backpack" | "book" | "equipment" | "treasure" | "weapon", ItemType, true, false, false>; - mode: StringField<"add" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: ArrayField; - text: StringField; - divider: BooleanField; - predicate: PredicateField; - }>[], ModelPropsFromSchema<{ - title: StringField; - text: StringField; - divider: BooleanField; - predicate: PredicateField; - }>[], true, false, false>; - }>; - "dex-cap": ItemAlterationValidator<{ - itemType: StringField<"armor", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StrictNumberField, true, false, boolean>; - }>; - "focus-point-cost": ItemAlterationValidator<{ - itemType: StringField<"spell", ItemType, true, false, false>; - mode: StringField<"add" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StrictNumberField, true, false, boolean>; - }>; - hardness: ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield" | "consumable" | "backpack" | "book" | "equipment" | "treasure" | "weapon", ItemType, true, false, false>; - mode: StringField<"multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: NumberField, true, false, boolean>; - }>; - "hp-max": ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield" | "consumable" | "backpack" | "book" | "equipment" | "treasure" | "weapon", ItemType, true, false, false>; - mode: StringField<"multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: NumberField, true, false, boolean>; - }>; - "material-type": ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield" | "consumable" | "backpack" | "book" | "equipment" | "treasure" | "weapon", ItemType, true, false, false>; - mode: StringField<"override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StringField<"abysium" | "adamantine" | "dawnsilver" | "djezet" | "duskwood" | "inubrix" | "noqual" | "orichalcum" | "siccatite" | "silver" | "cold-iron" | "dragonhide" | "dreamweb" | "grisantian-pelt" | "keep-stone" | "peachwood" | "sisterstone" | "sisterstone-dusk" | "sisterstone-scarlet" | "sloughstone" | "sovereign-steel" | "warpglass", NonNullable, true, false, boolean>; - }>; - "pd-recovery-dc": ItemAlterationValidator<{ - itemType: StringField<"condition", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: NumberField, true, false, boolean>; - }>; - "persistent-damage": ItemAlterationValidator<{ - itemType: StringField<"condition", ItemType, true, false, false>; - mode: StringField<"override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: SchemaField, ModelPropsFromSchema, true, false, true>; - }>; - rarity: ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield" | "consumable" | "backpack" | "book" | "equipment" | "treasure" | "weapon", ItemType, true, false, false>; - mode: StringField<"override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StringField<"common" | "unique" | "uncommon" | "rare", NonNullable, true, false, boolean>; - }>; - "frequency-max": ItemAlterationValidator<{ - itemType: StringField<"action" | "feat", ItemType, true, false, false>; - mode: StringField<"multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: NumberField, true, false, boolean>; - }>; - "frequency-per": ItemAlterationValidator<{ - itemType: StringField<"action" | "feat", ItemType, true, false, false>; - mode: StringField<"downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StringField, true, false, boolean>; - }>; - "other-tags": ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield" | "consumable" | "class" | "ancestry" | "action" | "feat" | "affliction" | "background" | "campaignFeature" | "condition" | "deity" | "effect" | "heritage" | "kit" | "lore" | "melee" | "spell" | "spellcastingEntry" | "backpack" | "book" | "equipment" | "treasure" | "weapon", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: SlugField; - }>; - "speed-penalty": ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StrictNumberField, true, false, boolean>; - }>; - strength: ItemAlterationValidator<{ - itemType: StringField<"armor", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StrictNumberField, true, false, boolean>; - }>; - traits: ItemAlterationValidator<{ - itemType: StringField<"armor" | "shield" | "consumable" | "class" | "ancestry" | "action" | "feat" | "affliction" | "background" | "campaignFeature" | "condition" | "effect" | "heritage" | "kit" | "melee" | "spell" | "backpack" | "book" | "equipment" | "treasure" | "weapon", ItemType, true, false, false>; - mode: StringField<"add" | "subtract" | "remove", "multiply" | "add" | "subtract" | "remove" | "downgrade" | "upgrade" | "override", true, false, false>; - value: StringField; - }>; -}; -interface AlterationFieldOptions> extends DataFieldOptions { - validateForItem?: (item: ItemPF2e | ItemSourcePF2e, alteration: MaybeAlterationData) => DataModelValidationFailure | void; - /** Whether this alteration can be used with an `ItemPF2e` instance */ - operableOnInstances?: boolean; - /** Whether this alteration can be used with item source data */ - operableOnSource?: boolean; -} -type AlterationSchema = { - itemType: StringField; - mode: StringField; - value: DataField, Exclude, true, boolean, boolean>; -}; -type PersistentDamageValueSchema = { - formula: StringField; - damageType: StringField; - dc: NumberField; -}; -type DescriptionElementField = SchemaField<{ - title: StringField; - text: StringField; - divider: BooleanField; - predicate: PredicateField; -}>; -export { ITEM_ALTERATION_VALIDATORS }; diff --git a/types/src/module/rules/rule-element/iwr/base.d.ts b/types/src/module/rules/rule-element/iwr/base.d.ts deleted file mode 100644 index c525505c5..000000000 --- a/types/src/module/rules/rule-element/iwr/base.d.ts +++ /dev/null @@ -1,57 +0,0 @@ -import { Immunity, IWRSource, Resistance, Weakness } from "@actor/data/iwr.ts"; -import { IWRType } from "@actor/types.ts"; -import type { Predicate } from "@system/predication.ts"; -import { DataUnionField, PredicateField, StrictArrayField, StrictStringField } from "@system/schema-data-fields.ts"; -import { AELikeChangeMode } from "../ae-like.ts"; -import { RuleElementPF2e } from "../base.ts"; -import { ModelPropsFromRESchema, RuleElementSchema, RuleElementSource, RuleValue } from "../data.ts"; -import fields = foundry.data.fields; - -/** @category RuleElement */ -declare abstract class IWRRuleElement extends RuleElementPF2e { - #private; - abstract value: RuleValue | null; - static get dictionary(): Record; - static defineSchema(): IWRRuleSchema; - protected static createExceptionsField(types?: Record): StrictArrayField>; - static validateJoint(source: SourceFromSchema): void; - /** A reference to the pertinent property in actor system data */ - abstract get property(): IWRSource[]; - abstract getIWR(value?: number): Immunity[] | Weakness[] | Resistance[]; - afterPrepareData(): void; -} -interface IWRRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - constructor: typeof IWRRuleElement; -} -type IWRRuleSchema = RuleElementSchema & { - /** Whether to add or remove an immunity, weakness, or resistance (default is "add") */ - mode: fields.StringField; - /** One or more IWR types: "custom" is also an acceptable value, but it must be used in isolation. */ - type: fields.ArrayField>; - /** - * A list of exceptions, which may include string values corresponding with the IWR type or objects defining custom - * exceptions - */ - exceptions: StrictArrayField; - /** A definition for a "custom"-type IWR */ - definition: PredicateField; - /** Whether to override an existing IWR of the same type, even if it's higher */ - override: fields.BooleanField; -}; -type IWRExceptionField = DataUnionField | fields.SchemaField<{ - definition: PredicateField; - label: StrictStringField; -}>, true, false, false>; -type IWRException = TType | { - definition: Predicate; - label: string; -}; -type IWRChangeMode = Extract; -interface IWRRuleElementSource extends RuleElementSource { - mode?: unknown; - type?: unknown; - exceptions?: unknown; - override?: unknown; -} -export { IWRRuleElement }; -export type { IWRException, IWRExceptionField, IWRRuleElementSource, IWRRuleSchema }; diff --git a/types/src/module/rules/rule-element/iwr/immunity.d.ts b/types/src/module/rules/rule-element/iwr/immunity.d.ts deleted file mode 100644 index d57a62f77..000000000 --- a/types/src/module/rules/rule-element/iwr/immunity.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Immunity } from "@actor/data/iwr.ts"; -import { ImmunityType } from "@actor/types.ts"; -import type { StrictArrayField } from "@system/schema-data-fields.ts"; -import { ModelPropsFromRESchema } from "../data.ts"; -import { IWRException, IWRExceptionField, IWRRuleElement, IWRRuleSchema } from "./base.ts"; -/** @category RuleElement */ -declare class ImmunityRuleElement extends IWRRuleElement { - /** Immunities don't take values */ - readonly value: null; - static defineSchema(): ImmunityRuleSchema; - static get dictionary(): Record; - get property(): Immunity[]; - getIWR(): Immunity[]; -} -interface ImmunityRuleElement extends IWRRuleElement, ModelPropsFromRESchema { - type: ImmunityType[]; - exceptions: IWRException[]; -} -type ImmunityRuleSchema = Omit & { - exceptions: StrictArrayField>; -}; -export { ImmunityRuleElement }; diff --git a/types/src/module/rules/rule-element/iwr/index.d.ts b/types/src/module/rules/rule-element/iwr/index.d.ts deleted file mode 100644 index 22390486c..000000000 --- a/types/src/module/rules/rule-element/iwr/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { ImmunityRuleElement } from "./immunity.ts"; -export { WeaknessRuleElement } from "./weakness.ts"; -export { ResistanceRuleElement } from "./resistance.ts"; diff --git a/types/src/module/rules/rule-element/iwr/resistance.d.ts b/types/src/module/rules/rule-element/iwr/resistance.d.ts deleted file mode 100644 index 2630de219..000000000 --- a/types/src/module/rules/rule-element/iwr/resistance.d.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { Resistance } from "@actor/data/iwr.ts"; -import { ResistanceType } from "@actor/types.ts"; -import type { StrictArrayField } from "@system/schema-data-fields.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleValue } from "../data.ts"; -import { IWRException, IWRExceptionField, IWRRuleElement, IWRRuleSchema } from "./base.ts"; -/** @category RuleElement */ -declare class ResistanceRuleElement extends IWRRuleElement { - static defineSchema(): ResistanceRuleSchema; - static get dictionary(): Record; - get property(): Resistance[]; - getIWR(value: number): Resistance[]; -} -interface ResistanceRuleElement extends IWRRuleElement, ModelPropsFromRESchema { - value: RuleValue; - type: ResistanceType[]; - exceptions: IWRException[]; -} -type ResistanceRuleSchema = Omit & { - value: ResolvableValueField; - exceptions: StrictArrayField>; - doubleVs: StrictArrayField>; -}; -export { ResistanceRuleElement }; diff --git a/types/src/module/rules/rule-element/iwr/weakness.d.ts b/types/src/module/rules/rule-element/iwr/weakness.d.ts deleted file mode 100644 index 06eec852f..000000000 --- a/types/src/module/rules/rule-element/iwr/weakness.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Weakness } from "@actor/data/iwr.ts"; -import { WeaknessType } from "@actor/types.ts"; -import type { StrictArrayField } from "@system/schema-data-fields.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleValue } from "../data.ts"; -import { IWRException, IWRExceptionField, IWRRuleElement, IWRRuleSchema } from "./base.ts"; -/** @category RuleElement */ -declare class WeaknessRuleElement extends IWRRuleElement { - static defineSchema(): WeaknessRuleSchema; - static get dictionary(): Record; - get property(): Weakness[]; - getIWR(value: number): Weakness[]; -} -interface WeaknessRuleElement extends IWRRuleElement, ModelPropsFromRESchema { - value: RuleValue; - type: WeaknessType[]; - exceptions: IWRException[]; -} -type WeaknessRuleSchema = Omit & { - value: ResolvableValueField; - exceptions: StrictArrayField; -}; -export { WeaknessRuleElement }; diff --git a/types/src/module/rules/rule-element/lose-hit-points.d.ts b/types/src/module/rules/rule-element/lose-hit-points.d.ts deleted file mode 100644 index d43c0def9..000000000 --- a/types/src/module/rules/rule-element/lose-hit-points.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { ActorType, CreaturePF2e } from "@actor"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { BooleanField } from "types/foundry/common/data/fields.d.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** Reduce current hit points without applying damage */ -declare class LoseHitPointsRuleElement extends RuleElementPF2e { - static validActorTypes: ActorType[]; - static defineSchema(): LoseHitPointsRuleSchema; - onCreate(actorUpdates: Record): void; - beforePrepareData(): void; - preUpdate(changes: DeepPartial): Promise; -} -interface LoseHitPointsRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - get actor(): CreaturePF2e; -} -type LoseHitPointsRuleSchema = RuleElementSchema & { - value: ResolvableValueField; - /** Whether the lost hit points are recoverable while the parent item is present on the actor */ - recoverable: fields.BooleanField; - /** - * Lost hitpoints should reevaluate on item update, with the parent actor losing the difference in HP between the - * new and old values. - */ - reevaluateOnUpdate: BooleanField; -}; -export { LoseHitPointsRuleElement }; diff --git a/types/src/module/rules/rule-element/martial-proficiency.d.ts b/types/src/module/rules/rule-element/martial-proficiency.d.ts deleted file mode 100644 index cb36825a3..000000000 --- a/types/src/module/rules/rule-element/martial-proficiency.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import type { ActorType, CharacterPF2e } from "@actor"; -import { ArmorCategory } from "@item/armor/types.ts"; -import { ProficiencyRank } from "@item/base/data/index.ts"; -import { WeaponCategory } from "@item/weapon/types.ts"; -import { PredicateField } from "@system/schema-data-fields.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -declare class MartialProficiencyRuleElement extends RuleElementPF2e { - protected static validActorTypes: ActorType[]; - slug: string; - constructor(data: RuleElementSource, options: RuleElementOptions); - static defineSchema(): MartialProficiencySchema; - onApplyActiveEffects(): void; -} -interface MartialProficiencyRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - get actor(): CharacterPF2e; -} -type MartialProficiencySchema = RuleElementSchema & { - /** Whether the proficiency is an attack or defense */ - kind: fields.StringField<"attack" | "defense", "attack" | "defense", true, false, true>; - /** The criteria for matching qualifying weapons and other attacks */ - definition: PredicateField; - /** The attack category to which this proficiency's rank is linked */ - sameAs: fields.StringField; - /** The maximum rank this proficiency can reach, if any */ - maxRank: fields.StringField, Exclude, false, false, false>; - /** Initially a number indicating rank, changed into a `MartialProficiency` object for overriding as an AE-like */ - value: ResolvableValueField; -}; -export { MartialProficiencyRuleElement }; diff --git a/types/src/module/rules/rule-element/multiple-attack-penalty.d.ts b/types/src/module/rules/rule-element/multiple-attack-penalty.d.ts deleted file mode 100644 index 632493f43..000000000 --- a/types/src/module/rules/rule-element/multiple-attack-penalty.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * @category RuleElement - */ -declare class MultipleAttackPenaltyRuleElement extends RuleElementPF2e { - static defineSchema(): MAPRuleSchema; - beforePrepareData(): void; -} -interface MultipleAttackPenaltyRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type MAPRuleSchema = RuleElementSchema & { - selector: fields.StringField; - value: ResolvableValueField; -}; -export { MultipleAttackPenaltyRuleElement }; diff --git a/types/src/module/rules/rule-element/roll-note.d.ts b/types/src/module/rules/rule-element/roll-note.d.ts deleted file mode 100644 index 7ac972605..000000000 --- a/types/src/module/rules/rule-element/roll-note.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { UserVisibility } from "@scripts/ui/user-visibility.ts"; -import { DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import { DataUnionField, StrictStringField } from "@system/schema-data-fields.ts"; -import type { StringField } from "types/foundry/common/data/fields.d.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -declare class RollNoteRuleElement extends RuleElementPF2e { - static defineSchema(): RollNoteSchema; - beforePrepareData(): void; -} -interface RollNoteRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type RollNoteSchema = RuleElementSchema & { - /** The statistic(s) slugs of the rolls for which this note will be appended */ - selector: fields.ArrayField, string[], string[], true, false, true>; - /** An optional title prepended to the note */ - title: fields.StringField; - /** An optional limitation of the notes visibility to GMs */ - visibility: fields.StringField; - /** Applicable degree-of-success outcomes for the note */ - outcome: fields.ArrayField>; - /** The main text of the note */ - text: DataUnionField | ResolvableValueField>; -}; -interface NoteRESource extends RuleElementSource { - selector?: unknown; - outcome?: unknown; - title?: unknown; - text?: unknown; - visibility?: unknown; -} -export { RollNoteRuleElement, type NoteRESource }; diff --git a/types/src/module/rules/rule-element/roll-option/data.d.ts b/types/src/module/rules/rule-element/roll-option/data.d.ts deleted file mode 100644 index 069635ca9..000000000 --- a/types/src/module/rules/rule-element/roll-option/data.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import { DataUnionField, PredicateField, StrictBooleanField, StrictStringField } from "@system/schema-data-fields.ts"; -import type * as fields from "types/foundry/common/data/fields.d.ts"; -import type { AELikeDataPrepPhase } from "../ae-like.ts"; -import type { ResolvableValueField, RuleElementSchema } from "../data.ts"; -import type { RollOptionRuleElement } from "./rule-element.ts"; - -declare class Suboption extends foundry.abstract.DataModel { - static defineSchema(): fields.DataSchema; - get rule(): RollOptionRuleElement; - get selected(): boolean; -} -interface Suboption extends foundry.abstract.DataModel, ModelPropsFromSchema { -} -type RollOptionSchema = RuleElementSchema & { - domain: fields.StringField; - phase: fields.StringField; - option: fields.StringField; - /** Suboptions for a toggle, appended to the option string */ - suboptions: fields.ArrayField; - /** - * The value of the roll option: either a boolean or a string resolves to a boolean If omitted, it defaults to - * `true` unless also `togglable`, in which case to `false`. - */ - value: ResolvableValueField; - /** Whether this instance's suboptions are mergeable with an already-present, toggleable `RollOption` */ - mergeable: fields.BooleanField; - /** A suboption selection */ - selection: fields.StringField; - /** Whether the roll option is toggleable: a checkbox will appear in interfaces (usually actor sheets) */ - toggleable: DataUnionField | StrictBooleanField, false, false, true>; - /** If toggleable, the location to be found in an interface */ - placement: fields.StringField; - /** An optional predicate to determine whether the toggle is interactable by the user */ - disabledIf: PredicateField; - /** The value of the roll option if its toggle is disabled: null indicates the pre-disabled value is preserved */ - disabledValue: fields.BooleanField; - /** - * Whether this (toggleable and suboptions-containing) roll option always has a `value` of `true`, allowing only - * suboptions to be changed - */ - alwaysActive: fields.BooleanField; - /** Whether this roll option is countable: it will have a numeric value counting how many rules added this option */ - count: fields.BooleanField; - /** If the hosting item is an effect, remove or expire it after a matching roll is made */ - removeAfterRoll: fields.BooleanField; -}; -type SuboptionSchema = { - label: fields.StringField; - value: fields.StringField; - predicate: PredicateField; -}; -type SuboptionSource = SourceFromSchema; -type SuboptionField = fields.EmbeddedDataField; -export { Suboption }; -export type { RollOptionSchema, SuboptionField, SuboptionSource }; diff --git a/types/src/module/rules/rule-element/roll-option/rule-element.d.ts b/types/src/module/rules/rule-element/roll-option/rule-element.d.ts deleted file mode 100644 index d00432bb2..000000000 --- a/types/src/module/rules/rule-element/roll-option/rule-element.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { RuleElementOptions, RuleElementPF2e } from "../base.ts"; -import { ModelPropsFromRESchema, RuleElementSource } from "../data.ts"; -import { type RollOptionSchema } from "./data.ts"; -/** - * Set a roll option at a specificed domain - * @category RuleElement - */ -declare class RollOptionRuleElement extends RuleElementPF2e { - #private; - constructor(source: RollOptionSource, options: RuleElementOptions); - static defineSchema(): RollOptionSchema; - static validateJoint(source: SourceFromSchema): void; - /** Process this rule element during item pre-creation to inform subsequent choice sets. */ - preCreate(): Promise; - onApplyActiveEffects(): void; - beforePrepareData(): void; - afterPrepareData(): void; - /** Force false totm toggleable roll options if the totmToggles setting is disabled */ - resolveValue(): boolean; - /** - * Toggle the provided roll option (swapping it from true to false or vice versa). - * @param value The new roll option value - * @param [selection] The new suboption selection - * @returns the new value if successful or otherwise `null` - */ - toggle(value?: boolean, selection?: string | null): Promise; - /** - * Add or remove directly from/to a provided set of roll options. All RollOption REs, regardless of phase, are - * (re-)called here. - */ - beforeRoll(domains: string[], rollOptions: Set): void; - /** Remove the parent effect if configured so */ - afterRoll({ domains, rollOptions }: RuleElementPF2e.AfterRollParams): Promise; -} -interface RollOptionRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - value: boolean | string; -} -interface RollOptionSource extends RuleElementSource { - domain?: JSONValue; - option?: JSONValue; - toggleable?: JSONValue; - suboptions?: JSONValue; - value?: JSONValue; - selection?: JSONValue; - disabledIf?: JSONValue; - disabledValue?: JSONValue; - count?: JSONValue; - removeAfterRoll?: JSONValue; -} -export { RollOptionRuleElement }; -export type { RollOptionSource }; diff --git a/types/src/module/rules/rule-element/roll-twice.d.ts b/types/src/module/rules/rule-element/roll-twice.d.ts deleted file mode 100644 index 212b8d1e2..000000000 --- a/types/src/module/rules/rule-element/roll-twice.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** Roll Twice and keep either the higher or lower result */ -declare class RollTwiceRuleElement extends RuleElementPF2e { - static defineSchema(): RollTwiceRuleSchema; - beforePrepareData(): void; - afterRoll({ domains, roll, rollOptions }: RuleElementPF2e.AfterRollParams): Promise; -} -interface RollTwiceRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type RollTwiceRuleSchema = RuleElementSchema & { - selector: fields.ArrayField, string[], string[], true, false, true>; - keep: fields.StringField<"higher" | "lower", "higher" | "lower", true, false, false>; - /** If the hosting item is an effect, remove or expire it after a matching roll is made */ - removeAfterRoll: fields.BooleanField; -}; -export { RollTwiceRuleElement }; diff --git a/types/src/module/rules/rule-element/sense.d.ts b/types/src/module/rules/rule-element/sense.d.ts deleted file mode 100644 index fb24a0b84..000000000 --- a/types/src/module/rules/rule-element/sense.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import type { ActorType, CharacterPF2e, FamiliarPF2e } from "@actor"; -import type { SenseAcuity, SenseType } from "@actor/creature/types.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * @category RuleElement - */ -declare class SenseRuleElement extends RuleElementPF2e { - protected static validActorTypes: ActorType[]; - static defineSchema(): SenseRuleSchema; - beforePrepareData(): void; -} -interface SenseRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - get actor(): CharacterPF2e | FamiliarPF2e; -} -type SenseRuleSchema = RuleElementSchema & { - selector: fields.StringField; - force: fields.BooleanField; - acuity: fields.StringField; - range: ResolvableValueField; -}; -export { SenseRuleElement }; diff --git a/types/src/module/rules/rule-element/special-resource.d.ts b/types/src/module/rules/rule-element/special-resource.d.ts deleted file mode 100644 index 51d30545b..000000000 --- a/types/src/module/rules/rule-element/special-resource.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import type { ActorType, CreaturePF2e } from "@actor"; -import type { ActorCommitData } from "@actor/types.ts"; -import { type RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ResolvableValueField, type RuleElementSchema, type RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -declare class SpecialResourceRuleElement extends RuleElementPF2e { - #private; - protected static validActorTypes: ActorType[]; - constructor(source: SpecialResourceSource, options: RuleElementOptions); - static defineSchema(): SpecialResourceSchema; - /** Updates the remaining number of this resource. Where it updates depends on the type */ - update(value: number, options: { - save: false; - checkLevel?: boolean; - }): Promise; - update(value: number, options?: { - save?: true; - render?: boolean; - checkLevel?: boolean; - }): Promise; - /** If an item uuid is specified, create it when this resource is first attached */ - preCreate(args: RuleElementPF2e.PreCreateParams): Promise; - /** Treat special resources as upgrades during the AELike phase */ - onApplyActiveEffects(): void; - /** Finish initializing the special resource, flooring values and assigning the value. If its from an item, use as the source of truth */ - beforePrepareData(): void; -} -interface SpecialResourceRuleElement extends RuleElementPF2e, Omit, "label"> { - slug: string; - max: number; - get actor(): CreaturePF2e; -} -type SpecialResourceSource = RuleElementSource & { - value?: unknown; - max?: unknown; - itemUUID?: unknown; - level?: unknown; -}; -type SpecialResourceSchema = RuleElementSchema & { - /** Current value. If not set, defaults to null */ - value: fields.NumberField; - /** The maximum value attainable for this resource. */ - max: ResolvableValueField; - /** If this represents a physical resource, the UUID of the item to create */ - itemUUID: fields.DocumentUUIDField; - /** If itemUUID exists, determines the level of the granted item */ - level: ResolvableValueField; -}; -export { SpecialResourceRuleElement }; -export type { SpecialResourceSource }; diff --git a/types/src/module/rules/rule-element/special-statistic.d.ts b/types/src/module/rules/rule-element/special-statistic.d.ts deleted file mode 100644 index 8db5f8c48..000000000 --- a/types/src/module/rules/rule-element/special-statistic.d.ts +++ /dev/null @@ -1,53 +0,0 @@ -import type { CreaturePF2e } from "@actor"; -import { AttributeString } from "@actor/types.ts"; -import { MagicTradition } from "@item/spell/types.ts"; -import { Predicate, RawPredicate } from "@system/predication.ts"; -import { PredicateField } from "@system/schema-data-fields.ts"; -import { RuleElementPF2e } from "../index.ts"; -import type { RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** Create a special-purpose statistic for use in checks and as a DC */ -declare class SpecialStatisticRuleElement extends RuleElementPF2e { - static validActorTypes: ("character" | "npc")[]; - static defineSchema(): SpecialStatisticSchema; - afterPrepareData(): void; -} -interface SpecialStatisticRuleElement extends RuleElementPF2e, Omit, "label"> { - slug: string; - get actor(): CreaturePF2e; -} -type SpecialStatisticSchema = RuleElementSchema & { - type: fields.StringField; - /** A base statistic from which to extend */ - extends: fields.StringField; - /** An attribute to associate with the statistic */ - attribute: fields.StringField; - /** A base modifier for use with NPC special statistics: separate check and DC values may also be specified. */ - baseModifier: fields.SchemaField<{ - mod: fields.NumberField; - check: fields.NumberField; - dc: fields.NumberField; - }, { - mod: number | null; - check: number | null; - dc: number | null; - }, { - mod: number | null; - check: number | null; - dc: number | null; - }, false, true, true>; - itemCasting: fields.SchemaField; -}; -type ItemCastingSchema = { - predicate: PredicateField; - tradition: fields.StringField; -}; -type StatisticType = "simple" | "check" | "attack-roll"; -export { SpecialStatisticRuleElement }; diff --git a/types/src/module/rules/rule-element/strike.d.ts b/types/src/module/rules/rule-element/strike.d.ts deleted file mode 100644 index ce6c9f0f5..000000000 --- a/types/src/module/rules/rule-element/strike.d.ts +++ /dev/null @@ -1,112 +0,0 @@ -import type { ActorType, CharacterPF2e, NPCPF2e } from "@actor"; -import type { NPCAttackTrait } from "@item/melee/types.ts"; -import { BaseShieldType } from "@item/shield/types.ts"; -import type { BaseWeaponType, OtherWeaponTag, WeaponCategory } from "@item/weapon/types.ts"; -import type { DamageDieSize, DamageType } from "@system/damage/index.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * Create an ephemeral strike on an actor - * @category RuleElement - */ -declare class StrikeRuleElement extends RuleElementPF2e { - #private; - protected static validActorTypes: ActorType[]; - graspingAppendage: boolean; - constructor(source: StrikeSource, options: RuleElementOptions); - static defineSchema(): StrikeSchema; - protected _initialize(options?: Record): void; - beforePrepareData(): void; - /** Exclude other strikes if this rule element specifies that its strike replaces all others */ - afterPrepareData(): void; - /** Toggle the modular or versatile trait of this strike's weapon */ - toggleTrait({ trait, selected }: UpdateToggleParams): Promise; -} -interface StrikeRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - slug: string; - fist: boolean; - options: string[]; - get actor(): CharacterPF2e | NPCPF2e; -} -type NonShieldWeaponType = Exclude; -type StrikeSchema = RuleElementSchema & { - /** A weapon category */ - category: fields.StringField; - /** A weapon group */ - group: fields.StringField; - /** A weapon base type */ - baseType: fields.StringField; - /** Permit NPC attack traits to sneak in for battle forms */ - traits: fields.ArrayField>; - traitToggles: fields.SchemaField<{ - modular: fields.StringField; - versatile: fields.StringField; - }, { - modular: DamageType | null; - versatile: DamageType | null; - }, { - modular: DamageType | null; - versatile: DamageType | null; - }, true, false, true>; - otherTags: fields.ArrayField, OtherWeaponTag[], OtherWeaponTag[], false, false, true>; - /** - * A fixed attack modifier: usable only if the strike is generated for an NPC - * Also causes the damage to not be recalculated when converting the resulting weapon to an NPC attack - */ - attackModifier: fields.NumberField; - range: fields.SchemaField<{ - increment: fields.NumberField; - max: fields.NumberField; - }, { - increment: number | null; - max: number | null; - }, { - increment: number | null; - max: number | null; - }, false, true, true>; - damage: fields.SchemaField<{ - base: fields.SchemaField<{ - damageType: fields.StringField; - dice: ResolvableValueField; - die: fields.StringField; - modifier: fields.NumberField; - }>; - }>; - ability: fields.StringField; - /** A representative icon for the strike */ - img: fields.FilePathField; - /** Whether to replace all other strike actions */ - replaceAll: fields.BooleanField; - /** Whether to replace the "basic unarmed" strike action */ - replaceBasicUnarmed: fields.BooleanField; - /** Whether this attack is from a battle form */ - battleForm: fields.BooleanField; - options: fields.ArrayField, string[], string[], false, false, false>; - /** Whether this was a request for a standard fist attack */ - fist: fields.BooleanField; - /** Whether the unarmed attack is a grasping appendage */ - graspingAppendage: fields.BooleanField; -}; -interface StrikeSource extends RuleElementSource { - img?: unknown; - category?: unknown; - group?: unknown; - baseType?: unknown; - damage?: unknown; - range?: unknown; - maxRange?: unknown; - traits?: unknown; - traitToggles?: unknown; - replaceAll?: unknown; - replaceBasicUnarmed?: unknown; - battleForm?: unknown; - options?: unknown; - fist?: unknown; -} -interface UpdateToggleParams { - trait: "modular" | "versatile"; - selected: DamageType | null; -} -export { StrikeRuleElement }; diff --git a/types/src/module/rules/rule-element/striking.d.ts b/types/src/module/rules/rule-element/striking.d.ts deleted file mode 100644 index 5458feb4f..000000000 --- a/types/src/module/rules/rule-element/striking.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import type { ActorType } from "@actor/types.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -declare class StrikingRuleElement extends RuleElementPF2e { - protected static validActorTypes: ActorType[]; - static defineSchema(): StrikingRuleSchema; - beforePrepareData(): void; -} -interface StrikingRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type StrikingRuleSchema = RuleElementSchema & { - selector: fields.StringField; - value: ResolvableValueField; -}; -export { StrikingRuleElement }; diff --git a/types/src/module/rules/rule-element/substitute-roll.d.ts b/types/src/module/rules/rule-element/substitute-roll.d.ts deleted file mode 100644 index e8dbc3a6f..000000000 --- a/types/src/module/rules/rule-element/substitute-roll.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { DataUnionField, PredicateField, StrictBooleanField } from "@system/schema-data-fields.ts"; -import { RuleElementOptions, RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema, RuleElementSource } from "./data.ts"; -import fields = foundry.data.fields; - -/** Substitute a pre-determined result for a check's D20 roll */ -declare class SubstituteRollRuleElement extends RuleElementPF2e { - constructor(source: RuleElementSource, options: RuleElementOptions); - static defineSchema(): SubstituteRollSchema; - beforePrepareData(): void; - afterRoll(params: RuleElementPF2e.AfterRollParams): Promise; -} -interface SubstituteRollRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type SubstituteRollSchema = RuleElementSchema & { - selector: fields.StringField; - value: ResolvableValueField; - required: fields.BooleanField; - effectType: fields.StringField<"fortune" | "misfortune", "fortune" | "misfortune", true, false, true>; - /** - * Remove the parent item (must be an effect) after a roll: - * The value may be a boolean, "if-enabled", or a predicate to be tested against the roll options from the roll. - */ - removeAfterRoll: DataUnionField | StrictBooleanField | PredicateField, false, false, true>; -}; -export { SubstituteRollRuleElement }; diff --git a/types/src/module/rules/rule-element/temp-hp.d.ts b/types/src/module/rules/rule-element/temp-hp.d.ts deleted file mode 100644 index bf1e95992..000000000 --- a/types/src/module/rules/rule-element/temp-hp.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { ActorType } from "@actor/types.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * @category RuleElement - */ -declare class TempHPRuleElement extends RuleElementPF2e { - static validActorTypes: ActorType[]; - static defineSchema(): TempHPRuleSchema; - onCreate(actorUpdates: Record): void; - /** Refresh the actor's temporary hit points at the start of its turn */ - onUpdateEncounter(data: { - event: "initiative-roll" | "turn-start"; - actorUpdates: Record; - }): Promise; - onDelete(actorUpdates: Record): void; - /** Send out a chat message notifying everyone that the actor gained temporary HP */ - broadcast(newQuantity: number, oldQuantity: number): void; -} -interface TempHPRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type TempHPEventsSchema = { - /** Whether the temporary hit points are immediately applied */ - onCreate: fields.BooleanField; - /** Whether the temporary hit points renew each round */ - onTurnStart: fields.BooleanField; -}; -type TempHPRuleSchema = RuleElementSchema & { - /** The quantity of temporary hit points to add */ - value: ResolvableValueField; - /** World events in which temporary HP is added or renewed */ - events: fields.SchemaField, ModelPropsFromSchema, true, false, true>; -}; -export { TempHPRuleElement }; diff --git a/types/src/module/rules/rule-element/token-effect-icon.d.ts b/types/src/module/rules/rule-element/token-effect-icon.d.ts deleted file mode 100644 index 337b0d5fd..000000000 --- a/types/src/module/rules/rule-element/token-effect-icon.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; -/** - * Add an effect icon to an actor's token - * @category RuleElement - */ -declare class TokenEffectIconRuleElement extends RuleElementPF2e { - static defineSchema(): TokenEffectIconSchema; - afterPrepareData(): void; -} -interface TokenEffectIconRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type TokenEffectIconSchema = RuleElementSchema & { - value: fields.StringField; -}; -export { TokenEffectIconRuleElement }; diff --git a/types/src/module/rules/rule-element/token-image.d.ts b/types/src/module/rules/rule-element/token-image.d.ts deleted file mode 100644 index 35c739bf5..000000000 --- a/types/src/module/rules/rule-element/token-image.d.ts +++ /dev/null @@ -1,83 +0,0 @@ -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * Change the image representing an actor's token - * @category RuleElement - */ -declare class TokenImageRuleElement extends RuleElementPF2e { - static defineSchema(): TokenImageRuleSchema; - afterPrepareData(): void; -} -interface TokenImageRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type TokenImageRuleSchema = RuleElementSchema & { - /** An image or video path */ - value: fields.StringField; - /** Dynamic token ring */ - ring: fields.SchemaField<{ - subject: fields.SchemaField<{ - texture: fields.StringField; - scale: fields.NumberField; - }, { - texture: string; - scale: number; - }, { - texture: string; - scale: number; - }, true, false, false>; - colors: fields.SchemaField<{ - background: fields.ColorField; - ring: fields.ColorField; - }, { - background: HexColorString | null; - ring: HexColorString | null; - }, { - background: Color | null; - ring: Color | null; - }, true, false, true>; - }, { - subject: { - texture: string; - scale: number; - }; - colors: { - background: HexColorString | null; - ring: HexColorString | null; - }; - }, { - subject: { - texture: string; - scale: number; - }; - colors: { - background: Color | null; - ring: Color | null; - }; - }, false, false, false>; - /** An optional scale adjustment */ - scale: fields.NumberField; - /** An optional tint adjustment */ - tint: fields.ColorField; - /** An optional alpha adjustment */ - alpha: fields.AlphaField; - /** Animation options for when the image is applied */ - animation: fields.SchemaField<{ - duration: fields.NumberField; - transition: fields.StringField; - easing: fields.StringField; - name: fields.StringField; - }, { - duration: number | undefined; - transition: TextureTransitionType | undefined; - easing: string | undefined; - name: string | undefined; - }, { - duration: number | undefined; - transition: TextureTransitionType | undefined; - easing: string | undefined; - name: string | undefined; - }, false, true, true>; -}; -export { TokenImageRuleElement }; diff --git a/types/src/module/rules/rule-element/token-light.d.ts b/types/src/module/rules/rule-element/token-light.d.ts deleted file mode 100644 index f0dd7c800..000000000 --- a/types/src/module/rules/rule-element/token-light.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { LightDataSchema } from "types/foundry/common/data/data.d.ts"; -import type { SchemaField } from "types/foundry/common/data/fields.d.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * Add or change the light emitted by a token - * @category RuleElement - */ -declare class TokenLightRuleElement extends RuleElementPF2e { - static defineSchema(): TokenLightRuleSchema; - getLightData(): SourceFromSchema | null; - afterPrepareData(): void; -} -interface TokenLightRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type TokenLightValueSchema = Omit & { - bright: ResolvableValueField; - /** `LightData#color` as an injectable property */ - color: fields.StringField; - dim: ResolvableValueField; -}; -type TokenLightRuleSchema = RuleElementSchema & { - value: SchemaField; -}; -type TokenLightRuleSource = SourceFromSchema; -export { TokenLightRuleElement }; -export type { TokenLightRuleSource }; diff --git a/types/src/module/rules/rule-element/token-mark/prompt.d.ts b/types/src/module/rules/rule-element/token-mark/prompt.d.ts deleted file mode 100644 index 38a3e693b..000000000 --- a/types/src/module/rules/rule-element/token-mark/prompt.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { TokenDocumentPF2e } from "@scene"; -import { Predicate } from "@system/predication.ts"; -/** Prompt the user to target a token */ -declare class MarkTargetPrompt { - #private; - prompt: string; - requirements: TargetRequirements | null; - constructor(params: PromptParameters); - resolveTarget(): Promise>; - activateListeners(): void; -} -interface PromptParameters { - prompt: string | null; - requirements: TargetRequirements | null; -} -interface TargetRequirements { - label: string; - predicate: Predicate; -} -export { MarkTargetPrompt }; diff --git a/types/src/module/rules/rule-element/token-mark/rule-element.d.ts b/types/src/module/rules/rule-element/token-mark/rule-element.d.ts deleted file mode 100644 index a62bcdc00..000000000 --- a/types/src/module/rules/rule-element/token-mark/rule-element.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { SlugField } from "@system/schema-data-fields.ts"; -import { RuleElementPF2e } from "../base.ts"; -import { ModelPropsFromRESchema, RuleElementSchema } from "../data.ts"; -import fields = foundry.data.fields; - -/** Remember a token for later referencing */ -declare class TokenMarkRuleElement extends RuleElementPF2e { - #private; - static defineSchema(): TokenMarkSchema; - preCreate({ ruleSource, itemSource, pendingItems }: RuleElementPF2e.PreCreateParams): Promise; - beforePrepareData(): void; -} -type TokenMarkSchema = Omit & { - slug: SlugField; - uuid: fields.StringField; -}; -interface TokenMarkRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { - slug: string; -} -export { TokenMarkRuleElement }; diff --git a/types/src/module/rules/rule-element/token-name.d.ts b/types/src/module/rules/rule-element/token-name.d.ts deleted file mode 100644 index aa02a4bae..000000000 --- a/types/src/module/rules/rule-element/token-name.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * Change the name representing an actor's token - * @category RuleElement - */ -declare class TokenNameRuleElement extends RuleElementPF2e { - static defineSchema(): TokenNameRuleSchema; - afterPrepareData(): void; -} -interface TokenNameRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type TokenNameRuleSchema = RuleElementSchema & { - value: fields.StringField; -}; -export { TokenNameRuleElement }; diff --git a/types/src/module/rules/rule-element/weapon-potency.d.ts b/types/src/module/rules/rule-element/weapon-potency.d.ts deleted file mode 100644 index 2484475e5..000000000 --- a/types/src/module/rules/rule-element/weapon-potency.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { ActorType } from "@actor/types.ts"; -import { RuleElementPF2e } from "./base.ts"; -import { ModelPropsFromRESchema, ResolvableValueField, RuleElementSchema } from "./data.ts"; -import fields = foundry.data.fields; - -/** - * Copies potency runes from the weapon its attached to, to another weapon based on a predicate. - * @category RuleElement - */ -declare class WeaponPotencyRuleElement extends RuleElementPF2e { - protected static validActorTypes: ActorType[]; - static defineSchema(): WeaponPotencyRuleSchema; - beforePrepareData(): void; -} -interface WeaponPotencyRuleElement extends RuleElementPF2e, ModelPropsFromRESchema { -} -type WeaponPotencyRuleSchema = RuleElementSchema & { - selector: fields.StringField; - value: ResolvableValueField; -}; -export { WeaponPotencyRuleElement }; diff --git a/types/src/module/rules/synthetics.d.ts b/types/src/module/rules/synthetics.d.ts deleted file mode 100644 index 1e84c858d..000000000 --- a/types/src/module/rules/synthetics.d.ts +++ /dev/null @@ -1,159 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { DexterityModifierCapData } from "@actor/character/types.ts"; -import type { LabeledSpeed, SenseData } from "@actor/creature/data.ts"; -import type { - DamageDicePF2e, - DeferredDamageDiceOptions, - DeferredPromise, - DeferredValue, - ModifierAdjustment, - ModifierPF2e, -} from "@actor/modifiers.ts"; -import type { MovementType } from "@actor/types.ts"; -import type { MeleePF2e, WeaponPF2e } from "@item"; -import type { AbilityTrait } from "@item/ability/index.ts"; -import type { ConditionSource, EffectSource } from "@item/base/data/index.ts"; -import type { WeaponRuneSource } from "@item/weapon/data.ts"; -import type { WeaponPropertyRuneType } from "@item/weapon/types.ts"; -import type { ActiveEffectPF2e } from "@module/active-effect.ts"; -import type { RollNotePF2e } from "@module/notes.ts"; -import type { MaterialDamageEffect } from "@system/damage/types.ts"; -import type { DegreeOfSuccessAdjustment } from "@system/degree-of-success.ts"; -import type { Predicate } from "@system/predication.ts"; -import type { Statistic } from "@system/statistic/index.ts"; -import type { TokenSource } from "types/foundry/common/documents/token.d.ts"; -import type { DamageAlteration } from "./rule-element/damage-alteration/alteration.ts"; -import { ItemAlterationRuleElement } from "./rule-element/item-alteration/rule-element.ts"; -import type { Suboption } from "./rule-element/roll-option/data.ts"; -import { SpecialResourceRuleElement } from "./rule-element/special-resource.ts"; - -/** Defines a list of data provided by rule elements that an actor can pull from during its data preparation lifecycle */ -interface RuleElementSynthetics { - criticalSpecializations: { - standard: CritSpecSynthetic[]; - alternate: CritSpecSynthetic[]; - }; - damageAlterations: Record; - damageDice: DamageDiceSynthetics; - degreeOfSuccessAdjustments: Record; - dexterityModifierCaps: DexterityModifierCapData[]; - itemAlterations: ItemAlterationRuleElement[]; - ephemeralEffects: Record; - modifierAdjustments: ModifierAdjustmentSynthetics; - modifiers: ModifierSynthetics; - movementTypes: { - [K in MovementType]?: DeferredMovementType[]; - }; - multipleAttackPenalties: Record; - resources: Record; - rollNotes: Record; - rollSubstitutions: Record; - rollTwice: Record; - senses: SenseSynthetic[]; - statistics: Map; - strikeAdjustments: StrikeAdjustment[]; - strikes: Record; - striking: Record; - toggles: Record>; - tokenEffectIcons: ActiveEffectPF2e[]; - tokenMarks: Map; - tokenOverrides: DeepPartial> & { - alpha?: number | null; - texture?: { - src: ImageFilePath | VideoFilePath; - tint?: Color | null; - } | { - src: ImageFilePath | VideoFilePath; - tint?: Color | null; - scaleX: number; - scaleY: number; - }; - ring?: { - subject: TokenDocument["ring"]["subject"]; - colors: TokenDocument["ring"]["colors"]; - }; - animation?: TokenAnimationOptions; - }; - weaponPotency: Record; -} -type CritSpecEffect = (DamageDicePF2e | ModifierPF2e | RollNotePF2e)[]; -type CritSpecSynthetic = (weapon: WeaponPF2e | MeleePF2e, options: Set) => CritSpecEffect | null; -type DamageDiceSynthetics = { - damage: DeferredDamageDice[]; -} & Record; -type ModifierSynthetics = Record<"all" | "damage", DeferredModifier[]> & Record; -type ModifierAdjustmentSynthetics = { - all: ModifierAdjustment[]; - damage: ModifierAdjustment[]; -} & Record; -type DeferredModifier = DeferredValue; -type DeferredDamageDice = (args: DeferredDamageDiceOptions) => DamageDicePF2e | null; -type DeferredMovementType = DeferredValue; -type DeferredEphemeralEffect = DeferredPromise; -type DeferredStrike = (runes?: WeaponRuneSource) => WeaponPF2e | null; -interface BaseSpeedSynthetic extends Omit { - type: MovementType; - /** - * Whether this speed is derived from a creature's land speed: - * used as a cue to prevent double-application of modifiers - */ - derivedFromLand: boolean; -} -interface MAPSynthetic { - label: string; - penalty: number; - predicate: Predicate; -} -interface RollSubstitution { - slug: string; - label: string; - predicate: Predicate; - value: number; - required: boolean; - selected: boolean; - effectType: "fortune" | "misfortune"; -} -interface RollOptionToggle { - /** The ID of the item with a rule element for this toggle */ - itemId: string; - label: string; - placement: string; - domain: string; - option: string; - suboptions: Suboption[]; - alwaysActive: boolean; - checked: boolean; - enabled: boolean; -} -interface RollTwiceSynthetic { - keep: "higher" | "lower"; - predicate: Predicate; -} -interface SenseSynthetic { - sense: Required; - predicate: Predicate; - force: boolean; -} -interface StrikeAdjustment { - adjustDamageRoll?: (weapon: WeaponPF2e | MeleePF2e, { materials }: { - materials?: Set; - }) => void; - adjustWeapon?: (weapon: WeaponPF2e | MeleePF2e) => void; - adjustTraits?: (weapon: WeaponPF2e | MeleePF2e, traits: AbilityTrait[]) => void; -} -interface StrikingSynthetic { - label: string; - bonus: number; - predicate: Predicate; -} -interface PotencySynthetic { - label: string; - bonus: number; - type: "item" | "potency"; - predicate: Predicate; - property?: WeaponPropertyRuneType[]; -} -export type { BaseSpeedSynthetic, CritSpecEffect, DamageDiceSynthetics, DeferredDamageDice, DeferredEphemeralEffect, DeferredModifier, DeferredMovementType, MAPSynthetic, ModifierAdjustmentSynthetics, ModifierSynthetics, PotencySynthetic, RollOptionToggle, RollSubstitution, RollTwiceSynthetic, RuleElementSynthetics, SenseSynthetic, StrikeAdjustment, StrikingSynthetic, }; diff --git a/types/src/module/scene/ambient-light-document.d.ts b/types/src/module/scene/ambient-light-document.d.ts deleted file mode 100644 index 6d6733d00..000000000 --- a/types/src/module/scene/ambient-light-document.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import type { AmbientLightPF2e } from "@module/canvas/index.ts"; -import type { ScenePF2e } from "./index.ts"; -declare class AmbientLightDocumentPF2e extends AmbientLightDocument { -} -interface AmbientLightDocumentPF2e extends AmbientLightDocument { - get object(): AmbientLightPF2e | null; -} -export { AmbientLightDocumentPF2e }; diff --git a/types/src/module/scene/data.d.ts b/types/src/module/scene/data.d.ts deleted file mode 100644 index 4e07e77d7..000000000 --- a/types/src/module/scene/data.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { ZeroToTwo } from "@module/data.ts"; -interface SceneFlagsPF2e extends DocumentFlags { - pf2e: { - [key: string]: unknown; - hearingRange: number | null; - /** Rules-based vision override for the scene: `null` indicates the world setting is used. */ - rulesBasedVision: boolean | null; - syncDarkness: "enabled" | "disabled" | "default"; - /** The global terrain types for this scene */ - environmentTypes?: EnvironmentType[]; - }; -} -declare enum LightLevels { - DARKNESS = 0.25, - BRIGHT_LIGHT = 0.75 -} -type LightLevel = ZeroToTwo; -type EnvironmentType = keyof typeof CONFIG.PF2E.environmentTypes; -export { LightLevels }; -export type { LightLevel, SceneFlagsPF2e, EnvironmentType }; diff --git a/types/src/module/scene/document.d.ts b/types/src/module/scene/document.d.ts deleted file mode 100644 index 61f44238d..000000000 --- a/types/src/module/scene/document.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { SceneFlagsPF2e } from "./data.ts"; -import type { - AmbientLightDocumentPF2e, - MeasuredTemplateDocumentPF2e, - RegionDocumentPF2e, - TileDocumentPF2e, -} from "./index.ts"; -import { TokenDocumentPF2e } from "./index.ts"; -import type { SceneConfigPF2e } from "./sheet.ts"; - -declare class ScenePF2e extends Scene { - #private; - /** Has this document completed `DataModel` initialization? */ - initialized: boolean; - /** Is the rules-based vision setting enabled? */ - get rulesBasedVision(): boolean; - get hearingRange(): number | null; - /** Is this scene's darkness value synced to the world time? */ - get darknessSyncedToTime(): boolean; - get lightLevel(): number; - get isBright(): boolean; - get isDimlyLit(): boolean; - get isDark(): boolean; - /** Whether this scene is "in focus": the active scene, or the viewed scene if only a single GM is logged in */ - get isInFocus(): boolean; - protected _initialize(options?: Record): void; - /** - * Prevent double data preparation of child documents. - * @removeme in V13 - */ - prepareData(): void; - /** Toggle Unrestricted Global Vision according to scene darkness level */ - prepareBaseData(): void; - _onUpdate(changed: DeepPartial, operation: SceneUpdateOperation, userId: string): void; - protected _onUpdateDescendantDocuments(parent: this, collection: string, documents: ClientDocument[], changes: object[], options: DatabaseUpdateOperation, userId: string): void; - protected _onDeleteDescendantDocuments(parent: this, collection: string, documents: foundry.abstract.Document[], ids: string[], operation: DatabaseDeleteOperation, userId: string): void; -} -interface ScenePF2e extends Scene { - flags: SceneFlagsPF2e; - /** Check for auras containing newly-placed or moved tokens (added as a debounced method) */ - checkAuras(): void; - readonly lights: foundry.abstract.EmbeddedCollection>; - readonly regions: foundry.abstract.EmbeddedCollection>; - readonly templates: foundry.abstract.EmbeddedCollection>; - readonly tiles: foundry.abstract.EmbeddedCollection>; - readonly tokens: foundry.abstract.EmbeddedCollection>; - get sheet(): SceneConfigPF2e; -} -export { ScenePF2e }; diff --git a/types/src/module/scene/helpers.d.ts b/types/src/module/scene/helpers.d.ts deleted file mode 100644 index c9eb12764..000000000 --- a/types/src/module/scene/helpers.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { ActorPF2e } from "@actor"; -import type { CreaturePF2e } from "@actor/creature/document.ts"; -import { PrototypeTokenPF2e } from "@actor/data/base.ts"; -import type { TokenDocumentPF2e } from "@scene"; - -/** Check for auras containing newly-placed or moved tokens */ -declare const checkAuras: () => void; -/** Assigns detection modes and sight settings for either a token or prototype token assuming RBV is enabled. */ -declare function computeSightAndDetectionForRBV(token: TokenDocumentPF2e | PrototypeTokenPF2e): void; -/** Returns true if this token has the default actor image or the default image for its actor type */ -declare function isDefaultTokenImage(token: TokenDocumentPF2e | PrototypeTokenPF2e): boolean; -export { checkAuras, computeSightAndDetectionForRBV, isDefaultTokenImage }; diff --git a/types/src/module/scene/index.d.ts b/types/src/module/scene/index.d.ts deleted file mode 100644 index 6f5223bbc..000000000 --- a/types/src/module/scene/index.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export { ScenePF2e } from "./document.ts"; -export { AmbientLightDocumentPF2e } from "./ambient-light-document.ts"; -export { MeasuredTemplateDocumentPF2e } from "./measured-template-document.ts"; -export * from "./region-behavior/index.ts"; -export { RegionDocumentPF2e } from "./region-document/document.ts"; -export { TileDocumentPF2e } from "./tile-document.ts"; -export { TokenDocumentPF2e } from "./token-document/index.ts"; diff --git a/types/src/module/scene/measured-template-document.d.ts b/types/src/module/scene/measured-template-document.d.ts deleted file mode 100644 index 42168e181..000000000 --- a/types/src/module/scene/measured-template-document.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import type { EffectAreaShape } from "@item/spell/types.ts"; -import type { MeasuredTemplatePF2e } from "@module/canvas/measured-template.ts"; -import { ItemOriginFlag } from "@module/chat-message/data.ts"; -import type { ChatMessagePF2e } from "@module/chat-message/document.ts"; -import type { ScenePF2e } from "./document.ts"; -declare class MeasuredTemplateDocumentPF2e extends MeasuredTemplateDocument { - get actor(): ActorPF2e | null; - get item(): ItemPF2e | null; - /** The chat message from which this template was spawned */ - get message(): ChatMessagePF2e | null; - get areaShape(): EffectAreaShape | null; - /** Ensure the source has a `pf2e` flag along with an `areaShape` if directly inferable. */ - protected _initializeSource(data: object, options?: DataModelConstructionOptions): this["_source"]; - /** If present, show the clear-template button on the message from which this template was spawned */ - protected _onCreate(data: this["_source"], operation: DatabaseCreateOperation, userId: string): void; - /** If present, hide the clear-template button on the message from which this template was spawned */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface MeasuredTemplateDocumentPF2e extends MeasuredTemplateDocument { - get object(): MeasuredTemplatePF2e | null; - flags: DocumentFlags & { - pf2e: { - messageId?: string; - origin?: ItemOriginFlag; - areaShape: EffectAreaShape | null; - }; - }; -} -export { MeasuredTemplateDocumentPF2e }; diff --git a/types/src/module/scene/region-behavior/document.d.ts b/types/src/module/scene/region-behavior/document.d.ts deleted file mode 100644 index 13d981535..000000000 --- a/types/src/module/scene/region-behavior/document.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import type { RegionDocumentPF2e } from "@scene"; -declare class RegionBehaviorPF2e extends RegionBehavior { - protected _onUpdate(data: DeepPartial, operation: DatabaseUpdateOperation, userId: string): void; -} -export { RegionBehaviorPF2e }; diff --git a/types/src/module/scene/region-behavior/environment-feature.d.ts b/types/src/module/scene/region-behavior/environment-feature.d.ts deleted file mode 100644 index 435d60ee3..000000000 --- a/types/src/module/scene/region-behavior/environment-feature.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { ZeroToTwo } from "@module/data.ts"; -import { RegionBehaviorPF2e } from "./document.ts"; -import fields = foundry.data.fields; -declare class EnvironmentFeatureBehaviorType extends foundry.data.regionBehaviors.RegionBehaviorType { - static defineSchema(): EnvironmentFeatureTypeSchema; -} -interface EnvironmentFeatureBehaviorType extends foundry.data.regionBehaviors.RegionBehaviorType, ModelPropsFromSchema { -} -type EnvironmentFeatureTypeSchema = { - terrain: fields.SchemaField<{ - difficult: fields.NumberField; - }>; -}; -export { EnvironmentFeatureBehaviorType }; diff --git a/types/src/module/scene/region-behavior/environment.d.ts b/types/src/module/scene/region-behavior/environment.d.ts deleted file mode 100644 index 8ddabd6f2..000000000 --- a/types/src/module/scene/region-behavior/environment.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import type { RegionEventType } from "types/foundry/client-esm/data/region-behaviors/base.d.ts"; -import type { SetField, StringField } from "types/foundry/common/data/fields.d.ts"; -import { RegionBehaviorPF2e } from "./document.ts"; -import { RegionEventPF2e } from "./types.ts"; -declare class EnvironmentBehaviorType extends foundry.data.regionBehaviors.RegionBehaviorType { - events: Set; - static defineSchema(): EnvironmentTypeSchema; - protected _handleRegionEvent(event: RegionEventPF2e): Promise; -} -interface EnvironmentBehaviorType extends foundry.data.regionBehaviors.RegionBehaviorType, ModelPropsFromSchema { -} -type EnvironmentTypeSchema = { - environmentTypes: SetField; - mode: StringField<"add" | "remove" | "override">; -}; -type EnvironmentTypeData = ModelPropsFromSchema; -type EnvironmentTypeSource = SourceFromSchema; -export { EnvironmentBehaviorType }; -export type { EnvironmentTypeData, EnvironmentTypeSource }; diff --git a/types/src/module/scene/region-behavior/index.d.ts b/types/src/module/scene/region-behavior/index.d.ts deleted file mode 100644 index 7eeb1117a..000000000 --- a/types/src/module/scene/region-behavior/index.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "./document.ts"; -export * from "./environment-feature.ts"; -export * from "./environment.ts"; -export * from "./types.ts"; diff --git a/types/src/module/scene/region-behavior/types.d.ts b/types/src/module/scene/region-behavior/types.d.ts deleted file mode 100644 index 58564d8ec..000000000 --- a/types/src/module/scene/region-behavior/types.d.ts +++ /dev/null @@ -1,44 +0,0 @@ -import type { UserPF2e } from "@module/user/document.ts"; -import type { EnvironmentBehaviorType, EnvironmentFeatureBehaviorType, RegionBehaviorPF2e, RegionDocumentPF2e } from "@scene"; -import type { DIFFICULT_TERRAIN_GRADES } from "./values.ts"; -import coreBehaviors = foundry.data.regionBehaviors; -type RegionEventPF2e = RegionEvent; -interface AdjustDarknessLevelRegionBehavior extends RegionBehaviorPF2e { - type: "adjustDarknessLevel"; - system: coreBehaviors.AdjustDarknessLevelRegionBehaviorType; -} -interface ExecuteMacroRegionBehavior extends RegionBehaviorPF2e { - type: "executeMacro"; - system: coreBehaviors.ExecuteMacroRegionBehaviorType; -} -interface ExecuteScriptRegionBehavior extends RegionBehaviorPF2e { - type: "executeScript"; - system: coreBehaviors.ExecuteScriptRegionBehaviorType; -} -interface PauseGameRegionBehavior extends RegionBehaviorPF2e { - type: "pauseGame"; - system: coreBehaviors.PauseGameRegionBehaviorType; -} -interface SuppressWeatherRegionBehavior extends RegionBehaviorPF2e { - type: "suppressWeather"; - system: coreBehaviors.SuppressWeatherRegionBehaviorType; -} -interface TeleportTokenRegionBehavior extends RegionBehaviorPF2e { - type: "teleportToken"; - system: coreBehaviors.TeleportTokenRegionBehaviorType; -} -interface ToggleBehaviorRegionBehavior extends RegionBehaviorPF2e { - type: "toggleBehavior"; - system: coreBehaviors.ToggleBehaviorRegionBehaviorType; -} -interface EnvironmentRegionBehavior extends RegionBehaviorPF2e { - type: "environment"; - system: EnvironmentBehaviorType; -} -interface EnvironmentFeatureRegionBehavior extends RegionBehaviorPF2e { - type: "environmentFeature"; - system: EnvironmentFeatureBehaviorType; -} -type SpecificRegionBehavior = AdjustDarknessLevelRegionBehavior | ExecuteMacroRegionBehavior | ExecuteScriptRegionBehavior | PauseGameRegionBehavior | SuppressWeatherRegionBehavior | TeleportTokenRegionBehavior | ToggleBehaviorRegionBehavior | EnvironmentRegionBehavior | EnvironmentFeatureRegionBehavior; -type DifficultTerrainGrade = (typeof DIFFICULT_TERRAIN_GRADES)[keyof typeof DIFFICULT_TERRAIN_GRADES]; -export type { DifficultTerrainGrade, EnvironmentFeatureRegionBehavior, EnvironmentRegionBehavior, RegionEventPF2e, SpecificRegionBehavior, }; diff --git a/types/src/module/scene/region-behavior/values.d.ts b/types/src/module/scene/region-behavior/values.d.ts deleted file mode 100644 index af392eae7..000000000 --- a/types/src/module/scene/region-behavior/values.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -declare const DIFFICULT_TERRAIN_GRADES: { - readonly NONE: 0; - readonly DIFFICULT: 1; - readonly GREATER: 2; -}; -export { DIFFICULT_TERRAIN_GRADES }; diff --git a/types/src/module/scene/region-document/document.d.ts b/types/src/module/scene/region-document/document.d.ts deleted file mode 100644 index edc958c2c..000000000 --- a/types/src/module/scene/region-document/document.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { RegionPF2e } from "@module/canvas/region.ts"; -import type { ScenePF2e } from "@scene"; -import type { SpecificRegionBehavior } from "@scene/region-behavior/types.ts"; -declare class RegionDocumentPF2e extends RegionDocument { - /** Set an informal top-left coordinate pair from the coordinates minima of all embedded shapes. */ - get x(): number; - get y(): number; - set x(value: number); - set y(value: number); -} -interface RegionDocumentPF2e extends RegionDocument { - readonly behaviors: foundry.abstract.EmbeddedCollection>; - _object: RegionPF2e; -} -export { RegionDocumentPF2e }; diff --git a/types/src/module/scene/sheet.d.ts b/types/src/module/scene/sheet.d.ts deleted file mode 100644 index 4bbed511e..000000000 --- a/types/src/module/scene/sheet.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -/// -/// -/// -import type { ScenePF2e } from "./document.ts"; -export declare class SceneConfigPF2e extends SceneConfig { - #private; - get scene(): TDocument; - protected _renderInner(data: FormApplicationData, options: RenderOptions): Promise; - activateListeners($html: JQuery): void; - /** Intercept flag update and change to boolean/null. */ - protected _updateObject(event: Event, formData: Record): Promise; -} diff --git a/types/src/module/scene/tile-document.d.ts b/types/src/module/scene/tile-document.d.ts deleted file mode 100644 index a82dc4695..000000000 --- a/types/src/module/scene/tile-document.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type { ScenePF2e } from "./document.ts"; -export declare class TileDocumentPF2e extends TileDocument { -} diff --git a/types/src/module/scene/token-document/actor-delta.d.ts b/types/src/module/scene/token-document/actor-delta.d.ts deleted file mode 100644 index b204df1dd..000000000 --- a/types/src/module/scene/token-document/actor-delta.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -import { ActorSystemSource } from "@actor/data/base.ts"; -import type { ActorDeltaSource } from "types/foundry/common/documents/actor-delta.d.ts"; -import type { TokenDocumentPF2e } from "./document.ts"; - -declare class ActorDeltaPF2e extends ActorDelta { - /** Following synthetic actor updates, send the `Token` a fake update notification to trigger redraws */ - protected _onUpdate(changed: DeepPartial, options: DatabaseUpdateOperation, userId: string): void; - /** Following synthetic actor item updates, send the `Token` a fake update notification to trigger redraws */ - _dispatchDescendantDocumentEvents(event: string, collection: string, args: [object[], ...unknown[]], parent: ClientDocument | undefined): void; -} -interface ActorDeltaPF2e extends ActorDelta { - readonly _source: ActorDeltaSourcePF2e; -} -type ActorDeltaSourcePF2e = ActorDeltaSource & { - system: ActorSystemSource | null; -}; -export { ActorDeltaPF2e }; diff --git a/types/src/module/scene/token-document/aura/index.d.ts b/types/src/module/scene/token-document/aura/index.d.ts deleted file mode 100644 index 1991ff6ad..000000000 --- a/types/src/module/scene/token-document/aura/index.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { AuraAppearanceData, AuraData, AuraEffectData } from "@actor/types.ts"; -import { ItemTrait } from "@item/base/data/system.ts"; -import { EffectAreaSquare } from "@module/canvas/effect-area-square.ts"; -import type { ScenePF2e, TokenDocumentPF2e } from "@scene"; -import type { TokenAuraData } from "./types.ts"; -declare class TokenAura implements TokenAuraData { - #private; - slug: string; - token: TokenDocumentPF2e; - level: number | null; - /** The radius of the aura in feet */ - radius: number; - traits: ItemTrait[]; - effects: AuraEffectData[]; - appearance: AuraAppearanceData; - constructor(params: TokenAuraParams); - /** The aura radius from the center in pixels */ - get radiusPixels(): number; - get scene(): ScenePF2e; - get bounds(): PIXI.Rectangle; - get center(): Point; - /** The squares covered by this aura */ - get squares(): EffectAreaSquare[]; - /** Does this aura overlap with (at least part of) a token? */ - containsToken(token: TokenDocumentPF2e): boolean; - /** Notify tokens' actors if they are inside this aura. */ - notifyActors(): Promise; -} -interface TokenAuraParams extends Omit { - slug: string; - level: number | null; - radius: number; - token: TokenDocumentPF2e; - traits: ItemTrait[]; - effects: AuraEffectData[]; -} -export { TokenAura, TokenAuraData }; diff --git a/types/src/module/scene/token-document/aura/types.d.ts b/types/src/module/scene/token-document/aura/types.d.ts deleted file mode 100644 index e2c1c7d02..000000000 --- a/types/src/module/scene/token-document/aura/types.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { AuraAppearanceData } from "@actor/types.ts"; -import { ItemTrait } from "@item/base/data/system.ts"; -import type { TokenPF2e } from "@module/canvas/index.ts"; -import type { TokenDocumentPF2e } from "../index.ts"; -interface TokenAuraData { - /** The radius of the aura, measured in feet from the boundary of a token's space */ - radius: number; - /** The token from which this aura is emanating */ - token: TokenPF2e | TokenDocumentPF2e; - /** The rectangle defining this aura's space */ - bounds: PIXI.Rectangle; - /** The pixel-coordinate radius of this aura, measured from the center */ - radiusPixels: number; - appearance: AuraAppearanceData; - /** Traits (especially "visual" and "auditory") associated with this aura */ - traits: ItemTrait[]; -} -export type { TokenAuraData }; diff --git a/types/src/module/scene/token-document/clown-car.d.ts b/types/src/module/scene/token-document/clown-car.d.ts deleted file mode 100644 index bcaff67a1..000000000 --- a/types/src/module/scene/token-document/clown-car.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { PartyPF2e } from "@actor"; -import type { ScenePF2e, TokenDocumentPF2e } from "@scene"; -/** A helper class to manage a party token's loaded/unloaded state */ -declare class PartyClownCar { - #private; - party: PartyPF2e; - token: TokenDocumentPF2e; - constructor(token: TokenDocumentPF2e); - get scene(): ScenePF2e; - get memberTokens(): TokenDocumentPF2e[]; - toggleState(): Promise; -} -export { PartyClownCar }; diff --git a/types/src/module/scene/token-document/data.d.ts b/types/src/module/scene/token-document/data.d.ts deleted file mode 100644 index 8805e96b6..000000000 --- a/types/src/module/scene/token-document/data.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -import type { TokenSchema } from "types/foundry/common/documents/token.d.ts"; -type TokenFlagsPF2e = DocumentFlags & { - pf2e: { - [key: string]: unknown; - linkToActorSize: boolean; - autoscale: boolean; - }; - [key: string]: Record; -}; -type DetectionModeEntry = ModelPropsFromSchema["detectionModes"][number]; -export type { DetectionModeEntry, TokenFlagsPF2e }; diff --git a/types/src/module/scene/token-document/document.d.ts b/types/src/module/scene/token-document/document.d.ts deleted file mode 100644 index ca6816485..000000000 --- a/types/src/module/scene/token-document/document.d.ts +++ /dev/null @@ -1,91 +0,0 @@ -import { ActorPF2e } from "@actor"; -import type { PrototypeTokenPF2e } from "@actor/data/base.ts"; -import type { TokenPF2e } from "@module/canvas/index.ts"; -import type { CombatantPF2e, EncounterPF2e } from "@module/encounter/index.ts"; -import { DifficultTerrainGrade, RegionDocumentPF2e } from "@scene"; -import type { ScenePF2e } from "../document.ts"; -import { TokenAura } from "./aura/index.ts"; -import { TokenFlagsPF2e } from "./data.ts"; -import type { TokenConfigPF2e } from "./sheet.ts"; - -declare class TokenDocumentPF2e extends TokenDocument { - #private; - /** Has this document completed `DataModel` initialization? */ - initialized: boolean; - auras: Map; - /** Returns if the token is in combat, though some actors have different conditions */ - get inCombat(): boolean; - /** This should be in Foundry core, but ... */ - get scene(): this["parent"]; - /** Is this token emitting light with a negative value */ - get emitsDarkness(): boolean; - get rulesBasedVision(): boolean; - /** Is rules-based vision enabled, and does this token's actor have low-light vision (inclusive of darkvision)? */ - get hasLowLightVision(): boolean; - /** Is rules-based vision enabled, and does this token's actor have darkvision vision? */ - get hasDarkvision(): boolean; - /** Is this token's dimensions linked to its actor's size category? */ - get linkToActorSize(): boolean; - /** Is this token's scale locked at 1 or (for small creatures) 0.8? */ - get autoscale(): boolean; - get playersCanSeeName(): boolean; - /** The pixel-coordinate definition of this token's space */ - get bounds(): PIXI.Rectangle; - /** Bounds used for mechanics, such as flanking and drawing auras */ - get mechanicalBounds(): PIXI.Rectangle; - /** The pixel-coordinate pair constituting this token's center */ - get center(): Point; - /** The grade of difficult terrain at this token's position */ - get difficultTerrain(): DifficultTerrainGrade; - /** Check actor for effects found in `CONFIG.specialStatusEffects` */ - hasStatusEffect(statusId: string): boolean; - /** Filter trackable attributes for relevance and avoidance of circular references */ - static getTrackedAttributes(data?: Record, _path?: string[]): TrackedAttributesDescription; - static getTrackedAttributeChoices(attributes?: TrackedAttributesDescription): TrackedAttributesDescription; - /** Make stamina, resolve, and shield HP editable despite not being present in template.json */ - getBarAttribute(barName: string, options?: { - alternative?: string; - }): TokenResourceData | null; - protected _initialize(options?: Record): void; - /** - * If embedded, don't prepare data if the parent hasn't finished initializing. - * @removeme in V13 - */ - prepareData(): void; - /** If rules-based vision is enabled, disable manually configured vision radii */ - prepareBaseData(): void; - /** Set vision and detection modes based on actor data */ - protected _prepareDetectionModes(): void; - /** Ensure that actors that don't allow synthetics are linked */ - protected _preCreate(data: this["_source"], options: DatabaseCreateOperation, user: User>): Promise; - /** Ensure that actors that don't allow synthetics stay linked */ - protected _preUpdate(data: Record, options: TokenUpdateOperation, user: User>): Promise; - /** Synchronize the token image with the actor image if the token does not currently have an image */ - static assignDefaultImage(token: TokenDocumentPF2e | PrototypeTokenPF2e): void; - /** Set a TokenData instance's dimensions from actor data. Static so actors can use for their prototypes */ - static prepareSize(token: TokenDocumentPF2e | PrototypeTokenPF2e): void; - /** Set a token's initiative on the current encounter, creating a combatant if necessary */ - setInitiative({ initiative, sendMessage, }: { - initiative: number; - sendMessage?: boolean; - }): Promise; - /** - * Use actor updates (real or otherwise) that propagate down to ephemeral token changes to provoke canvas object - * re-rendering. - */ - simulateUpdate(actorUpdates?: Record): void; - /** Toggle token hiding if this token's actor is a loot actor */ - protected _onCreate(data: this["_source"], operation: DatabaseCreateOperation, userId: string): void; - protected _onUpdate(changed: DeepPartial, operation: TokenUpdateOperation, userId: string): void; - protected _onRelatedUpdate(update: Record | undefined, operation: DatabaseUpdateOperation): void; - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -interface TokenDocumentPF2e extends TokenDocument { - flags: TokenFlagsPF2e; - regions: Set> | null; - get actor(): ActorPF2e | null; - get combatant(): CombatantPF2e | null; - get object(): TokenPF2e | null; - get sheet(): TokenConfigPF2e; -} -export { TokenDocumentPF2e }; diff --git a/types/src/module/scene/token-document/index.d.ts b/types/src/module/scene/token-document/index.d.ts deleted file mode 100644 index c91ea2fb2..000000000 --- a/types/src/module/scene/token-document/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export { TokenConfigPF2e } from "./sheet.ts"; -export { TokenDocumentPF2e } from "./document.ts"; diff --git a/types/src/module/scene/token-document/sheet.d.ts b/types/src/module/scene/token-document/sheet.d.ts deleted file mode 100644 index f95a14be8..000000000 --- a/types/src/module/scene/token-document/sheet.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -/// -/// -/// -import type { TokenDocumentPF2e } from "./index.ts"; -declare class TokenConfigPF2e extends TokenConfig { - #private; - static get defaultOptions(): DocumentSheetOptions; - /** Get this token's dimensions were they linked to its actor's size */ - get dimensionsFromActorSize(): number; - get rulesBasedVision(): boolean; - getData(options?: DocumentSheetOptions): Promise>; - protected _getFilePickerOptions(event: PointerEvent): FilePickerOptions; - /** Hide token-sight settings when rules-based vision is enabled */ - activateListeners($html: JQuery): void; - /** Readd scale property to form data if input is disabled: necessary for mirroring checkboxes to function */ - protected _getSubmitData(updateData?: Record | null): Record; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface TokenConfigDataPF2e extends TokenConfigData { - /** Whether the token can be linked to its actor's size */ - sizeLinkable: boolean; - linkToSizeTitle: string; - autoscaleTitle: string; -} -export { TokenConfigPF2e }; diff --git a/types/src/module/sheet/helpers.d.ts b/types/src/module/sheet/helpers.d.ts deleted file mode 100644 index 20fcaed21..000000000 --- a/types/src/module/sheet/helpers.d.ts +++ /dev/null @@ -1,90 +0,0 @@ -/// -import { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; - -/** Prepare form options on an item or actor sheet */ -declare function createSheetOptions(options: Record, selections?: SheetSelections, { selected }?: { - selected?: boolean | undefined; -}): SheetOptions; -declare function createSheetTags(options: Record, selections: SheetSelections): SheetOptions; -declare function createTagifyTraits(traits: Iterable, { sourceTraits, record }: TagifyTraitOptions): TagifyEntry[]; -/** - * Get a CSS class for an adjusted value - * @param value A value from prepared/derived data - * @param base A value from base/source data - * @param options.better Which value is "better" in the context of the data: default is "higher" - **/ -declare function getAdjustment(value: number, base: number, { better }?: { - better?: "higher" | "lower"; -}): "adjusted-higher" | "adjusted-lower" | null; -declare function getAdjustedValue(value: number, reference: number, options?: { - better?: "higher" | "lower"; -}): AdjustedValue; -interface AdjustedValue { - value: number; - adjustedHigher: boolean; - adjustedLower: boolean; - adjustmentClass: "adjusted-higher" | "adjusted-lower" | null; -} -/** Override to refocus tagify elements in _render() to workaround handlebars full re-render */ -declare function maintainFocusInRender(sheet: Application, renderLogic: () => Promise): Promise; -declare function getItemFromDragEvent(event: DragEvent): Promise; -/** Returns statistic dialog roll parameters based on held keys */ -type ParamsFromEvent = { - skipDialog: boolean; - rollMode?: RollMode | "roll"; -}; -/** Set roll mode and dialog skipping from a user's input */ -declare function eventToRollParams(event: Maybe, rollType: { - type: "check" | "damage"; -}): ParamsFromEvent; -/** Set roll mode from a user's input: used for messages that are not actually rolls. */ -declare function eventToRollMode(event: Maybe): RollMode | "roll"; -/** Given a uuid, loads the item and sends it to chat, potentially recontextualizing it with a given actor */ -declare function sendItemToChat(itemUuid: ItemUUID, options: { - event?: Event; - actor?: ActorPF2e; -}): Promise; -/** Creates a listener that can be used to create tooltips with dynamic content */ -declare function createTooltipListener(element: HTMLElement, options: { - /** Controls if the top edge of this tooltip aligns with the top edge of the target */ - align?: "top"; - /** If given, the tooltip will spawn on elements that match this selector */ - selector?: string; - locked?: boolean; - direction?: TooltipActivationOptions["direction"]; - cssClass?: string; - render: (element: HTMLElement) => Promise; -}): void; -interface SheetOption { - value: string; - label: string; - selected: boolean; -} -type SheetOptions = Record; -type SheetSelections = { - value: (string | number)[]; -} | (string[] & { - custom?: never; -}); -interface TagifyTraitOptions { - sourceTraits?: Iterable; - record?: Record; -} -interface TagifyEntry { - id: string; - value: string; - /** If true, the tag will exist in tagify but unremovable. */ - readonly: boolean; - /** - * If true, it will be hidden from tagify itself but exist in submit data. - * Tagify treats any value as true, even false or null. - */ - hidden?: true; -} -export { createSheetOptions, createSheetTags, createTagifyTraits, createTooltipListener, eventToRollMode, eventToRollParams, getAdjustedValue, getAdjustment, getItemFromDragEvent, maintainFocusInRender, sendItemToChat, }; -export type { AdjustedValue, SheetOption, SheetOptions, TagifyEntry }; diff --git a/types/src/module/system/action-macros/acrobatics/balance.d.ts b/types/src/module/system/action-macros/acrobatics/balance.d.ts deleted file mode 100644 index 7a6981149..000000000 --- a/types/src/module/system/action-macros/acrobatics/balance.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function balance(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { balance as legacy, action }; diff --git a/types/src/module/system/action-macros/acrobatics/maneuver-in-flight.d.ts b/types/src/module/system/action-macros/acrobatics/maneuver-in-flight.d.ts deleted file mode 100644 index 38fa4df70..000000000 --- a/types/src/module/system/action-macros/acrobatics/maneuver-in-flight.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function maneuverInFlight(options: SkillActionOptions): Promise; -declare const action: SingleCheckAction; -export { maneuverInFlight as legacy, action }; diff --git a/types/src/module/system/action-macros/acrobatics/squeeze.d.ts b/types/src/module/system/action-macros/acrobatics/squeeze.d.ts deleted file mode 100644 index 9e149be3c..000000000 --- a/types/src/module/system/action-macros/acrobatics/squeeze.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function squeeze(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { squeeze as legacy, action }; diff --git a/types/src/module/system/action-macros/acrobatics/tumble-through.d.ts b/types/src/module/system/action-macros/acrobatics/tumble-through.d.ts deleted file mode 100644 index b0b615fcc..000000000 --- a/types/src/module/system/action-macros/acrobatics/tumble-through.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function tumbleThrough(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { tumbleThrough as legacy, action }; diff --git a/types/src/module/system/action-macros/ancestry/automaton/arcane-slam.d.ts b/types/src/module/system/action-macros/ancestry/automaton/arcane-slam.d.ts deleted file mode 100644 index dc9772261..000000000 --- a/types/src/module/system/action-macros/ancestry/automaton/arcane-slam.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { SkillActionOptions } from "../../index.ts"; -export declare function arcaneSlam(options: SkillActionOptions): void; diff --git a/types/src/module/system/action-macros/athletics/climb.d.ts b/types/src/module/system/action-macros/athletics/climb.d.ts deleted file mode 100644 index 8633b16dd..000000000 --- a/types/src/module/system/action-macros/athletics/climb.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function climb(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { climb as legacy, action }; diff --git a/types/src/module/system/action-macros/athletics/disarm.d.ts b/types/src/module/system/action-macros/athletics/disarm.d.ts deleted file mode 100644 index ded427952..000000000 --- a/types/src/module/system/action-macros/athletics/disarm.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -import { ItemPF2e } from "@item"; -import { CheckContextData, CheckContextOptions, CheckMacroContext } from "@system/action-macros/types.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function disarm(options: SkillActionOptions): void; -declare class DisarmActionVariant extends SingleCheckActionVariant { - protected checkContext>(opts: CheckContextOptions, data: CheckContextData): CheckMacroContext | undefined; -} -declare class DisarmAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): DisarmActionVariant; -} -declare const action: DisarmAction; -export { action, disarm as legacy }; diff --git a/types/src/module/system/action-macros/athletics/force-open.d.ts b/types/src/module/system/action-macros/athletics/force-open.d.ts deleted file mode 100644 index 4b7303017..000000000 --- a/types/src/module/system/action-macros/athletics/force-open.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.js"; -declare function forceOpen(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { forceOpen as legacy, action }; diff --git a/types/src/module/system/action-macros/athletics/grapple.d.ts b/types/src/module/system/action-macros/athletics/grapple.d.ts deleted file mode 100644 index 198f12f5e..000000000 --- a/types/src/module/system/action-macros/athletics/grapple.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -import { ItemPF2e } from "@item"; -import { CheckContextData, CheckContextOptions, CheckMacroContext } from "@system/action-macros/types.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function grapple(options: SkillActionOptions): void; -declare class GrappleActionVariant extends SingleCheckActionVariant { - protected checkContext>(opts: CheckContextOptions, data: CheckContextData): CheckMacroContext | undefined; -} -declare class GrappleAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): GrappleActionVariant; -} -declare const action: GrappleAction; -export { action, grapple as legacy }; diff --git a/types/src/module/system/action-macros/athletics/high-jump.d.ts b/types/src/module/system/action-macros/athletics/high-jump.d.ts deleted file mode 100644 index 7d65e5b90..000000000 --- a/types/src/module/system/action-macros/athletics/high-jump.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function highJump(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { highJump as legacy, action }; diff --git a/types/src/module/system/action-macros/athletics/long-jump.d.ts b/types/src/module/system/action-macros/athletics/long-jump.d.ts deleted file mode 100644 index 96ed43959..000000000 --- a/types/src/module/system/action-macros/athletics/long-jump.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function longJump(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { longJump as legacy, action }; diff --git a/types/src/module/system/action-macros/athletics/reposition.d.ts b/types/src/module/system/action-macros/athletics/reposition.d.ts deleted file mode 100644 index 1ed8f368a..000000000 --- a/types/src/module/system/action-macros/athletics/reposition.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function reposition(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { reposition as legacy, action }; diff --git a/types/src/module/system/action-macros/athletics/shove.d.ts b/types/src/module/system/action-macros/athletics/shove.d.ts deleted file mode 100644 index 17a0c8bad..000000000 --- a/types/src/module/system/action-macros/athletics/shove.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -import { ItemPF2e } from "@item"; -import { CheckContextData, CheckContextOptions, CheckMacroContext } from "@system/action-macros/types.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function shove(options: SkillActionOptions): void; -declare class ShoveActionVariant extends SingleCheckActionVariant { - protected checkContext>(opts: CheckContextOptions, data: CheckContextData): CheckMacroContext | undefined; -} -declare class ShoveAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): ShoveActionVariant; -} -declare const action: ShoveAction; -export { action, shove as legacy }; diff --git a/types/src/module/system/action-macros/athletics/swim.d.ts b/types/src/module/system/action-macros/athletics/swim.d.ts deleted file mode 100644 index ed52573cd..000000000 --- a/types/src/module/system/action-macros/athletics/swim.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function swim(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { swim as legacy, action }; diff --git a/types/src/module/system/action-macros/athletics/trip.d.ts b/types/src/module/system/action-macros/athletics/trip.d.ts deleted file mode 100644 index 17d878433..000000000 --- a/types/src/module/system/action-macros/athletics/trip.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -import { ItemPF2e } from "@item"; -import { CheckContextData, CheckContextOptions, CheckMacroContext } from "@system/action-macros/types.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function trip(options: SkillActionOptions): void; -declare class TripActionVariant extends SingleCheckActionVariant { - protected checkContext>(opts: CheckContextOptions, data: CheckContextData): CheckMacroContext | undefined; -} -declare class TripAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): TripActionVariant; -} -declare const action: TripAction; -export { action, trip as legacy }; diff --git a/types/src/module/system/action-macros/athletics/whirling-throw.d.ts b/types/src/module/system/action-macros/athletics/whirling-throw.d.ts deleted file mode 100644 index 0d6759f5e..000000000 --- a/types/src/module/system/action-macros/athletics/whirling-throw.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -export declare function whirlingThrow(options: SkillActionOptions): void; diff --git a/types/src/module/system/action-macros/basic/aid.d.ts b/types/src/module/system/action-macros/basic/aid.d.ts deleted file mode 100644 index 2e29d03bf..000000000 --- a/types/src/module/system/action-macros/basic/aid.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -declare class AidAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): SingleCheckActionVariant; -} -declare const aid: AidAction; -export { aid }; diff --git a/types/src/module/system/action-macros/basic/crawl.d.ts b/types/src/module/system/action-macros/basic/crawl.d.ts deleted file mode 100644 index a977de892..000000000 --- a/types/src/module/system/action-macros/basic/crawl.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const crawl: SimpleAction; -export { crawl }; diff --git a/types/src/module/system/action-macros/basic/delay.d.ts b/types/src/module/system/action-macros/basic/delay.d.ts deleted file mode 100644 index cef0e8b39..000000000 --- a/types/src/module/system/action-macros/basic/delay.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const delay: SimpleAction; -export { delay }; diff --git a/types/src/module/system/action-macros/basic/drop-prone.d.ts b/types/src/module/system/action-macros/basic/drop-prone.d.ts deleted file mode 100644 index b4935b2e5..000000000 --- a/types/src/module/system/action-macros/basic/drop-prone.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { SimpleAction, SimpleActionVariant, SimpleActionVariantData } from "@actor/actions/index.ts"; -declare class DropProneAction extends SimpleAction { - constructor(); - protected toActionVariant(data?: SimpleActionVariantData): SimpleActionVariant; -} -declare const dropProne: DropProneAction; -export { dropProne }; diff --git a/types/src/module/system/action-macros/basic/escape.d.ts b/types/src/module/system/action-macros/basic/escape.d.ts deleted file mode 100644 index 3a11fdde3..000000000 --- a/types/src/module/system/action-macros/basic/escape.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ActorPF2e } from "@actor"; -import { ActionCheckPreview, SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -import type { ItemPF2e } from "@item"; -import type { CheckContextData, CheckContextOptions, CheckMacroContext } from "@system/action-macros/types.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function escape(options: SkillActionOptions): void; -declare class EscapeActionVariant extends SingleCheckActionVariant { - #private; - get statistic(): string; - protected checkContext>(opts: CheckContextOptions, data: CheckContextData): CheckMacroContext | undefined; - protected toActionCheckPreview(options: { - actor?: ActorPF2e; - rollOptions: string[]; - slug: string; - }): ActionCheckPreview | null; -} -declare class EscapeAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): EscapeActionVariant; -} -declare const action: EscapeAction; -export { action, escape as legacy }; diff --git a/types/src/module/system/action-macros/basic/interact.d.ts b/types/src/module/system/action-macros/basic/interact.d.ts deleted file mode 100644 index bfe2c3826..000000000 --- a/types/src/module/system/action-macros/basic/interact.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const interact: SimpleAction; -export { interact }; diff --git a/types/src/module/system/action-macros/basic/leap.d.ts b/types/src/module/system/action-macros/basic/leap.d.ts deleted file mode 100644 index ae8b96760..000000000 --- a/types/src/module/system/action-macros/basic/leap.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const leap: SimpleAction; -export { leap }; diff --git a/types/src/module/system/action-macros/basic/ready.d.ts b/types/src/module/system/action-macros/basic/ready.d.ts deleted file mode 100644 index 9d72dcad5..000000000 --- a/types/src/module/system/action-macros/basic/ready.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const ready: SimpleAction; -export { ready }; diff --git a/types/src/module/system/action-macros/basic/release.d.ts b/types/src/module/system/action-macros/basic/release.d.ts deleted file mode 100644 index f4a22b2ac..000000000 --- a/types/src/module/system/action-macros/basic/release.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const release: SimpleAction; -export { release }; diff --git a/types/src/module/system/action-macros/basic/seek.d.ts b/types/src/module/system/action-macros/basic/seek.d.ts deleted file mode 100644 index 181ff6bac..000000000 --- a/types/src/module/system/action-macros/basic/seek.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function seek(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { seek as legacy, action }; diff --git a/types/src/module/system/action-macros/basic/sense-motive.d.ts b/types/src/module/system/action-macros/basic/sense-motive.d.ts deleted file mode 100644 index bca89019d..000000000 --- a/types/src/module/system/action-macros/basic/sense-motive.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function senseMotive(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { senseMotive as legacy, action }; diff --git a/types/src/module/system/action-macros/basic/stand.d.ts b/types/src/module/system/action-macros/basic/stand.d.ts deleted file mode 100644 index 9a0a1df5d..000000000 --- a/types/src/module/system/action-macros/basic/stand.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { SimpleAction, SimpleActionVariant, SimpleActionVariantData } from "@actor/actions/index.ts"; -declare class StandAction extends SimpleAction { - constructor(); - protected toActionVariant(data?: SimpleActionVariantData): SimpleActionVariant; -} -declare const stand: StandAction; -export { stand }; diff --git a/types/src/module/system/action-macros/basic/step.d.ts b/types/src/module/system/action-macros/basic/step.d.ts deleted file mode 100644 index 3762a64e8..000000000 --- a/types/src/module/system/action-macros/basic/step.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const step: SimpleAction; -export { step }; diff --git a/types/src/module/system/action-macros/basic/stride.d.ts b/types/src/module/system/action-macros/basic/stride.d.ts deleted file mode 100644 index fcbc38c23..000000000 --- a/types/src/module/system/action-macros/basic/stride.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const stride: SimpleAction; -export { stride }; diff --git a/types/src/module/system/action-macros/basic/take-cover.d.ts b/types/src/module/system/action-macros/basic/take-cover.d.ts deleted file mode 100644 index 2ab4b852f..000000000 --- a/types/src/module/system/action-macros/basic/take-cover.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const takeCover: SimpleAction; -export { takeCover }; diff --git a/types/src/module/system/action-macros/class/inventor/tamper.d.ts b/types/src/module/system/action-macros/class/inventor/tamper.d.ts deleted file mode 100644 index c1458e6f4..000000000 --- a/types/src/module/system/action-macros/class/inventor/tamper.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { SkillActionOptions } from "../../index.ts"; -export declare function tamper(options: SkillActionOptions): void; diff --git a/types/src/module/system/action-macros/crafting/craft.d.ts b/types/src/module/system/action-macros/crafting/craft.d.ts deleted file mode 100644 index 4bba3e7a3..000000000 --- a/types/src/module/system/action-macros/crafting/craft.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { PhysicalItemPF2e } from "@item"; -import { CheckDC } from "@system/degree-of-success.ts"; -import { SkillActionOptions } from "../types.ts"; -export declare function craft(options: CraftActionOptions): Promise; -interface CraftActionOptions extends SkillActionOptions { - difficultyClass?: CheckDC; - item?: PhysicalItemPF2e; - quantity?: number; - uuid?: string; - free?: boolean; -} -export {}; diff --git a/types/src/module/system/action-macros/crafting/identify-alchemy.d.ts b/types/src/module/system/action-macros/crafting/identify-alchemy.d.ts deleted file mode 100644 index b3259cf4c..000000000 --- a/types/src/module/system/action-macros/crafting/identify-alchemy.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare const action: SingleCheckAction; -export { action as identifyAlchemy }; diff --git a/types/src/module/system/action-macros/crafting/index.d.ts b/types/src/module/system/action-macros/crafting/index.d.ts deleted file mode 100644 index c4a1f8222..000000000 --- a/types/src/module/system/action-macros/crafting/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { craft } from "./craft.ts"; -export { identifyAlchemy } from "./identify-alchemy.ts"; -export { repair } from "./repair.ts"; diff --git a/types/src/module/system/action-macros/crafting/repair.d.ts b/types/src/module/system/action-macros/crafting/repair.d.ts deleted file mode 100644 index 7493cfb06..000000000 --- a/types/src/module/system/action-macros/crafting/repair.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { PhysicalItemPF2e } from "@item"; -import { ChatMessagePF2e } from "@module/chat-message/index.ts"; -import { CheckDC } from "@system/degree-of-success.ts"; -import { SkillActionOptions } from "../types.ts"; -declare function repair(options: RepairActionOptions): Promise; -declare function onRepairChatCardEvent(event: MouseEvent, message: ChatMessagePF2e | undefined, card: HTMLElement): Promise; -interface RepairActionOptions extends SkillActionOptions { - difficultyClass?: CheckDC; - item?: PhysicalItemPF2e; - uuid?: string; -} -export { onRepairChatCardEvent, repair }; diff --git a/types/src/module/system/action-macros/crafting/select-item.d.ts b/types/src/module/system/action-macros/crafting/select-item.d.ts deleted file mode 100644 index b1f2a0ab4..000000000 --- a/types/src/module/system/action-macros/crafting/select-item.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -/// -/// -/// -import { PhysicalItemPF2e } from "@item"; -declare class SelectItemDialog extends Application { - #private; - private constructor(); - static get defaultOptions(): ApplicationOptions; - get template(): string; - get title(): string; - getData(options?: Partial): Promise<{ - item: PhysicalItemPF2e | null; - }>; - activateListeners($html: JQuery): void; - close(options?: { - force?: boolean; - }): Promise; - static getItem(action: ItemAction): Promise; -} -type ItemAction = "craft" | "repair"; -export { SelectItemDialog }; diff --git a/types/src/module/system/action-macros/deception/create-a-diversion.d.ts b/types/src/module/system/action-macros/deception/create-a-diversion.d.ts deleted file mode 100644 index 88cdc76b6..000000000 --- a/types/src/module/system/action-macros/deception/create-a-diversion.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare const CREATE_A_DIVERSION_VARIANTS: readonly ["distracting-words", "gesture", "trick"]; -type CreateADiversionVariant = (typeof CREATE_A_DIVERSION_VARIANTS)[number]; -declare function createADiversion(options: { - variant: CreateADiversionVariant; -} & SkillActionOptions): void; -declare const action: SingleCheckAction; -export { createADiversion as legacy, action }; diff --git a/types/src/module/system/action-macros/deception/feint.d.ts b/types/src/module/system/action-macros/deception/feint.d.ts deleted file mode 100644 index 2ad9c823b..000000000 --- a/types/src/module/system/action-macros/deception/feint.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function feint(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { feint as legacy, action }; diff --git a/types/src/module/system/action-macros/deception/impersonate.d.ts b/types/src/module/system/action-macros/deception/impersonate.d.ts deleted file mode 100644 index 6094ab8f3..000000000 --- a/types/src/module/system/action-macros/deception/impersonate.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function impersonate(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { impersonate as legacy, action }; diff --git a/types/src/module/system/action-macros/deception/lie.d.ts b/types/src/module/system/action-macros/deception/lie.d.ts deleted file mode 100644 index 4ef02be3b..000000000 --- a/types/src/module/system/action-macros/deception/lie.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function lie(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { lie as legacy, action }; diff --git a/types/src/module/system/action-macros/diplomacy/bon-mot.d.ts b/types/src/module/system/action-macros/diplomacy/bon-mot.d.ts deleted file mode 100644 index e738dffc4..000000000 --- a/types/src/module/system/action-macros/diplomacy/bon-mot.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -export declare function bonMot(options: SkillActionOptions): void; diff --git a/types/src/module/system/action-macros/diplomacy/gather-information.d.ts b/types/src/module/system/action-macros/diplomacy/gather-information.d.ts deleted file mode 100644 index e7d335f1b..000000000 --- a/types/src/module/system/action-macros/diplomacy/gather-information.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function gatherInformation(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { gatherInformation as legacy, action }; diff --git a/types/src/module/system/action-macros/diplomacy/make-an-impression.d.ts b/types/src/module/system/action-macros/diplomacy/make-an-impression.d.ts deleted file mode 100644 index f2511e7cc..000000000 --- a/types/src/module/system/action-macros/diplomacy/make-an-impression.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function makeAnImpression(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { makeAnImpression as legacy, action }; diff --git a/types/src/module/system/action-macros/diplomacy/request.d.ts b/types/src/module/system/action-macros/diplomacy/request.d.ts deleted file mode 100644 index e343205b0..000000000 --- a/types/src/module/system/action-macros/diplomacy/request.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function request(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { request as legacy, action }; diff --git a/types/src/module/system/action-macros/exploration/affix-a-talisman.d.ts b/types/src/module/system/action-macros/exploration/affix-a-talisman.d.ts deleted file mode 100644 index 2e750c2c7..000000000 --- a/types/src/module/system/action-macros/exploration/affix-a-talisman.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const affixATalisman: SimpleAction; -export { affixATalisman }; diff --git a/types/src/module/system/action-macros/exploration/avoid-notice.d.ts b/types/src/module/system/action-macros/exploration/avoid-notice.d.ts deleted file mode 100644 index c0925499f..000000000 --- a/types/src/module/system/action-macros/exploration/avoid-notice.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function avoidNotice(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { avoidNotice as legacy, action }; diff --git a/types/src/module/system/action-macros/exploration/sense-direction.d.ts b/types/src/module/system/action-macros/exploration/sense-direction.d.ts deleted file mode 100644 index e761e5c9e..000000000 --- a/types/src/module/system/action-macros/exploration/sense-direction.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function senseDirection(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { senseDirection as legacy, action }; diff --git a/types/src/module/system/action-macros/exploration/track.d.ts b/types/src/module/system/action-macros/exploration/track.d.ts deleted file mode 100644 index af4a08390..000000000 --- a/types/src/module/system/action-macros/exploration/track.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function track(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { track as legacy, action }; diff --git a/types/src/module/system/action-macros/general/decipher-writing.d.ts b/types/src/module/system/action-macros/general/decipher-writing.d.ts deleted file mode 100644 index fc601c40e..000000000 --- a/types/src/module/system/action-macros/general/decipher-writing.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -declare function decipherWriting(options: SkillActionOptions): void; -declare class DecipherWritingAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): SingleCheckActionVariant; -} -declare const action: DecipherWritingAction; -export { decipherWriting as legacy, action }; diff --git a/types/src/module/system/action-macros/general/identify-magic.d.ts b/types/src/module/system/action-macros/general/identify-magic.d.ts deleted file mode 100644 index e10ea9cc6..000000000 --- a/types/src/module/system/action-macros/general/identify-magic.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -declare class IdentifyMagicAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): SingleCheckActionVariant; -} -declare const identifyMagic: IdentifyMagicAction; -export { identifyMagic }; diff --git a/types/src/module/system/action-macros/general/learn-a-spell.d.ts b/types/src/module/system/action-macros/general/learn-a-spell.d.ts deleted file mode 100644 index 04b98e6de..000000000 --- a/types/src/module/system/action-macros/general/learn-a-spell.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -declare class LearnASpellAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): SingleCheckActionVariant; -} -declare const learnASpell: LearnASpellAction; -export { learnASpell }; diff --git a/types/src/module/system/action-macros/general/recall-knowledge.d.ts b/types/src/module/system/action-macros/general/recall-knowledge.d.ts deleted file mode 100644 index 6edfedbb8..000000000 --- a/types/src/module/system/action-macros/general/recall-knowledge.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { SingleCheckAction, SingleCheckActionUseOptions, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -import { CheckResultCallback } from "@system/action-macros/types.ts"; -interface RecallKnowledgeActionUseOptions extends Partial { - statistic: string; -} -declare class RecallKnowledgeActionVariant extends SingleCheckActionVariant { - use(options: RecallKnowledgeActionUseOptions): Promise; -} -declare class RecallKnowledgeAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): RecallKnowledgeActionVariant; -} -declare const recallKnowledge: RecallKnowledgeAction; -export { recallKnowledge }; diff --git a/types/src/module/system/action-macros/general/subsist.d.ts b/types/src/module/system/action-macros/general/subsist.d.ts deleted file mode 100644 index ee181c1bf..000000000 --- a/types/src/module/system/action-macros/general/subsist.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -declare function subsist(options: SkillActionOptions): void; -declare class SubsistAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): SingleCheckActionVariant; -} -declare const action: SubsistAction; -export { subsist as legacy, action }; diff --git a/types/src/module/system/action-macros/helpers.d.ts b/types/src/module/system/action-macros/helpers.d.ts deleted file mode 100644 index caa0df43d..000000000 --- a/types/src/module/system/action-macros/helpers.d.ts +++ /dev/null @@ -1,36 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ModifierPF2e } from "@actor/modifiers.ts"; -import type { ItemPF2e, WeaponPF2e } from "@item"; -import type { WeaponTrait } from "@item/weapon/types.ts"; -import { RollNotePF2e } from "@module/notes.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import { CheckType } from "@system/check/index.ts"; -import type { DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import type { CheckContextData, CheckContextOptions, CheckMacroContext, SimpleRollActionCheckOptions } from "./types.ts"; -declare class ActionMacroHelpers { - #private; - static resolveStat(stat: string): { - checkType: CheckType; - property: string; - stat: string; - subtitle: string; - }; - static defaultCheckContext>(options: CheckContextOptions, data: CheckContextData): CheckMacroContext | undefined; - static note(selector: string, translationPrefix: string, outcome: DegreeOfSuccessString, translationKey?: string): RollNotePF2e; - static outcomesNote(selector: string, translationKey: string, outcomes: DegreeOfSuccessString[]): RollNotePF2e; - static simpleRollActionCheck>(options: SimpleRollActionCheckOptions): Promise; - static target(): { - token: TokenDocumentPF2e | null; - actor: ActorPF2e | null; - }; - static getWeaponPotencyModifier(item: WeaponPF2e, selector: string): ModifierPF2e | null; - static getApplicableEquippedWeapons(actor: ActorPF2e, trait: WeaponTrait): WeaponPF2e[]; - /** Attempts to get the label for the given statistic using a slug */ - static getSimpleCheckLabel(slug: string): string | null; -} -declare class CheckContextError extends Error { - actor: ActorPF2e; - slug: string; - constructor(message: string, actor: ActorPF2e, slug: string); -} -export { ActionMacroHelpers, CheckContextError }; diff --git a/types/src/module/system/action-macros/index.d.ts b/types/src/module/system/action-macros/index.d.ts deleted file mode 100644 index 639a8fdb3..000000000 --- a/types/src/module/system/action-macros/index.d.ts +++ /dev/null @@ -1,105 +0,0 @@ -import * as balance from "./acrobatics/balance.ts"; -import * as maneuverInFlight from "./acrobatics/maneuver-in-flight.ts"; -import * as squeeze from "./acrobatics/squeeze.ts"; -import * as tumbleThrough from "./acrobatics/tumble-through.ts"; -import { arcaneSlam } from "./ancestry/automaton/arcane-slam.ts"; -import * as climb from "./athletics/climb.ts"; -import * as disarm from "./athletics/disarm.ts"; -import * as forceOpen from "./athletics/force-open.ts"; -import * as grapple from "./athletics/grapple.ts"; -import * as highJump from "./athletics/high-jump.ts"; -import * as longJump from "./athletics/long-jump.ts"; -import * as reposition from "./athletics/reposition.ts"; -import * as shove from "./athletics/shove.ts"; -import * as swim from "./athletics/swim.ts"; -import * as trip from "./athletics/trip.ts"; -import { whirlingThrow } from "./athletics/whirling-throw.ts"; -import * as escape from "./basic/escape.ts"; -import * as seek from "./basic/seek.ts"; -import * as senseMotive from "./basic/sense-motive.ts"; -import { tamper } from "./class/inventor/tamper.ts"; -import { craft, repair } from "./crafting/index.ts"; -import * as createADiversion from "./deception/create-a-diversion.ts"; -import * as feint from "./deception/feint.ts"; -import * as impersonate from "./deception/impersonate.ts"; -import * as lie from "./deception/lie.ts"; -import { bonMot } from "./diplomacy/bon-mot.ts"; -import * as gatherInformation from "./diplomacy/gather-information.ts"; -import * as makeAnImpression from "./diplomacy/make-an-impression.ts"; -import * as request from "./diplomacy/request.ts"; -import * as avoidNotice from "./exploration/avoid-notice.ts"; -import * as senseDirection from "./exploration/sense-direction.ts"; -import * as track from "./exploration/track.ts"; -import * as decipherWriting from "./general/decipher-writing.ts"; -import * as subsist from "./general/subsist.ts"; -import * as coerce from "./intimidation/coerce.ts"; -import * as demoralize from "./intimidation/demoralize.ts"; -import * as administerFirstAid from "./medicine/administer-first-aid.ts"; -import * as treatDisease from "./medicine/treat-disease.ts"; -import * as treatPoison from "./medicine/treat-poison.ts"; -import * as commandAnAnimal from "./nature/command-an-animal.ts"; -import * as perform from "./performance/perform.ts"; -import * as createForgery from "./society/create-forgery.ts"; -import * as concealAnObject from "./stealth/conceal-an-object.ts"; -import * as hide from "./stealth/hide.ts"; -import * as sneak from "./stealth/sneak.ts"; -import * as palmAnObject from "./thievery/palm-an-object.ts"; -import * as disableDevice from "./thievery/disable-device.ts"; -import * as pickALock from "./thievery/pick-a-lock.ts"; -import * as steal from "./thievery/steal.ts"; -import { Action } from "@actor/actions/index.ts"; -export { ActionMacroHelpers } from "./helpers.ts"; -export type { ActionDefaultOptions, SkillActionOptions } from "./types.ts"; -export declare const ActionMacros: { - escape: typeof escape.legacy; - seek: typeof seek.legacy; - senseMotive: typeof senseMotive.legacy; - arcaneSlam: typeof arcaneSlam; - tamper: typeof tamper; - avoidNotice: typeof avoidNotice.legacy; - senseDirection: typeof senseDirection.legacy; - track: typeof track.legacy; - balance: typeof balance.legacy; - maneuverInFlight: typeof maneuverInFlight.legacy; - squeeze: typeof squeeze.legacy; - tumbleThrough: typeof tumbleThrough.legacy; - climb: typeof climb.legacy; - disarm: typeof disarm.legacy; - forceOpen: typeof forceOpen.legacy; - grapple: typeof grapple.legacy; - highJump: typeof highJump.legacy; - longJump: typeof longJump.legacy; - reposition: typeof reposition.legacy; - shove: typeof shove.legacy; - swim: typeof swim.legacy; - trip: typeof trip.legacy; - whirlingThrow: typeof whirlingThrow; - craft: typeof craft; - repair: typeof repair; - createADiversion: typeof createADiversion.legacy; - feint: typeof feint.legacy; - impersonate: typeof impersonate.legacy; - lie: typeof lie.legacy; - bonMot: typeof bonMot; - gatherInformation: typeof gatherInformation.legacy; - makeAnImpression: typeof makeAnImpression.legacy; - request: typeof request.legacy; - decipherWriting: typeof decipherWriting.legacy; - subsist: typeof subsist.legacy; - coerce: typeof coerce.legacy; - demoralize: typeof demoralize.legacy; - administerFirstAid: typeof administerFirstAid.legacy; - treatDisease: typeof treatDisease.legacy; - treatPoison: typeof treatPoison.legacy; - commandAnAnimal: typeof commandAnAnimal.legacy; - perform: typeof perform.legacy; - createForgery: typeof createForgery.legacy; - concealAnObject: typeof concealAnObject.legacy; - hide: typeof hide.legacy; - sneak: typeof sneak.legacy; - palmAnObject: typeof palmAnObject.legacy; - disableDevice: typeof disableDevice.legacy; - pickALock: typeof pickALock.legacy; - steal: typeof steal.legacy; -}; -export declare const SystemActions: Action[]; diff --git a/types/src/module/system/action-macros/intimidation/coerce.d.ts b/types/src/module/system/action-macros/intimidation/coerce.d.ts deleted file mode 100644 index 1bfc5fa91..000000000 --- a/types/src/module/system/action-macros/intimidation/coerce.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function coerce(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { coerce as legacy, action }; diff --git a/types/src/module/system/action-macros/intimidation/demoralize.d.ts b/types/src/module/system/action-macros/intimidation/demoralize.d.ts deleted file mode 100644 index d117d8d4c..000000000 --- a/types/src/module/system/action-macros/intimidation/demoralize.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -import { SkillActionOptions } from "../index.ts"; -declare function demoralize(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { action, demoralize as legacy }; diff --git a/types/src/module/system/action-macros/medicine/administer-first-aid.d.ts b/types/src/module/system/action-macros/medicine/administer-first-aid.d.ts deleted file mode 100644 index a4de235cd..000000000 --- a/types/src/module/system/action-macros/medicine/administer-first-aid.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -import { SkillActionOptions } from "../index.ts"; -declare const ADMINISTER_FIRST_AID_VARIANTS: readonly ["stabilize", "stop-bleeding"]; -type AdministerFirstAidVariant = (typeof ADMINISTER_FIRST_AID_VARIANTS)[number]; -declare function administerFirstAid(options: { - variant: AdministerFirstAidVariant; -} & SkillActionOptions): void; -declare class AdministerFirstAidAction extends SingleCheckAction { - constructor(); -} -declare const action: AdministerFirstAidAction; -export { action, administerFirstAid as legacy }; diff --git a/types/src/module/system/action-macros/medicine/treat-disease.d.ts b/types/src/module/system/action-macros/medicine/treat-disease.d.ts deleted file mode 100644 index 45096fe24..000000000 --- a/types/src/module/system/action-macros/medicine/treat-disease.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function treatDisease(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { treatDisease as legacy, action }; diff --git a/types/src/module/system/action-macros/medicine/treat-poison.d.ts b/types/src/module/system/action-macros/medicine/treat-poison.d.ts deleted file mode 100644 index fd130c88e..000000000 --- a/types/src/module/system/action-macros/medicine/treat-poison.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function treatPoison(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { treatPoison as legacy, action }; diff --git a/types/src/module/system/action-macros/nature/command-an-animal.d.ts b/types/src/module/system/action-macros/nature/command-an-animal.d.ts deleted file mode 100644 index 05a52a1a9..000000000 --- a/types/src/module/system/action-macros/nature/command-an-animal.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function commandAnAnimal(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { commandAnAnimal as legacy, action }; diff --git a/types/src/module/system/action-macros/performance/perform.d.ts b/types/src/module/system/action-macros/performance/perform.d.ts deleted file mode 100644 index 4ca047c76..000000000 --- a/types/src/module/system/action-macros/performance/perform.d.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare const PERFORM_VARIANT_TRAITS: { - readonly acting: readonly ["auditory", "linguistic", "visual"]; - readonly comedy: readonly ["auditory", "linguistic", "visual"]; - readonly dance: readonly ["move", "visual"]; - readonly keyboards: readonly ["auditory", "manipulate"]; - readonly oratory: readonly ["auditory", "linguistic"]; - readonly percussion: readonly ["auditory", "manipulate"]; - readonly singing: readonly ["auditory", "linguistic"]; - readonly strings: readonly ["auditory", "manipulate"]; - readonly winds: readonly ["auditory", "manipulate"]; -}; -type PerformVariant = keyof typeof PERFORM_VARIANT_TRAITS; -declare function perform(options: { - variant: PerformVariant; -} & SkillActionOptions): void; -declare const action: SingleCheckAction; -export { perform as legacy, action }; diff --git a/types/src/module/system/action-macros/society/create-forgery.d.ts b/types/src/module/system/action-macros/society/create-forgery.d.ts deleted file mode 100644 index 8e1854898..000000000 --- a/types/src/module/system/action-macros/society/create-forgery.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction, SingleCheckActionVariant, SingleCheckActionVariantData } from "@actor/actions/index.ts"; -declare function createForgery(options: SkillActionOptions): Promise; -declare class CreateForgeryAction extends SingleCheckAction { - constructor(); - protected toActionVariant(data?: SingleCheckActionVariantData): SingleCheckActionVariant; -} -declare const action: CreateForgeryAction; -export { createForgery as legacy, action }; diff --git a/types/src/module/system/action-macros/specialty-basic/arrest-a-fall.d.ts b/types/src/module/system/action-macros/specialty-basic/arrest-a-fall.d.ts deleted file mode 100644 index 9c220f648..000000000 --- a/types/src/module/system/action-macros/specialty-basic/arrest-a-fall.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare const arrestAFall: SingleCheckAction; -export { arrestAFall }; diff --git a/types/src/module/system/action-macros/specialty-basic/avert-gaze.d.ts b/types/src/module/system/action-macros/specialty-basic/avert-gaze.d.ts deleted file mode 100644 index 5799c4e1d..000000000 --- a/types/src/module/system/action-macros/specialty-basic/avert-gaze.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const avertGaze: SimpleAction; -export { avertGaze }; diff --git a/types/src/module/system/action-macros/specialty-basic/burrow.d.ts b/types/src/module/system/action-macros/specialty-basic/burrow.d.ts deleted file mode 100644 index eedd94f17..000000000 --- a/types/src/module/system/action-macros/specialty-basic/burrow.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const burrow: SimpleAction; -export { burrow }; diff --git a/types/src/module/system/action-macros/specialty-basic/dismiss.d.ts b/types/src/module/system/action-macros/specialty-basic/dismiss.d.ts deleted file mode 100644 index ac4b07835..000000000 --- a/types/src/module/system/action-macros/specialty-basic/dismiss.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const dismiss: SimpleAction; -export { dismiss }; diff --git a/types/src/module/system/action-macros/specialty-basic/fly.d.ts b/types/src/module/system/action-macros/specialty-basic/fly.d.ts deleted file mode 100644 index d3dbf6d22..000000000 --- a/types/src/module/system/action-macros/specialty-basic/fly.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const fly: SimpleAction; -export { fly }; diff --git a/types/src/module/system/action-macros/specialty-basic/grab-an-edge.d.ts b/types/src/module/system/action-macros/specialty-basic/grab-an-edge.d.ts deleted file mode 100644 index 575043f3c..000000000 --- a/types/src/module/system/action-macros/specialty-basic/grab-an-edge.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare const grabAnEdge: SingleCheckAction; -export { grabAnEdge }; diff --git a/types/src/module/system/action-macros/specialty-basic/mount.d.ts b/types/src/module/system/action-macros/specialty-basic/mount.d.ts deleted file mode 100644 index 9f4f2f1c0..000000000 --- a/types/src/module/system/action-macros/specialty-basic/mount.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const mount: SimpleAction; -export { mount }; diff --git a/types/src/module/system/action-macros/specialty-basic/point-out.d.ts b/types/src/module/system/action-macros/specialty-basic/point-out.d.ts deleted file mode 100644 index af5d9ef35..000000000 --- a/types/src/module/system/action-macros/specialty-basic/point-out.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const pointOut: SimpleAction; -export { pointOut }; diff --git a/types/src/module/system/action-macros/specialty-basic/sustain.d.ts b/types/src/module/system/action-macros/specialty-basic/sustain.d.ts deleted file mode 100644 index 0efe29d01..000000000 --- a/types/src/module/system/action-macros/specialty-basic/sustain.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { SimpleAction } from "@actor/actions/index.ts"; -declare const sustain: SimpleAction; -export { sustain }; diff --git a/types/src/module/system/action-macros/stealth/conceal-an-object.d.ts b/types/src/module/system/action-macros/stealth/conceal-an-object.d.ts deleted file mode 100644 index 89a8a1b9e..000000000 --- a/types/src/module/system/action-macros/stealth/conceal-an-object.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function concealAnObject(options: SkillActionOptions): Promise; -declare const action: SingleCheckAction; -export { concealAnObject as legacy, action }; diff --git a/types/src/module/system/action-macros/stealth/hide.d.ts b/types/src/module/system/action-macros/stealth/hide.d.ts deleted file mode 100644 index ef58ccb2e..000000000 --- a/types/src/module/system/action-macros/stealth/hide.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function hide(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { hide as legacy, action }; diff --git a/types/src/module/system/action-macros/stealth/sneak.d.ts b/types/src/module/system/action-macros/stealth/sneak.d.ts deleted file mode 100644 index ac464ff82..000000000 --- a/types/src/module/system/action-macros/stealth/sneak.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function sneak(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { sneak as legacy, action }; diff --git a/types/src/module/system/action-macros/thievery/disable-device.d.ts b/types/src/module/system/action-macros/thievery/disable-device.d.ts deleted file mode 100644 index f52df795a..000000000 --- a/types/src/module/system/action-macros/thievery/disable-device.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function disableDevice(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { disableDevice as legacy, action }; diff --git a/types/src/module/system/action-macros/thievery/palm-an-object.d.ts b/types/src/module/system/action-macros/thievery/palm-an-object.d.ts deleted file mode 100644 index 3a5cda23c..000000000 --- a/types/src/module/system/action-macros/thievery/palm-an-object.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function palmAnObject(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { palmAnObject as legacy, action }; diff --git a/types/src/module/system/action-macros/thievery/pick-a-lock.d.ts b/types/src/module/system/action-macros/thievery/pick-a-lock.d.ts deleted file mode 100644 index 8ec8a7d25..000000000 --- a/types/src/module/system/action-macros/thievery/pick-a-lock.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function pickALock(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { pickALock as legacy, action }; diff --git a/types/src/module/system/action-macros/thievery/steal.d.ts b/types/src/module/system/action-macros/thievery/steal.d.ts deleted file mode 100644 index e84f104cb..000000000 --- a/types/src/module/system/action-macros/thievery/steal.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { SkillActionOptions } from "../index.ts"; -import { SingleCheckAction } from "@actor/actions/index.ts"; -declare function steal(options: SkillActionOptions): void; -declare const action: SingleCheckAction; -export { steal as legacy, action }; diff --git a/types/src/module/system/action-macros/types.d.ts b/types/src/module/system/action-macros/types.d.ts deleted file mode 100644 index d9f614c26..000000000 --- a/types/src/module/system/action-macros/types.d.ts +++ /dev/null @@ -1,90 +0,0 @@ -/// -import type { ActorPF2e } from "@actor"; -import { StrikeData } from "@actor/data/base.ts"; -import type { ModifierPF2e } from "@actor/modifiers.ts"; -import type { DCSlug } from "@actor/types.ts"; -import type { ItemPF2e } from "@item"; -import type { WeaponTrait } from "@item/weapon/types.ts"; -import type { RollNotePF2e } from "@module/notes.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import type { CheckRoll, CheckType } from "@system/check/index.ts"; -import type { CheckDC, DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import type { Statistic } from "@system/statistic/index.ts"; -type ActionGlyph = "A" | "D" | "T" | "R" | "F" | "a" | "d" | "t" | "r" | "f" | 1 | 2 | 3 | "1" | "2" | "3"; -interface BuildCheckContextOptions> { - actor: ActorPF2e; - item?: TItem; - rollOptions: string[]; - target?: ActorPF2e | null; -} -interface BuildCheckContextResult> { - item?: TItem; - rollOptions: string[]; - target?: ActorPF2e | null; -} -interface CheckContextOptions> { - actor: ActorPF2e; - buildContext: (options: BuildCheckContextOptions) => BuildCheckContextResult; - target?: ActorPF2e | null; -} -interface CheckContextData> { - item?: TItem; - modifiers?: ModifierPF2e[]; - rollOptions: string[]; - slug: string; - target?: ActorPF2e | null; -} -interface CheckMacroContext> { - type: CheckType; - item?: TItem; - modifiers?: ModifierPF2e[]; - rollOptions: string[]; - slug: string; - statistic: Statistic | (StrikeData & { - rank?: number; - }); - subtitle: string; -} -interface CheckResultCallback { - actor: ActorPF2e; - message?: ChatMessage; - outcome: DegreeOfSuccessString | null | undefined; - roll: Rolled; -} -interface SimpleRollActionCheckOptions> { - actors: ActorPF2e | ActorPF2e[] | undefined; - actionGlyph: ActionGlyph | undefined; - title: string; - checkContext: (context: CheckContextOptions) => Promise> | CheckMacroContext | undefined; - content?: (title: string) => Promise | string | null | undefined | void; - item?: (actor: ActorPF2e) => TItem | undefined; - traits: string[]; - event?: JQuery.TriggeredEvent | Event | null; - /** - * A DC can be represented as a preassembled `CheckDC` object, a slug referencing a `Statistic`, or a function that - * returns a `CheckDC` or `null`. - */ - difficultyClass?: UnresolvedCheckDC; - extraNotes?: (selector: string) => RollNotePF2e[]; - callback?: (result: CheckResultCallback) => void; - createMessage?: boolean; - weaponTrait?: WeaponTrait; - weaponTraitWithPenalty?: WeaponTrait; - target?: () => { - token: TokenDocumentPF2e | null; - actor: ActorPF2e; - } | null; -} -type UnresolvedCheckDC = CheckDC | DCSlug | ((actor: ActorPF2e | null) => CheckDC | null); -interface ActionDefaultOptions { - event?: JQuery.TriggeredEvent | Event | null; - actors?: ActorPF2e | ActorPF2e[]; - glyph?: ActionGlyph; - modifiers?: ModifierPF2e[]; - callback?: (result: CheckResultCallback) => void; -} -interface SkillActionOptions extends ActionDefaultOptions { - skill?: string; - difficultyClass?: CheckDC; -} -export type { ActionDefaultOptions, ActionGlyph, CheckContextData, CheckContextOptions, CheckMacroContext, CheckResultCallback, SimpleRollActionCheckOptions, SkillActionOptions, UnresolvedCheckDC, }; diff --git a/types/src/module/system/check/check.d.ts b/types/src/module/system/check/check.d.ts deleted file mode 100644 index aaf7ab53e..000000000 --- a/types/src/module/system/check/check.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -/// -import type { CheckModifier } from "@actor/modifiers.ts"; -import { ChatMessagePF2e } from "@module/chat-message/index.ts"; -import { DegreeOfSuccessString } from "../degree-of-success.ts"; -import { CheckRoll } from "./roll.ts"; -import { CheckCheckContext } from "./types.ts"; -interface RerollOptions { - heroPoint?: boolean; - keep?: "new" | "higher" | "lower"; -} -type CheckRollCallback = (roll: Rolled, outcome: DegreeOfSuccessString | null | undefined, message: ChatMessagePF2e, event: Event | null) => Promise | void; -declare class CheckPF2e { - #private; - /** Roll the given statistic, optionally showing the check modifier dialog if 'Shift' is held down. */ - static roll(check: CheckModifier, context?: CheckCheckContext, event?: JQuery.TriggeredEvent | Event | null, callback?: CheckRollCallback): Promise | null>; - /** Reroll a rolled check given a chat message. */ - static rerollFromMessage(message: ChatMessagePF2e, { heroPoint, keep }?: RerollOptions): Promise; - /** - * Renders the reroll, highlighting the old result if it was a critical success or failure - * @param roll The roll that is to be rerendered - * @param isOld This is the old roll render, so remove damage or other buttons - */ - static renderReroll(roll: Rolled, { isOld }: { - isOld: boolean; - }): Promise; -} -export { CheckPF2e }; -export type { CheckRollCallback }; diff --git a/types/src/module/system/check/dialog.d.ts b/types/src/module/system/check/dialog.d.ts deleted file mode 100644 index e1978da11..000000000 --- a/types/src/module/system/check/dialog.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -/// -/// -/// -import { RawModifier, StatisticModifier } from "@actor/modifiers.ts"; -import { RollSubstitution } from "@module/rules/synthetics.ts"; -import { CheckCheckContext } from "./types.ts"; -/** - * Dialog for excluding certain modifiers before rolling a check. - * @category Other - */ -export declare class CheckModifiersDialog extends Application { - #private; - /** The check which is being edited. */ - check: StatisticModifier; - /** Relevant context for this roll, like roll options. */ - context: CheckCheckContext; - /** A Promise resolve method */ - resolve: (value: boolean) => void; - /** Has the promise been resolved? */ - isResolved: boolean; - constructor(check: StatisticModifier, resolve: (value: boolean) => void, context?: CheckCheckContext); - static get defaultOptions(): ApplicationOptions; - getData(): Promise; - activateListeners($html: JQuery): void; - close(options?: { - force?: boolean; - }): Promise; - /** Overriden to add some additional first-render behavior */ - protected _injectHTML($html: JQuery): void; -} -interface CheckDialogData { - appId: string; - modifiers: RawModifier[]; - totalModifier: number; - rollModes: Record; - rollMode: RollMode | "roll" | undefined; - showCheckDialogs: boolean; - substitutions: RollSubstitutionDialogData[]; - fortune: boolean; - none: boolean; - misfortune: boolean; -} -interface RollSubstitutionDialogData extends RollSubstitution { - toggleable: boolean; -} -export {}; diff --git a/types/src/module/system/check/index.d.ts b/types/src/module/system/check/index.d.ts deleted file mode 100644 index 99c91409a..000000000 --- a/types/src/module/system/check/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from "./check.ts"; -export { CheckRoll, StrikeAttackRoll } from "./roll.ts"; -export * from "./types.ts"; diff --git a/types/src/module/system/check/roll.d.ts b/types/src/module/system/check/roll.d.ts deleted file mode 100644 index 7af9d8b74..000000000 --- a/types/src/module/system/check/roll.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { ZeroToThree } from "@module/data.ts"; -import { UserPF2e } from "@module/user/index.ts"; -import { DegreeOfSuccessIndex } from "@system/degree-of-success.ts"; -import { RollDataPF2e } from "@system/rolls.ts"; -import { CheckType } from "./types.ts"; -/** A foundry `Roll` subclass representing a Pathfinder 2e check */ -declare class CheckRoll extends Roll { - static CHAT_TEMPLATE: string; - constructor(formula: string, data?: Record, options?: CheckRollDataPF2e); - get roller(): UserPF2e | null; - get type(): CheckType; - get degreeOfSuccess(): DegreeOfSuccessIndex | null; - get isReroll(): boolean; - get isRerollable(): boolean; - render(this: Rolled, options?: RollRenderOptions): Promise; - getTooltip(): Promise; -} -interface CheckRoll extends Roll { - options: CheckRollDataPF2e & { - showBreakdown: boolean; - }; -} -/** A legacy class kept to allow chat messages to reconstruct rolls */ -declare class StrikeAttackRoll extends CheckRoll { -} -interface CheckRollDataPF2e extends RollDataPF2e { - type?: CheckType; - /** A string of some kind to help system API identify the roll */ - identifier?: Maybe; - /** The slug of an action associated with this roll */ - action?: Maybe; - isReroll?: boolean; - degreeOfSuccess?: ZeroToThree; - /** Whether the check is part of a damaging action */ - damaging?: boolean; - domains?: string[]; -} -export { CheckRoll, StrikeAttackRoll, type CheckRollDataPF2e }; diff --git a/types/src/module/system/check/types.d.ts b/types/src/module/system/check/types.d.ts deleted file mode 100644 index d19ac05ae..000000000 --- a/types/src/module/system/check/types.d.ts +++ /dev/null @@ -1,44 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import { ZeroToTwo } from "@module/data.ts"; -import { RollSubstitution } from "@module/rules/synthetics.ts"; -import type { TokenDocumentPF2e } from "@scene/token-document/index.ts"; -import { CheckDC, DegreeOfSuccessAdjustment } from "@system/degree-of-success.ts"; -import { BaseRollContext } from "@system/rolls.ts"; -type RollTwiceOption = "keep-higher" | "keep-lower" | false; -type CheckType = "attack-roll" | "check" | "counteract-check" | "flat-check" | "initiative" | "perception-check" | "saving-throw" | "skill-check"; -interface CheckCheckContext extends BaseRollContext { - /** The type of this roll, like 'perception-check' or 'saving-throw'. */ - type?: CheckType; - /** A string of some kind to identify the roll: will be included in `CheckRoll#options` */ - identifier?: Maybe; - /** The slug of an action, of which this roll is a workflow component */ - action?: Maybe; - /** Should this roll be rolled twice? If so, should it keep highest or lowest? */ - rollTwice?: RollTwiceOption; - /** The actor which initiated this roll. */ - actor?: ActorPF2e; - /** The token which initiated this roll. */ - token?: TokenDocumentPF2e | null; - /** The originating item of this attack, if any */ - item?: ItemPF2e | null; - /** Optional title of the roll options dialog; defaults to the check name */ - title?: string; - /** Optional DC data for the check */ - dc?: CheckDC | null; - /** The domains this roll had, for reporting purposes */ - domains?: string[]; - /** Is this check part of an action that deals damage? */ - damaging?: boolean; - /** Is the roll a reroll? */ - isReroll?: boolean; - /** The number of MAP increases for this roll */ - mapIncreases?: Maybe; - /** D20 results substituted for an actual roll */ - substitutions?: RollSubstitution[]; - /** Is the weapon used in this attack roll an alternative usage? */ - altUsage?: Maybe<"thrown" | "melee">; - /** Degree of success adjustments from synthetics and hard-coded sources */ - dosAdjustments?: DegreeOfSuccessAdjustment[]; -} -export type { CheckCheckContext, CheckType, RollTwiceOption }; diff --git a/types/src/module/system/client-backend.d.ts b/types/src/module/system/client-backend.d.ts deleted file mode 100644 index 3a1957e45..000000000 --- a/types/src/module/system/client-backend.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -import type { UserPF2e } from "@module/user/document.ts"; -import type { DatabaseGetOperation } from "types/foundry/common/abstract/_types.d.ts"; -declare class ClientDatabaseBackendPF2e extends foundry.data.ClientDatabaseBackend { - protected _getDocuments(documentClass: typeof foundry.abstract.Document, operation: DatabaseGetOperation, user?: UserPF2e): Promise<(DeepPartial & CompendiumIndexData)[] | foundry.abstract.Document[]>; -} -export { ClientDatabaseBackendPF2e }; diff --git a/types/src/module/system/conditions/index.d.ts b/types/src/module/system/conditions/index.d.ts deleted file mode 100644 index 425a93bdb..000000000 --- a/types/src/module/system/conditions/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { ConditionManager } from "./manager.ts"; diff --git a/types/src/module/system/conditions/manager.d.ts b/types/src/module/system/conditions/manager.d.ts deleted file mode 100644 index 5b7bb136d..000000000 --- a/types/src/module/system/conditions/manager.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ConditionPF2e } from "@item"; -import { ConditionSource } from "@item/condition/data.ts"; -import { ConditionSlug } from "@item/condition/types.ts"; -import type { TokenPF2e } from "@module/canvas/index.ts"; -/** A helper class to manage PF2e Conditions */ -export declare class ConditionManager { - #private; - static conditions: Map>; - /** Gets a list of condition slugs. */ - static get conditionsSlugs(): string[]; - static initialize(): void; - /** - * Get a condition using the condition name. - * @param slug A condition slug - */ - static getCondition(slug: ConditionSlug, modifications?: DeepPartial): ConditionPF2e; - static getCondition(slug: string, modifications?: DeepPartial): ConditionPF2e | null; - static updateConditionValue(itemId: string, actor: ActorPF2e, value: number): Promise; - static updateConditionValue(itemId: string, token: TokenPF2e, value: number): Promise; - static updateConditionValue(itemId: string, actorOrToken: ActorPF2e | TokenPF2e, value: number): Promise; -} diff --git a/types/src/module/system/damage/damage.d.ts b/types/src/module/system/damage/damage.d.ts deleted file mode 100644 index f6373faf5..000000000 --- a/types/src/module/system/damage/damage.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { DamageRoll } from "./roll.ts"; -import { DamageDamageContext, DamageTemplate } from "./types.ts"; - -/** Create a chat message containing a damage roll */ -export declare class DamagePF2e { - static roll(data: DamageTemplate, context: DamageDamageContext, callback?: (roll: Rolled) => void | Promise): Promise | null>; -} diff --git a/types/src/module/system/damage/dialog.d.ts b/types/src/module/system/damage/dialog.d.ts deleted file mode 100644 index 6f9c710bd..000000000 --- a/types/src/module/system/damage/dialog.d.ts +++ /dev/null @@ -1,71 +0,0 @@ -/// -/// -/// -import { DegreeOfSuccessIndex } from "@system/degree-of-success.ts"; -import { DamageCategoryUnique, DamageDamageContext, DamageFormulaData, DamageType } from "./types.ts"; -/** - * Dialog for excluding certain modifiers before rolling damage. - * @category Other - */ -declare class DamageModifierDialog extends Application { - #private; - formulaData: DamageFormulaData; - context: DamageDamageContext; - /** The base damage type of this damage roll */ - baseDamageType: DamageType; - /** Is this critical damage? */ - degree: DegreeOfSuccessIndex; - /** Was the roll button pressed? */ - isRolled: boolean; - constructor(params: DamageDialogParams); - static get defaultOptions(): ApplicationOptions; - get title(): string; - get isCritical(): boolean; - getData(): Promise; - activateListeners($html: JQuery): void; - /** Show the damage roll dialog and wait for it to close */ - resolve(): Promise; - close(options?: { - force?: boolean; - }): Promise; - /** Overriden to add some additional first-render behavior */ - protected _injectHTML($html: JQuery): void; -} -interface DamageDialogParams { - formulaData: DamageFormulaData; - context: DamageDamageContext; -} -interface BaseData { - idx: number; - label: string; - enabled: boolean; - ignored: boolean; - critical: boolean | null; - damageType: string | null; - typeLabel: string | null; - category: DamageCategoryUnique | string | null; - icon: string; -} -interface DialogDiceData extends BaseData { - diceLabel: string; -} -interface ModifierData extends BaseData { - type: string | null; - modifier: number; - hideIfDisabled: boolean; -} -interface DamageDialogData { - appId: string; - baseFormula: string; - modifiers: ModifierData[]; - dice: DialogDiceData[]; - overrides: DialogDiceData[]; - isCritical: boolean; - damageTypes: typeof CONFIG.PF2E.damageTypes; - damageSubtypes: Pick; - rollModes: Record; - rollMode: RollMode | "roll" | undefined; - showDamageDialogs: boolean; - formula: string; -} -export { DamageModifierDialog }; diff --git a/types/src/module/system/damage/formula.d.ts b/types/src/module/system/damage/formula.d.ts deleted file mode 100644 index a51b97083..000000000 --- a/types/src/module/system/damage/formula.d.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { DEGREE_OF_SUCCESS, DegreeOfSuccessIndex } from "@system/degree-of-success.ts"; -import { DamageFormulaData, DamagePartialTerm } from "./types.ts"; -/** A compiled formula with its associated breakdown */ -interface AssembledFormula { - formula: string; - breakdown: string[]; -} -/** Convert the damage definition into a final formula, depending on whether the hit is a critical or not. */ -declare function createDamageFormula(damage: DamageFormulaData, degree: (typeof DEGREE_OF_SUCCESS)["SUCCESS" | "CRITICAL_SUCCESS"]): AssembledFormula; -declare function createDamageFormula(damage: DamageFormulaData): AssembledFormula; -declare function createDamageFormula(damage: DamageFormulaData, degree: typeof DEGREE_OF_SUCCESS.CRITICAL_FAILURE): null; -declare function createDamageFormula(damage: DamageFormulaData, degree?: DegreeOfSuccessIndex): AssembledFormula | null; -/** Combines damage dice and modifiers into a simplified list of terms */ -declare function combinePartialTerms(terms: DamagePartialTerm[]): DamagePartialTerm[]; -/** Combines damage dice and modifiers into a single formula, ignoring the damage type and category. */ -declare function createSimpleFormula(terms: DamagePartialTerm[], { doubleDice }?: { - doubleDice?: boolean; -}): string; -/** - * Given a simple flavor-less formula with only +/- operators, returns a list of damage partial terms. - * All subtracted terms become negative terms. - */ -declare function parseTermsFromSimpleFormula(formula: string | Roll, options?: { - rollData: Record; -}): DamagePartialTerm[]; -export { combinePartialTerms, createDamageFormula, createSimpleFormula, parseTermsFromSimpleFormula }; -export type { AssembledFormula }; diff --git a/types/src/module/system/damage/helpers.d.ts b/types/src/module/system/damage/helpers.d.ts deleted file mode 100644 index 37156bae5..000000000 --- a/types/src/module/system/damage/helpers.d.ts +++ /dev/null @@ -1,70 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { DamageDicePF2e, RawDamageDice } from "@actor/modifiers.ts"; -import type { ItemPF2e } from "@item"; -import type { Die, NumericTerm, RollTerm } from "types/foundry/client-esm/dice/terms/module.d.ts"; -import { DamageInstance, DamageRoll } from "./roll.ts"; -import { ArithmeticExpression, Grouping } from "./terms.ts"; -import type { BaseDamageData, DamageCategory, DamageDiceFaces, DamageDieSize, DamageType } from "./types.ts"; - -declare function nextDamageDieSize(next: { - upgrade: DamageDieSize; -}): DamageDieSize; -declare function nextDamageDieSize(next: { - downgrade: DamageDieSize; -}): DamageDieSize; -/** Provides constants for typical damage categories */ -declare const DamageCategorization: { - /** Map a damage type to its corresponding damage category, if any. */ - readonly fromDamageType: (damageType: DamageType) => DamageCategory | null; - /** Get a set of all damage categories (both base and custom). */ - readonly allCategories: () => Set<"abysium" | "adamantine" | "dawnsilver" | "djezet" | "duskwood" | "energy" | "inubrix" | "noqual" | "orichalcum" | "physical" | "siccatite" | "silver" | "precision" | "splash" | "cold-iron" | "keep-stone" | "peachwood" | "sisterstone-dusk" | "sisterstone-scarlet" | "sovereign-steel" | "warpglass" | "persistent" | null>; - /** Get a set of all of the base rule damage types. */ - readonly baseCategories: () => Set<"abysium" | "adamantine" | "dawnsilver" | "djezet" | "duskwood" | "energy" | "inubrix" | "noqual" | "orichalcum" | "physical" | "siccatite" | "silver" | "precision" | "splash" | "cold-iron" | "keep-stone" | "peachwood" | "sisterstone-dusk" | "sisterstone-scarlet" | "sovereign-steel" | "warpglass" | "persistent" | null>; - /** Map a damage category to the set of damage types in it. */ - readonly toDamageTypes: (category: string) => Set; -}; -/** Create `DamageDicePF2e` and `ModifierPF2e` instances in order to apply damage alterations to base damage data. */ -declare function applyBaseDamageAlterations({ actor, item, base, domains, rollOptions }: ApplyDamageAlterationsParams): void; -interface ApplyDamageAlterationsParams { - base: BaseDamageData[]; - actor: ActorPF2e; - item: ItemPF2e; - domains: string[]; - rollOptions: Set; -} -/** Apply damage dice overrides and upgrades to a non-weapon's damage formula */ -declare function applyDamageDiceOverrides(baseEntries: BaseDamageData[], dice: DamageDicePF2e[], options?: { - critical?: boolean; - maxIncreases?: number; -}): void; -/** - * Given a DamageRoll, reverts it into base damage data to allow adding modifiers and damage dice. - * Throws an exception if it cannot be parsed - */ -declare function extractBaseDamage(roll: DamageRoll): BaseDamageData[]; -/** Create a span element for displaying splash damage */ -declare function renderComponentDamage(term: RollTerm): HTMLElement; -declare function isSystemDamageTerm(term: RollTerm): term is ArithmeticExpression | Grouping; -declare function deepFindTerms(term: RollTerm, { flavor }: { - flavor: string; -}): RollTerm[]; -declare function damageDieSizeToFaces(size: DamageDieSize): DamageDiceFaces; -declare function damageDieSizeToFaces(size: string): DamageDiceFaces | null; -/** - * Create or retrieve a simplified term from a more-complex one, given that it can be done without information loss. - * @returns A simplified term, if possible, or otherwise the original - */ -declare function simplifyTerm(term: T): T | Die | NumericTerm; -/** Is the passed term an arithmetic expression that shouldn't be simplified? */ -declare function isUnsimplifableArithmetic(term: RollTerm): boolean; -/** Check whether a roll has dice terms associated with a damage roll */ -declare function looksLikeDamageRoll(roll: Roll): boolean; -/** Create a representative Font Awesome icon from a damage roll */ -declare function damageDiceIcon(roll: DamageRoll | DamageInstance, { fixedWidth }?: { - fixedWidth?: boolean | undefined; -}): HTMLElement; -declare function getDamageDiceValueLabel(d: DamageDicePF2e | RawDamageDice, props?: { - sign?: boolean; -}): string; -declare function getDamageDiceOverrideLabel(d: DamageDicePF2e | RawDamageDice): string; -export { DamageCategorization, applyBaseDamageAlterations, applyDamageDiceOverrides, damageDiceIcon, damageDieSizeToFaces, deepFindTerms, extractBaseDamage, getDamageDiceOverrideLabel, getDamageDiceValueLabel, isSystemDamageTerm, isUnsimplifableArithmetic, looksLikeDamageRoll, nextDamageDieSize, renderComponentDamage, simplifyTerm, }; diff --git a/types/src/module/system/damage/index.d.ts b/types/src/module/system/damage/index.d.ts deleted file mode 100644 index 665547d0c..000000000 --- a/types/src/module/system/damage/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./damage.ts"; -export * from "./types.ts"; diff --git a/types/src/module/system/damage/iwr.d.ts b/types/src/module/system/damage/iwr.d.ts deleted file mode 100644 index 3cc1c1c7f..000000000 --- a/types/src/module/system/damage/iwr.d.ts +++ /dev/null @@ -1,41 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { DamageInstance, DamageRoll } from "./roll.ts"; -/** Apply an actor's IWR applications to an evaluated damage roll's instances */ -declare function applyIWR(actor: ActorPF2e, roll: Rolled, rollOptions: Set): IWRApplicationData; -interface IWRApplicationData { - finalDamage: number; - applications: IWRApplication[]; - persistent: Rolled[]; -} -interface UnaffectedApplication { - category: "unaffected"; - type: string; - adjustment: number; -} -interface ImmunityApplication { - category: "immunity"; - type: string; - adjustment: number; - redirect?: string; -} -interface WeaknessApplication { - category: "weakness"; - type: string; - adjustment: number; -} -interface ResistanceApplication { - category: "resistance"; - type: string; - adjustment: number; - ignored: boolean; - redirect?: string; -} -/** Post-IWR reductions from various sources (e.g., hardness) */ -interface DamageReductionApplication { - category: "reduction"; - type: string; - adjustment: number; -} -type IWRApplication = UnaffectedApplication | ImmunityApplication | WeaknessApplication | ResistanceApplication | DamageReductionApplication; -export { applyIWR }; -export type { IWRApplication, IWRApplicationData }; diff --git a/types/src/module/system/damage/roll.d.ts b/types/src/module/system/damage/roll.d.ts deleted file mode 100644 index 66981db2a..000000000 --- a/types/src/module/system/damage/roll.d.ts +++ /dev/null @@ -1,127 +0,0 @@ -import { DamageRollFlag } from "@module/chat-message/index.ts"; -import type { UserPF2e } from "@module/user/index.ts"; -import { DegreeOfSuccessIndex } from "@system/degree-of-success.ts"; -import { RollDataPF2e } from "@system/rolls.ts"; -import type Peggy from "peggy"; -import type { RollParseNode } from "types/foundry/client-esm/dice/_types.d.mts"; -import type { DiceTerm, RollTerm } from "types/foundry/client-esm/dice/terms/module.d.ts"; -import { InstancePool } from "./terms.ts"; -import { DamageCategory, DamageIRBypassData, DamageTemplate, DamageType, MaterialDamageEffect } from "./types.ts"; - -declare abstract class AbstractDamageRoll extends Roll { - static parser: Peggy.Parser; - /** Strip out parentheses enclosing constants */ - static replaceFormulaData(formula: string, data: Record, options?: { - missing?: string; - warn?: boolean; - }): string; - /** The theoretically lowest total of this roll */ - abstract get minimumValue(): number; - /** The expected value (average result over the course of a "large number" of rolls) of this roll */ - abstract get expectedValue(): number; - /** The theoretically highest total of this roll */ - abstract get maximumValue(): number; -} -declare class DamageRoll extends AbstractDamageRoll { - static CHAT_TEMPLATE: string; - static TOOLTIP_TEMPLATE: string; - static parse(formula: string, data: Record): InstancePool[]; - constructor(formula: string, data?: {}, options?: DamageRollData); - get roller(): UserPF2e | null; - /** Ensure the roll is parsable as `PoolTermData` */ - static validate(formula: string): boolean; - /** Identify each "DiceTerm" raw object with a non-abstract subclass name */ - static classifyDice(data: RollTermData): void; - get pool(): InstancePool | null; - get formula(): string; - get instances(): DamageInstance[]; - /** - * Damage roll rules more-or-less also applying to healing rolls and can be both or even include components of - * either. - */ - get kinds(): Set<"damage" | "healing">; - get materials(): Set; - /** Return an Array of the individual DiceTerm instances contained within this Roll. */ - get dice(): DiceTerm[]; - get minimumValue(): number; - get expectedValue(): number; - get maximumValue(): number; - static fromData(this: AbstractConstructorOf, data: RollJSON): TRoll; - /** Increase total to 1 if evaluating to 0 or less */ - protected _evaluateASTAsync(node: RollParseNode | RollTerm, options?: EvaluateRollParams): Promise; - getTooltip(): Promise; - /** Work around upstream issue in which display base formula is used for chat messages instead of display formula */ - render({ flavor, template, isPrivate, }?: RollRenderOptions): Promise; - alter(multiplier: number, addend: number, { multiplyNumeric }?: { - multiplyNumeric?: boolean | undefined; - }): this; -} -interface DamageRoll extends AbstractDamageRoll { - constructor: typeof DamageRoll; - options: DamageRollData & { - showBreakdown: boolean; - }; -} -declare class DamageInstance extends AbstractDamageRoll { - #private; - kinds: Set<"damage" | "healing">; - type: DamageType; - persistent: boolean; - materials: Set; - critRule: CriticalDoublingRule | null; - constructor(formula: string, data?: {}, { flavor, ...options }?: DamageInstanceData); - static parse(formula: string, data: Record): RollTerm[]; - static fromData(this: ConstructorOf, data: RollJSON): TRoll; - /** Get the expected, minimum, or maximum value of a term */ - static getValue(term: RollTerm, type?: "minimum" | "maximum" | "expected"): number; - get formula(): string; - get total(): number | undefined; - get minimumValue(): number; - get expectedValue(): number; - get maximumValue(): number; - /** An array of statements for use in predicate testing */ - get formalDescription(): Set; - get iconClass(): string | null; - /** Return 0 for persistent damage */ - protected _evaluateTotal(): number; - render({ tooltips }?: InstanceRenderOptions): Promise; - get dice(): DiceTerm[]; - /** Get the head term of this instance */ - get head(): RollTerm; - get category(): DamageCategory | null; - get typeLabel(): string; - /** Get the total of this instance without any doubling or tripling from a critical hit */ - get critImmuneTotal(): this["total"]; - componentTotal(component: "precision" | "splash"): number; - /** - * Set a "hidden" property for DsN! so that it doesn't simulate rolling deferred persistent damage. - * See https://gitlab.com/riccisi/foundryvtt-dice-so-nice/-/wikis/API/Roll#hiding-a-dice-from-a-roll-animation - */ - protected _evaluate(params?: Omit): Promise>; -} -interface DamageInstance extends AbstractDamageRoll { - options: DamageInstanceData; -} -interface InstanceRenderOptions extends RollRenderOptions { - /** Whether to attach tooltips to the damage type icons */ - tooltips?: boolean; -} -type CriticalDoublingRule = "double-damage" | "double-dice"; -interface AbstractDamageRollData extends RollOptions { - evaluatePersistent?: boolean; -} -interface DamageRollData extends RollDataPF2e, AbstractDamageRollData { - /** Whether to double dice or total on critical hits */ - critRule?: Maybe; - /** Data used to construct the damage formula and options */ - damage?: DamageTemplate; - result?: DamageRollFlag; - degreeOfSuccess?: DegreeOfSuccessIndex | null; - /** If the total was increased to 1, the original total */ - increasedFrom?: number; - /** Whether this roll is the splash damage from another roll */ - splashOnly?: boolean; - bypass?: DamageIRBypassData; -} -type DamageInstanceData = AbstractDamageRollData; -export { DamageInstance, DamageRoll, type DamageRollData }; diff --git a/types/src/module/system/damage/terms.d.ts b/types/src/module/system/damage/terms.d.ts deleted file mode 100644 index ca961dc69..000000000 --- a/types/src/module/system/damage/terms.d.ts +++ /dev/null @@ -1,108 +0,0 @@ -import type { DiceTerm, Die, FunctionTerm, PoolTerm, RollTerm } from "types/foundry/client-esm/dice/terms/module.d.ts"; -import { DamageInstance } from "./roll.ts"; -declare const terms: typeof foundry.dice.terms; -declare class ArithmeticExpression extends terms.RollTerm { - operator: ArithmeticOperator; - operands: [RollTerm, RollTerm]; - constructor(termData: ArithmeticExpressionData); - static SERIALIZE_ATTRIBUTES: string[]; - static fromData(this: ConstructorOf, data: TermDataOf): TTerm; - static totalOf(operator: ArithmeticOperator, left: number, right: number): number; - static totalOf(operator: ArithmeticOperator, left: number | undefined, right: number | undefined): number | undefined; - get dice(): DiceTerm[]; - /** - * Simplify the expression if this term is deterministic and not multiplication. - * Multiplication is almost always going to be critical-hit doubling, which must be preserved for IWR analysis. - */ - get expression(): string; - /** Preserve flavor of inner terms */ - get formula(): string; - get total(): number | undefined; - get critImmuneTotal(): this["total"]; - get isDeterministic(): boolean; - get minimumValue(): number; - get expectedValue(): number; - get maximumValue(): number; - /** Construct a string for an HTML rendering of this term */ - render(): DocumentFragment; - protected _evaluate(options?: { - minimize?: boolean; - maximize?: boolean; - }): Promise>; - toJSON(): ArithmeticExpressionData; -} -interface ArithmeticExpression extends RollTerm { - constructor: typeof ArithmeticExpression; -} -interface ArithmeticExpressionData extends RollTermData { - class?: "ArithmeticExpression"; - operator: ArithmeticOperator; - operands: [RollTermData, RollTermData]; -} -type ArithmeticOperator = "+" | "-" | "*" | "/" | "%"; -/** A parenthetically-exclosed expression as a single arithmetic term or number */ -declare class Grouping extends terms.RollTerm { - #private; - term: RollTerm; - constructor(termData: GroupingData); - static SERIALIZE_ATTRIBUTES: string[]; - static fromData(this: ConstructorOf, data: TermDataOf): TTerm; - get dice(): DiceTerm[]; - /** Show a simplified expression if it is known that order of operations won't be lost */ - get expression(): string; - /** Preserve flavor of inner terms */ - get formula(): string; - get total(): number | undefined; - get critImmuneTotal(): number | undefined; - get isDeterministic(): boolean; - get minimumValue(): number; - get expectedValue(): number; - get maximumValue(): number; - protected _evaluate(options?: { - minimize?: boolean; - maximize?: boolean; - }): Promise>; - toJSON(): GroupingData; - /** Construct a string for an HTML rendering of this term */ - render(): DocumentFragment; -} -interface GroupingData extends RollTermData { - class?: "Grouping"; - term: RollTermData; -} -/** - * A `Die` surrogate where the `number` or `faces` were not resolvable to numbers at parse time: serializes itself as a - * `Die` as soon it is able (guaranteed after evaluation) - */ -declare class IntermediateDie extends terms.RollTerm { - number: number | FunctionTerm | Grouping; - faces: number | FunctionTerm | Grouping; - die: Die | null; - constructor(data: IntermediateDieData); - static SERIALIZE_ATTRIBUTES: string[]; - get expression(): string; - get total(): number | undefined; - get dice(): Die[]; - get isDeterministic(): boolean; - get minimumValue(): number; - /** Not able to get an expected value from a Math term */ - get expectedValue(): number; - get maximumValue(): number; - protected _evaluate(): Promise>; - toJSON(): DieData | IntermediateDieData; -} -interface IntermediateDieData extends RollTermData { - class?: string; - number: number | NumericTermData | FunctionTermData | GroupingData; - faces: number | NumericTermData | FunctionTermData | GroupingData; - die?: DieData | null; -} -declare class InstancePool extends terms.PoolTerm { - /** Work around upstream bug in which method attempts to construct `Roll`s from display formulas */ - static fromRolls(this: ConstructorOf, rolls?: Roll[]): TTerm; -} -interface InstancePool extends PoolTerm { - rolls: DamageInstance[]; -} -export { ArithmeticExpression, Grouping, InstancePool, IntermediateDie }; -export type { GroupingData }; diff --git a/types/src/module/system/damage/types.d.ts b/types/src/module/system/damage/types.d.ts deleted file mode 100644 index 8b49f72a6..000000000 --- a/types/src/module/system/damage/types.d.ts +++ /dev/null @@ -1,137 +0,0 @@ -import type { DamageDicePF2e, ModifierPF2e } from "@actor/modifiers.ts"; -import type { RollOrigin, RollTarget } from "@actor/roll-context/types.ts"; -import type { ImmunityType, ResistanceType } from "@actor/types.ts"; -import type { ZeroToTwo } from "@module/data.ts"; -import type { DegreeOfSuccessString } from "@system/degree-of-success.ts"; -import type { BaseRollContext } from "@system/rolls.ts"; -import type { DamageRoll } from "./roll.ts"; -import type { DAMAGE_CATEGORIES_UNIQUE, DAMAGE_DICE_FACES, DAMAGE_DIE_SIZES, DAMAGE_TYPES } from "./values.ts"; - -type DamageCategoryUnique = (typeof DAMAGE_CATEGORIES_UNIQUE)[number]; -type DamageCategory = keyof typeof CONFIG.PF2E.damageCategories; -type DamageDiceFaces = (typeof DAMAGE_DICE_FACES)[number]; -type DamageDieSize = (typeof DAMAGE_DIE_SIZES)[number]; -type DamageType = SetElement; -type DamageKind = "damage" | "healing"; -type MaterialDamageEffect = keyof typeof CONFIG.PF2E.materialDamageEffects; -/** - * `null`: double on crit (includes most damage) - * `true`: critical only, don't double - * `false`: don't double on crit - */ -type CriticalInclusion = boolean | null; -interface DamageCategoryRenderData { - dice: { - faces: number; - result: number; - }[]; - formula: string; - label: string; - total: number; -} -interface DamageTypeRenderData { - icon: string; - categories: Record; - label: string; -} -interface DamageRollRenderData { - damageTypes: Record; -} -interface DamageDamageContext extends BaseRollContext { - type: "damage-roll"; - sourceType: "attack" | "check" | "save"; - outcome?: DegreeOfSuccessString | null; - self?: RollOrigin | null; - target?: RollTarget | null; - options: Set; - secret?: boolean; - /** The domains this roll had, for reporting purposes */ - domains: string[]; - /** The number of MAP increases from the preceding check */ - mapIncreases?: ZeroToTwo; -} -interface DamageFormulaData { - base: BaseDamageData[]; - dice: DamageDicePF2e[]; - modifiers: ModifierPF2e[]; - /** Maximum number of die increases. Weapons should be set to 1 */ - maxIncreases?: number; - bypass?: DamageIRBypassData; - kinds?: Set; -} -/** Data detailing whether and how a damaging effect can reduce or ignore a target's immunities or resistances */ -interface DamageIRBypassData { - immunity: { - ignore: ImmunityType[]; - downgrade: DowngradedImmunity[]; - redirect: ImmunityRedirect[]; - }; - resistance: { - ignore: IgnoredResistance[]; - redirect: ResistanceRedirect[]; - }; -} -interface DowngradedImmunity { - type: ImmunityType; - resistence: number; -} -/** A resistance type to ignore up to a maximum (possibly `Infinity`) */ -interface IgnoredResistance { - type: ResistanceType; - max: number; -} -/** A damage type to check against instead if the target would resist the actual damage type */ -interface ImmunityRedirect { - from: Exclude; - to: Exclude; -} -/** A damage type to check against instead if the target would resist the actual damage type */ -interface ResistanceRedirect { - from: Exclude; - to: Exclude; -} -interface ResolvedDamageFormulaData extends DamageFormulaData { - roll?: never; - formula: Record; - breakdown: Record; -} -interface DamagePartialTerm { - /** The static amount of damage of the current damage type and category. */ - modifier: number; - /** Maps the die face ("d4", "d6", "d8", "d10", "d12") to the number of dice of that type. */ - dice: { - number: number; - faces: DamageDiceFaces; - } | null; -} -interface BaseDamageData { - terms?: DamagePartialTerm[]; - damageType: DamageType; - diceNumber?: number; - dieSize?: DamageDieSize | null; - modifier?: number; - category: DamageCategoryUnique | null; - materials?: MaterialDamageEffect[]; - tags?: string[]; -} -interface WeaponBaseDamageData extends BaseDamageData { - terms?: never; -} -interface BaseDamageTemplate { - name: string; - materials: MaterialDamageEffect[]; - modifiers?: (ModifierPF2e | DamageDicePF2e)[]; -} -interface WeaponDamageTemplate extends BaseDamageTemplate { - damage: ResolvedDamageFormulaData; -} -interface SpellDamageTemplate extends BaseDamageTemplate { - damage: { - roll: DamageRoll; - breakdown: string[]; - }; -} -type AfflictionDamageTemplate = SpellDamageTemplate; -type SimpleDamageTemplate = SpellDamageTemplate; -type DamageTemplate = WeaponDamageTemplate | SpellDamageTemplate | AfflictionDamageTemplate | SimpleDamageTemplate; -export type { AfflictionDamageTemplate, BaseDamageData, CriticalInclusion, DamageCategory, DamageCategoryRenderData, DamageCategoryUnique, DamageDamageContext, DamageDiceFaces, DamageDieSize, DamageFormulaData, DamageIRBypassData, DamageKind, DamagePartialTerm, DamageRollRenderData, DamageTemplate, DamageType, DamageTypeRenderData, ImmunityRedirect, MaterialDamageEffect, ResistanceRedirect, SimpleDamageTemplate, SpellDamageTemplate, WeaponBaseDamageData, WeaponDamageTemplate, }; diff --git a/types/src/module/system/damage/values.d.ts b/types/src/module/system/damage/values.d.ts deleted file mode 100644 index e494081e2..000000000 --- a/types/src/module/system/damage/values.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { DamageCategory, DamageType } from "./types.ts"; - -declare const PHYSICAL_DAMAGE_TYPES: readonly ["bludgeoning", "piercing", "slashing", "bleed"]; -declare const ENERGY_DAMAGE_TYPES: readonly ["acid", "cold", "electricity", "fire", "sonic", "force", "vitality", "void"]; -/** A set of mutually exclusive damage categories */ -declare const DAMAGE_CATEGORIES_UNIQUE: readonly ["persistent", "precision", "splash"]; -/** All damage modifications that only affect IWR (like materials) */ -declare const MATERIAL_DAMAGE_EFFECTS: Set<"adamantine" | "dawnsilver" | "duskwood" | "orichalcum" | "silver" | "cold-iron" | "sisterstone-dusk" | "sisterstone-scarlet" | "warpglass">; -declare const DAMAGE_CATEGORIES: Set<"adamantine" | "dawnsilver" | "duskwood" | "energy" | "orichalcum" | "physical" | "silver" | "precision" | "splash" | "cold-iron" | "sisterstone-dusk" | "sisterstone-scarlet" | "warpglass" | "persistent">; -/** The standard damage die sizes (number of faces on a die) */ -declare const DAMAGE_DIE_SIZES: readonly ["d4", "d6", "d8", "d10", "d12"]; -declare const DAMAGE_DICE_FACES: readonly [4, 6, 8, 10, 12]; -declare const DAMAGE_TYPES: Set<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped">; -/** Maps damage types to their damage category; these are the immutable base mappings used if there is no override. */ -declare const BASE_DAMAGE_TYPES_TO_CATEGORIES: Record; -declare const DAMAGE_TYPE_ICONS: Record; -/** Image map for conditions, currently placed here until we get a new set */ -declare const PERSISTENT_DAMAGE_IMAGES: Partial>; -/** Whether and how damage should be included on a critical hit */ -declare const CRITICAL_INCLUSION: { - DOUBLE_ON_CRIT: null; - CRITICAL_ONLY: boolean; - DONT_DOUBLE_ON_CRIT: boolean; -}; -export { BASE_DAMAGE_TYPES_TO_CATEGORIES, CRITICAL_INCLUSION, DAMAGE_CATEGORIES, DAMAGE_CATEGORIES_UNIQUE, DAMAGE_DICE_FACES, DAMAGE_DIE_SIZES, DAMAGE_TYPES, DAMAGE_TYPE_ICONS, ENERGY_DAMAGE_TYPES, MATERIAL_DAMAGE_EFFECTS, PERSISTENT_DAMAGE_IMAGES, PHYSICAL_DAMAGE_TYPES, }; diff --git a/types/src/module/system/damage/weapon.d.ts b/types/src/module/system/damage/weapon.d.ts deleted file mode 100644 index 8f9cfeb73..000000000 --- a/types/src/module/system/damage/weapon.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { ActorPF2e } from "@actor"; -import { DamageDicePF2e, ModifierPF2e } from "@actor/modifiers.ts"; -import type { MeleePF2e, WeaponPF2e } from "@item"; -import type { NPCAttackDamage } from "@item/melee/data.ts"; -import type { WeaponDamage } from "@item/weapon/data.ts"; -import { PotencySynthetic } from "@module/rules/synthetics.ts"; -import { DamageCategoryUnique, DamageDamageContext, WeaponDamageTemplate } from "./types.ts"; -declare class WeaponDamagePF2e { - #private; - static fromNPCAttack({ attack, actor, context, }: NPCStrikeCalculateParams): Promise; - /** Calculates the damage a weapon will deal when striking. Performs side effects, so make sure to pass a clone */ - static calculate({ weapon, actor, damageDice, modifiers, weaponPotency, context, }: WeaponDamageCalculateParams): Promise; - /** Parse damage formulas from melee items and construct `WeaponDamage` objects out of them */ - static npcDamageToWeaponDamage(instance: NPCAttackDamage): ConvertedNPCDamage; -} -interface ConvertedNPCDamage extends WeaponDamage { - category: DamageCategoryUnique | null; -} -interface WeaponDamageCalculateParams { - weapon: WeaponPF2e | MeleePF2e; - actor: ActorPF2e; - weaponPotency?: PotencySynthetic | null; - damageDice?: DamageDicePF2e[]; - modifiers?: ModifierPF2e[]; - context: DamageDamageContext; -} -interface NPCStrikeCalculateParams { - attack: MeleePF2e; - actor: ActorPF2e; - context: DamageDamageContext; -} -export { WeaponDamagePF2e, type ConvertedNPCDamage }; diff --git a/types/src/module/system/degree-of-success.d.ts b/types/src/module/system/degree-of-success.d.ts deleted file mode 100644 index 1baf28ef0..000000000 --- a/types/src/module/system/degree-of-success.d.ts +++ /dev/null @@ -1,72 +0,0 @@ -import { ZeroToThree } from "@module/data.ts"; -import type { CheckRoll } from "./check/roll.ts"; -import type { Predicate } from "./predication.ts"; -import type { StatisticDifficultyClass } from "./statistic/index.ts"; -/** Get the degree of success from a roll and a difficulty class */ -declare class DegreeOfSuccess { - #private; - /** The calculated degree of success */ - readonly value: DegreeOfSuccessIndex; - /** The degree of success prior to adjustment. If there was no adjustment, it is identical to the `value` */ - readonly unadjusted: DegreeOfSuccessIndex; - /** A degree adjustment, usually from some character ability */ - readonly adjustment: { - label: string; - amount: DegreeAdjustmentAmount; - } | null; - /** The result of a d20 roll */ - readonly dieResult: number; - /** The total of a roll, including the die result and total modifier */ - readonly rollTotal: number; - /** The check DC being rolled against */ - readonly dc: CheckDC; - constructor(roll: Rolled | RollBrief, dc: CheckDC | number, dosAdjustments?: DegreeAdjustmentsRecord | null); - static readonly CRITICAL_FAILURE = 0; - static readonly FAILURE = 1; - static readonly SUCCESS = 2; - static readonly CRITICAL_SUCCESS = 3; -} -type RollBrief = { - dieValue: number; - modifier: number; -}; -declare const DEGREE_ADJUSTMENT_AMOUNTS: { - readonly LOWER_BY_TWO: -2; - readonly LOWER: -1; - readonly INCREASE: 1; - readonly INCREASE_BY_TWO: 2; - readonly TO_CRITICAL_FAILURE: "criticalFailure"; - readonly TO_FAILURE: "failure"; - readonly TO_SUCCESS: "success"; - readonly TO_CRITICAL_SUCCESS: "criticalSuccess"; -}; -type DegreeAdjustmentAmount = (typeof DEGREE_ADJUSTMENT_AMOUNTS)[keyof typeof DEGREE_ADJUSTMENT_AMOUNTS]; -type DegreeAdjustmentsRecord = { - [key in "all" | DegreeOfSuccessString]?: { - label: string; - amount: DegreeAdjustmentAmount; - }; -}; -interface DegreeOfSuccessAdjustment { - adjustments: DegreeAdjustmentsRecord; - predicate?: Predicate; -} -interface CheckDC { - slug?: string | null; - statistic?: StatisticDifficultyClass | null; - label?: string; - scope?: "attack" | "check"; - value: number; - visible?: boolean; -} -declare const DEGREE_OF_SUCCESS: { - readonly CRITICAL_SUCCESS: 3; - readonly SUCCESS: 2; - readonly FAILURE: 1; - readonly CRITICAL_FAILURE: 0; -}; -type DegreeOfSuccessIndex = ZeroToThree; -declare const DEGREE_OF_SUCCESS_STRINGS: readonly ["criticalFailure", "failure", "success", "criticalSuccess"]; -type DegreeOfSuccessString = (typeof DEGREE_OF_SUCCESS_STRINGS)[number]; -export { DEGREE_ADJUSTMENT_AMOUNTS, DEGREE_OF_SUCCESS, DEGREE_OF_SUCCESS_STRINGS, DegreeOfSuccess }; -export type { CheckDC, DegreeAdjustmentAmount, DegreeAdjustmentsRecord, DegreeOfSuccessAdjustment, DegreeOfSuccessIndex, DegreeOfSuccessString, RollBrief, }; diff --git a/types/src/module/system/effect-tracker.d.ts b/types/src/module/system/effect-tracker.d.ts deleted file mode 100644 index 3d340970f..000000000 --- a/types/src/module/system/effect-tracker.d.ts +++ /dev/null @@ -1,21 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { EffectPF2e } from "@item"; -import type { EncounterPF2e } from "@module/encounter/index.ts"; -export declare class EffectTracker { - #private; - effects: EffectPF2e[]; - /** A separate collection of aura effects, including ones with unlimited duration */ - auraEffects: Collection>; - register(effect: EffectPF2e): void; - unregister(toRemove: EffectPF2e): void; - /** - * Check for expired effects, removing or disabling as appropriate according to world settings - * @param [options.resetItemData] Perform individual item data resets. This is only needed when the world time - * changes. - */ - refresh(options?: { - resetItemData?: boolean; - }): Promise; - /** Expire or remove on-encounter-end effects */ - onEncounterEnd(encounter: EncounterPF2e): Promise; -} diff --git a/types/src/module/system/html-elements/tagify-tags.d.ts b/types/src/module/system/html-elements/tagify-tags.d.ts deleted file mode 100644 index a5a3921ce..000000000 --- a/types/src/module/system/html-elements/tagify-tags.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { TagifyEntry } from "@module/sheet/helpers.ts"; - -/** - * A HTML Element that handles `Tagify` data and always has a `value` of `string[]`. - * `Tagify` must be bound to the child input element that can be accessed at `HTMLTagifyTagsElement#input` - */ -declare class HTMLTagifyTagsElement extends foundry.applications.elements.AbstractFormInputElement { - static tagName: string; - constructor(); - protected _primaryInput: HTMLInputElement; - get input(): HTMLInputElement; - protected _buildElements(): HTMLElement[]; - /** Overwritten so that submit data receives a string array */ - protected _getValue(): string[]; - protected _setValue(value: string): void; - _applyInputAttributes(input: HTMLInputElement): void; - protected _toggleDisabled(disabled: boolean): void; - _activateListeners(): void; -} -export { HTMLTagifyTagsElement }; diff --git a/types/src/module/system/module-art.d.ts b/types/src/module/system/module-art.d.ts deleted file mode 100644 index db4bd2c35..000000000 --- a/types/src/module/system/module-art.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -/** A mapping of module-provided art to be used for compendium actors and their prototype tokens */ -declare class ModuleArt { - #private; - readonly map: Map; - /** Pull actor and token art from module.json or separate mapping files and store in the map */ - refresh(): Promise; -} -/** Prepared `ModuleArtData`, restructured to merge directly into actor source */ -interface ActorArtPartial { - img: ImageFilePath; - prototypeToken: { - flags?: { - pf2e: { - autoscale: false; - }; - }; - randomImg?: boolean; - texture: { - src: ImageFilePath | VideoFilePath; - scaleX?: number; - scaleY?: number; - }; - }; -} -export { ModuleArt }; diff --git a/types/src/module/system/predication.d.ts b/types/src/module/system/predication.d.ts deleted file mode 100644 index dbe3e2f2b..000000000 --- a/types/src/module/system/predication.d.ts +++ /dev/null @@ -1,76 +0,0 @@ -/** - * Encapsulates logic to determine if a modifier should be active or not for a specific roll based - * on a list of string values. This will often be based on traits, but that is not required - sneak - * attack could be an option that is not a trait. - * @category PF2 - */ -declare class Predicate extends Array { - #private; - /** Is the predicate data structurally valid? */ - readonly isValid: boolean; - constructor(...statements: PredicateStatement[] | [PredicateStatement[]]); - /** Structurally validate the predicates */ - static isValid(statements: unknown): statements is PredicateStatement[]; - /** Is this an array of predicatation statements? */ - static isArray(statements: unknown): statements is PredicateStatement[]; - /** Test if the given predicate passes for the given list of options. */ - static test(predicate: PredicateStatement[] | undefined, options: Set | string[]): boolean; - /** Test this predicate against a domain of discourse */ - test(options: Set | string[]): boolean; - toObject(): RawPredicate; - clone(): Predicate; -} -declare class StatementValidator { - #private; - static isStatement(statement: unknown): statement is PredicateStatement; - static isAtomic(statement: unknown): statement is Atom; - static isBinaryOp(statement: unknown): statement is BinaryOperation; - static isCompound(statement: unknown): statement is CompoundStatement; -} -type EqualTo = { - eq: [string, string | number]; -}; -type GreaterThan = { - gt: [string, string | number]; -}; -type GreaterThanEqualTo = { - gte: [string, string | number]; -}; -type LessThan = { - lt: [string, string | number]; -}; -type LessThanEqualTo = { - lte: [string, string | number]; -}; -type BinaryOperation = EqualTo | GreaterThan | GreaterThanEqualTo | LessThan | LessThanEqualTo; -type Atom = string | BinaryOperation; -type Conjunction = { - and: PredicateStatement[]; -}; -type Disjunction = { - or: PredicateStatement[]; -}; -type ExclusiveDisjunction = { - xor: PredicateStatement[]; -}; -type Negation = { - not: PredicateStatement; -}; -type AlternativeDenial = { - nand: PredicateStatement[]; -}; -type JointDenial = { - nor: PredicateStatement[]; -}; -type Conditional = { - if: PredicateStatement; - then: PredicateStatement; -}; -type Biconditional = { - iff: PredicateStatement[]; -}; -type CompoundStatement = Conjunction | Disjunction | ExclusiveDisjunction | AlternativeDenial | JointDenial | Negation | Conditional | Biconditional; -type PredicateStatement = Atom | CompoundStatement; -type RawPredicate = PredicateStatement[]; -export { Predicate, StatementValidator }; -export type { PredicateStatement, RawPredicate }; diff --git a/types/src/module/system/progress.d.ts b/types/src/module/system/progress.d.ts deleted file mode 100644 index 471729054..000000000 --- a/types/src/module/system/progress.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -/** - * Quick and dirty API around the Loading bar. - * Does not handle conflicts; multiple instances of this class will fight for the same loading bar, but once all but - * once are completed, the bar should return to normal - * - * @category Other - */ -declare class Progress { - value: number; - readonly max: number; - /** An initial label: overridable while advancing */ - label: string; - constructor({ max, label }: { - max: number; - label?: string; - }); - advance({ by, label }?: { - by?: number; - label?: string; - }): void; - close({ label }?: { - label?: string | undefined; - }): void; -} -export { Progress }; diff --git a/types/src/module/system/rolls.d.ts b/types/src/module/system/rolls.d.ts deleted file mode 100644 index 148fafc4a..000000000 --- a/types/src/module/system/rolls.d.ts +++ /dev/null @@ -1,70 +0,0 @@ -/// -import type { ModifierPF2e } from "@actor/modifiers.ts"; -import type { RollOrigin, RollTarget } from "@actor/roll-context/types.ts"; -import type { AbilityTrait } from "@item/ability/types.ts"; -import type { TokenPF2e } from "@module/canvas/index.ts"; -import type { CheckContextChatFlag } from "@module/chat-message/index.ts"; -import type { ZeroToTwo } from "@module/data.ts"; -import type { RollNotePF2e, RollNoteSource } from "@module/notes.ts"; -import type { RollTwiceOption } from "./check/index.ts"; -import type { CheckDC, DEGREE_OF_SUCCESS_STRINGS } from "./degree-of-success.ts"; -interface RollDataPF2e extends RollOptions { - rollerId?: string; - totalModifier?: number; - /** Whether to show roll formula and tooltip to players */ - showBreakdown?: boolean; -} -/** Possible parameters of a RollFunction */ -interface RollParameters { - /** The triggering event */ - event?: MouseEvent | JQuery.TriggeredEvent; - /** Any options which should be used in the roll. */ - options?: string[] | Set; - /** Optional DC data for the roll */ - dc?: CheckDC | null; - /** Callback called when the roll occurs. */ - callback?: (roll: Rolled) => void | Promise; - /** Additional modifiers */ - modifiers?: ModifierPF2e[]; - /** Whether to create a message from the roll */ - createMessage?: boolean; -} -interface AttackRollParams extends RollParameters { - /** A target token: pulled from `game.users.targets` if not provided */ - target?: TokenPF2e | null; - /** Retrieve the formula of the strike roll without following through to the end */ - getFormula?: true; - /** Should this strike consume ammunition, if applicable? */ - consumeAmmo?: boolean; - /** The strike is involve throwing a thrown melee weapon or to use the melee usage of a combination weapon */ - altUsage?: "thrown" | "melee" | null; - /** Should this roll be rolled twice? If so, should it keep highest or lowest? */ - rollTwice?: RollTwiceOption; -} -interface DamageRollParams extends Omit { - mapIncreases?: Maybe; - checkContext?: Maybe; -} -interface BaseRollContext { - /** Any options which should be used in the roll. */ - options?: Set; - /** Any notes which should be shown for the roll. */ - notes?: (RollNotePF2e | RollNoteSource)[]; - /** The roll mode (i.e., 'roll', 'blindroll', etc) to use when rendering this roll. */ - rollMode?: RollMode | "roll"; - /** Origin data for the check, if applicable */ - origin?: RollOrigin | null; - /** Targeting data for the check, if applicable */ - target?: RollTarget | null; - /** Action traits associated with the roll */ - traits?: AbilityTrait[]; - /** The outcome a roll (usually relevant only to rerolls) */ - outcome?: (typeof DEGREE_OF_SUCCESS_STRINGS)[number] | null; - /** The outcome prior to being changed by abilities raising or lowering degree of success */ - unadjustedOutcome?: (typeof DEGREE_OF_SUCCESS_STRINGS)[number] | null; - /** Should the roll be immediately created as a chat message? */ - createMessage?: boolean; - /** Skip the roll dialog regardless of user setting */ - skipDialog?: boolean; -} -export type { AttackRollParams, BaseRollContext, DamageRollParams, RollDataPF2e, RollParameters, RollTwiceOption }; diff --git a/types/src/module/system/schema-data-fields.d.ts b/types/src/module/system/schema-data-fields.d.ts deleted file mode 100644 index 8824146fe..000000000 --- a/types/src/module/system/schema-data-fields.d.ts +++ /dev/null @@ -1,96 +0,0 @@ -import { Predicate, PredicateStatement, RawPredicate } from "@system/predication.ts"; -import { SlugCamel } from "@util"; -import type DataModel from "types/foundry/common/abstract/data.d.ts"; -import type { ArrayFieldOptions, CleanFieldOptions, DataField, DataFieldOptions, DataFieldValidationOptions, DataSchema, MaybeSchemaProp, ModelPropFromDataField, NumberField, ObjectFieldOptions, SourcePropFromDataField, StringField, StringFieldOptions } from "types/foundry/common/data/fields.d.ts"; -import type { DataModelValidationFailure } from "types/foundry/common/data/validation-failure.d.ts"; -declare const fields: typeof foundry.data.fields; -/** A `SchemaField` that preserves fields not declared in its `DataSchema` */ -declare class LaxSchemaField extends fields.SchemaField { - protected _cleanType(data: Record, options?: CleanFieldOptions): SourceFromSchema; -} -/** A `SchemaField` that does not cast the source value to an object */ -declare class StrictSchemaField extends fields.SchemaField { - protected _cast(value: unknown): SourceFromSchema; - protected _cleanType(data: object, options?: CleanFieldOptions): SourceFromSchema; -} -/** A `StringField` that does not cast the source value */ -declare class StrictStringField = TSourceProp, TRequired extends boolean = false, TNullable extends boolean = false, THasInitial extends boolean = boolean> extends fields.StringField { - protected _cast(value: unknown): unknown; -} -/** A `NumberField` that does not cast the source value */ -declare class StrictNumberField = TSourceProp, TRequired extends boolean = false, TNullable extends boolean = true, THasInitial extends boolean = true> extends fields.NumberField { - protected _cast(value: unknown): unknown; -} -/** A `BooleanField` that does not cast the source value */ -declare class StrictBooleanField extends fields.BooleanField { - protected _cast(value: unknown): unknown; -} -declare class StrictArrayField>[] = SourcePropFromDataField[], TModelProp extends object = ModelPropFromDataField[], TRequired extends boolean = true, TNullable extends boolean = false, THasInitial extends boolean = true> extends fields.ArrayField { - /** Don't wrap a non-array in an array */ - protected _cast(value: unknown): unknown; - /** Parent method assumes array-wrapping: pass through unchanged */ - protected _cleanType(value: unknown): unknown; - initialize(value: JSONValue, model: ConstructorOf, options: ArrayFieldOptions): MaybeSchemaProp; -} -/** An array field that will prune invalid elements without complaint */ -declare class LaxArrayField>[] = SourcePropFromDataField[], TModelProp extends object = ModelPropFromDataField[], TRequired extends boolean = true, TNullable extends boolean = false, THasInitial extends boolean = true> extends fields.ArrayField { - protected _validateElements(value: unknown[], options?: DataFieldValidationOptions): void | DataModelValidationFailure; -} -declare class StrictObjectField extends fields.ObjectField { - protected _cast(value: unknown): unknown; -} -declare class DataUnionField extends fields.DataField ? TSourceProp : never, TField extends DataField ? TModelProp : never, TRequired, TNullable, THasInitial> { - fields: TField[]; - constructor(fields: TField[], options: DataFieldOptions ? TSourceProp : never, TRequired, TNullable, THasInitial>); - protected _cast(value?: unknown): unknown; - clean(value: unknown, options?: CleanFieldOptions | undefined): MaybeUnionSchemaProp; - validate(value: unknown, options?: DataFieldValidationOptions | undefined): void | DataModelValidationFailure; - initialize(value: unknown, model?: ConstructorOf | undefined, options?: object | undefined): MaybeUnionSchemaProp; -} -type MaybeUnionSchemaProp = MaybeSchemaProp ? TModelProp : never, TRequired, TNullable, THasInitial>; -/** A sluggified string field */ -declare class SlugField extends StrictStringField { - constructor(options?: SlugFieldOptions); - protected static get _defaults(): SlugFieldOptions; - protected _cleanType(value: Maybe, options?: CleanFieldOptions): MaybeSchemaProp; -} -interface SlugField extends StrictStringField { - options: SlugFieldOptions; -} -interface SlugFieldOptions extends StringFieldOptions { - camel?: SlugCamel; -} -declare class PredicateStatementField extends fields.DataField { - /** A `PredicateStatement` is always required (not `undefined`) and never nullable */ - constructor(options?: DataFieldOptions); - protected _validateType(value: unknown): boolean; - /** No casting is available for a predicate statement */ - protected _cast(value: unknown): unknown; - protected _cleanType(value: PredicateStatement): PredicateStatement; -} -declare class PredicateField extends StrictArrayField { - constructor(options?: ArrayFieldOptions); - /** Construct a `PredicatePF2e` from the initialized `PredicateStatement[]` */ - initialize(value: RawPredicate, model: ConstructorOf, options?: ArrayFieldOptions): MaybeSchemaProp; -} -type RecordFieldModelProp | NumberField, TValueField extends DataField, TDense extends boolean = false> = TDense extends true ? Record, ModelPropFromDataField> : TDense extends false ? Partial, ModelPropFromDataField>> : Record, ModelPropFromDataField> | Partial, ModelPropFromDataField>>; -type RecordFieldSourceProp | NumberField, TValueField extends DataField, -/** Whether this is to be treated as a "dense" record; i.e., any valid key should return a value */ -TDense extends boolean = false> = TDense extends true ? Record, SourcePropFromDataField> : TDense extends false ? Partial, SourcePropFromDataField>> : Record, SourcePropFromDataField> | Partial, SourcePropFromDataField>>; -declare class RecordField | NumberField, TValueField extends DataField, TRequired extends boolean = true, TNullable extends boolean = false, THasInitial extends boolean = true, TDense extends boolean = false> extends fields.ObjectField, RecordFieldModelProp, TRequired, TNullable, THasInitial> { - static recursive: boolean; - keyField: TKeyField; - valueField: TValueField; - constructor(keyField: TKeyField, valueField: TValueField, options?: ObjectFieldOptions, TRequired, TNullable, THasInitial>); - protected _isValidKeyFieldType(keyField: unknown): keyField is StringField | NumberField; - protected _validateValues(values: Record, options?: DataFieldValidationOptions): DataModelValidationFailure | void; - protected _cleanType(values: Record, options?: CleanFieldOptions | undefined): Record; - protected _validateType(values: unknown, options?: DataFieldValidationOptions): boolean | DataModelValidationFailure | void; - initialize(values: object | null | undefined, model: ConstructorOf, options?: ObjectFieldOptions, TRequired, TNullable, THasInitial>): MaybeSchemaProp, TRequired, TNullable, THasInitial>; -} -/** A field that always results in a value of `null` */ -declare class NullField extends fields.DataField { - constructor(); - protected _cast(): null; -} -export { DataUnionField, LaxArrayField, LaxSchemaField, NullField, PredicateField, RecordField, SlugField, StrictArrayField, StrictBooleanField, StrictNumberField, StrictObjectField, StrictSchemaField, StrictStringField, }; diff --git a/types/src/module/system/settings/automation.d.ts b/types/src/module/system/settings/automation.d.ts deleted file mode 100644 index 41e2a9505..000000000 --- a/types/src/module/system/settings/automation.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { PartialSettingsData, SettingsMenuPF2e } from "./menu.ts"; -type ConfigPF2eListName = (typeof AutomationSettings.SETTINGS)[number]; -export declare class AutomationSettings extends SettingsMenuPF2e { - static readonly namespace = "automation"; - static readonly SETTINGS: readonly ["rulesBasedVision", "iwr", "effectExpiration", "removeExpiredEffects", "flankingDetection", "encumbrance", "lootableNPCs"]; - protected static get settings(): Record; -} -export {}; diff --git a/types/src/module/system/settings/homebrew/damage.d.ts b/types/src/module/system/settings/homebrew/damage.d.ts deleted file mode 100644 index 176fa0fa8..000000000 --- a/types/src/module/system/settings/homebrew/damage.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { CustomDamageData } from "./data.ts"; - -/** - * To update all custom damage types in the system, we need to ensure that all collections are added to and cleaned. - * This reduces the scope of all damage related operations so that its easier to identify when something goes wrong. - */ -export declare class DamageTypeManager { - collections: { - physicalConfig: Record; - energyConfig: Record; - physical: string[]; - energy: string[]; - DAMAGE_TYPES: Set<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped">; - BASE_DAMAGE_TYPES_TO_CATEGORIES: Record<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped", "abysium" | "adamantine" | "dawnsilver" | "djezet" | "duskwood" | "energy" | "inubrix" | "noqual" | "orichalcum" | "physical" | "siccatite" | "silver" | "precision" | "splash" | "cold-iron" | "keep-stone" | "peachwood" | "sisterstone-dusk" | "sisterstone-scarlet" | "sovereign-steel" | "warpglass" | "persistent" | null>; - DAMAGE_TYPE_ICONS: Record<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped", string | null>; - damageTypesLocalization: Record<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped", string>; - damageRollFlavorsLocalization: Record<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped", string>; - immunityTypes: Record; - weaknessTypes: Record; - resistanceTypes: Record; - }; - addCustomDamage(data: CustomDamageData, options?: { - slug?: string; - }): void; - updateSettings(): void; -} diff --git a/types/src/module/system/settings/homebrew/data.d.ts b/types/src/module/system/settings/homebrew/data.d.ts deleted file mode 100644 index 93d8a3c8d..000000000 --- a/types/src/module/system/settings/homebrew/data.d.ts +++ /dev/null @@ -1,98 +0,0 @@ -import type { Language } from "@actor/creature/index.ts"; -import { AttributeString } from "@actor/types.ts"; -import { BaseArmorType } from "@item/armor/types.ts"; -import type { BaseWeaponType } from "@item/weapon/types.ts"; -import type { SetField, StringField } from "types/foundry/common/data/fields.d.ts"; -import type { MenuTemplateData } from "../menu.ts"; - -declare const HOMEBREW_ELEMENT_KEYS: readonly ["languages", "armorGroups", "baseArmors", "weaponCategories", "weaponGroups", "baseWeapons", "creatureTraits", "featTraits", "spellTraits", "weaponTraits", "shieldTraits", "equipmentTraits"]; -/** Homebrew elements from some of the above records are propagated to related records */ -declare const TRAIT_PROPAGATIONS: { - readonly actionTraits: readonly ["effectTraits"]; - readonly creatureTraits: readonly ["ancestryTraits", "hazardTraits"]; - readonly equipmentTraits: readonly ["armorTraits", "consumableTraits"]; - readonly featTraits: readonly ["actionTraits"]; - readonly weaponTraits: readonly ["npcAttackTraits"]; -}; -type HomebrewTraitKey = (typeof HOMEBREW_ELEMENT_KEYS)[number]; -type HomebrewKey = HomebrewTraitKey | "damageTypes" | "languageRarities"; -type HomebrewTraitSettingsKey = `homebrew.${HomebrewTraitKey}`; -interface HomebrewTag { - id: T extends "baseArmors" ? BaseArmorType : T extends "baseWeapons" ? BaseWeaponType : T extends "languages" ? LanguageNotCommon : T extends Exclude ? keyof (typeof CONFIG.PF2E)[T] : never; - value: string; -} -type MainDamageCategories = "physical" | "energy"; -interface CustomDamageData { - label: string; - category?: MainDamageCategories | null; - icon: string | null; -} -interface HomebrewElementsSheetData extends MenuTemplateData { - languageRarities: LanguageSettingsSheetData; - damageCategories: Record; - customDamageTypes: CustomDamageData[]; -} -interface LanguageSettingsSheetData { - commonLanguage: LanguageNotCommon | null; - common: { - slug: LanguageNotCommon; - label: string; - }[]; - uncommon: { - slug: LanguageNotCommon; - label: string; - }[]; - rare: { - slug: LanguageNotCommon; - label: string; - }[]; - secret: { - slug: LanguageNotCommon; - label: string; - }[]; -} -type LanguageNotCommon = Exclude; -declare class LanguageSettings extends foundry.abstract.DataModel { - /** Common-rarity languages: those not classified among the subsequent rarities */ - common: Set; - /** Homebrew languages created by the GM */ - homebrew: Set; - protected _initialize(options?: Record): void; - static defineSchema(): LanguageSettingsSchema; - /** Include common languages in the non-source raw object. */ - toObject(source?: true): this["_source"]; - toObject(source: false): RawLanguageSettings; - toObject(source?: boolean): this["_source"] | RawLanguageSettings; - /** Schema-restricting choices removes homebrew languages before they're registered: prune in ready hook instead. */ - onReady(): void; -} -interface LanguageSettings extends foundry.abstract.DataModel, ModelPropsFromSchema { -} -type LanguageSettingsSchema = { - /** The "common" tongue of the region, rather than languages of common rarity */ - commonLanguage: StringField; - /** Languages of uncommon rarity */ - uncommon: LanguageSetField; - /** Languages of rare rarity */ - rare: LanguageSetField; - /** "Secret" languages (Wildsong) */ - secret: LanguageSetField; - /** Languages not available for use on any creature */ - unavailable: LanguageSetField; -}; -type LanguageSetField = SetField, LanguageNotCommon[], Set, true, false, true>; -interface ModuleHomebrewData { - skills: Record; - damageTypes: Record; - traits: Record; - traitDescriptions: Record; -} -type RawLanguageSettings = RawObject & { - common: LanguageNotCommon[]; - homebrew: LanguageNotCommon[]; -}; -export { HOMEBREW_ELEMENT_KEYS, LanguageSettings, TRAIT_PROPAGATIONS }; -export type { CustomDamageData, HomebrewElementsSheetData, HomebrewKey, HomebrewTag, HomebrewTraitKey, HomebrewTraitSettingsKey, LanguageNotCommon, LanguageSettingsSheetData, ModuleHomebrewData, }; diff --git a/types/src/module/system/settings/homebrew/helpers.d.ts b/types/src/module/system/settings/homebrew/helpers.d.ts deleted file mode 100644 index 34701a041..000000000 --- a/types/src/module/system/settings/homebrew/helpers.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { MigrationBase } from "@module/migration/base.ts"; -import { CustomDamageData, HomebrewTraitKey, ModuleHomebrewData } from "./data.ts"; -/** User-defined type guard for checking that an object is a well-formed flag category of module-provided homebrew elements */ -declare function isHomebrewFlagCategory(value: unknown): value is Record; -declare function isHomebrewCustomDamage(value: object): value is Record; -interface LabelAndDescription { - label: string; - description: string; -} -declare function prepareReservedTerms(): ReservedTermsRecord; -type ReservedTermsRecord = Record>; -/** Reads homebrew settings from all modules */ -declare function readModuleHomebrewSettings(): ModuleHomebrewData; -declare function prepareCleanup(listKey: HomebrewTraitKey, deletions: string[]): MigrationBase; -export { isHomebrewCustomDamage, isHomebrewFlagCategory, prepareCleanup, prepareReservedTerms, readModuleHomebrewSettings, type ReservedTermsRecord, }; diff --git a/types/src/module/system/settings/homebrew/index.d.ts b/types/src/module/system/settings/homebrew/index.d.ts deleted file mode 100644 index 6a8666115..000000000 --- a/types/src/module/system/settings/homebrew/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./data.ts"; -export * from "./menu.ts"; diff --git a/types/src/module/system/settings/homebrew/languages.d.ts b/types/src/module/system/settings/homebrew/languages.d.ts deleted file mode 100644 index 17eeb1b61..000000000 --- a/types/src/module/system/settings/homebrew/languages.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { HomebrewTag, LanguageNotCommon, LanguageSettings, LanguageSettingsSheetData } from "./data.ts"; -import { HomebrewElements } from "./menu.ts"; -/** A helper class for managing languages and their rarities */ -export declare class LanguagesManager { - #private; - /** The parent settings menu */ - menu: HomebrewElements; - /** A separate list of module-provided languages */ - moduleLanguages: LanguageNotCommon[]; - constructor(menu: HomebrewElements); - get data(): LanguageSettings; - getSheetData(): LanguageSettingsSheetData; - activateListeners(html: HTMLElement): void; - /** Update the language rarities cache, adding and deleting from sets as necessary. */ - onChangeHomebrewLanguages(languages: HomebrewTag<"languages">[]): void; -} diff --git a/types/src/module/system/settings/homebrew/menu.d.ts b/types/src/module/system/settings/homebrew/menu.d.ts deleted file mode 100644 index ec0397e3c..000000000 --- a/types/src/module/system/settings/homebrew/menu.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -/// -/// -/// -import "@yaireo/tagify/dist/tagify.css"; -import { PartialSettingsData, SettingsMenuPF2e } from "../menu.ts"; -import { - CustomDamageData, - HomebrewElementsSheetData, - HomebrewKey, - HomebrewTag, - HomebrewTraitKey, - LanguageSettings, - ModuleHomebrewData, -} from "./data.ts"; -import { ReservedTermsRecord } from "./helpers.ts"; -import { LanguagesManager } from "./languages.ts"; - -declare class HomebrewElements extends SettingsMenuPF2e { - #private; - static readonly namespace = "homebrew"; - languagesManager: LanguagesManager; - static get reservedTerms(): ReservedTermsRecord; - static get moduleData(): ModuleHomebrewData; - static get SETTINGS(): string[]; - static get defaultOptions(): FormApplicationOptions; - protected static get settings(): Record; - activateListeners($html: JQuery): void; - getData(): Promise; - /** Tagify sets an empty input field to "" instead of "[]", which later causes the JSON parse to throw an error */ - protected _onSubmit(event: Event, options?: OnSubmitFormOptions): Promise | false>; - protected _getSubmitData(updateData?: Record | undefined): Record; - protected _updateObject(event: Event, data: Record): Promise; - onInit(): void; -} -type HomebrewSubmitData = { - damageTypes: CustomDamageData[]; - languages: HomebrewTag<"languages">[]; - languageRarities: LanguageSettings; -} & Record & { - clear(): void; -}; -interface HomebrewElements extends SettingsMenuPF2e { - constructor: typeof HomebrewElements; - cache: HomebrewSubmitData; -} -export { HomebrewElements }; diff --git a/types/src/module/system/settings/index.d.ts b/types/src/module/system/settings/index.d.ts deleted file mode 100644 index f90010402..000000000 --- a/types/src/module/system/settings/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function registerSettings(): void; diff --git a/types/src/module/system/settings/menu.d.ts b/types/src/module/system/settings/menu.d.ts deleted file mode 100644 index 352a98b9f..000000000 --- a/types/src/module/system/settings/menu.d.ts +++ /dev/null @@ -1,46 +0,0 @@ -/// -/// -/// -declare abstract class SettingsMenuPF2e extends FormApplication { - static readonly namespace: string; - protected cache: Record & { - clear(): void; - }; - static get defaultOptions(): FormApplicationOptions; - static readonly SETTINGS: readonly string[]; - /** Settings to be registered and also later referenced during user updates */ - protected static get settings(): Record; - static registerSettings(): void; - get namespace(): string; - getData(): Promise; - close(options?: { - force?: boolean; - }): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, data: Record): Promise; - /** Overriden to add some additional first-render behavior */ - protected _injectHTML($html: JQuery): void; -} -interface SettingsMenuPF2e extends FormApplication { - constructor: typeof SettingsMenuPF2e; - options: SettingsMenuOptions; -} -interface PartialSettingsData extends Omit { - prefix?: string; - tab?: string; -} -interface SettingsTemplateData extends PartialSettingsData { - key: string; - value: unknown; - isSelect: boolean; - isCheckbox: boolean; -} -interface MenuTemplateData extends FormApplicationData { - settings: Record; -} -interface SettingsMenuOptions extends FormApplicationOptions { - highlightSetting?: string; -} -declare function settingsToSheetData(settings: Record, cache?: Record): Record; -export { SettingsMenuPF2e, settingsToSheetData }; -export type { MenuTemplateData, PartialSettingsData, SettingsMenuOptions, SettingsTemplateData }; diff --git a/types/src/module/system/settings/metagame.d.ts b/types/src/module/system/settings/metagame.d.ts deleted file mode 100644 index f6a504bad..000000000 --- a/types/src/module/system/settings/metagame.d.ts +++ /dev/null @@ -1,79 +0,0 @@ -import { SettingsMenuPF2e } from "./menu.ts"; -declare const MetagameSettingsConfig: { - showDC: { - prefix: string; - name: string; - hint: string; - default: false; - type: BooleanConstructor; - onChange: (value: unknown) => void; - }; - showResults: { - prefix: string; - name: string; - hint: string; - default: true; - type: BooleanConstructor; - onChange: (value: unknown) => void; - }; - showBreakdowns: { - prefix: string; - name: string; - hint: string; - default: false; - type: BooleanConstructor; - onChange: (value: unknown) => void; - }; - secretDamage: { - prefix: string; - name: string; - hint: string; - default: false; - type: BooleanConstructor; - }; - secretCondition: { - prefix: string; - name: string; - hint: string; - default: false; - type: BooleanConstructor; - }; - partyVision: { - prefix: string; - name: string; - hint: string; - default: false; - type: BooleanConstructor; - onChange: (value: unknown) => void; - }; - showPartyStats: { - prefix: string; - name: string; - hint: string; - default: true; - type: BooleanConstructor; - onChange: (value: unknown) => void; - }; - tokenSetsNameVisibility: { - prefix: string; - name: string; - hint: string; - default: false; - type: BooleanConstructor; - onChange: (value: unknown) => Promise; - }; - secretChecks: { - prefix: string; - name: string; - hint: string; - default: false; - type: BooleanConstructor; - onChange: (value: unknown) => void; - }; -}; -declare class MetagameSettings extends SettingsMenuPF2e { - static namespace: string; - static get settings(): typeof MetagameSettingsConfig; - static get SETTINGS(): string[]; -} -export { MetagameSettings }; diff --git a/types/src/module/system/settings/variant-rules.d.ts b/types/src/module/system/settings/variant-rules.d.ts deleted file mode 100644 index 9a6cf7274..000000000 --- a/types/src/module/system/settings/variant-rules.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -/// -/// -/// -import { SettingsTemplateData } from "./menu.ts"; - -export declare class VariantRulesSettings extends FormApplication { - static get defaultOptions(): FormApplicationOptions; - getData(): Promise>; - static registerSettings(): void; - activateListeners($html: JQuery): void; - protected _updateObject(_event: Event, data: Record): Promise; -} diff --git a/types/src/module/system/settings/world-clock.d.ts b/types/src/module/system/settings/world-clock.d.ts deleted file mode 100644 index cc762a9f3..000000000 --- a/types/src/module/system/settings/world-clock.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -/// -/// -/// -interface FormInputData extends Omit { - value: unknown; - isSelect: boolean; - isCheckbox: boolean; - isDateTime: boolean; -} -interface TemplateData extends FormApplicationData { - settings: FormInputData[]; -} -interface UpdateData { - dateTheme: string; - timeConvention: boolean; - playersCanView: boolean; - syncDarkness: boolean; - syncDarknessScene: boolean; - worldCreatedOn: string; - showClockButton: boolean; -} -export declare class WorldClockSettings extends FormApplication { - static get defaultOptions(): FormApplicationOptions; - getData(): Promise; - /** Register World Clock settings */ - static registerSettings(): void; - activateListeners($html: JQuery): void; - protected _updateObject(_event: Event, data: Record & UpdateData): Promise; - /** Settings to be registered and also later referenced during user updates */ - private static get settings(); -} -export {}; diff --git a/types/src/module/system/statistic/armor-class.d.ts b/types/src/module/system/statistic/armor-class.d.ts deleted file mode 100644 index d0b5cc3c4..000000000 --- a/types/src/module/system/statistic/armor-class.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import type { ActorPF2e, CreaturePF2e } from "@actor"; -import { AttributeString } from "@actor/types.ts"; -import type { ArmorPF2e } from "@item"; -import { ZeroToFour } from "@module/data.ts"; -import { Statistic, StatisticData, StatisticTraceData } from "./index.ts"; -declare class ArmorStatistic extends Statistic { - #private; - details: string; - get item(): ArmorPF2e | null; - constructor(actor: TActor, data?: Omit); - getTraceData(this: ArmorStatistic): ArmorClassTraceData; - getTraceData(): ArmorClassTraceData; -} -interface ArmorStatisticData extends StatisticData { - rank?: ZeroToFour; - details?: string; -} -interface ArmorClassTraceData extends StatisticTraceData { - details: string; - slug: "ac"; -} -export { ArmorStatistic, type ArmorClassTraceData }; diff --git a/types/src/module/system/statistic/base.d.ts b/types/src/module/system/statistic/base.d.ts deleted file mode 100644 index 8d7cd5592..000000000 --- a/types/src/module/system/statistic/base.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { type ModifierPF2e } from "@actor/modifiers.ts"; -import { BaseStatisticData, BaseStatisticTraceData, StatisticData } from "./data.ts"; -/** Basic data forming any Pathfinder statistic */ -declare abstract class BaseStatistic { - /** The actor to which this statistic belongs */ - actor: TActor; - /** A stable but human-readable identifier */ - slug: string; - /** A display label */ - label: string; - /** Original construction arguments */ - protected data: StatisticData; - /** String category identifiers: used to retrieve modifiers and other synthetics as well as create roll options */ - domains: string[]; - /** Penalties, bonuses, and actual modifiers comprising a total modifier value */ - modifiers: ModifierPF2e[]; - constructor(actor: TActor, data: BaseStatisticData); - createRollOptions(domains?: string[]): Set; - abstract getTraceData(): BaseStatisticTraceData; -} -export { BaseStatistic }; diff --git a/types/src/module/system/statistic/data.d.ts b/types/src/module/system/statistic/data.d.ts deleted file mode 100644 index 89e8de73b..000000000 --- a/types/src/module/system/statistic/data.d.ts +++ /dev/null @@ -1,79 +0,0 @@ -import type { ModifierPF2e, RawModifier } from "@actor/modifiers.ts"; -import { AttributeString } from "@actor/types.ts"; -import { ZeroToFour } from "@module/data.ts"; -import { CheckType } from "@system/check/index.ts"; -interface BaseStatisticData { - /** An identifier such as "reflex" or "ac" or "deception" */ - slug: string; - label: string; - /** Base domains for fetching actor roll options */ - domains?: string[]; - /** Modifiers not retrieved from the actor's synthetics record */ - modifiers?: ModifierPF2e[]; -} -/** Used to build the actual statistic object */ -interface StatisticData extends BaseStatisticData { - attribute?: AttributeString | null; - rank?: ZeroToFour; - /** If the actor is proficient with this statistic (rather than deriving from rank) */ - proficient?: boolean; - lore?: boolean; - check?: StatisticCheckData; - dc?: StatisticDifficultyClassData; - /** If given, filters all automatically acquired modifiers */ - filter?: (m: ModifierPF2e) => boolean; - /** - * Any static roll options that should be added to the list of roll options. - * This does not include actor, rank, or basic item roll options. - */ - rollOptions?: string[]; -} -interface StatisticCheckData { - type: CheckType; - label?: string; - /** Additional domains for fetching actor roll options */ - domains?: string[]; - /** Modifiers not retrieved from the actor's synthetics record */ - modifiers?: ModifierPF2e[]; -} -interface StatisticDifficultyClassData { - /** Additional domains for fetching actor roll options */ - domains?: string[]; - label?: string; - /** Modifiers not retrieved from the actor's synthetics record */ - modifiers?: ModifierPF2e[]; -} -/** Defines view data for chat message and sheet rendering */ -interface StatisticChatData { - slug: string; - label: string; - rank: number | null; - check: { - label: string; - mod: number; - breakdown: string; - map1: number; - map2: number; - }; - dc: { - value: number; - breakdown: string; - }; -} -interface BaseStatisticTraceData { - slug: string; - label: string; - /** A numeric value of some kind: semantics determined by `AbstractBaseStatistic` subclass */ - value: number; - breakdown: string; - modifiers: Required[]; -} -/** Data intended to be merged back into actor data (usually for token attribute/RE purposes) */ -interface StatisticTraceData extends BaseStatisticTraceData { - /** Either the totalModifier or the dc depending on what the data is for */ - value: number; - totalModifier: number; - dc: number; - attribute: TAttribute; -} -export type { BaseStatisticData, BaseStatisticTraceData, StatisticChatData, StatisticCheckData, StatisticData, StatisticDifficultyClassData, StatisticTraceData, }; diff --git a/types/src/module/system/statistic/hit-points.d.ts b/types/src/module/system/statistic/hit-points.d.ts deleted file mode 100644 index a791f7925..000000000 --- a/types/src/module/system/statistic/hit-points.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { CreaturePF2e, HazardPF2e, VehiclePF2e } from "@actor"; -import { BaseStatistic } from "./base.ts"; -import { BaseStatisticTraceData } from "./data.ts"; -type HPStatActor = CreaturePF2e | HazardPF2e | VehiclePF2e; -declare class HitPointsStatistic extends BaseStatistic { - #private; - /** The actor's current hit points */ - value: number; - /** The actor's maximum hit points, which is the "total modifier" of this statistic */ - max: number; - /** Temporary hit points */ - temp: number; - /** Whether the actor is healed by void healing and harmed by vitality damage */ - negativeHealing: boolean; - /** Unrecoverable hit points: a number of lost hit points that cannot be healed by any means */ - unrecoverable: number; - /** Additional, unstructured information affecting the actor's hit points */ - details: string; - constructor(actor: TActor, { baseMax }?: { - baseMax?: number; - }); - get breakdown(): string; - getTraceData(): HitPointsTraceData; -} -interface HitPointsTraceData extends BaseStatisticTraceData, Pick { - /** The actor's current hit points */ - value: number; -} -export { HitPointsStatistic }; diff --git a/types/src/module/system/statistic/index.d.ts b/types/src/module/system/statistic/index.d.ts deleted file mode 100644 index 3c955300b..000000000 --- a/types/src/module/system/statistic/index.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export * from "./base.ts"; -export * from "./data.ts"; -export * from "./statistic.ts"; -export * from "./armor-class.ts"; -export * from "./hit-points.ts"; -export * from "./perception.ts"; diff --git a/types/src/module/system/statistic/perception.d.ts b/types/src/module/system/statistic/perception.d.ts deleted file mode 100644 index 7a552c567..000000000 --- a/types/src/module/system/statistic/perception.d.ts +++ /dev/null @@ -1,34 +0,0 @@ -import type { ActorPF2e, CreaturePF2e } from "@actor"; -import { SenseData } from "@actor/creature/data.ts"; -import { Sense } from "@actor/creature/sense.ts"; -import { AttributeString } from "@actor/types.ts"; -import type { StatisticData, StatisticTraceData } from "./data.ts"; -import { Statistic, type RollOptionConfig } from "./statistic.ts"; -declare class PerceptionStatistic extends Statistic { - #private; - /** Special senses possessed by the actor */ - senses: Collection; - /** Whether the actor has standard vision */ - hasVision: boolean; - /** Special senses or other perception-related details without formalization in the system: used for NPCs */ - details?: string; - constructor(actor: TActor, data: PerceptionStatisticData, config?: RollOptionConfig); - getTraceData(this: Statistic): PerceptionTraceData; - getTraceData(): PerceptionTraceData; -} -interface PerceptionStatisticData extends StatisticData { - senses: SenseData[]; - vision?: boolean; - details?: string; -} -type LabeledSenseData = Required & { - label: string | null; -}; -interface PerceptionTraceData extends StatisticTraceData { - /** Unusual senses or other perception-related notes */ - details: string; - senses: LabeledSenseData[]; - /** Whether the creature has standard vision */ - vision: boolean; -} -export { PerceptionStatistic, type PerceptionTraceData }; diff --git a/types/src/module/system/statistic/statistic.d.ts b/types/src/module/system/statistic/statistic.d.ts deleted file mode 100644 index a5f88e56f..000000000 --- a/types/src/module/system/statistic/statistic.d.ts +++ /dev/null @@ -1,147 +0,0 @@ -import type { ActorPF2e, CreaturePF2e } from "@actor"; -import { TraitViewData } from "@actor/data/base.ts"; -import { ModifierPF2e } from "@actor/modifiers.ts"; -import { AttributeString } from "@actor/types.ts"; -import type { ItemPF2e } from "@item"; -import { ZeroToFour } from "@module/data.ts"; -import { RollNotePF2e, RollNoteSource } from "@module/notes.ts"; -import type { TokenDocumentPF2e } from "@scene"; -import { CheckRollCallback } from "@system/check/check.ts"; -import type { CheckRoll } from "@system/check/index.ts"; -import { CheckType, RollTwiceOption } from "@system/check/types.ts"; -import { CheckDC } from "@system/degree-of-success.ts"; -import { BaseStatistic } from "./base.ts"; -import { StatisticChatData, StatisticCheckData, StatisticData, StatisticDifficultyClassData, StatisticTraceData } from "./data.ts"; -/** A Pathfinder statistic used to perform checks and calculate DCs */ -declare class Statistic extends BaseStatistic { - #private; - attribute: AttributeString | null; - rank: ZeroToFour | null; - proficient: boolean; - /** The `Statistic` from which this one was derived (set by `Statistic#extend`), or otherwise `null`. */ - base: Statistic | null; - /** If this is a skill, returns whether it is a lore skill or not */ - lore?: boolean; - config: RollOptionConfig; - constructor(actor: TActor, data: StatisticData, config?: RollOptionConfig); - /** Get the attribute modifier used with this statistic. Since NPC statistics are contrived, create a new one. */ - get attributeModifier(): ModifierPF2e | null; - get check(): StatisticCheck; - get dc(): StatisticDifficultyClass; - /** Convenience getter to the statistic's total modifier */ - get mod(): number; - createRollOptions(domains?: string[], args?: RollOptionConfig): Set; - withRollOptions(options?: RollOptionConfig): Statistic; - /** - * Extend this statistic into a new cloned statistic with additional data. - * Combines all domains and modifier lists. - */ - clone(data: Omit, "check" | "dc" | "modifiers"> & { - dc?: Partial; - check?: Partial; - modifiers?: ModifierPF2e[]; - }): this; - /** - * Extend this statistic into a new cloned statistic with additional data. - * Combines all domains and modifier lists, and sets the new statistic to be the base of the other - */ - extend(data: Omit, "check" | "dc" | "modifiers"> & { - dc?: Partial; - check?: Partial; - modifiers?: ModifierPF2e[]; - }): this; - /** Shortcut to `this#check#roll` */ - roll(args?: StatisticRollParameters): Promise | null>; - /** Creates view data for sheets and chat messages */ - getChatData(options?: RollOptionConfig): StatisticChatData; - /** Returns data intended to be merged back into actor data. By default the value is the DC */ - getTraceData(this: Statistic, options?: { - value?: "dc" | "mod"; - }): StatisticTraceData; - getTraceData(options?: { - value?: "dc" | "mod"; - }): StatisticTraceData; -} -declare class StatisticCheck { - #private; - parent: TParent; - type: CheckType; - label: string; - domains: string[]; - mod: number; - modifiers: ModifierPF2e[]; - constructor(parent: TParent, data: StatisticData, config?: RollOptionConfig); - get actor(): ActorPF2e; - createRollOptions(args?: RollOptionConfig): Set; - roll(args?: StatisticRollParameters): Promise | null>; - get breakdown(): string; -} -interface StatisticRollParameters { - /** A string of some kind to identify the roll: will be included in `CheckRoll#options` */ - identifier?: string; - /** The slug of an action of which this check is a constituent roll */ - action?: string; - /** What token to use for the roll itself. Defaults to the actor's token */ - token?: Maybe; - /** Which attack this is (for the purposes of multiple attack penalty) */ - attackNumber?: number; - /** Optional target for the roll */ - target?: Maybe; - /** Optional origin for the roll: only one of target and origin may be provided */ - origin?: Maybe; - /** Optional DC data for the roll */ - dc?: CheckDC | CheckDCReference | number | null; - /** Optional override for the check modifier label */ - label?: string; - /** An optional identifying slug to give a specific check: propagated to roll options */ - slug?: Maybe; - /** Optional override for the dialog's title: defaults to label */ - title?: string; - /** Any additional roll notes that should be used in the roll. */ - extraRollNotes?: (RollNotePF2e | RollNoteSource)[]; - /** Any additional options that should be used in the roll. */ - extraRollOptions?: string[]; - /** Additional modifiers */ - modifiers?: ModifierPF2e[]; - /** The originating item of this attack, if any */ - item?: ItemPF2e | null; - /** The roll mode (i.e., 'roll', 'blindroll', etc) to use when rendering this roll. */ - rollMode?: RollMode | "roll"; - /** Should the dialog be skipped */ - skipDialog?: boolean; - /** Should this roll be rolled twice? If so, should it keep highest or lowest? */ - rollTwice?: RollTwiceOption; - /** Any traits for the check */ - traits?: (TraitViewData | string)[]; - /** Whether the check is part of a damaging action */ - damaging?: boolean; - /** Indication that the check is associated with a melee action */ - melee?: boolean; - /** Whether to create a chat message using the roll (defaults true) */ - createMessage?: boolean; - /** Callback called when the roll occurs. */ - callback?: CheckRollCallback; -} -declare class StatisticDifficultyClass { - parent: TParent; - domains: string[]; - label?: string; - modifiers: ModifierPF2e[]; - options: Set; - constructor(parent: TParent, data: StatisticData, options?: RollOptionConfig); - get value(): number; - get breakdown(): string; - toString(): string; -} -interface CheckDCReference { - slug: string; - value?: never; -} -interface RollOptionConfig { - extraRollOptions?: string[]; - item?: ItemPF2e | null; - origin?: ActorPF2e | null; - target?: ActorPF2e | null; -} -export { Statistic, StatisticCheck, StatisticDifficultyClass }; -export type { CheckDCReference, RollOptionConfig, StatisticRollParameters }; diff --git a/types/src/module/system/tag-selector/base.d.ts b/types/src/module/system/tag-selector/base.d.ts deleted file mode 100644 index 67201dd54..000000000 --- a/types/src/module/system/tag-selector/base.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import type { SelectableTagField } from "./index.ts"; -declare abstract class BaseTagSelector extends DocumentSheet { - #private; - static get defaultOptions(): TagSelectorOptions; - choices: Record; - /** The object path to the property containing the tags */ - protected abstract objectProperty: string; - /** Whether the tags are in an object containing a `value` array property or just an array by its lonesome */ - flat: boolean; - constructor(document: TDocument, options?: Partial); - get id(): string; - get title(): string; - protected abstract get configTypes(): readonly SelectableTagField[]; - getData(options?: Partial | undefined): Promise>; - activateListeners($html: JQuery): void; -} -interface TagSelectorOptions extends DocumentSheetOptions { - objectProperty?: string; - /** Is the target data property a flat array rather than a `value` object? */ - flat?: boolean; - customChoices?: Record; -} -interface TagSelectorData extends DocumentSheetData { - documentType: string; -} -export { BaseTagSelector }; -export type { TagSelectorData, TagSelectorOptions }; diff --git a/types/src/module/system/tag-selector/basic.d.ts b/types/src/module/system/tag-selector/basic.d.ts deleted file mode 100644 index 063d8fa5e..000000000 --- a/types/src/module/system/tag-selector/basic.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import { BaseTagSelector, TagSelectorData } from "./base.ts"; -import { SelectableTagField, TagSelectorOptions } from "./index.ts"; -export type BasicConstructorOptions = Partial & { - objectProperty: string; -}; -declare class TagSelectorBasic extends BaseTagSelector { - #private; - static get defaultOptions(): TagSelectorOptions; - protected objectProperty: string; - constructor(document: TDocument, options: BasicConstructorOptions); - protected get configTypes(): readonly SelectableTagField[]; - getData(options?: Partial): Promise>; - protected _onSearchFilter(_event: KeyboardEvent, _query: string, rgx: RegExp): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface TagSelectorBasic extends BaseTagSelector { - options: BasicSelectorOptions; -} -interface BasicSelectorOptions extends TagSelectorOptions { - objectProperty: string; - configTypes: SelectableTagField[]; -} -interface TagSelectorBasicData extends TagSelectorData { - choices: Record; - hasCustomChoices: boolean; - details: { - path: string; - placeholder: string; - value: string; - } | null; - flat: boolean; -} -export { TagSelectorBasic }; -export type { BasicSelectorOptions, TagSelectorBasicData }; diff --git a/types/src/module/system/tag-selector/index.d.ts b/types/src/module/system/tag-selector/index.d.ts deleted file mode 100644 index 9490150cf..000000000 --- a/types/src/module/system/tag-selector/index.d.ts +++ /dev/null @@ -1,12 +0,0 @@ -declare const TAG_SELECTOR_TYPES: readonly ["basic", "languages", "senses", "speed-types"]; -type TagSelectorType = (typeof TAG_SELECTOR_TYPES)[number]; -declare const SELECTABLE_TAG_FIELDS: readonly ["abilities", "actionTraits", "attackEffects", "creatureTraits", "damageCategories", "levels", "materialDamageEffects", "otherArmorTags", "otherConsumableTags", "otherWeaponTags", "senses", "skills", "speedTypes", "vehicleTraits", "weaponTraits"]; -type SelectableTagField = (typeof SELECTABLE_TAG_FIELDS)[number] | "languages"; -export type { TagSelectorOptions } from "./base.ts"; -export { TagSelectorBasic } from "./basic.ts"; -export type { BasicConstructorOptions, BasicSelectorOptions } from "./basic.ts"; -export { LanguageSelector } from "./languages.ts"; -export { SenseSelector } from "./senses.ts"; -export { SpeedSelector } from "./speeds.ts"; -export { SELECTABLE_TAG_FIELDS, TAG_SELECTOR_TYPES }; -export type { SelectableTagField, TagSelectorType }; diff --git a/types/src/module/system/tag-selector/languages.d.ts b/types/src/module/system/tag-selector/languages.d.ts deleted file mode 100644 index b813bc6df..000000000 --- a/types/src/module/system/tag-selector/languages.d.ts +++ /dev/null @@ -1,32 +0,0 @@ -/// -/// -/// -import { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -import { TagSelectorBasicData } from "./basic.ts"; -import { type SelectableTagField, TagSelectorBasic, type TagSelectorOptions } from "./index.ts"; - -declare class LanguageSelector extends TagSelectorBasic { - static get defaultOptions(): TagSelectorOptions; - choices: typeof CONFIG.PF2E.languages; - constructor(document: ActorPF2e | ItemPF2e, options?: Partial); - protected get configTypes(): readonly SelectableTagField[]; - getData(options?: Partial): Promise; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface LanguageSelectorData extends TagSelectorBasicData { - choices: Record; - hasRarity: true; -} -interface ChoiceData { - disabled: boolean; - label: string; - rarity: { - slug: string; - label: string; - } | null; - selected: boolean; - source: string | null; -} -export { LanguageSelector }; diff --git a/types/src/module/system/tag-selector/senses.d.ts b/types/src/module/system/tag-selector/senses.d.ts deleted file mode 100644 index b760b6484..000000000 --- a/types/src/module/system/tag-selector/senses.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import type { SenseAcuity, SenseType } from "@actor/creature/types.ts"; -import { BaseTagSelector, TagSelectorData, TagSelectorOptions } from "./base.ts"; -import { SelectableTagField } from "./index.ts"; -declare class SenseSelector extends BaseTagSelector { - protected objectProperty: string; - static get defaultOptions(): TagSelectorOptions; - protected get configTypes(): readonly SelectableTagField[]; - getData(options?: Partial): Promise>; - activateListeners($html: JQuery): void; - /** Clear checkboxes with empty range inputs */ - protected _onSubmit(event: Event, options?: OnSubmitFormOptions | undefined): Promise | false>; - protected _updateObject(event: Event, formData: SenseFormData): Promise; -} -interface SenseSelector extends BaseTagSelector { - choices: Record; -} -interface SenseSelectorData extends TagSelectorData { - hasExceptions: boolean; - choices: Record; - senseAcuities: typeof CONFIG.PF2E.senseAcuities; - vision: { - value: boolean; - editable: boolean; - source: string | null; - }; -} -interface SenseChoiceData { - selected: boolean; - acuity: SenseAcuity; - label: string; - range: number | null; - canSetAcuity: boolean; - canSetRange: boolean; - source: string | null; -} -type SenseFormData = { - "system.perception.vision"?: boolean; -} & Record; -export { SenseSelector }; diff --git a/types/src/module/system/tag-selector/speeds.d.ts b/types/src/module/system/tag-selector/speeds.d.ts deleted file mode 100644 index f519494e2..000000000 --- a/types/src/module/system/tag-selector/speeds.d.ts +++ /dev/null @@ -1,27 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import type { MovementType } from "@actor/types.ts"; -import { BaseTagSelector, type TagSelectorData } from "./base.ts"; -import type { SelectableTagField, TagSelectorOptions } from "./index.ts"; -declare class SpeedSelector extends BaseTagSelector { - static get defaultOptions(): TagSelectorOptions; - protected objectProperty: string; - choices: Omit, "land">; - protected get configTypes(): readonly SelectableTagField[]; - getData(options?: Partial): Promise>; - activateListeners($html: JQuery): void; - protected _updateObject(event: Event, formData: Record): Promise; -} -interface SpeedSelectorData extends TagSelectorData { - hasExceptions: boolean; - choices: Record, ChoiceData>; -} -interface ChoiceData { - selected: boolean; - disabled: boolean; - label: string; - value: number | string; -} -export { SpeedSelector }; diff --git a/types/src/module/system/text-editor.d.ts b/types/src/module/system/text-editor.d.ts deleted file mode 100644 index 036485447..000000000 --- a/types/src/module/system/text-editor.d.ts +++ /dev/null @@ -1,57 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ItemPF2e } from "@item"; -import { UserVisibility } from "@scripts/ui/user-visibility.ts"; -/** Censor enriched HTML according to metagame knowledge settings */ -declare class TextEditorPF2e extends TextEditor { - #private; - static enrichHTML(content: string | null, options: EnrichmentOptionsPF2e & { - async: true; - }): Promise; - static enrichHTML(content: string | null, options: EnrichmentOptionsPF2e & { - async: false; - }): string; - static enrichHTML(content: string | null, options: EnrichmentOptionsPF2e): string | Promise; - /** Replace core static method to conditionally handle parsing of inline damage rolls */ - static _createInlineRoll(match: RegExpMatchArray, rollData: Record, options?: EvaluateRollParams): Promise; - /** Replace core static method to conditionally handle inline damage roll clicks */ - static _onClickInlineRoll(event: MouseEvent): Promise; - static processUserVisibility(content: string, options: EnrichmentOptionsPF2e): string; - static enrichString(data: RegExpMatchArray, options?: EnrichmentOptionsPF2e): Promise; - /** - * Convert an XML node into an HTML span element with data-visibility, data-whose, and class attributes - * @param html The HTML element containing the XML node: mutated by this method as part of node replacement - * @param name The name of the node to convert - * @param options attributes to add to the generated span element - * @returns The generated span element, or `null` if no `name` node was found - */ - static convertXMLNode(html: HTMLElement, name: string, { visible, visibility, whose, tooltip, classes }: ConvertXMLNodeOptions): HTMLElement | null; - /** Create roll options with information about the action being used */ - static createActionOptions(item: Maybe, extra?: string[]): string[]; -} -interface EnrichmentOptionsPF2e extends EnrichmentOptions { - rollData?: RollDataPF2e; - /** Whether to run the enriched string through `UserVisibility.process` */ - processVisibility?: boolean; -} -interface RollDataPF2e { - actor?: ActorPF2e | null; - item?: ItemPF2e | null; - mod?: number; - [key: string]: unknown; -} -interface ConvertXMLNodeOptions { - /** The value of the data-visibility attribute to add to the span element */ - visibility?: UserVisibility | null; - /** Whether or not it should be visible or not, which maps to visibility (for this release) */ - visible?: boolean; - /** - * Whether this piece of data belongs to the "self" actor or the target: used by UserVisibilityPF2e to - * determine which actor's ownership to check - */ - whose?: "self" | "opposer" | null; - /** Any additional classes to add to the span element */ - classes?: string[]; - /** An optional tooltip to apply to the converted node */ - tooltip?: string; -} -export { TextEditorPF2e, type EnrichmentOptionsPF2e }; diff --git a/types/src/module/user/data.d.ts b/types/src/module/user/data.d.ts deleted file mode 100644 index c1662dc6c..000000000 --- a/types/src/module/user/data.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import { UserSettingsPF2e } from "./document.ts"; -type UserSourcePF2e = Omit & { - flags: DeepPartial; -}; -type UserFlagsPF2e = DocumentFlags & { - pf2e: { - settings: UserSettingsPF2e; - }; -}; -export type { UserFlagsPF2e, UserSourcePF2e }; diff --git a/types/src/module/user/document.d.ts b/types/src/module/user/document.d.ts deleted file mode 100644 index a54e05a06..000000000 --- a/types/src/module/user/document.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { TokenPF2e } from "@module/canvas/index.ts"; -import type { ScenePF2e, TokenDocumentPF2e } from "@scene"; -import { UserFlagsPF2e, UserSourcePF2e } from "./data.ts"; - -declare class UserPF2e extends User> { - prepareData(): void; - /** Set user settings defaults */ - prepareBaseData(): void; - get settings(): Readonly; - /** Get tokens controlled by this user or, failing that, a token of the assigned character. */ - getActiveTokens(): TokenDocumentPF2e[]; - /** Alternative to calling `#updateTokenTargets()` with no argument or an empty array */ - clearTargets(): void; - protected _onUpdate(changed: DeepPartial, operation: DatabaseUpdateOperation, userId: string): void; -} -interface UserPF2e extends User> { - targets: UserTargets>>; - flags: UserFlagsPF2e; - readonly _source: UserSourcePF2e; -} -interface UserSettingsPF2e { - showEffectPanel: boolean; - showCheckDialogs: boolean; - showDamageDialogs: boolean; - monochromeDarkvision: boolean; - searchPackContents: boolean; -} -export { UserPF2e, type UserSettingsPF2e }; diff --git a/types/src/module/user/index.d.ts b/types/src/module/user/index.d.ts deleted file mode 100644 index 30616474d..000000000 --- a/types/src/module/user/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { UserPF2e } from "./document.ts"; diff --git a/types/src/module/user/sheet.d.ts b/types/src/module/user/sheet.d.ts deleted file mode 100644 index f442c488d..000000000 --- a/types/src/module/user/sheet.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ApplicationTab } from "types/foundry/client-esm/applications/_types.js"; -import type { DocumentSheetRenderOptions } from "types/foundry/client-esm/applications/api/document-sheet.d.ts"; -import { UserConfigData } from "types/foundry/client-esm/applications/sheets/user-config.js"; -import type { UserPF2e } from "./document.ts"; -/** Player-specific settings, stored as flags on each User */ -declare class UserConfigPF2e extends foundry.applications.sheets.UserConfig { - #private; - static PARTS: { - tabs: { - template: string; - }; - main: { - template: string; - }; - }; - tabGroups: { - primary: string; - }; - _prepareContext(options: DocumentSheetRenderOptions): Promise; -} -interface UserConfigDataPF2e extends UserConfigData { - tabs: Partial[]; - tabGroups: Record; -} -export { UserConfigPF2e }; diff --git a/types/src/pf2e.d.ts b/types/src/pf2e.d.ts deleted file mode 100644 index 484fe0de2..000000000 --- a/types/src/pf2e.d.ts +++ /dev/null @@ -1 +0,0 @@ -import "./styles/main.scss"; diff --git a/types/src/scripts/config/damage.d.ts b/types/src/scripts/config/damage.d.ts deleted file mode 100644 index 5e237ec54..000000000 --- a/types/src/scripts/config/damage.d.ts +++ /dev/null @@ -1,56 +0,0 @@ -import { DamageCategoryUnique, DamageType } from "@system/damage/types.ts"; -import { energyDamageTypes } from "./traits.ts"; - -declare const damageCategoriesUnique: Record; -declare const materialDamageEffects: { - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - "keep-stone": string; - peachwood: string; - "sisterstone-dusk": string; - "sisterstone-scarlet": string; - "sovereign-steel": string; - warpglass: string; -}; -declare const damageCategories: { - energy: string; - physical: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - "keep-stone": string; - peachwood: string; - "sisterstone-dusk": string; - "sisterstone-scarlet": string; - "sovereign-steel": string; - warpglass: string; - precision: string; - splash: string; - persistent: string; -}; -declare const physicalDamageTypes: { - bleed: string; - bludgeoning: string; - piercing: string; - slashing: string; -}; -declare const damageTypes: Record; -declare const damageRollFlavors: Record<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped", string>; -export { damageCategories, damageCategoriesUnique, damageRollFlavors, damageTypes, energyDamageTypes, materialDamageEffects, physicalDamageTypes, }; diff --git a/types/src/scripts/config/index.d.ts b/types/src/scripts/config/index.d.ts deleted file mode 100644 index 1ec7737c0..000000000 --- a/types/src/scripts/config/index.d.ts +++ /dev/null @@ -1,4854 +0,0 @@ -import { ArmyPF2e, CharacterPF2e, FamiliarPF2e, HazardPF2e, LootPF2e, NPCPF2e, PartyPF2e, VehiclePF2e } from "@actor"; -import { SenseAcuity } from "@actor/creature/types.ts"; -import { - AbilityItemPF2e, - AfflictionPF2e, - AncestryPF2e, - ArmorPF2e, - BackgroundPF2e, - BookPF2e, - CampaignFeaturePF2e, - ClassPF2e, - ConditionPF2e, - ConsumablePF2e, - ContainerPF2e, - DeityPF2e, - EffectPF2e, - EquipmentPF2e, - FeatPF2e, - HeritagePF2e, - KitPF2e, - LorePF2e, - MeleePF2e, - ShieldPF2e, - SpellcastingEntryPF2e, - SpellPF2e, - TreasurePF2e, - WeaponPF2e, -} from "@item"; -import { WeaponReloadTime } from "@item/weapon/types.ts"; -import { JournalSheetPF2e } from "@module/journal-entry/sheet.ts"; - -export type StatusEffectIconTheme = "default" | "blackWhite"; -export declare const PF2ECONFIG: { - defaultPartyId: string; - chatDamageButtonShieldToggle: boolean; - statusEffects: { - lastIconTheme: StatusEffectIconTheme; - iconDir: string; - conditions: { - blinded: string; - broken: string; - clumsy: string; - concealed: string; - confused: string; - controlled: string; - dazzled: string; - deafened: string; - doomed: string; - drained: string; - dying: string; - encumbered: string; - enfeebled: string; - fascinated: string; - fatigued: string; - fleeing: string; - frightened: string; - grabbed: string; - hidden: string; - immobilized: string; - invisible: string; - "off-guard": string; - paralyzed: string; - "persistent-damage": string; - petrified: string; - prone: string; - quickened: string; - restrained: string; - sickened: string; - slowed: string; - stunned: string; - stupefied: string; - unconscious: string; - undetected: string; - wounded: string; - }; - }; - levels: { - 1: string; - 2: string; - 3: string; - 4: string; - 5: string; - 6: string; - 7: string; - 8: string; - 9: string; - 10: string; - 11: string; - 12: string; - 13: string; - 14: string; - 15: string; - 16: string; - 17: string; - 18: string; - 19: string; - 20: string; - }; - abilities: Record<"str" | "dex" | "con" | "int" | "wis" | "cha", string>; - dcAdjustments: { - "incredibly-easy": string; - "very-easy": string; - easy: string; - normal: string; - hard: string; - "very-hard": string; - "incredibly-hard": string; - }; - checkDCs: { - Label: { - AdjustedTarget: string; - NoChangeTarget: string; - NoTarget: string; - WithTarget: string; - WithOrigin: string; - }; - Specific: { - armor: string; - athletics: string; - deception: string; - fortitude: string; - perception: string; - reflex: string; - stealth: string; - will: string; - }; - Unspecific: string; - }; - saves: { - fortitude: string; - reflex: string; - will: string; - }; - savingThrowDefaultAttributes: { - readonly fortitude: "con"; - readonly reflex: "dex"; - readonly will: "wis"; - }; - currencies: { - pp: string; - gp: string; - sp: string; - cp: string; - }; - preciousMaterialGrades: Record<"low" | "standard" | "high", string>; - preciousMaterials: Record<"abysium" | "adamantine" | "dawnsilver" | "djezet" | "duskwood" | "inubrix" | "noqual" | "orichalcum" | "siccatite" | "silver" | "cold-iron" | "dragonhide" | "dreamweb" | "grisantian-pelt" | "keep-stone" | "peachwood" | "sisterstone" | "sisterstone-dusk" | "sisterstone-scarlet" | "sloughstone" | "sovereign-steel" | "warpglass", string>; - accessoryPropertyRunes: { - called: string; - dragonsBreath: string; - paired: string; - greaterPaired: string; - majorPaired: string; - presentable: string; - snagging: string; - softLanding: string; - spellBastion: string; - windCatcher: string; - greaterWindCatcher: string; - }; - damageTraits: { - light: string; - magical: string; - mental: string; - nonlethal: string; - plant: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - holy: string; - unholy: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - }; - damageTypes: Record<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped", string>; - damageRollFlavors: Record<"acid" | "bleed" | "bludgeoning" | "cold" | "electricity" | "fire" | "force" | "mental" | "piercing" | "poison" | "slashing" | "sonic" | "spirit" | "vitality" | "void" | "untyped", string>; - damageCategories: { - energy: string; - physical: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - "keep-stone": string; - peachwood: string; - "sisterstone-dusk": string; - "sisterstone-scarlet": string; - "sovereign-steel": string; - warpglass: string; - precision: string; - splash: string; - persistent: string; - }; - energyDamageTypes: { - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - }; - materialDamageEffects: { - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - "keep-stone": string; - peachwood: string; - "sisterstone-dusk": string; - "sisterstone-scarlet": string; - "sovereign-steel": string; - warpglass: string; - }; - physicalDamageTypes: { - bleed: string; - bludgeoning: string; - piercing: string; - slashing: string; - }; - resistanceTypes: { - acid: string; - air: string; - alchemical: string; - "all-damage": string; - "area-damage": string; - axes: string; - bleed: string; - bludgeoning: string; - cold: string; - "critical-hits": string; - custom: string; - "damage-from-spells": string; - earth: string; - electricity: string; - energy: string; - fire: string; - force: string; - "ghost-touch": string; - light: string; - magical: string; - mental: string; - metal: string; - mythic: string; - "non-magical": string; - nonlethal: string; - "nonlethal-attacks": string; - "persistent-damage": string; - physical: string; - piercing: string; - plant: string; - poison: string; - precision: string; - "protean-anatomy": string; - radiation: string; - salt: string; - "salt-water": string; - slashing: string; - sonic: string; - spells: string; - spirit: string; - "unarmed-attacks": string; - vitality: string; - void: string; - vorpal: string; - "vorpal-adamantine": string; - water: string; - weapons: string; - "weapons-shedding-bright-light": string; - wood: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - }; - stackGroups: { - arrows: string; - blowgunDarts: string; - bolts: string; - coins: string; - gems: string; - rounds5: string; - rounds10: string; - slingBullets: string; - sprayPellets: string; - woodenTaws: string; - }; - weaknessTypes: { - acid: string; - air: string; - alchemical: string; - "all-damage": string; - "area-damage": string; - "arrow-vulnerability": string; - "axe-vulnerability": string; - bleed: string; - bludgeoning: string; - cold: string; - "critical-hits": string; - custom: string; - earth: string; - electricity: string; - emotion: string; - energy: string; - fire: string; - force: string; - "ghost-touch": string; - glass: string; - light: string; - magical: string; - mental: string; - metal: string; - mythic: string; - "non-magical": string; - "nonlethal-attacks": string; - "persistent-damage": string; - physical: string; - piercing: string; - plant: string; - poison: string; - /** Base weapon types that are considered equivalent for all rules purposes */ - precision: string; - radiation: string; - salt: string; - "salt-water": string; - slashing: string; - sonic: string; - spells: string; - spirit: string; - "splash-damage": string; - "unarmed-attacks": string; - "vampire-weaknesses": string; - vitality: string; - void: string; - vorpal: string; - "vorpal-fear": string; - "vulnerable-to-sunlight": string; - water: string; - weapons: string; - "weapons-shedding-bright-light": string; - wood: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - }; - weaponCategories: Record<"unarmed" | "simple" | "martial" | "advanced", string>; - weaponGroups: Record<"axe" | "bomb" | "bow" | "brawling" | "club" | "crossbow" | "dart" | "firearm" | "flail" | "hammer" | "knife" | "pick" | "polearm" | "shield" | "sling" | "spear" | "sword", string>; - meleeWeaponGroups: Record<"axe" | "brawling" | "club" | "dart" | "flail" | "hammer" | "knife" | "pick" | "polearm" | "shield" | "spear" | "sword", string>; - baseArmorTypes: { - "armored-cloak": string; - "armored-coat": string; - "bastion-plate": string; - breastplate: string; - "buckle-armor": string; - "ceramic-plate": string; - "chain-mail": string; - "chain-shirt": string; - "coral-armor": string; - "explorers-clothing": string; - "fortress-plate": string; - "full-plate": string; - gi: string; - "half-plate": string; - "hellknight-breastplate": string; - "hellknight-half-plate": string; - "hellknight-plate": string; - "hide-armor": string; - "kilted-breastplate": string; - "lamellar-breastplate": string; - "lattice-armor": string; - "leaf-weave": string; - "leather-armor": string; - "leather-lamellar": string; - "mantis-shell": string; - niyahaat: string; - "o-yoroi": string; - "padded-armor": string; - "power-suit": string; - "quilted-armor": string; - "rattan-armor": string; - sankeit: string; - "scale-mail": string; - "scroll-robes": string; - "splint-mail": string; - "studded-leather-armor": string; - "subterfuge-suit": string; - "wooden-breastplate": string; - }; - baseShieldTypes: { - buckler: string; - "casters-targe": string; - "dart-shield": string; - "fortress-shield": string; - "gauntlet-buckler": string; - "harnessed-shield": string; - "heavy-rondache": string; - "hide-shield": string; - klar: string; - "meteor-shield": string; - "razor-disc": string; - "salvo-shield": string; - "steel-shield": string; - "swordstealer-shield": string; - "tower-shield": string; - "wooden-shield": string; - }; - baseWeaponTypes: { - adze: string; - "air-repeater": string; - aklys: string; - "alchemical-bomb": string; - "alchemical-crossbow": string; - "aldori-dueling-sword": string; - arbalest: string; - arquebus: string; - "asp-coil": string; - atlatl: string; - "axe-musket": string; - "barricade-buster": string; - "bastard-sword": string; - "battle-axe": string; - "battle-lute": string; - "battle-saddle": string; - "bec-de-corbin": string; - "big-boom-gun": string; - "black-powder-knuckle-dusters": string; - "bladed-diabolo": string; - "bladed-gauntlet": string; - "bladed-hoop": string; - "bladed-scarf": string; - blowgun: string; - "blowgun-darts": string; - blunderbuss: string; - "bo-staff": string; - "boarding-axe": string; - "boarding-pike": string; - bola: string; - boomerang: string; - "bow-staff": string; - "breaching-pike": string; - broadspear: string; - "butchering-axe": string; - "butterfly-sword": string; - buugeng: string; - "cane-pistol": string; - "capturing-spetum": string; - "chain-sword": string; - chakram: string; - chakri: string; - "clan-dagger": string; - "clan-pistol": string; - claw: string; - "claw-blade": string; - club: string; - "coat-pistol": string; - "combat-fishing-pole": string; - "combat-grapnel": string; - "combat-lure": string; - "composite-longbow": string; - "composite-shortbow": string; - "corset-knife": string; - "crescent-cross": string; - crossbow: string; - dagger: string; - "dagger-pistol": string; - daikyu: string; - "dancers-spear": string; - dandpatta: string; - dart: string; - dogslicer: string; - donchak: string; - "double-barreled-musket": string; - "double-barreled-pistol": string; - "dragon-mouth-pistol": string; - "dueling-pistol": string; - "dueling-spear": string; - "dwarven-dorn-dergar": string; - "dwarven-scattergun": string; - "dwarven-war-axe": string; - earthbreaker: string; - "elven-branched-spear": string; - "elven-curve-blade": string; - "explosive-dogslicer": string; - "exquisite-sword-cane": string; - "exquisite-sword-cane-sheath": string; - falcata: string; - falchion: string; - fangs: string; - fangwire: string; - fauchard: string; - "feng-huo-lun": string; - "fighting-fan": string; - "fighting-oar": string; - "fighting-stick": string; - "filchers-fork": string; - "fire-lance": string; - "fire-poi": string; - fist: string; - flail: string; - flingflenser: string; - "flintlock-musket": string; - "flintlock-pistol": string; - "flying-talon": string; - flyssa: string; - "forked-bipod": string; - "frying-pan": string; - gada: string; - gaff: string; - gakgung: string; - gauntlet: string; - "gauntlet-bow": string; - "gill-hook": string; - gladius: string; - glaive: string; - "gnome-amalgam-musket": string; - "gnome-flickmace": string; - "gnome-hooked-hammer": string; - greataxe: string; - greatclub: string; - greatpick: string; - greatsword: string; - "griffon-cane": string; - guisarme: string; - "gun-sword": string; - halberd: string; - "halfling-sling-staff": string; - "hammer-gun": string; - "hand-adze": string; - "hand-cannon": string; - "hand-crossbow": string; - "harmona-gun": string; - harpoon: string; - hatchet: string; - "heavy-crossbow": string; - "hongali-hornbow": string; - "hook-sword": string; - horsechopper: string; - "injection-spear": string; - javelin: string; - jaws: string; - jezail: string; - "jiu-huan-dao": string; - "juggling-club": string; - kalis: string; - kama: string; - karambit: string; - katana: string; - katar: string; - kestros: string; - khakkhara: string; - khopesh: string; - "knuckle-duster": string; - kris: string; - kukri: string; - kusarigama: string; - lance: string; - lancer: string; - leiomano: string; - "light-hammer": string; - "light-mace": string; - "light-pick": string; - "lion-scythe": string; - liuyedao: string; - "long-air-repeater": string; - "long-hammer": string; - longbow: string; - longspear: string; - longsword: string; - mace: string; - "mace-multipistol": string; - machete: string; - macuahuitl: string; - "main-gauche": string; - mambele: string; - maul: string; - "meteor-hammer": string; - mikazuki: string; - "mithral-tree": string; - "monkeys-fist": string; - morningstar: string; - naginata: string; - nightstick: string; - nodachi: string; - nunchaku: string; - "ogre-hook": string; - "orc-knuckle-dagger": string; - "orc-necksplitter": string; - "orc-skewermaul": string; - palstave: string; - panabas: string; - pepperbox: string; - "phalanx-piercer": string; - pick: string; - "piercing-wind": string; - "piranha-kiss": string; - poi: string; - polytool: string; - "probing-cane": string; - ranseur: string; - rapier: string; - "rapier-pistol": string; - "reinforced-wheels": string; - "reinforced-stock": string; - "repeating-crossbow": string; - "repeating-hand-crossbow": string; - "repeating-heavy-crossbow": string; - "rhoka-sword": string; - "rope-dart": string; - "rotary-bow": string; - rungu: string; - sai: string; - sansetsukon: string; - sap: string; - "sawtooth-saber": string; - scimitar: string; - scizore: string; - "scorpion-whip": string; - scourge: string; - scythe: string; - "shauth-lash": string; - shears: string; - "shield-bash": string; - "shield-boss": string; - "shield-bow": string; - "shield-pistol": string; - "shield-spikes": string; - "shobhad-longrifle": string; - shortbow: string; - shortsword: string; - "shuan-ji": string; - shuriken: string; - sickle: string; - "sickle-saber": string; - "slide-pistol": string; - sling: string; - "sling-bullets": string; - spear: string; - "spiked-chain": string; - "spiked-gauntlet": string; - "spiral-rapier": string; - "spirit-thresher": string; - "spoon-gun": string; - spraysling: string; - staff: string; - starknife: string; - "stiletto-pen": string; - sukgung: string; - "sun-sling": string; - switchscythe: string; - "sword-cane": string; - talwar: string; - "tamchal-chakram": string; - "taw-launcher": string; - "tekko-kagi": string; - "temple-sword": string; - "tengu-gale-blade": string; - tetsubo: string; - "thorn-whip": string; - "three-peaked-tree": string; - "three-section-naginata": string; - "throwing-knife": string; - "thunder-sling": string; - thundermace: string; - tonfa: string; - "tri-bladed-katar": string; - "tricky-pick": string; - trident: string; - triggerbrand: string; - urumi: string; - visap: string; - wakizashi: string; - "war-flail": string; - "war-gavel": string; - "war-javelin": string; - "war-lance": string; - "war-razor": string; - warhammer: string; - "wheel-blades": string; - "wheel-spikes": string; - whip: string; - "whip-claw": string; - "whip-staff": string; - "wish-blade": string; - "wish-knife": string; - "wooden-taws": string; - wrecker: string; - "wrist-launcher": string; - "zhuazhi-bang": string; - zulfikar: string; - }; - equivalentWeapons: { - readonly "composite-longbow": "longbow"; - readonly "composite-shortbow": "shortbow"; - readonly "big-boom-gun": "hand-cannon"; - readonly "spoon-gun": "hand-cannon"; - }; - weaponDescriptions: { - club: string; - knife: string; - brawling: string; - spear: string; - sword: string; - axe: string; - flail: string; - polearm: string; - pick: string; - hammer: string; - shield: string; - dart: string; - bow: string; - sling: string; - bomb: string; - }; - usages: { - "affixed-to-a-creature": string; - "affixed-to-a-magical-staff": string; - "affixed-to-a-metal-weapon": string; - "affixed-to-a-ranged-weapon": string; - "affixed-to-a-shield": string; - "affixed-to-a-shield-or-weapon": string; - "affixed-to-a-thrown-weapon": string; - "affixed-to-a-two-handed-firearm-or-crossbow": string; - "affixed-to-an-innovation": string; - "affixed-to-an-object-or-structure": string; - "affixed-to-armor": string; - "affixed-to-medium-heavy-armor": string; - "affixed-to-medium-heavy-metal-armor": string; - "affixed-to-armor-or-a-weapon": string; - "affixed-to-armor-or-travelers-clothing": string; - "affixed-to-crossbow-or-firearm": string; - "affixed-to-firearm": string; - "affixed-to-firearm-with-a-reload-of-1": string; - "affixed-to-firearm-with-the-kickback-trait": string; - "affixed-to-ground-in-10-foot-radius": string; - "affixed-to-ground-in-20-foot-radius": string; - "affixed-to-harness": string; - "affixed-to-headgear": string; - "affixed-to-instrument": string; - "affixed-to-load-bearing-wall-or-pillar": string; - "affixed-to-melee-weapon": string; - "affixed-to-metal-weapon": string; - "affixed-to-object-structure-or-creature": string; - "affixed-to-the-ground": string; - "affixed-to-unarmored-defense-item": string; - "affixed-to-weapon": string; - "applied-to-a-basket-bag-or-other-container": string; - "applied-to-a-weapon": string; - "applied-to-a-wind-powered-vehicle": string; - "applied-to-a-non-injection-melee-weapon-piercing-damage": string; - "applied-to-any-item-of-light-or-negligible-bulk": string; - "applied-to-any-visible-article-of-clothing": string; - "applied-to-armor": string; - "applied-to-armor-or-unarmored-defense-clothing": string; - "applied-to-belt-cape-cloak-or-scarf": string; - "applied-to-boots-cape-cloak-or-umbrella": string; - "applied-to-buckler-shield": string; - "applied-to-dueling-cape-or-shield": string; - "applied-to-footwear": string; - "applied-to-medium-heavy-armor": string; - "applied-to-shield": string; - "attached-to-a-thrown-weapon": string; - "attached-to-crossbow-or-firearm": string; - "attached-to-crossbow-or-firearm-firing-mechanism": string; - "attached-to-crossbow-or-firearm-scope": string; - "attached-to-firearm": string; - "attached-to-firearm-scope": string; - "attached-to-melee-weapon": string; - "attached-to-ships-bow": string; - bonded: string; - carried: string; - "each-rune-applied-to-a-separate-item-that-has-pockets": string; - "etched-onto-a-weapon": string; - "etched-onto-a-shield": string; - "etched-onto-armor": string; - "etched-onto-heavy-armor": string; - "etched-onto-light-armor": string; - "etched-onto-metal-armor": string; - "etched-onto-clan-dagger": string; - "etched-onto-lm-nonmetal-armor": string; - "etched-onto-med-heavy-armor": string; - "etched-onto-medium-heavy-metal-armor": string; - "etched-onto-bludgeoning-weapon": string; - "etched-onto-melee-weapon": string; - "etched-onto-slashing-melee-weapon": string; - "etched-onto-piercing-or-slashing-melee-weapon": string; - "etched-onto-piercing-or-slashing-weapon": string; - "etched-onto-weapon-wo-anarchic-rune": string; - "etched-onto-weapon-wo-axiomatic-rune": string; - "etched-onto-weapon-wo-unholy-rune": string; - "etched-onto-weapon-wo-holy-rune": string; - "etched-onto-melee-weapon-monk": string; - "etched-onto-thrown-weapon": string; - "held-in-one-hand": string; - "held-in-one-hand-or-free-standing": string; - "held-in-one-or-two-hands": string; - "held-in-two-hands": string; - implanted: string; - other: string; - "sewn-into-clothing": string; - "tattooed-on-the-body": string; - touched: string; - worn: string; - wornamulet: string; - wornanklets: string; - wornarmbands: string; - wornbackpack: string; - wornbarding: string; - wornbelt: string; - wornbeltpouch: string; - wornboots: string; - wornbracelet: string; - wornbracers: string; - worncap: string; - worncape: string; - worncirclet: string; - worncloak: string; - wornclothing: string; - worncollar: string; - worncrown: string; - wornepaulet: string; - worneyeglasses: string; - worneyepiece: string; - wornfootwear: string; - worngarment: string; - worngloves: string; - wornheadwear: string; - wornhorseshoes: string; - wornmask: string; - wornnecklace: string; - wornonbelt: string; - wornoronehand: string; - wornring: string; - wornsaddle: string; - wornsandles: string; - wornshoes: string; - wornwrist: string; - "worn-and-attached-to-two-weapons": string; - "worn-under-armor": string; - }; - magicTraditions: Record<"arcane" | "divine" | "occult" | "primal", string>; - deityDomains: Record<"healing" | "magic" | "metal" | "water" | "wood" | "air" | "cold" | "earth" | "fire" | "void" | "wealth" | "abomination" | "ambition" | "change" | "cities" | "confidence" | "creation" | "darkness" | "death" | "decay" | "destruction" | "dreams" | "dust" | "duty" | "family" | "fate" | "freedom" | "glyph" | "indulgence" | "introspection" | "knowledge" | "lightning" | "luck" | "might" | "moon" | "naga" | "nature" | "nightmares" | "pain" | "passion" | "perfection" | "plague" | "protection" | "repose" | "secrecy" | "sorrow" | "soul" | "star" | "sun" | "swarm" | "time" | "toil" | "travel" | "trickery" | "truth" | "tyranny" | "undeath" | "vigil" | "zeal" | "airapocryphal" | "ambitionapocryphal" | "confidenceapocryphal" | "darknessapocryphal" | "deathapocryphal" | "delirium" | "fateapocryphal" | "fireapocryphal" | "indulgenceapocryphal" | "knowledgeapocryphal" | "mightapocryphal" | "secrecyapocryphal" | "travelapocryphal" | "waterapocryphal" | "wyrmkin", { - label: string; - description: string; - }>; - otherArmorTags: Record<"shoddy", string>; - otherConsumableTags: Record; - otherWeaponTags: Record; - actionTraits: { - "certain-kill": string; - summon: string; - agile: string; - propulsive: string; - backswing: string; - forceful: string; - reach: string; - sweep: string; - thrown: string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - amp: string; - attack: string; - auditory: string; - aura: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - emotion: string; - exploration: string; - extradimensional: string; - fear: string; - focus: string; - fortune: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - manipulate: string; - misfortune: string; - morph: string; - move: string; - mythic: string; - nonlethal: string; - olfactory: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - stance: string; - structure: string; - subtle: string; - summoned: string; - teleportation: string; - trial: string; - "true-name": string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - additive: string; - additive1: string; - additive2: string; - additive3: string; - alchemical: string; - "bottled-breath": string; - catalyst: string; - coagulant: string; - clockwork: string; - consumable: string; - contact: string; - cursed: string; - drug: string; - elixir: string; - expandable: string; - fey: string; - fulu: string; - gadget: string; - infused: string; - ingested: string; - injury: string; - kobold: string; - lozenge: string; - mechanical: string; - missive: string; - mutagen: string; - oil: string; - potion: string; - precious: string; - processed: string; - scroll: string; - snare: string; - spellgun: string; - splash: string; - talisman: string; - tea: string; - trap: string; - virulent: string; - wand: string; - aftermath: string; - apparition: string; - archetype: string; - artifact: string; - bravado: string; - calling: string; - circus: string; - class: string; - composite: string; - dedication: string; - destiny: string; - deviant: string; - downtime: string; - evolution: string; - esoterica: string; - finisher: string; - flourish: string; - general: string; - ikon: string; - impulse: string; - infusion: string; - lineage: string; - mindshift: string; - modification: string; - multiclass: string; - oath: string; - overflow: string; - "pervasive-magic": string; - press: string; - reckless: string; - reincarnated: string; - reflection: string; - secret: string; - skill: string; - social: string; - spellshot: string; - stamina: string; - tandem: string; - time: string; - transcendence: string; - unstable: string; - vigilante: string; - wandering: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; - }; - ancestryTraits: { - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - reflection: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; - }; - armorTraits: { - adjusted: string; - alchemical: string; - apex: string; - aquadynamic: string; - artifact: string; - auditory: string; - aura: string; - barding: string; - bulwark: string; - clockwork: string; - comfort: string; - companion: string; - cursed: string; - "entrench-melee": string; - "entrench-ranged": string; - extradimensional: string; - focused: string; - force: string; - flexible: string; - healing: string; - hindering: string; - illusion: string; - inscribed: string; - intelligent: string; - invested: string; - laminar: string; - light: string; - magical: string; - mythic: string; - noisy: string; - plant: string; - ponderous: string; - relic: string; - arcane: string; - divine: string; - occult: string; - primal: string; - mental: string; - nonlethal: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - holy: string; - unholy: string; - acid: string; - cold: string; - electricity: string; - fire: string; - sonic: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - }; - classTraits: Record<"alchemist" | "animist" | "barbarian" | "bard" | "champion" | "cleric" | "druid" | "exemplar" | "fighter" | "gunslinger" | "kineticist" | "inventor" | "investigator" | "magus" | "monk" | "oracle" | "psychic" | "ranger" | "rogue" | "sorcerer" | "summoner" | "swashbuckler" | "thaumaturge" | "witch" | "wizard", string>; - consumableTraits: { - additive: string; - additive1: string; - additive2: string; - additive3: string; - alchemical: string; - attack: string; - auditory: string; - aura: string; - "bottled-breath": string; - catalyst: string; - coagulant: string; - clockwork: string; - consumable: string; - contact: string; - curse: string; - cursed: string; - drug: string; - elixir: string; - emotion: string; - expandable: string; - fear: string; - fey: string; - fortune: string; - fulu: string; - gadget: string; - healing: string; - incapacitation: string; - infused: string; - ingested: string; - inhaled: string; - injury: string; - kobold: string; - light: string; - linguistic: string; - lozenge: string; - magical: string; - mechanical: string; - misfortune: string; - missive: string; - morph: string; - mutagen: string; - oil: string; - olfactory: string; - poison: string; - polymorph: string; - possession: string; - potion: string; - precious: string; - processed: string; - scroll: string; - scrying: string; - spirit: string; - sleep: string; - snare: string; - spellgun: string; - splash: string; - structure: string; - talisman: string; - tea: string; - teleportation: string; - trap: string; - virulent: string; - visual: string; - wand: string; - amp: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - exploration: string; - extradimensional: string; - focus: string; - fungus: string; - hex: string; - illusion: string; - incarnate: string; - incorporeal: string; - litany: string; - manipulate: string; - move: string; - mythic: string; - nonlethal: string; - plant: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - shadow: string; - spellshape: string; - stance: string; - subtle: string; - summon: string; - summoned: string; - trial: string; - "true-name": string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - mental: string; - radiation: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - }; - creatureTraits: { - aberration: string; - aeon: string; - aesir: string; - agathion: string; - alchemical: string; - amphibious: string; - angel: string; - animal: string; - anugobu: string; - aquatic: string; - archon: string; - astral: string; - asura: string; - azata: string; - beast: string; - boggard: string; - bugbear: string; - caligni: string; - celestial: string; - centaur: string; - "charau-ka": string; - clockwork: string; - construct: string; - couatl: string; - daemon: string; - darvakka: string; - demon: string; - dero: string; - devil: string; - dinosaur: string; - div: string; - dragon: string; - dream: string; - drow: string; - duergar: string; - eidolon: string; - elemental: string; - ethereal: string; - experiment: string; - fey: string; - fiend: string; - formian: string; - fungus: string; - genie: string; - ghoran: string; - ghost: string; - ghoul: string; - ghul: string; - giant: string; - golem: string; - graveknight: string; - gremlin: string; - grioth: string; - hag: string; - hantu: string; - herald: string; - hryngar: string; - humanoid: string; - ikeshti: string; - illusion: string; - incorporeal: string; - inevitable: string; - kami: string; - kaiju: string; - kovintus: string; - light: string; - lilu: string; - locathah: string; - mental: string; - merfolk: string; - mindless: string; - minion: string; - monitor: string; - morlock: string; - mortic: string; - mummy: string; - munavri: string; - mutant: string; - mythic: string; - nindoru: string; - nymph: string; - oni: string; - ooze: string; - oread: string; - paaridar: string; - palinthanos: string; - "persona-flirt": string; - "persona-guardian": string; - "persona-leader": string; - "persona-scholar": string; - "persona-scoundrel": string; - "persona-underdog": string; - "persona-warrior": string; - "persona-wildcard": string; - petitioner: string; - phantom: string; - plant: string; - poison: string; - protean: string; - psychopomp: string; - qlippoth: string; - rakshasa: string; - reflection: string; - sahkil: string; - "sea-devil": string; - sedacthy: string; - serpentfolk: string; - seugathi: string; - shabti: string; - shadow: string; - shobhad: string; - siktempora: string; - skelm: string; - skulk: string; - soulbound: string; - spirit: string; - sporeborn: string; - spriggan: string; - stheno: string; - summoned: string; - swarm: string; - tane: string; - tanggal: string; - time: string; - titan: string; - troll: string; - troop: string; - undead: string; - urdefhan: string; - vampire: string; - vanara: string; - velstrac: string; - wayang: string; - werecreature: string; - wight: string; - "wild-hunt": string; - wraith: string; - wraithvine: string; - wyrwood: string; - xulgath: string; - zombie: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - catfolk: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vishkanya: string; - yaksha: string; - yaoguai: string; - }; - effectTraits: Omit<{ - "certain-kill": string; - summon: string; - agile: string; - propulsive: string; - backswing: string; - forceful: string; - reach: string; - sweep: string; - thrown: string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - amp: string; - attack: string; - auditory: string; - aura: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - emotion: string; - exploration: string; - extradimensional: string; - fear: string; - focus: string; - fortune: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - manipulate: string; - misfortune: string; - morph: string; - move: string; - mythic: string; - nonlethal: string; - olfactory: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - stance: string; - structure: string; - subtle: string; - summoned: string; - teleportation: string; - trial: string; - "true-name": string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - additive: string; - additive1: string; - additive2: string; - additive3: string; - alchemical: string; - "bottled-breath": string; - catalyst: string; - coagulant: string; - clockwork: string; - consumable: string; - contact: string; - cursed: string; - drug: string; - elixir: string; - expandable: string; - fey: string; - fulu: string; - gadget: string; - infused: string; - ingested: string; - injury: string; - kobold: string; - lozenge: string; - mechanical: string; - missive: string; - mutagen: string; - oil: string; - potion: string; - precious: string; - processed: string; - scroll: string; - snare: string; - spellgun: string; - splash: string; - talisman: string; - tea: string; - trap: string; - virulent: string; - wand: string; - aftermath: string; - apparition: string; - archetype: string; - artifact: string; - bravado: string; - calling: string; - circus: string; - class: string; - composite: string; - dedication: string; - destiny: string; - deviant: string; - downtime: string; - evolution: string; - esoterica: string; - finisher: string; - flourish: string; - general: string; - ikon: string; - impulse: string; - infusion: string; - lineage: string; - mindshift: string; - modification: string; - multiclass: string; - oath: string; - overflow: string; - "pervasive-magic": string; - press: string; - reckless: string; - reincarnated: string; - reflection: string; - secret: string; - skill: string; - social: string; - spellshot: string; - stamina: string; - tandem: string; - time: string; - transcendence: string; - unstable: string; - vigilante: string; - wandering: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; - }, "splash" | "alchemist" | "animist" | "barbarian" | "bard" | "champion" | "cleric" | "druid" | "exemplar" | "fighter" | "gunslinger" | "kineticist" | "inventor" | "investigator" | "magus" | "monk" | "oracle" | "psychic" | "ranger" | "rogue" | "sorcerer" | "summoner" | "swashbuckler" | "thaumaturge" | "witch" | "wizard" | "agile" | "propulsive" | "backswing" | "forceful" | "reach" | "sweep" | "thrown" | "volley-20" | "volley-30" | "volley-50" | "volley-60" | "clockwork" | "consumable" | "infused" | "aiuvarin" | "anadi" | "android" | "aphorite" | "ardande" | "athamaru" | "automaton" | "awakened-animal" | "azarketi" | "beastkin" | "bugbear" | "catfolk" | "centaur" | "changeling" | "conrasu" | "dhampir" | "dragonblood" | "dromaar" | "duskwalker" | "dwarf" | "elf" | "fetchling" | "fleshwarp" | "ganzi" | "geniekin" | "ghoran" | "gnoll" | "gnome" | "goblin" | "goloma" | "grippli" | "halfling" | "hobgoblin" | "human" | "hungerseed" | "kashrishi" | "kitsune" | "kobold" | "leshy" | "lizardfolk" | "merfolk" | "minotaur" | "nagaji" | "naari" | "nephilim" | "orc" | "oread" | "poppet" | "ratfolk" | "reflection" | "samsaran" | "sarangay" | "shisk" | "shoony" | "skeleton" | "sprite" | "strix" | "suli" | "surki" | "sylph" | "tanuki" | "talos" | "tengu" | "undine" | "vanara" | "vishkanya" | "wayang" | "yaksha" | "yaoguai" | "additive" | "additive1" | "additive2" | "additive3" | "aftermath" | "amp" | "archetype" | "attack" | "beast" | "bottled-breath" | "cantrip" | "catalyst" | "circus" | "class" | "coagulant" | "composite" | "composition" | "concentrate" | "dedication" | "deviant" | "eidolon" | "elixir" | "esoterica" | "expandable" | "exploration" | "finisher" | "flourish" | "focus" | "fulu" | "gadget" | "general" | "lineage" | "litany" | "lozenge" | "manipulate" | "missive" | "modification" | "multiclass" | "mutagen" | "oath" | "oil" | "overflow" | "pervasive-magic" | "potion" | "precious" | "press" | "processed" | "reckless" | "reincarnated" | "revelation" | "sanctified" | "scroll" | "secret" | "skill" | "snare" | "spellgun" | "structure" | "subtle" | "talisman" | "tandem" | "tea" | "trap" | "unstable" | "vigilante" | "wand">; - elementTraits: { - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - }; - equipmentTraits: { - additive: string; - additive0: string; - additive1: string; - adjusted: string; - adjustment: string; - alchemical: string; - apex: string; - artifact: string; - auditory: string; - aura: string; - barding: string; - censer: string; - clockwork: string; - coagulant: string; - coda: string; - companion: string; - contract: string; - consecration: string; - cursed: string; - darkness: string; - death: string; - detection: string; - eidolon: string; - emotion: string; - expandable: string; - extradimensional: string; - fear: string; - figurehead: string; - focused: string; - fortune: string; - fulu: string; - gadget: string; - graft: string; - grimoire: string; - "harrow-court": string; - healing: string; - illusion: string; - incapacitation: string; - incorporeal: string; - infused: string; - intelligent: string; - invested: string; - light: string; - magical: string; - mechanical: string; - mental: string; - misfortune: string; - morph: string; - mounted: string; - mythic: string; - nonlethal: string; - plant: string; - poison: string; - polymorph: string; - portable: string; - precious: string; - prediction: string; - relic: string; - revelation: string; - saggorak: string; - scrying: string; - shadow: string; - sleep: string; - spellgun: string; - spellheart: string; - spirit: string; - staff: string; - steam: string; - structure: string; - tattoo: string; - teleportation: string; - visual: string; - wand: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - reflection: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; - }; - featTraits: { - additive: string; - additive1: string; - additive2: string; - additive3: string; - aftermath: string; - alchemical: string; - apparition: string; - archetype: string; - artifact: string; - auditory: string; - aura: string; - bravado: string; - calling: string; - circus: string; - class: string; - coagulant: string; - composite: string; - concentrate: string; - dedication: string; - destiny: string; - detection: string; - deviant: string; - downtime: string; - emotion: string; - evolution: string; - esoterica: string; - exploration: string; - fear: string; - finisher: string; - flourish: string; - fortune: string; - general: string; - ikon: string; - impulse: string; - infusion: string; - injury: string; - lineage: string; - manipulate: string; - mindshift: string; - modification: string; - move: string; - multiclass: string; - oath: string; - olfactory: string; - overflow: string; - "pervasive-magic": string; - poison: string; - press: string; - rage: string; - reckless: string; - reincarnated: string; - reflection: string; - secret: string; - skill: string; - social: string; - spellshot: string; - stamina: string; - stance: string; - talisman: string; - tandem: string; - time: string; - transcendence: string; - "true-name": string; - unstable: string; - vigilante: string; - virulent: string; - vitality: string; - void: string; - wandering: string; - amp: string; - attack: string; - beast: string; - cantrip: string; - composition: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - disease: string; - dream: string; - eidolon: string; - extradimensional: string; - focus: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - misfortune: string; - morph: string; - mythic: string; - nonlethal: string; - plant: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - structure: string; - subtle: string; - summon: string; - summoned: string; - teleportation: string; - trial: string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; - }; - hazardTraits: { - alchemical: string; - auditory: string; - consumable: string; - curse: string; - environmental: string; - haunt: string; - inhaled: string; - kaiju: string; - mechanical: string; - poison: string; - polymorph: string; - steam: string; - technological: string; - teleportation: string; - trap: string; - virulent: string; - visual: string; - arcane: string; - divine: string; - occult: string; - primal: string; - light: string; - magical: string; - mental: string; - nonlethal: string; - plant: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - holy: string; - unholy: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aberration: string; - aeon: string; - aesir: string; - agathion: string; - amphibious: string; - angel: string; - animal: string; - anugobu: string; - aquatic: string; - archon: string; - astral: string; - asura: string; - azata: string; - beast: string; - boggard: string; - bugbear: string; - caligni: string; - celestial: string; - centaur: string; - "charau-ka": string; - clockwork: string; - construct: string; - couatl: string; - daemon: string; - darvakka: string; - demon: string; - dero: string; - devil: string; - dinosaur: string; - div: string; - dragon: string; - dream: string; - drow: string; - duergar: string; - eidolon: string; - elemental: string; - ethereal: string; - experiment: string; - fey: string; - fiend: string; - formian: string; - fungus: string; - genie: string; - ghoran: string; - ghost: string; - ghoul: string; - ghul: string; - giant: string; - golem: string; - graveknight: string; - gremlin: string; - grioth: string; - hag: string; - hantu: string; - herald: string; - hryngar: string; - humanoid: string; - ikeshti: string; - illusion: string; - incorporeal: string; - inevitable: string; - kami: string; - kovintus: string; - lilu: string; - locathah: string; - merfolk: string; - mindless: string; - minion: string; - monitor: string; - morlock: string; - mortic: string; - mummy: string; - munavri: string; - mutant: string; - mythic: string; - nindoru: string; - nymph: string; - oni: string; - ooze: string; - oread: string; - paaridar: string; - palinthanos: string; - "persona-flirt": string; - "persona-guardian": string; - "persona-leader": string; - "persona-scholar": string; - "persona-scoundrel": string; - "persona-underdog": string; - "persona-warrior": string; - "persona-wildcard": string; - petitioner: string; - phantom: string; - protean: string; - psychopomp: string; - qlippoth: string; - rakshasa: string; - reflection: string; - sahkil: string; - "sea-devil": string; - sedacthy: string; - serpentfolk: string; - seugathi: string; - shabti: string; - shadow: string; - shobhad: string; - siktempora: string; - skelm: string; - skulk: string; - soulbound: string; - sporeborn: string; - spriggan: string; - stheno: string; - summoned: string; - swarm: string; - tane: string; - tanggal: string; - time: string; - titan: string; - troll: string; - troop: string; - undead: string; - urdefhan: string; - vampire: string; - vanara: string; - velstrac: string; - wayang: string; - werecreature: string; - wight: string; - "wild-hunt": string; - wraith: string; - wraithvine: string; - wyrwood: string; - xulgath: string; - zombie: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - catfolk: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vishkanya: string; - yaksha: string; - yaoguai: string; - }; - kingmakerTraits: { - army: string; - cavalry: string; - civic: string; - commerce: string; - infantry: string; - kingdom: string; - leadership: string; - maneuver: string; - morale: string; - region: string; - siege: string; - skirmisher: string; - upkeep: string; - "certain-kill": string; - summon: string; - agile: string; - propulsive: string; - backswing: string; - forceful: string; - reach: string; - sweep: string; - thrown: string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - amp: string; - attack: string; - auditory: string; - aura: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - emotion: string; - exploration: string; - extradimensional: string; - fear: string; - focus: string; - fortune: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - manipulate: string; - misfortune: string; - morph: string; - move: string; - mythic: string; - nonlethal: string; - olfactory: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - stance: string; - structure: string; - subtle: string; - summoned: string; - teleportation: string; - trial: string; - "true-name": string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - additive: string; - additive1: string; - additive2: string; - additive3: string; - alchemical: string; - "bottled-breath": string; - catalyst: string; - coagulant: string; - clockwork: string; - consumable: string; - contact: string; - cursed: string; - drug: string; - elixir: string; - expandable: string; - fey: string; - fulu: string; - gadget: string; - infused: string; - ingested: string; - injury: string; - kobold: string; - lozenge: string; - mechanical: string; - missive: string; - mutagen: string; - oil: string; - potion: string; - precious: string; - processed: string; - scroll: string; - snare: string; - spellgun: string; - splash: string; - talisman: string; - tea: string; - trap: string; - virulent: string; - wand: string; - aftermath: string; - apparition: string; - archetype: string; - artifact: string; - bravado: string; - calling: string; - circus: string; - class: string; - composite: string; - dedication: string; - destiny: string; - deviant: string; - downtime: string; - evolution: string; - esoterica: string; - finisher: string; - flourish: string; - general: string; - ikon: string; - impulse: string; - infusion: string; - lineage: string; - mindshift: string; - modification: string; - multiclass: string; - oath: string; - overflow: string; - "pervasive-magic": string; - press: string; - reckless: string; - reincarnated: string; - reflection: string; - secret: string; - skill: string; - social: string; - spellshot: string; - stamina: string; - tandem: string; - time: string; - transcendence: string; - unstable: string; - vigilante: string; - wandering: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; - }; - npcAttackTraits: { - curse: string; - "deadly-2d8": string; - "deadly-3d8": string; - "deadly-4d8": string; - "deadly-2d10": string; - "deadly-3d10": string; - "deadly-4d10": string; - "deadly-2d12": string; - "deadly-3d12": string; - "deadly-4d12": string; - illusion: string; - incorporeal: string; - radiation: string; - "reach-0": string; - "reach-10": string; - "reach-15": string; - "reach-20": string; - "reach-25": string; - "reach-30": string; - "reach-40": string; - "reach-50": string; - "reach-60": string; - "reach-100": string; - "reach-120": string; - "reach-200": string; - "reach-1000": string; - "reload-0": string; - "reload-1": string; - "reload-2": string; - "reload-1-min": string; - sanctified: string; - "range-5": string; - "range-10": string; - "range-15": string; - "range-20": string; - "range-25": string; - "range-30": string; - "range-40": string; - "range-50": string; - "range-60": string; - "range-70": string; - "range-80": string; - "range-90": string; - "range-100": string; - "range-110": string; - "range-120": string; - "range-140": string; - "range-150": string; - "range-160": string; - "range-170": string; - "range-180": string; - "range-190": string; - "range-200": string; - "range-210": string; - "range-220": string; - "range-230": string; - "range-240": string; - "range-250": string; - "range-260": string; - "range-270": string; - "range-280": string; - "range-290": string; - "range-300": string; - "range-310": string; - "range-320": string; - "range-500": string; - "range-increment-5": string; - "range-increment-10": string; - "range-increment-15": string; - "range-increment-20": string; - "range-increment-25": string; - "range-increment-30": string; - "range-increment-35": string; - "range-increment-40": string; - "range-increment-50": string; - "range-increment-60": string; - "range-increment-70": string; - "range-increment-75": string; - "range-increment-80": string; - "range-increment-90": string; - "range-increment-100": string; - "range-increment-110": string; - "range-increment-120": string; - "range-increment-130": string; - "range-increment-140": string; - "range-increment-150": string; - "range-increment-160": string; - "range-increment-170": string; - "range-increment-180": string; - "range-increment-190": string; - "range-increment-200": string; - "range-increment-210": string; - "range-increment-220": string; - "range-increment-230": string; - "range-increment-240": string; - "range-increment-250": string; - "range-increment-260": string; - "range-increment-270": string; - "range-increment-280": string; - "range-increment-290": string; - "range-increment-300": string; - "range-increment-310": string; - "range-increment-320": string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - dragonhide: string; - dreamweb: string; - "grisantian-pelt": string; - "keep-stone": string; - peachwood: string; - sisterstone: string; - "sisterstone-dusk": string; - "sisterstone-scarlet": string; - sloughstone: string; - "sovereign-steel": string; - warpglass: string; - adjusted: string; - alchemical: string; - agile: string; - apex: string; - artifact: string; - attached: string; - "attached-to-shield": string; - "attached-to-crossbow-or-firearm": string; - auditory: string; - backstabber: string; - backswing: string; - bomb: string; - brace: string; - brutal: string; - "capacity-2": string; - "capacity-3": string; - "capacity-4": string; - "capacity-5": string; - climbing: string; - clockwork: string; - cobbled: string; - combination: string; - concealable: string; - concussive: string; - consumable: string; - "critical-fusion": string; - cursed: string; - "deadly-d4": string; - "deadly-d6": string; - "deadly-d8": string; - "deadly-d10": string; - "deadly-d12": string; - death: string; - disarm: string; - disease: string; - "double-barrel": string; - emotion: string; - extradimensional: string; - "fatal-aim-d10": string; - "fatal-aim-d12": string; - "fatal-d8": string; - "fatal-d10": string; - "fatal-d12": string; - fear: string; - finesse: string; - forceful: string; - fortune: string; - "free-hand": string; - fungus: string; - grapple: string; - hampering: string; - healing: string; - infused: string; - inhaled: string; - injection: string; - intelligent: string; - invested: string; - "jousting-d4": string; - "jousting-d6": string; - "jousting-d8": string; - "jousting-d10": string; - kickback: string; - light: string; - magical: string; - mental: string; - modular: string; - monk: string; - mythic: string; - nonlethal: string; - olfactory: string; - parry: string; - plant: string; - poison: string; - propulsive: string; - "ranged-trip": string; - razing: string; - reach: string; - recovery: string; - relic: string; - repeating: string; - resonant: string; - saggorak: string; - "scatter-5": string; - "scatter-10": string; - "scatter-15": string; - "scatter-20": string; - scrying: string; - shadow: string; - shove: string; - spirit: string; - splash: string; - staff: string; - sweep: string; - tearing: string; - tech: string; - teleportation: string; - tethered: string; - thrown: string; - "thrown-10": string; - "thrown-15": string; - "thrown-20": string; - "thrown-30": string; - "thrown-40": string; - "thrown-60": string; - "thrown-80": string; - "thrown-100": string; - "thrown-200": string; - training: string; - trip: string; - twin: string; - "two-hand-d6": string; - "two-hand-d8": string; - "two-hand-d10": string; - "two-hand-d12": string; - unarmed: string; - vehicular: string; - venomous: string; - "versatile-acid": string; - "versatile-b": string; - "versatile-cold": string; - "versatile-electricity": string; - "versatile-fire": string; - "versatile-force": string; - "versatile-mental": string; - "versatile-p": string; - "versatile-poison": string; - "versatile-s": string; - "versatile-sonic": string; - "versatile-spirit": string; - "versatile-vitality": string; - "versatile-void": string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - reflection: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; - }; - shieldTraits: { - apex: string; - "deflecting-bludgeoning": string; - "deflecting-physical-ranged": string; - "deflecting-piercing": string; - "deflecting-slashing": string; - foldaway: string; - harnessed: string; - "hefty-2": string; - inscribed: string; - "integrated-1d6-b": string; - "integrated-1d6-p": string; - "integrated-1d6-s": string; - "integrated-1d6-s-versatile-p": string; - invested: string; - "launching-dart": string; - magical: string; - relic: string; - "shield-throw-20": string; - "shield-throw-30": string; - arcane: string; - divine: string; - occult: string; - primal: string; - light: string; - mental: string; - nonlethal: string; - plant: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - holy: string; - unholy: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - }; - spellTraits: { - amp: string; - attack: string; - auditory: string; - aura: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - emotion: string; - exploration: string; - extradimensional: string; - fear: string; - focus: string; - fortune: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - manipulate: string; - misfortune: string; - morph: string; - move: string; - mythic: string; - nonlethal: string; - olfactory: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - stance: string; - structure: string; - subtle: string; - summon: string; - summoned: string; - teleportation: string; - trial: string; - "true-name": string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - }; - vehicleTraits: { - artifact: string; - clockwork: string; - magical: string; - teleportation: string; - }; - weaponTraits: { - adjusted: string; - alchemical: string; - agile: string; - apex: string; - artifact: string; - attached: string; - "attached-to-shield": string; - "attached-to-crossbow-or-firearm": string; - auditory: string; - backstabber: string; - backswing: string; - bomb: string; - brace: string; - brutal: string; - "capacity-2": string; - "capacity-3": string; - "capacity-4": string; - "capacity-5": string; - climbing: string; - clockwork: string; - cobbled: string; - combination: string; - concealable: string; - concussive: string; - consumable: string; - "critical-fusion": string; - cursed: string; - "deadly-d4": string; - "deadly-d6": string; - "deadly-d8": string; - "deadly-d10": string; - "deadly-d12": string; - death: string; - disarm: string; - disease: string; - "double-barrel": string; - emotion: string; - extradimensional: string; - "fatal-aim-d10": string; - "fatal-aim-d12": string; - "fatal-d8": string; - "fatal-d10": string; - "fatal-d12": string; - fear: string; - finesse: string; - forceful: string; - fortune: string; - "free-hand": string; - fungus: string; - grapple: string; - hampering: string; - healing: string; - illusion: string; - infused: string; - inhaled: string; - injection: string; - intelligent: string; - invested: string; - "jousting-d4": string; - "jousting-d6": string; - "jousting-d8": string; - "jousting-d10": string; - kickback: string; - light: string; - magical: string; - mental: string; - modular: string; - monk: string; - mythic: string; - nonlethal: string; - olfactory: string; - parry: string; - plant: string; - poison: string; - propulsive: string; - "ranged-trip": string; - razing: string; - reach: string; - recovery: string; - relic: string; - repeating: string; - resonant: string; - saggorak: string; - "scatter-5": string; - "scatter-10": string; - "scatter-15": string; - "scatter-20": string; - scrying: string; - shadow: string; - shove: string; - spirit: string; - splash: string; - staff: string; - sweep: string; - tearing: string; - tech: string; - teleportation: string; - tethered: string; - thrown: string; - "thrown-10": string; - "thrown-15": string; - "thrown-20": string; - "thrown-30": string; - "thrown-40": string; - "thrown-60": string; - "thrown-80": string; - "thrown-100": string; - "thrown-200": string; - training: string; - trip: string; - twin: string; - "two-hand-d6": string; - "two-hand-d8": string; - "two-hand-d10": string; - "two-hand-d12": string; - unarmed: string; - vehicular: string; - venomous: string; - "versatile-acid": string; - "versatile-b": string; - "versatile-cold": string; - "versatile-electricity": string; - "versatile-fire": string; - "versatile-force": string; - "versatile-mental": string; - "versatile-p": string; - "versatile-poison": string; - "versatile-s": string; - "versatile-sonic": string; - "versatile-spirit": string; - "versatile-vitality": string; - "versatile-void": string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - reflection: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; - }; - rarityTraits: { - common: string; - uncommon: string; - rare: string; - unique: string; - }; - traitsDescriptions: { - abysium: string; - adamantine: string; - "cold-iron": string; - duskwood: string; - djezet: string; - dragonhide: string; - dreamweb: string; - "grisantian-pelt": string; - inubrix: string; - dawnsilver: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - sisterstone: string; - "sisterstone-dusk": string; - "sisterstone-scarlet": string; - sloughstone: string; - "sovereign-steel": string; - warpglass: string; - "ranged-trip": string; - rare: string; - ratfolk: string; - razing: string; - reach: string; - "reach-0": string; - "reach-10": string; - "reach-100": string; - "reach-120": string; - "reach-1000": string; - "reach-15": string; - "reach-20": string; - "reach-200": string; - "reach-25": string; - "reach-30": string; - "reach-40": string; - "reach-50": string; - "reach-60": string; - recovery: string; - reincarnated: string; - reflection: string; - relic: string; - reload: string; - "reload-0": string; - "reload-1": string; - "reload-1-min": string; - "reload-2": string; - repeating: string; - resonant: string; - revelation: string; - rogue: string; - saggorak: string; - sanctified: string; - "scatter-10": string; - "scatter-15": string; - "scatter-20": string; - "scatter-5": string; - scroll: string; - scrying: string; - secret: string; - sedacthy: string; - serpentfolk: string; - shadow: string; - "shield-throw-20": string; - "shield-throw-30": string; - shisk: string; - shoony: string; - shove: string; - skeleton: string; - skill: string; - sleep: string; - snare: string; - social: string; - sonic: string; - sorcerer: string; - soulbound: string; - spellgun: string; - spellheart: string; - spellshape: string; - spellshot: string; - spirit: string; - splash: string; - "splash-10": string; - sprite: string; - staff: string; - stance: string; - steam: string; - strix: string; - structure: string; - subtle: string; - suli: string; - summon: string; - summoned: string; - summoner: string; - surki: string; - swashbuckler: string; - swarm: string; - sweep: string; - sylph: string; - talisman: string; - talos: string; - tandem: string; - tane: string; - tattoo: string; - tea: string; - tearing: string; - tech: string; - telepathy: string; - teleportation: string; - tengu: string; - tethered: string; - thaumaturge: string; - thrown: string; - "thrown-10": string; - "thrown-100": string; - "thrown-15": string; - "thrown-20": string; - "thrown-200": string; - "thrown-25": string; - "thrown-30": string; - "thrown-40": string; - "thrown-50": string; - "thrown-60": string; - "thrown-80": string; - tiefling: string; - time: string; - training: string; - transcendence: string; - trap: string; - trip: string; - troll: string; - "true-name": string; - twin: string; - "two-hand-d10": string; - "two-hand-d12": string; - "two-hand-d6": string; - "two-hand-d8": string; - unarmed: string; - uncommon: string; - undine: string; - undead: string; - unholy: string; - unique: string; - unstable: string; - vampire: string; - vanara: string; - vishkanya: string; - vehicular: string; - venomous: string; - "versatile-acid": string; - "versatile-b": string; - "versatile-cold": string; - "versatile-electricity": string; - "versatile-fire": string; - "versatile-force": string; - "versatile-p": string; - "versatile-poison": string; - "versatile-s": string; - "versatile-sonic": string; - "versatile-spirit": string; - "versatile-vitality": string; - "versatile-void": string; - virulent: string; - visual: string; - vitality: string; - void: string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - wand: string; - wandering: string; - water: string; - werecreature: string; - wight: string; - witch: string; - wizard: string; - wraith: string; - wood: string; - xulgath: string; - zombie: string; - "range-5": string; - "range-10": string; - "range-15": string; - "range-20": string; - "range-25": string; - "range-30": string; - "range-40": string; - "range-50": string; - "range-60": string; - "range-70": string; - "range-80": string; - "range-90": string; - "range-100": string; - "range-110": string; - "range-120": string; - "range-140": string; - "range-150": string; - "range-160": string; - "range-170": string; - "range-180": string; - "range-190": string; - "range-200": string; - "range-210": string; - "range-220": string; - "range-230": string; - "range-240": string; - "range-250": string; - "range-260": string; - "range-270": string; - "range-280": string; - "range-290": string; - "range-300": string; - "range-310": string; - "range-320": string; - "range-500": string; - "range-increment-5": string; - "range-increment-10": string; - "range-increment-15": string; - "range-increment-20": string; - "range-increment-25": string; - "range-increment-30": string; - "range-increment-35": string; - "range-increment-40": string; - "range-increment-50": string; - "range-increment-60": string; - "range-increment-70": string; - "range-increment-75": string; - "range-increment-80": string; - "range-increment-90": string; - "range-increment-100": string; - "range-increment-110": string; - "range-increment-120": string; - "range-increment-130": string; - "range-increment-140": string; - "range-increment-150": string; - "range-increment-160": string; - "range-increment-170": string; - "range-increment-180": string; - "range-increment-190": string; - "range-increment-200": string; - "range-increment-210": string; - "range-increment-220": string; - "range-increment-230": string; - "range-increment-240": string; - "range-increment-250": string; - "range-increment-260": string; - "range-increment-270": string; - "range-increment-280": string; - "range-increment-290": string; - "range-increment-300": string; - "range-increment-310": string; - "range-increment-320": string; - aasimar: string; - aberration: string; - abjuration: string; - acid: string; - additive: string; - additive0: string; - additive1: string; - additive2: string; - additive3: string; - adjusted: string; - adjustment: string; - aeon: string; - aesir: string; - aftermath: string; - agathion: string; - agile: string; - air: string; - aiuvarin: string; - alchemical: string; - alchemist: string; - amphibious: string; - anadi: string; - android: string; - angel: string; - animal: string; - animist: string; - apex: string; - aphorite: string; - apparition: string; - aquadynamic: string; - aquatic: string; - arcane: string; - archetype: string; - archon: string; - ardande: string; - astral: string; - artifact: string; - athamaru: string; - attached: string; - "attached-to-crossbow-or-firearm": string; - "attached-to-shield": string; - attack: string; - auditory: string; - aura: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - azata: string; - backstabber: string; - backswing: string; - barbarian: string; - bard: string; - beast: string; - beastkin: string; - boggard: string; - bomb: string; - "bottled-breath": string; - brace: string; - brutal: string; - bugbear: string; - bulwark: string; - caligni: string; - calling: string; - cantrip: string; - "capacity-2": string; - "capacity-3": string; - "capacity-4": string; - "capacity-5": string; - catalyst: string; - celestial: string; - catfolk: string; - censer: string; - centaur: string; - "certain-kill": string; - champion: string; - changeling: string; - class: string; - cleric: string; - climbing: string; - clockwork: string; - coatl: string; - cobbled: string; - coagulant: string; - coda: string; - cold: string; - combination: string; - comfort: string; - common: string; - companion: string; - complex: string; - composite: string; - composition: string; - concealable: string; - concentrate: string; - concussive: string; - conrasu: string; - consecration: string; - construct: string; - consumable: string; - contact: string; - contingency: string; - contract: string; - "critical-fusion": string; - curse: string; - cursebound: string; - cursed: string; - daemon: string; - darkness: string; - darvakka: string; - "deadly-2d10": string; - "deadly-2d12": string; - "deadly-2d8": string; - "deadly-3d10": string; - "deadly-3d12": string; - "deadly-3d8": string; - "deadly-4d10": string; - "deadly-4d12": string; - "deadly-4d8": string; - "deadly-d10": string; - "deadly-d12": string; - "deadly-d6": string; - "deadly-d8": string; - "deadly-d4": string; - death: string; - "deflecting-bludgeoning": string; - "deflecting-physical-ranged": string; - "deflecting-slashing": string; - dedication: string; - demon: string; - dero: string; - destiny: string; - detection: string; - deviant: string; - devil: string; - dhampir: string; - dinosaur: string; - disarm: string; - disease: string; - divination: string; - divine: string; - "double-barrel": string; - downtime: string; - dragon: string; - dragonblood: string; - dromaar: string; - drug: string; - druid: string; - duskwalker: string; - dwarf: string; - earth: string; - eidolon: string; - electricity: string; - elemental: string; - elf: string; - elixir: string; - emotion: string; - "entrench-melee": string; - "entrench-ranged": string; - environment: string; - esoterica: string; - ethereal: string; - evolution: string; - exemplar: string; - expandable: string; - experiment: string; - exploration: string; - extradimensional: string; - "fatal-aim-d10": string; - "fatal-aim-d12": string; - "fatal-d10": string; - "fatal-d12": string; - "fatal-d8": string; - fear: string; - fetchling: string; - fey: string; - fiend: string; - fighter: string; - figurehead: string; - finesse: string; - finisher: string; - fire: string; - fleshwarp: string; - flexible: string; - flourish: string; - focus: string; - focused: string; - foldaway: string; - force: string; - forceful: string; - fortune: string; - "free-hand": string; - fulu: string; - fungus: string; - gadget: string; - ganzi: string; - graft: string; - general: string; - genie: string; - geniekin: string; - ghoran: string; - ghost: string; - ghoul: string; - ghul: string; - giant: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grapple: string; - gremlin: string; - grimoire: string; - grippli: string; - gunslinger: string; - hag: string; - halfling: string; - "jousting-d4": string; - "jousting-d6": string; - "jousting-d8": string; - "jousting-d10": string; - hampering: string; - harnessed: string; - haunt: string; - healing: string; - "hefty-14": string; - hex: string; - hindering: string; - hobgoblin: string; - holy: string; - hryngar: string; - human: string; - humanoid: string; - naari: string; - ikon: string; - illusion: string; - impulse: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - infused: string; - infusion: string; - ingested: string; - inhaled: string; - injection: string; - injury: string; - inscribed: string; - "integrated-1d6-b": string; - "integrated-1d6-p": string; - "integrated-1d6-s": string; - "integrated-1d6-s-versatile-p": string; - intelligent: string; - inventor: string; - invested: string; - investigator: string; - kashrishi: string; - "keep-stone": string; - kholo: string; - kickback: string; - kineticist: string; - kitsune: string; - kobold: string; - laminar: string; - "launching-dart": string; - leshy: string; - light: string; - linguistic: string; - litany: string; - lizardfolk: string; - lozenge: string; - magical: string; - magus: string; - manipulate: string; - mechanical: string; - mental: string; - merfolk: string; - metal: string; - mindless: string; - mindshift: string; - minion: string; - minotaur: string; - misfortune: string; - missive: string; - modification: string; - modular: string; - monitor: string; - monk: string; - morph: string; - mounted: string; - move: string; - multiclass: string; - mummy: string; - mutagen: string; - mutant: string; - mythic: string; - nagaji: string; - nephilim: string; - nindoru: string; - noisy: string; - nonlethal: string; - nymph: string; - oath: string; - occult: string; - oil: string; - olfactory: string; - oni: string; - ooze: string; - oracle: string; - orc: string; - oread: string; - overflow: string; - palinthanos: string; - parry: string; - peachwood: string; - "persona-flirt": string; - "persona-guardian": string; - "persona-leader": string; - "persona-scholar": string; - "persona-scoundrel": string; - "persona-underdog": string; - "persona-warrior": string; - "persona-wildcard": string; - phantom: string; - plant: string; - poison: string; - polymorph: string; - ponderous: string; - poppet: string; - portable: string; - possession: string; - potion: string; - precious: string; - prediction: string; - processed: string; - press: string; - primal: string; - propulsive: string; - protean: string; - psyche: string; - psychic: string; - psychopomp: string; - qlippoth: string; - radiation: string; - rage: string; - akshasa: string; - ranger: string; - cavalry: string; - infantry: string; - siege: string; - skirmisher: string; - }; - creatureTypes: { - plant: string; - spirit: string; - vitality: string; - void: string; - time: string; - fungus: string; - shadow: string; - beast: string; - dream: string; - fey: string; - aberration: string; - animal: string; - astral: string; - celestial: string; - construct: string; - dragon: string; - elemental: string; - ethereal: string; - fiend: string; - giant: string; - humanoid: string; - monitor: string; - ooze: string; - petitioner: string; - undead: string; - }; - weaponHands: { - 1: string; - "1+": string; - 2: string; - }; - itemBonuses: { - "-2": string; - 0: string; - 1: string; - 2: string; - 3: string; - }; - damageDice: { - 0: string; - 1: string; - 2: string; - 3: string; - 4: string; - }; - damageDie: { - d4: string; - d6: string; - d8: string; - d10: string; - d12: string; - }; - weaponMAP: { - 1: string; - 2: string; - 3: string; - 4: string; - 5: string; - }; - weaponReload: Record; - armorCategories: Record<"light" | "unarmored" | "medium" | "heavy" | "light-barding" | "heavy-barding", string>; - armorGroups: Record<"wood" | "composite" | "chain" | "cloth" | "leather" | "plate" | "skeletal", string>; - consumableCategories: Record<"poison" | "catalyst" | "elixir" | "fulu" | "gadget" | "mutagen" | "oil" | "potion" | "scroll" | "snare" | "talisman" | "wand" | "drug" | "ammo" | "other" | "toolkit", string>; - identification: { - DisplayDetails: string; - Identified: string; - Identify: string; - IdentifyAlchemyDCs: string; - IdentifyGenericDCs: string; - IdentifyMagicDCs: string; - IsIdentified: string; - MisidentifiedItem: string; - Misidentify: string; - MystificationStatus: string; - Mystify: string; - PostSkillsToChat: string; - PostSkillsToChatText: string; - TraitGMNote: string; - Unidentified: string; - UnidentifiedDescription: string; - UnidentifiedHint: string; - UnidentifiedItem: string; - UnidentifiedType: { - Amulet: string; - Anklets: string; - Armbands: string; - Backpack: string; - Belt: string; - Book: string; - Bracers: string; - Circlet: string; - Cloak: string; - Collar: string; - Epaulets: string; - Eyepiece: string; - Garment: string; - Gloves: string; - Headwear: string; - Horseshoes: string; - Liquid: string; - Mask: string; - Necklace: string; - Object: string; - Ring: string; - Saddle: string; - Shoes: string; - Substance: string; - Tool: string; - }; - }; - preparationType: { - prepared: string; - spontaneous: string; - innate: string; - focus: string; - items: string; - ritual: string; - }; - attitude: { - hostile: string; - unfriendly: string; - indifferent: string; - friendly: string; - helpful: string; - }; - skills: Readonly<{ - acrobatics: { - label: string; - attribute: "dex"; - }; - arcana: { - label: string; - attribute: "int"; - }; - athletics: { - label: string; - attribute: "str"; - }; - crafting: { - label: string; - attribute: "int"; - }; - deception: { - label: string; - attribute: "cha"; - }; - diplomacy: { - label: string; - attribute: "cha"; - }; - intimidation: { - label: string; - attribute: "cha"; - }; - medicine: { - label: string; - attribute: "wis"; - }; - nature: { - label: string; - attribute: "wis"; - }; - occultism: { - label: string; - attribute: "int"; - }; - performance: { - label: string; - attribute: "cha"; - }; - religion: { - label: string; - attribute: "wis"; - }; - society: { - label: string; - attribute: "int"; - }; - stealth: { - label: string; - attribute: "dex"; - }; - survival: { - label: string; - attribute: "wis"; - }; - thievery: { - label: string; - attribute: "dex"; - }; - }>; - featCategories: Record<"curse" | "class" | "general" | "skill" | "calling" | "ancestry" | "bonus" | "ancestryfeature" | "classfeature" | "deityboon" | "pfsboon", string>; - actionTypes: { - action: string; - reaction: string; - free: string; - passive: string; - }; - actionsNumber: { - 1: string; - 2: string; - 3: string; - }; - actionCategories: { - interaction: string; - defensive: string; - offensive: string; - familiar: string; - }; - frequencies: { - turn: string; - round: string; - PT1M: string; - PT10M: string; - PT1H: string; - PT24H: string; - day: string; - P1W: string; - P1M: string; - P1Y: string; - }; - timeUnits: { - rounds: string; - minutes: string; - hours: string; - days: string; - unlimited: string; - encounter: string; - }; - proficiencyLevels: readonly ["PF2E.ProficiencyLevel0", "PF2E.ProficiencyLevel1", "PF2E.ProficiencyLevel2", "PF2E.ProficiencyLevel3", "PF2E.ProficiencyLevel4"]; - proficiencyRanks: { - readonly untrained: "PF2E.ProficiencyLevel0"; - readonly trained: "PF2E.ProficiencyLevel1"; - readonly expert: "PF2E.ProficiencyLevel2"; - readonly master: "PF2E.ProficiencyLevel3"; - readonly legendary: "PF2E.ProficiencyLevel4"; - }; - actorSizes: Record<"tiny" | "sm" | "med" | "lg" | "huge" | "grg", string>; - actorTypes: Record<"army" | "character" | "familiar" | "hazard" | "loot" | "npc" | "party" | "vehicle", string>; - speedTypes: Record<"land" | "burrow" | "climb" | "fly" | "swim", string>; - prerequisitePlaceholders: { - prerequisite1: string; - prerequisite2: string; - prerequisite3: string; - prerequisite4: string; - prerequisite5: string; - }; - senses: Record<"darkvision" | "echolocation" | "greater-darkvision" | "infrared-vision" | "lifesense" | "low-light-vision" | "magicsense" | "motion-sense" | "scent" | "see-invisibility" | "spiritsense" | "thoughtsense" | "tremorsense" | "truesight" | "wavesense", string>; - senseAcuities: Record; - conditionTypes: Record<"blinded" | "broken" | "clumsy" | "confused" | "controlled" | "dazzled" | "deafened" | "doomed" | "drained" | "enfeebled" | "fascinated" | "fatigued" | "fleeing" | "frightened" | "grabbed" | "hidden" | "immobilized" | "off-guard" | "paralyzed" | "petrified" | "prone" | "restrained" | "sickened" | "slowed" | "stunned" | "stupefied" | "unconscious" | "wounded" | "cursebound" | "concealed" | "dying" | "encumbered" | "friendly" | "helpful" | "hostile" | "indifferent" | "invisible" | "malevolence" | "observed" | "persistent-damage" | "quickened" | "undetected" | "unfriendly" | "unnoticed", string>; - pfsFactions: { - EA: string; - GA: string; - HH: string; - VS: string; - RO: string; - VW: string; - }; - pfsSchools: { - none: string; - scrolls: string; - spells: string; - swords: string; - }; - immunityTypes: { - acid: string; - air: string; - alchemical: string; - "area-damage": string; - auditory: string; - bleed: string; - blinded: string; - bludgeoning: string; - clumsy: string; - cold: string; - confused: string; - controlled: string; - "critical-hits": string; - curse: string; - custom: string; - dazzled: string; - deafened: string; - "death-effects": string; - detection: string; - disease: string; - doomed: string; - drained: string; - earth: string; - electricity: string; - emotion: string; - energy: string; - enfeebled: string; - fascinated: string; - fatigued: string; - "fear-effects": string; - fire: string; - fleeing: string; - force: string; - "fortune-effects": string; - frightened: string; - grabbed: string; - healing: string; - illusion: string; - immobilized: string; - inhaled: string; - light: string; - magic: string; - mental: string; - metal: string; - "misfortune-effects": string; - "non-magical": string; - "nonlethal-attacks": string; - "object-immunities": string; - "off-guard": string; - olfactory: string; - paralyzed: string; - "persistent-damage": string; - petrified: string; - physical: string; - piercing: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - precision: string; - prone: string; - radiation: string; - restrained: string; - "salt-water": string; - scrying: string; - sickened: string; - slashing: string; - sleep: string; - slowed: string; - sonic: string; - "spell-deflection": string; - spirit: string; - stunned: string; - stupefied: string; - "swarm-attacks": string; - "swarm-mind": string; - trip: string; - "unarmed-attacks": string; - unconscious: string; - visual: string; - vitality: string; - void: string; - water: string; - wood: string; - wounded: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - }; - languages: Record; - attackEffects: { - grab: string; - "improved-grab": string; - constrict: string; - "greater-constrict": string; - knockdown: string; - "improved-knockdown": string; - push: string; - "improved-push": string; - trip: string; - }; - worldClock: { - AD: { - Era: string; - }; - AR: { - Era: string; - Months: { - April: string; - August: string; - December: string; - February: string; - January: string; - July: string; - June: string; - March: string; - May: string; - November: string; - October: string; - September: string; - }; - Weekdays: { - Friday: string; - Monday: string; - Saturday: string; - Sunday: string; - Thursday: string; - Tuesday: string; - Wednesday: string; - }; - }; - Button: { - AddOneDay: string; - AddOneHour: string; - AddOneMinute: string; - AddOneRound: string; - AddOneWeek: string; - AddTenMinutes: string; - Advance: string; - Retract: string; - TimeOfDay: { - Advance: { - Dawn: string; - Dusk: string; - Midnight: string; - Noon: string; - }; - Retract: { - Dawn: string; - Dusk: string; - Midnight: string; - Noon: string; - }; - }; - }; - CE: { - Era: string; - }; - Date: string; - IC: { - Era: string; - }; - Placeholder: string; - Title: string; - } & { - AR: { - yearOffset: number; - }; - IC: { - yearOffset: number; - }; - AD: { - yearOffset: number; - }; - CE: { - yearOffset: number; - }; - }; - /** Max speed for number of hexploration activities */ - hexplorationActivities: { - 10: number; - 25: number; - 40: number; - 55: number; - Infinity: number; - }; - environmentFeatures: { - crowd: string; - ice: string; - lava: string; - rubble: string; - sand: string; - sewer: string; - snow: string; - }; - environmentTypes: { - aquatic: string; - arctic: string; - desert: string; - forest: string; - mountain: string; - plains: string; - swamp: string; - underground: string; - urban: string; - }; - SETTINGS: { - automation: { - rulesBasedVision: { - name: string; - hint: string; - }; - iwr: { - name: string; - hint: string; - }; - effectExpiration: { - name: string; - hint: string; - }; - removeExpiredEffects: { - name: string; - hint: string; - }; - flankingDetection: { - name: string; - hint: string; - }; - actorsDeadAtZero: { - name: string; - hint: string; - neither: string; - npcsOnly: string; - both: string; - }; - lootableNPCs: { - name: string; - hint: string; - }; - }; - worldClock: { - name: string; - label: string; - hint: string; - dateTheme: { - name: string; - hint: string; - AR: string; - IC: string; - AD: string; - CE: string; - }; - timeConvention: { - name: string; - hint: string; - twentyFour: string; - twelve: string; - }; - showClockButton: { - name: string; - hint: string; - }; - playersCanView: { - name: string; - hint: string; - }; - syncDarkness: { - name: string; - hint: string; - }; - syncDarknessScene: { - name: string; - hint: string; - enabled: string; - default: string; - disabled: string; - }; - worldCreatedOn: { - name: string; - hint: string; - }; - }; - CampaignFeats: { - name: string; - hint: string; - }; - }; - Actor: { - documentClasses: { - army: typeof ArmyPF2e; - character: typeof CharacterPF2e; - npc: typeof NPCPF2e; - hazard: typeof HazardPF2e; - loot: typeof LootPF2e; - familiar: typeof FamiliarPF2e; - party: typeof PartyPF2e; - vehicle: typeof VehiclePF2e; - }; - }; - Item: { - documentClasses: { - action: typeof AbilityItemPF2e; - affliction: typeof AfflictionPF2e; - ancestry: typeof AncestryPF2e; - armor: typeof ArmorPF2e; - background: typeof BackgroundPF2e; - backpack: typeof ContainerPF2e; - book: typeof BookPF2e; - campaignFeature: typeof CampaignFeaturePF2e; - class: typeof ClassPF2e; - condition: typeof ConditionPF2e; - consumable: typeof ConsumablePF2e; - deity: typeof DeityPF2e; - effect: typeof EffectPF2e; - equipment: typeof EquipmentPF2e; - feat: typeof FeatPF2e; - heritage: typeof HeritagePF2e; - kit: typeof KitPF2e; - lore: typeof LorePF2e; - melee: typeof MeleePF2e; - shield: typeof ShieldPF2e; - spell: typeof SpellPF2e; - spellcastingEntry: typeof SpellcastingEntryPF2e; - treasure: typeof TreasurePF2e; - weapon: typeof WeaponPF2e; - }; - }; - JournalEntry: { - sheetClass: typeof JournalSheetPF2e; - }; - Canvas: { - darkness: { - default: number; - gmVision: number; - }; - }; -}; diff --git a/types/src/scripts/config/iwr.d.ts b/types/src/scripts/config/iwr.d.ts deleted file mode 100644 index f98e30383..000000000 --- a/types/src/scripts/config/iwr.d.ts +++ /dev/null @@ -1,244 +0,0 @@ -declare const immunityTypes: { - acid: string; - air: string; - alchemical: string; - "area-damage": string; - auditory: string; - bleed: string; - blinded: string; - bludgeoning: string; - clumsy: string; - cold: string; - confused: string; - controlled: string; - "critical-hits": string; - curse: string; - custom: string; - dazzled: string; - deafened: string; - "death-effects": string; - detection: string; - disease: string; - doomed: string; - drained: string; - earth: string; - electricity: string; - emotion: string; - energy: string; - enfeebled: string; - fascinated: string; - fatigued: string; - "fear-effects": string; - fire: string; - fleeing: string; - force: string; - "fortune-effects": string; - frightened: string; - grabbed: string; - healing: string; - illusion: string; - immobilized: string; - inhaled: string; - light: string; - magic: string; - mental: string; - metal: string; - "misfortune-effects": string; - "non-magical": string; - "nonlethal-attacks": string; - "object-immunities": string; - "off-guard": string; - olfactory: string; - paralyzed: string; - "persistent-damage": string; - petrified: string; - physical: string; - piercing: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - precision: string; - prone: string; - radiation: string; - restrained: string; - "salt-water": string; - scrying: string; - sickened: string; - slashing: string; - sleep: string; - slowed: string; - sonic: string; - "spell-deflection": string; - spirit: string; - stunned: string; - stupefied: string; - "swarm-attacks": string; - "swarm-mind": string; - trip: string; - "unarmed-attacks": string; - unconscious: string; - visual: string; - vitality: string; - void: string; - water: string; - wood: string; - wounded: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; -}; -declare const weaknessTypes: { - acid: string; - air: string; - alchemical: string; - "all-damage": string; - "area-damage": string; - "arrow-vulnerability": string; - "axe-vulnerability": string; - bleed: string; - bludgeoning: string; - cold: string; - "critical-hits": string; - custom: string; - earth: string; - electricity: string; - emotion: string; - energy: string; - fire: string; - force: string; - "ghost-touch": string; - glass: string; - light: string; - magical: string; - mental: string; - metal: string; - mythic: string; - "non-magical": string; - "nonlethal-attacks": string; - "persistent-damage": string; - physical: string; - piercing: string; - plant: string; - poison: string; - precision: string; - radiation: string; - salt: string; - "salt-water": string; - slashing: string; - sonic: string; - spells: string; - spirit: string; - "splash-damage": string; - "unarmed-attacks": string; - "vampire-weaknesses": string; - vitality: string; - void: string; - vorpal: string; - "vorpal-fear": string; - "vulnerable-to-sunlight": string; - water: string; - weapons: string; - "weapons-shedding-bright-light": string; - wood: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; -}; -declare const resistanceTypes: { - acid: string; - air: string; - alchemical: string; - "all-damage": string; - "area-damage": string; - axes: string; - bleed: string; - bludgeoning: string; - cold: string; - "critical-hits": string; - custom: string; - "damage-from-spells": string; - earth: string; - electricity: string; - energy: string; - fire: string; - force: string; - "ghost-touch": string; - light: string; - magical: string; - mental: string; - metal: string; - mythic: string; - "non-magical": string; - nonlethal: string; - "nonlethal-attacks": string; - "persistent-damage": string; - physical: string; - piercing: string; - plant: string; - poison: string; - precision: string; - "protean-anatomy": string; - radiation: string; - salt: string; - "salt-water": string; - slashing: string; - sonic: string; - spells: string; - spirit: string; - "unarmed-attacks": string; - vitality: string; - void: string; - vorpal: string; - "vorpal-adamantine": string; - water: string; - weapons: string; - "weapons-shedding-bright-light": string; - wood: string; - arcane: string; - divine: string; - occult: string; - primal: string; - holy: string; - unholy: string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; -}; -export { immunityTypes, resistanceTypes, weaknessTypes }; diff --git a/types/src/scripts/config/traits.d.ts b/types/src/scripts/config/traits.d.ts deleted file mode 100644 index 7d3f2271e..000000000 --- a/types/src/scripts/config/traits.d.ts +++ /dev/null @@ -1,3383 +0,0 @@ -import { OtherArmorTag } from "@item/armor/types.ts"; -import { BackgroundTrait } from "@item/background/types.ts"; -import { ClassTrait } from "@item/class/types.ts"; -import { OtherConsumableTag } from "@item/consumable/types.ts"; -import { PreciousMaterialType } from "@item/physical/types.ts"; -import { MagicTradition } from "@item/spell/types.ts"; -import { OtherWeaponTag } from "@item/weapon/types.ts"; - -declare const ancestryTraits: { - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - reflection: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; -}; -declare const elementTraits: { - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; -}; -type ElementTrait = keyof typeof elementTraits; -declare const energyDamageTypes: { - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; -}; -declare const magicTraditions: Record; -declare const creatureTraits: { - aberration: string; - aeon: string; - aesir: string; - agathion: string; - alchemical: string; - amphibious: string; - angel: string; - animal: string; - anugobu: string; - aquatic: string; - archon: string; - astral: string; - asura: string; - azata: string; - beast: string; - boggard: string; - bugbear: string; - caligni: string; - celestial: string; - centaur: string; - "charau-ka": string; - clockwork: string; - construct: string; - couatl: string; - daemon: string; - darvakka: string; - demon: string; - dero: string; - devil: string; - dinosaur: string; - div: string; - dragon: string; - dream: string; - drow: string; - duergar: string; - eidolon: string; - elemental: string; - ethereal: string; - experiment: string; - fey: string; - fiend: string; - formian: string; - fungus: string; - genie: string; - ghoran: string; - ghost: string; - ghoul: string; - ghul: string; - giant: string; - golem: string; - graveknight: string; - gremlin: string; - grioth: string; - hag: string; - hantu: string; - herald: string; - hryngar: string; - humanoid: string; - ikeshti: string; - illusion: string; - incorporeal: string; - inevitable: string; - kami: string; - kaiju: string; - kovintus: string; - light: string; - lilu: string; - locathah: string; - mental: string; - merfolk: string; - mindless: string; - minion: string; - monitor: string; - morlock: string; - mortic: string; - mummy: string; - munavri: string; - mutant: string; - mythic: string; - nindoru: string; - nymph: string; - oni: string; - ooze: string; - oread: string; - paaridar: string; - palinthanos: string; - "persona-flirt": string; - "persona-guardian": string; - "persona-leader": string; - "persona-scholar": string; - "persona-scoundrel": string; - "persona-underdog": string; - "persona-warrior": string; - "persona-wildcard": string; - petitioner: string; - phantom: string; - plant: string; - poison: string; - protean: string; - psychopomp: string; - qlippoth: string; - rakshasa: string; - reflection: string; - sahkil: string; - "sea-devil": string; - sedacthy: string; - serpentfolk: string; - seugathi: string; - shabti: string; - shadow: string; - shobhad: string; - siktempora: string; - skelm: string; - skulk: string; - soulbound: string; - spirit: string; - sporeborn: string; - spriggan: string; - stheno: string; - summoned: string; - swarm: string; - tane: string; - tanggal: string; - time: string; - titan: string; - troll: string; - troop: string; - undead: string; - urdefhan: string; - vampire: string; - vanara: string; - velstrac: string; - wayang: string; - werecreature: string; - wight: string; - "wild-hunt": string; - wraith: string; - wraithvine: string; - wyrwood: string; - xulgath: string; - zombie: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - catfolk: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vishkanya: string; - yaksha: string; - yaoguai: string; -}; -declare const backgroundTraits: Record; -declare const classTraits: Record; -declare const damageTraits: { - light: string; - magical: string; - mental: string; - nonlethal: string; - plant: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - holy: string; - unholy: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; -}; -declare const spellTraits: { - amp: string; - attack: string; - auditory: string; - aura: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - emotion: string; - exploration: string; - extradimensional: string; - fear: string; - focus: string; - fortune: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - manipulate: string; - misfortune: string; - morph: string; - move: string; - mythic: string; - nonlethal: string; - olfactory: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - stance: string; - structure: string; - subtle: string; - summon: string; - summoned: string; - teleportation: string; - trial: string; - "true-name": string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; -}; -declare const weaponTraits: { - adjusted: string; - alchemical: string; - agile: string; - apex: string; - artifact: string; - attached: string; - "attached-to-shield": string; - "attached-to-crossbow-or-firearm": string; - auditory: string; - backstabber: string; - backswing: string; - bomb: string; - brace: string; - brutal: string; - "capacity-2": string; - "capacity-3": string; - "capacity-4": string; - "capacity-5": string; - climbing: string; - clockwork: string; - cobbled: string; - combination: string; - concealable: string; - concussive: string; - consumable: string; - "critical-fusion": string; - cursed: string; - "deadly-d4": string; - "deadly-d6": string; - "deadly-d8": string; - "deadly-d10": string; - "deadly-d12": string; - death: string; - disarm: string; - disease: string; - "double-barrel": string; - emotion: string; - extradimensional: string; - "fatal-aim-d10": string; - "fatal-aim-d12": string; - "fatal-d8": string; - "fatal-d10": string; - "fatal-d12": string; - fear: string; - finesse: string; - forceful: string; - fortune: string; - "free-hand": string; - fungus: string; - grapple: string; - hampering: string; - healing: string; - illusion: string; - infused: string; - inhaled: string; - injection: string; - intelligent: string; - invested: string; - "jousting-d4": string; - "jousting-d6": string; - "jousting-d8": string; - "jousting-d10": string; - kickback: string; - light: string; - magical: string; - mental: string; - modular: string; - monk: string; - mythic: string; - nonlethal: string; - olfactory: string; - parry: string; - plant: string; - poison: string; - propulsive: string; - "ranged-trip": string; - razing: string; - reach: string; - recovery: string; - relic: string; - repeating: string; - resonant: string; - saggorak: string; - "scatter-5": string; - "scatter-10": string; - "scatter-15": string; - "scatter-20": string; - scrying: string; - shadow: string; - shove: string; - spirit: string; - splash: string; - staff: string; - sweep: string; - tearing: string; - tech: string; - teleportation: string; - tethered: string; - thrown: string; - "thrown-10": string; - "thrown-15": string; - "thrown-20": string; - "thrown-30": string; - "thrown-40": string; - "thrown-60": string; - "thrown-80": string; - "thrown-100": string; - "thrown-200": string; - training: string; - trip: string; - twin: string; - "two-hand-d6": string; - "two-hand-d8": string; - "two-hand-d10": string; - "two-hand-d12": string; - unarmed: string; - vehicular: string; - venomous: string; - "versatile-acid": string; - "versatile-b": string; - "versatile-cold": string; - "versatile-electricity": string; - "versatile-fire": string; - "versatile-force": string; - "versatile-mental": string; - "versatile-p": string; - "versatile-poison": string; - "versatile-s": string; - "versatile-sonic": string; - "versatile-spirit": string; - "versatile-vitality": string; - "versatile-void": string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - reflection: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; -}; -declare const preciousMaterials: Record; -declare const otherArmorTags: Record; -declare const otherConsumableTags: Record; -declare const otherWeaponTags: Record; -declare const npcAttackTraits: { - curse: string; - "deadly-2d8": string; - "deadly-3d8": string; - "deadly-4d8": string; - "deadly-2d10": string; - "deadly-3d10": string; - "deadly-4d10": string; - "deadly-2d12": string; - "deadly-3d12": string; - "deadly-4d12": string; - illusion: string; - incorporeal: string; - radiation: string; - "reach-0": string; - "reach-10": string; - "reach-15": string; - "reach-20": string; - "reach-25": string; - "reach-30": string; - "reach-40": string; - "reach-50": string; - "reach-60": string; - "reach-100": string; - "reach-120": string; - "reach-200": string; - "reach-1000": string; - "reload-0": string; - "reload-1": string; - "reload-2": string; - "reload-1-min": string; - sanctified: string; - "range-5": string; - "range-10": string; - "range-15": string; - "range-20": string; - "range-25": string; - "range-30": string; - "range-40": string; - "range-50": string; - "range-60": string; - "range-70": string; - "range-80": string; - "range-90": string; - "range-100": string; - "range-110": string; - "range-120": string; - "range-140": string; - "range-150": string; - "range-160": string; - "range-170": string; - "range-180": string; - "range-190": string; - "range-200": string; - "range-210": string; - "range-220": string; - "range-230": string; - "range-240": string; - "range-250": string; - "range-260": string; - "range-270": string; - "range-280": string; - "range-290": string; - "range-300": string; - "range-310": string; - "range-320": string; - "range-500": string; - "range-increment-5": string; - "range-increment-10": string; - "range-increment-15": string; - "range-increment-20": string; - "range-increment-25": string; - "range-increment-30": string; - "range-increment-35": string; - "range-increment-40": string; - "range-increment-50": string; - "range-increment-60": string; - "range-increment-70": string; - "range-increment-75": string; - "range-increment-80": string; - "range-increment-90": string; - "range-increment-100": string; - "range-increment-110": string; - "range-increment-120": string; - "range-increment-130": string; - "range-increment-140": string; - "range-increment-150": string; - "range-increment-160": string; - "range-increment-170": string; - "range-increment-180": string; - "range-increment-190": string; - "range-increment-200": string; - "range-increment-210": string; - "range-increment-220": string; - "range-increment-230": string; - "range-increment-240": string; - "range-increment-250": string; - "range-increment-260": string; - "range-increment-270": string; - "range-increment-280": string; - "range-increment-290": string; - "range-increment-300": string; - "range-increment-310": string; - "range-increment-320": string; - abysium: string; - adamantine: string; - dawnsilver: string; - djezet: string; - duskwood: string; - inubrix: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - "cold-iron": string; - dragonhide: string; - dreamweb: string; - "grisantian-pelt": string; - "keep-stone": string; - peachwood: string; - sisterstone: string; - "sisterstone-dusk": string; - "sisterstone-scarlet": string; - sloughstone: string; - "sovereign-steel": string; - warpglass: string; - adjusted: string; - alchemical: string; - agile: string; - apex: string; - artifact: string; - attached: string; - "attached-to-shield": string; - "attached-to-crossbow-or-firearm": string; - auditory: string; - backstabber: string; - backswing: string; - bomb: string; - brace: string; - brutal: string; - "capacity-2": string; - "capacity-3": string; - "capacity-4": string; - "capacity-5": string; - climbing: string; - clockwork: string; - cobbled: string; - combination: string; - concealable: string; - concussive: string; - consumable: string; - "critical-fusion": string; - cursed: string; - "deadly-d4": string; - "deadly-d6": string; - "deadly-d8": string; - "deadly-d10": string; - "deadly-d12": string; - death: string; - disarm: string; - disease: string; - "double-barrel": string; - emotion: string; - extradimensional: string; - "fatal-aim-d10": string; - "fatal-aim-d12": string; - "fatal-d8": string; - "fatal-d10": string; - "fatal-d12": string; - fear: string; - finesse: string; - forceful: string; - fortune: string; - "free-hand": string; - fungus: string; - grapple: string; - hampering: string; - healing: string; - infused: string; - inhaled: string; - injection: string; - intelligent: string; - invested: string; - "jousting-d4": string; - "jousting-d6": string; - "jousting-d8": string; - "jousting-d10": string; - kickback: string; - light: string; - magical: string; - mental: string; - modular: string; - monk: string; - mythic: string; - nonlethal: string; - olfactory: string; - parry: string; - plant: string; - poison: string; - propulsive: string; - "ranged-trip": string; - razing: string; - reach: string; - recovery: string; - relic: string; - repeating: string; - resonant: string; - saggorak: string; - "scatter-5": string; - "scatter-10": string; - "scatter-15": string; - "scatter-20": string; - scrying: string; - shadow: string; - shove: string; - spirit: string; - splash: string; - staff: string; - sweep: string; - tearing: string; - tech: string; - teleportation: string; - tethered: string; - thrown: string; - "thrown-10": string; - "thrown-15": string; - "thrown-20": string; - "thrown-30": string; - "thrown-40": string; - "thrown-60": string; - "thrown-80": string; - "thrown-100": string; - "thrown-200": string; - training: string; - trip: string; - twin: string; - "two-hand-d6": string; - "two-hand-d8": string; - "two-hand-d10": string; - "two-hand-d12": string; - unarmed: string; - vehicular: string; - venomous: string; - "versatile-acid": string; - "versatile-b": string; - "versatile-cold": string; - "versatile-electricity": string; - "versatile-fire": string; - "versatile-force": string; - "versatile-mental": string; - "versatile-p": string; - "versatile-poison": string; - "versatile-s": string; - "versatile-sonic": string; - "versatile-spirit": string; - "versatile-vitality": string; - "versatile-void": string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - reflection: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; -}; -declare const featTraits: { - additive: string; - additive1: string; - additive2: string; - additive3: string; - aftermath: string; - alchemical: string; - apparition: string; - archetype: string; - artifact: string; - auditory: string; - aura: string; - bravado: string; - calling: string; - circus: string; - class: string; - coagulant: string; - composite: string; - concentrate: string; - dedication: string; - destiny: string; - detection: string; - deviant: string; - downtime: string; - emotion: string; - evolution: string; - esoterica: string; - exploration: string; - fear: string; - finisher: string; - flourish: string; - fortune: string; - general: string; - ikon: string; - impulse: string; - infusion: string; - injury: string; - lineage: string; - manipulate: string; - mindshift: string; - modification: string; - move: string; - multiclass: string; - oath: string; - olfactory: string; - overflow: string; - "pervasive-magic": string; - poison: string; - press: string; - rage: string; - reckless: string; - reincarnated: string; - reflection: string; - secret: string; - skill: string; - social: string; - spellshot: string; - stamina: string; - stance: string; - talisman: string; - tandem: string; - time: string; - transcendence: string; - "true-name": string; - unstable: string; - vigilante: string; - virulent: string; - vitality: string; - void: string; - wandering: string; - amp: string; - attack: string; - beast: string; - cantrip: string; - composition: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - disease: string; - dream: string; - eidolon: string; - extradimensional: string; - focus: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - misfortune: string; - morph: string; - mythic: string; - nonlethal: string; - plant: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - structure: string; - subtle: string; - summon: string; - summoned: string; - teleportation: string; - trial: string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; -}; -declare const consumableTraits: { - additive: string; - additive1: string; - additive2: string; - additive3: string; - alchemical: string; - attack: string; - auditory: string; - aura: string; - "bottled-breath": string; - catalyst: string; - coagulant: string; - clockwork: string; - consumable: string; - contact: string; - curse: string; - cursed: string; - drug: string; - elixir: string; - emotion: string; - expandable: string; - fear: string; - fey: string; - fortune: string; - fulu: string; - gadget: string; - healing: string; - incapacitation: string; - infused: string; - ingested: string; - inhaled: string; - injury: string; - kobold: string; - light: string; - linguistic: string; - lozenge: string; - magical: string; - mechanical: string; - misfortune: string; - missive: string; - morph: string; - mutagen: string; - oil: string; - olfactory: string; - poison: string; - polymorph: string; - possession: string; - potion: string; - precious: string; - processed: string; - scroll: string; - scrying: string; - spirit: string; - sleep: string; - snare: string; - spellgun: string; - splash: string; - structure: string; - talisman: string; - tea: string; - teleportation: string; - trap: string; - virulent: string; - visual: string; - wand: string; - amp: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - exploration: string; - extradimensional: string; - focus: string; - fungus: string; - hex: string; - illusion: string; - incarnate: string; - incorporeal: string; - litany: string; - manipulate: string; - move: string; - mythic: string; - nonlethal: string; - plant: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - shadow: string; - spellshape: string; - stance: string; - subtle: string; - summon: string; - summoned: string; - trial: string; - "true-name": string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - mental: string; - radiation: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; -}; -declare const actionTraits: { - "certain-kill": string; - summon: string; - agile: string; - propulsive: string; - backswing: string; - forceful: string; - reach: string; - sweep: string; - thrown: string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - amp: string; - attack: string; - auditory: string; - aura: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - emotion: string; - exploration: string; - extradimensional: string; - fear: string; - focus: string; - fortune: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - manipulate: string; - misfortune: string; - morph: string; - move: string; - mythic: string; - nonlethal: string; - olfactory: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - stance: string; - structure: string; - subtle: string; - summoned: string; - teleportation: string; - trial: string; - "true-name": string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - additive: string; - additive1: string; - additive2: string; - additive3: string; - alchemical: string; - "bottled-breath": string; - catalyst: string; - coagulant: string; - clockwork: string; - consumable: string; - contact: string; - cursed: string; - drug: string; - elixir: string; - expandable: string; - fey: string; - fulu: string; - gadget: string; - infused: string; - ingested: string; - injury: string; - kobold: string; - lozenge: string; - mechanical: string; - missive: string; - mutagen: string; - oil: string; - potion: string; - precious: string; - processed: string; - scroll: string; - snare: string; - spellgun: string; - splash: string; - talisman: string; - tea: string; - trap: string; - virulent: string; - wand: string; - aftermath: string; - apparition: string; - archetype: string; - artifact: string; - bravado: string; - calling: string; - circus: string; - class: string; - composite: string; - dedication: string; - destiny: string; - deviant: string; - downtime: string; - evolution: string; - esoterica: string; - finisher: string; - flourish: string; - general: string; - ikon: string; - impulse: string; - infusion: string; - lineage: string; - mindshift: string; - modification: string; - multiclass: string; - oath: string; - overflow: string; - "pervasive-magic": string; - press: string; - reckless: string; - reincarnated: string; - reflection: string; - secret: string; - skill: string; - social: string; - spellshot: string; - stamina: string; - tandem: string; - time: string; - transcendence: string; - unstable: string; - vigilante: string; - wandering: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; -}; -declare const effectTraits: Omit<{ - "certain-kill": string; - summon: string; - agile: string; - propulsive: string; - backswing: string; - forceful: string; - reach: string; - sweep: string; - thrown: string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - amp: string; - attack: string; - auditory: string; - aura: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - emotion: string; - exploration: string; - extradimensional: string; - fear: string; - focus: string; - fortune: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - manipulate: string; - misfortune: string; - morph: string; - move: string; - mythic: string; - nonlethal: string; - olfactory: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - stance: string; - structure: string; - subtle: string; - summoned: string; - teleportation: string; - trial: string; - "true-name": string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - additive: string; - additive1: string; - additive2: string; - additive3: string; - alchemical: string; - "bottled-breath": string; - catalyst: string; - coagulant: string; - clockwork: string; - consumable: string; - contact: string; - cursed: string; - drug: string; - elixir: string; - expandable: string; - fey: string; - fulu: string; - gadget: string; - infused: string; - ingested: string; - injury: string; - kobold: string; - lozenge: string; - mechanical: string; - missive: string; - mutagen: string; - oil: string; - potion: string; - precious: string; - processed: string; - scroll: string; - snare: string; - spellgun: string; - splash: string; - talisman: string; - tea: string; - trap: string; - virulent: string; - wand: string; - aftermath: string; - apparition: string; - archetype: string; - artifact: string; - bravado: string; - calling: string; - circus: string; - class: string; - composite: string; - dedication: string; - destiny: string; - deviant: string; - downtime: string; - evolution: string; - esoterica: string; - finisher: string; - flourish: string; - general: string; - ikon: string; - impulse: string; - infusion: string; - lineage: string; - mindshift: string; - modification: string; - multiclass: string; - oath: string; - overflow: string; - "pervasive-magic": string; - press: string; - reckless: string; - reincarnated: string; - reflection: string; - secret: string; - skill: string; - social: string; - spellshot: string; - stamina: string; - tandem: string; - time: string; - transcendence: string; - unstable: string; - vigilante: string; - wandering: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; -}, "splash" | "alchemist" | "animist" | "barbarian" | "bard" | "champion" | "cleric" | "druid" | "exemplar" | "fighter" | "gunslinger" | "kineticist" | "inventor" | "investigator" | "magus" | "monk" | "oracle" | "psychic" | "ranger" | "rogue" | "sorcerer" | "summoner" | "swashbuckler" | "thaumaturge" | "witch" | "wizard" | "agile" | "propulsive" | "backswing" | "forceful" | "reach" | "sweep" | "thrown" | "volley-20" | "volley-30" | "volley-50" | "volley-60" | "clockwork" | "consumable" | "infused" | "aiuvarin" | "anadi" | "android" | "aphorite" | "ardande" | "athamaru" | "automaton" | "awakened-animal" | "azarketi" | "beastkin" | "bugbear" | "catfolk" | "centaur" | "changeling" | "conrasu" | "dhampir" | "dragonblood" | "dromaar" | "duskwalker" | "dwarf" | "elf" | "fetchling" | "fleshwarp" | "ganzi" | "geniekin" | "ghoran" | "gnoll" | "gnome" | "goblin" | "goloma" | "grippli" | "halfling" | "hobgoblin" | "human" | "hungerseed" | "kashrishi" | "kitsune" | "kobold" | "leshy" | "lizardfolk" | "merfolk" | "minotaur" | "nagaji" | "naari" | "nephilim" | "orc" | "oread" | "poppet" | "ratfolk" | "reflection" | "samsaran" | "sarangay" | "shisk" | "shoony" | "skeleton" | "sprite" | "strix" | "suli" | "surki" | "sylph" | "tanuki" | "talos" | "tengu" | "undine" | "vanara" | "vishkanya" | "wayang" | "yaksha" | "yaoguai" | "additive" | "additive1" | "additive2" | "additive3" | "aftermath" | "amp" | "archetype" | "attack" | "beast" | "bottled-breath" | "cantrip" | "catalyst" | "circus" | "class" | "coagulant" | "composite" | "composition" | "concentrate" | "dedication" | "deviant" | "eidolon" | "elixir" | "esoterica" | "expandable" | "exploration" | "finisher" | "flourish" | "focus" | "fulu" | "gadget" | "general" | "lineage" | "litany" | "lozenge" | "manipulate" | "missive" | "modification" | "multiclass" | "mutagen" | "oath" | "oil" | "overflow" | "pervasive-magic" | "potion" | "precious" | "press" | "processed" | "reckless" | "reincarnated" | "revelation" | "sanctified" | "scroll" | "secret" | "skill" | "snare" | "spellgun" | "structure" | "subtle" | "talisman" | "tandem" | "tea" | "trap" | "unstable" | "vigilante" | "wand">; -declare const hazardTraits: { - alchemical: string; - auditory: string; - consumable: string; - curse: string; - environmental: string; - haunt: string; - inhaled: string; - kaiju: string; - mechanical: string; - poison: string; - polymorph: string; - steam: string; - technological: string; - teleportation: string; - trap: string; - virulent: string; - visual: string; - arcane: string; - divine: string; - occult: string; - primal: string; - light: string; - magical: string; - mental: string; - nonlethal: string; - plant: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - holy: string; - unholy: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aberration: string; - aeon: string; - aesir: string; - agathion: string; - amphibious: string; - angel: string; - animal: string; - anugobu: string; - aquatic: string; - archon: string; - astral: string; - asura: string; - azata: string; - beast: string; - boggard: string; - bugbear: string; - caligni: string; - celestial: string; - centaur: string; - "charau-ka": string; - clockwork: string; - construct: string; - couatl: string; - daemon: string; - darvakka: string; - demon: string; - dero: string; - devil: string; - dinosaur: string; - div: string; - dragon: string; - dream: string; - drow: string; - duergar: string; - eidolon: string; - elemental: string; - ethereal: string; - experiment: string; - fey: string; - fiend: string; - formian: string; - fungus: string; - genie: string; - ghoran: string; - ghost: string; - ghoul: string; - ghul: string; - giant: string; - golem: string; - graveknight: string; - gremlin: string; - grioth: string; - hag: string; - hantu: string; - herald: string; - hryngar: string; - humanoid: string; - ikeshti: string; - illusion: string; - incorporeal: string; - inevitable: string; - kami: string; - kovintus: string; - lilu: string; - locathah: string; - merfolk: string; - mindless: string; - minion: string; - monitor: string; - morlock: string; - mortic: string; - mummy: string; - munavri: string; - mutant: string; - mythic: string; - nindoru: string; - nymph: string; - oni: string; - ooze: string; - oread: string; - paaridar: string; - palinthanos: string; - "persona-flirt": string; - "persona-guardian": string; - "persona-leader": string; - "persona-scholar": string; - "persona-scoundrel": string; - "persona-underdog": string; - "persona-warrior": string; - "persona-wildcard": string; - petitioner: string; - phantom: string; - protean: string; - psychopomp: string; - qlippoth: string; - rakshasa: string; - reflection: string; - sahkil: string; - "sea-devil": string; - sedacthy: string; - serpentfolk: string; - seugathi: string; - shabti: string; - shadow: string; - shobhad: string; - siktempora: string; - skelm: string; - skulk: string; - soulbound: string; - sporeborn: string; - spriggan: string; - stheno: string; - summoned: string; - swarm: string; - tane: string; - tanggal: string; - time: string; - titan: string; - troll: string; - troop: string; - undead: string; - urdefhan: string; - vampire: string; - vanara: string; - velstrac: string; - wayang: string; - werecreature: string; - wight: string; - "wild-hunt": string; - wraith: string; - wraithvine: string; - wyrwood: string; - xulgath: string; - zombie: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - catfolk: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vishkanya: string; - yaksha: string; - yaoguai: string; -}; -declare const vehicleTraits: { - artifact: string; - clockwork: string; - magical: string; - teleportation: string; -}; -declare const equipmentTraits: { - additive: string; - additive0: string; - additive1: string; - adjusted: string; - adjustment: string; - alchemical: string; - apex: string; - artifact: string; - auditory: string; - aura: string; - barding: string; - censer: string; - clockwork: string; - coagulant: string; - coda: string; - companion: string; - contract: string; - consecration: string; - cursed: string; - darkness: string; - death: string; - detection: string; - eidolon: string; - emotion: string; - expandable: string; - extradimensional: string; - fear: string; - figurehead: string; - focused: string; - fortune: string; - fulu: string; - gadget: string; - graft: string; - grimoire: string; - "harrow-court": string; - healing: string; - illusion: string; - incapacitation: string; - incorporeal: string; - infused: string; - intelligent: string; - invested: string; - light: string; - magical: string; - mechanical: string; - mental: string; - misfortune: string; - morph: string; - mounted: string; - mythic: string; - nonlethal: string; - plant: string; - poison: string; - polymorph: string; - portable: string; - precious: string; - prediction: string; - relic: string; - revelation: string; - saggorak: string; - scrying: string; - shadow: string; - sleep: string; - spellgun: string; - spellheart: string; - spirit: string; - staff: string; - steam: string; - structure: string; - tattoo: string; - teleportation: string; - visual: string; - wand: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - vitality: string; - void: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - kobold: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - reflection: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; -}; -declare const shieldTraits: { - apex: string; - "deflecting-bludgeoning": string; - "deflecting-physical-ranged": string; - "deflecting-piercing": string; - "deflecting-slashing": string; - foldaway: string; - harnessed: string; - "hefty-2": string; - inscribed: string; - "integrated-1d6-b": string; - "integrated-1d6-p": string; - "integrated-1d6-s": string; - "integrated-1d6-s-versatile-p": string; - invested: string; - "launching-dart": string; - magical: string; - relic: string; - "shield-throw-20": string; - "shield-throw-30": string; - arcane: string; - divine: string; - occult: string; - primal: string; - light: string; - mental: string; - nonlethal: string; - plant: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - holy: string; - unholy: string; - acid: string; - cold: string; - electricity: string; - fire: string; - force: string; - sonic: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; -}; -declare const armorTraits: { - adjusted: string; - alchemical: string; - apex: string; - aquadynamic: string; - artifact: string; - auditory: string; - aura: string; - barding: string; - bulwark: string; - clockwork: string; - comfort: string; - companion: string; - cursed: string; - "entrench-melee": string; - "entrench-ranged": string; - extradimensional: string; - focused: string; - force: string; - flexible: string; - healing: string; - hindering: string; - illusion: string; - inscribed: string; - intelligent: string; - invested: string; - laminar: string; - light: string; - magical: string; - mythic: string; - noisy: string; - plant: string; - ponderous: string; - relic: string; - arcane: string; - divine: string; - occult: string; - primal: string; - mental: string; - nonlethal: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - holy: string; - unholy: string; - acid: string; - cold: string; - electricity: string; - fire: string; - sonic: string; - air: string; - earth: string; - metal: string; - water: string; - wood: string; -}; -declare const kingmakerTraits: { - army: string; - cavalry: string; - civic: string; - commerce: string; - infantry: string; - kingdom: string; - leadership: string; - maneuver: string; - morale: string; - region: string; - siege: string; - skirmisher: string; - upkeep: string; - "certain-kill": string; - summon: string; - agile: string; - propulsive: string; - backswing: string; - forceful: string; - reach: string; - sweep: string; - thrown: string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - amp: string; - attack: string; - auditory: string; - aura: string; - beast: string; - cantrip: string; - composition: string; - concentrate: string; - consecration: string; - contingency: string; - curse: string; - cursebound: string; - darkness: string; - death: string; - detection: string; - disease: string; - dream: string; - eidolon: string; - emotion: string; - exploration: string; - extradimensional: string; - fear: string; - focus: string; - fortune: string; - fungus: string; - healing: string; - hex: string; - illusion: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - inhaled: string; - light: string; - linguistic: string; - litany: string; - manipulate: string; - misfortune: string; - morph: string; - move: string; - mythic: string; - nonlethal: string; - olfactory: string; - plant: string; - poison: string; - polymorph: string; - possession: string; - prediction: string; - psyche: string; - rage: string; - revelation: string; - sanctified: string; - scrying: string; - shadow: string; - sleep: string; - spellshape: string; - stance: string; - structure: string; - subtle: string; - summoned: string; - teleportation: string; - trial: string; - "true-name": string; - visual: string; - holy: string; - unholy: string; - arcane: string; - divine: string; - occult: string; - primal: string; - air: string; - earth: string; - fire: string; - metal: string; - water: string; - wood: string; - magical: string; - mental: string; - radiation: string; - spirit: string; - vitality: string; - void: string; - acid: string; - cold: string; - electricity: string; - force: string; - sonic: string; - alchemist: string; - animist: string; - barbarian: string; - bard: string; - champion: string; - cleric: string; - druid: string; - exemplar: string; - fighter: string; - gunslinger: string; - kineticist: string; - inventor: string; - investigator: string; - magus: string; - monk: string; - oracle: string; - psychic: string; - ranger: string; - rogue: string; - sorcerer: string; - summoner: string; - swashbuckler: string; - thaumaturge: string; - witch: string; - wizard: string; - additive: string; - additive1: string; - additive2: string; - additive3: string; - alchemical: string; - "bottled-breath": string; - catalyst: string; - coagulant: string; - clockwork: string; - consumable: string; - contact: string; - cursed: string; - drug: string; - elixir: string; - expandable: string; - fey: string; - fulu: string; - gadget: string; - infused: string; - ingested: string; - injury: string; - kobold: string; - lozenge: string; - mechanical: string; - missive: string; - mutagen: string; - oil: string; - potion: string; - precious: string; - processed: string; - scroll: string; - snare: string; - spellgun: string; - splash: string; - talisman: string; - tea: string; - trap: string; - virulent: string; - wand: string; - aftermath: string; - apparition: string; - archetype: string; - artifact: string; - bravado: string; - calling: string; - circus: string; - class: string; - composite: string; - dedication: string; - destiny: string; - deviant: string; - downtime: string; - evolution: string; - esoterica: string; - finisher: string; - flourish: string; - general: string; - ikon: string; - impulse: string; - infusion: string; - lineage: string; - mindshift: string; - modification: string; - multiclass: string; - oath: string; - overflow: string; - "pervasive-magic": string; - press: string; - reckless: string; - reincarnated: string; - reflection: string; - secret: string; - skill: string; - social: string; - spellshot: string; - stamina: string; - tandem: string; - time: string; - transcendence: string; - unstable: string; - vigilante: string; - wandering: string; - aiuvarin: string; - anadi: string; - android: string; - aphorite: string; - ardande: string; - athamaru: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - beastkin: string; - bugbear: string; - catfolk: string; - centaur: string; - changeling: string; - conrasu: string; - dhampir: string; - dragonblood: string; - dromaar: string; - duskwalker: string; - dwarf: string; - elf: string; - fetchling: string; - fleshwarp: string; - ganzi: string; - geniekin: string; - ghoran: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grippli: string; - halfling: string; - hobgoblin: string; - human: string; - hungerseed: string; - kashrishi: string; - kitsune: string; - leshy: string; - lizardfolk: string; - merfolk: string; - minotaur: string; - nagaji: string; - naari: string; - nephilim: string; - orc: string; - oread: string; - poppet: string; - ratfolk: string; - samsaran: string; - sarangay: string; - shisk: string; - shoony: string; - skeleton: string; - sprite: string; - strix: string; - suli: string; - surki: string; - sylph: string; - tanuki: string; - talos: string; - tengu: string; - undine: string; - vanara: string; - vishkanya: string; - wayang: string; - yaksha: string; - yaoguai: string; -}; -declare const traitDescriptions: { - abysium: string; - adamantine: string; - "cold-iron": string; - duskwood: string; - djezet: string; - dragonhide: string; - dreamweb: string; - "grisantian-pelt": string; - inubrix: string; - dawnsilver: string; - noqual: string; - orichalcum: string; - siccatite: string; - silver: string; - sisterstone: string; - "sisterstone-dusk": string; - "sisterstone-scarlet": string; - sloughstone: string; - "sovereign-steel": string; - warpglass: string; - "ranged-trip": string; - rare: string; - ratfolk: string; - razing: string; - reach: string; - "reach-0": string; - "reach-10": string; - "reach-100": string; - "reach-120": string; - "reach-1000": string; - "reach-15": string; - "reach-20": string; - "reach-200": string; - "reach-25": string; - "reach-30": string; - "reach-40": string; - "reach-50": string; - "reach-60": string; - recovery: string; - reincarnated: string; - reflection: string; - relic: string; - reload: string; - "reload-0": string; - "reload-1": string; - "reload-1-min": string; - "reload-2": string; - repeating: string; - resonant: string; - revelation: string; - rogue: string; - saggorak: string; - sanctified: string; - "scatter-10": string; - "scatter-15": string; - "scatter-20": string; - "scatter-5": string; - scroll: string; - scrying: string; - secret: string; - sedacthy: string; - serpentfolk: string; - shadow: string; - "shield-throw-20": string; - "shield-throw-30": string; - shisk: string; - shoony: string; - shove: string; - skeleton: string; - skill: string; - sleep: string; - snare: string; - social: string; - sonic: string; - sorcerer: string; - soulbound: string; - spellgun: string; - spellheart: string; - spellshape: string; - spellshot: string; - spirit: string; - splash: string; - "splash-10": string; - sprite: string; - staff: string; - stance: string; - steam: string; - strix: string; - structure: string; - subtle: string; - suli: string; - summon: string; - summoned: string; - summoner: string; - surki: string; - swashbuckler: string; - swarm: string; - sweep: string; - sylph: string; - talisman: string; - talos: string; - tandem: string; - tane: string; - tattoo: string; - tea: string; - tearing: string; - tech: string; - telepathy: string; - teleportation: string; - tengu: string; - tethered: string; - thaumaturge: string; - thrown: string; - "thrown-10": string; - "thrown-100": string; - "thrown-15": string; - "thrown-20": string; - "thrown-200": string; - "thrown-25": string; - "thrown-30": string; - "thrown-40": string; - "thrown-50": string; - "thrown-60": string; - "thrown-80": string; - tiefling: string; - time: string; - training: string; - transcendence: string; - trap: string; - trip: string; - troll: string; - "true-name": string; - twin: string; - "two-hand-d10": string; - "two-hand-d12": string; - "two-hand-d6": string; - "two-hand-d8": string; - unarmed: string; - uncommon: string; - undine: string; - undead: string; - unholy: string; - unique: string; - unstable: string; - vampire: string; - vanara: string; - vishkanya: string; - vehicular: string; - venomous: string; - "versatile-acid": string; - "versatile-b": string; - "versatile-cold": string; - "versatile-electricity": string; - "versatile-fire": string; - "versatile-force": string; - "versatile-p": string; - "versatile-poison": string; - "versatile-s": string; - "versatile-sonic": string; - "versatile-spirit": string; - "versatile-vitality": string; - "versatile-void": string; - virulent: string; - visual: string; - vitality: string; - void: string; - "volley-20": string; - "volley-30": string; - "volley-50": string; - "volley-60": string; - wand: string; - wandering: string; - water: string; - werecreature: string; - wight: string; - witch: string; - wizard: string; - wraith: string; - wood: string; - xulgath: string; - zombie: string; - "range-5": string; - "range-10": string; - "range-15": string; - "range-20": string; - "range-25": string; - "range-30": string; - "range-40": string; - "range-50": string; - "range-60": string; - "range-70": string; - "range-80": string; - "range-90": string; - "range-100": string; - "range-110": string; - "range-120": string; - "range-140": string; - "range-150": string; - "range-160": string; - "range-170": string; - "range-180": string; - "range-190": string; - "range-200": string; - "range-210": string; - "range-220": string; - "range-230": string; - "range-240": string; - "range-250": string; - "range-260": string; - "range-270": string; - "range-280": string; - "range-290": string; - "range-300": string; - "range-310": string; - "range-320": string; - "range-500": string; - "range-increment-5": string; - "range-increment-10": string; - "range-increment-15": string; - "range-increment-20": string; - "range-increment-25": string; - "range-increment-30": string; - "range-increment-35": string; - "range-increment-40": string; - "range-increment-50": string; - "range-increment-60": string; - "range-increment-70": string; - "range-increment-75": string; - "range-increment-80": string; - "range-increment-90": string; - "range-increment-100": string; - "range-increment-110": string; - "range-increment-120": string; - "range-increment-130": string; - "range-increment-140": string; - "range-increment-150": string; - "range-increment-160": string; - "range-increment-170": string; - "range-increment-180": string; - "range-increment-190": string; - "range-increment-200": string; - "range-increment-210": string; - "range-increment-220": string; - "range-increment-230": string; - "range-increment-240": string; - "range-increment-250": string; - "range-increment-260": string; - "range-increment-270": string; - "range-increment-280": string; - "range-increment-290": string; - "range-increment-300": string; - "range-increment-310": string; - "range-increment-320": string; - aasimar: string; - aberration: string; - abjuration: string; - acid: string; - additive: string; - additive0: string; - additive1: string; - additive2: string; - additive3: string; - adjusted: string; - adjustment: string; - aeon: string; - aesir: string; - aftermath: string; - agathion: string; - agile: string; - air: string; - aiuvarin: string; - alchemical: string; - alchemist: string; - amphibious: string; - anadi: string; - android: string; - angel: string; - animal: string; - animist: string; - apex: string; - aphorite: string; - apparition: string; - aquadynamic: string; - aquatic: string; - arcane: string; - archetype: string; - archon: string; - ardande: string; - astral: string; - artifact: string; - athamaru: string; - attached: string; - "attached-to-crossbow-or-firearm": string; - "attached-to-shield": string; - attack: string; - auditory: string; - aura: string; - automaton: string; - "awakened-animal": string; - azarketi: string; - azata: string; - backstabber: string; - backswing: string; - barbarian: string; - bard: string; - beast: string; - beastkin: string; - boggard: string; - bomb: string; - "bottled-breath": string; - brace: string; - brutal: string; - bugbear: string; - bulwark: string; - caligni: string; - calling: string; - cantrip: string; - "capacity-2": string; - "capacity-3": string; - "capacity-4": string; - "capacity-5": string; - catalyst: string; - celestial: string; - catfolk: string; - censer: string; - centaur: string; - "certain-kill": string; - champion: string; - changeling: string; - class: string; - cleric: string; - climbing: string; - clockwork: string; - coatl: string; - cobbled: string; - coagulant: string; - coda: string; - cold: string; - combination: string; - comfort: string; - common: string; - companion: string; - complex: string; - composite: string; - composition: string; - concealable: string; - concentrate: string; - concussive: string; - conrasu: string; - consecration: string; - construct: string; - consumable: string; - contact: string; - contingency: string; - contract: string; - "critical-fusion": string; - curse: string; - cursebound: string; - cursed: string; - daemon: string; - darkness: string; - darvakka: string; - "deadly-2d10": string; - "deadly-2d12": string; - "deadly-2d8": string; - "deadly-3d10": string; - "deadly-3d12": string; - "deadly-3d8": string; - "deadly-4d10": string; - "deadly-4d12": string; - "deadly-4d8": string; - "deadly-d10": string; - "deadly-d12": string; - "deadly-d6": string; - "deadly-d8": string; - "deadly-d4": string; - death: string; - "deflecting-bludgeoning": string; - "deflecting-physical-ranged": string; - "deflecting-slashing": string; - dedication: string; - demon: string; - dero: string; - destiny: string; - detection: string; - deviant: string; - devil: string; - dhampir: string; - dinosaur: string; - disarm: string; - disease: string; - divination: string; - divine: string; - "double-barrel": string; - downtime: string; - dragon: string; - dragonblood: string; - dromaar: string; - drug: string; - druid: string; - duskwalker: string; - dwarf: string; - earth: string; - eidolon: string; - electricity: string; - elemental: string; - elf: string; - elixir: string; - emotion: string; - "entrench-melee": string; - "entrench-ranged": string; - environment: string; - esoterica: string; - ethereal: string; - evolution: string; - exemplar: string; - expandable: string; - experiment: string; - exploration: string; - extradimensional: string; - "fatal-aim-d10": string; - "fatal-aim-d12": string; - "fatal-d10": string; - "fatal-d12": string; - "fatal-d8": string; - fear: string; - fetchling: string; - fey: string; - fiend: string; - fighter: string; - figurehead: string; - finesse: string; - finisher: string; - fire: string; - fleshwarp: string; - flexible: string; - flourish: string; - focus: string; - focused: string; - foldaway: string; - force: string; - forceful: string; - fortune: string; - "free-hand": string; - fulu: string; - fungus: string; - gadget: string; - ganzi: string; - graft: string; - general: string; - genie: string; - geniekin: string; - ghoran: string; - ghost: string; - ghoul: string; - ghul: string; - giant: string; - gnoll: string; - gnome: string; - goblin: string; - goloma: string; - grapple: string; - gremlin: string; - grimoire: string; - grippli: string; - gunslinger: string; - hag: string; - halfling: string; - "jousting-d4": string; - "jousting-d6": string; - "jousting-d8": string; - "jousting-d10": string; - hampering: string; - harnessed: string; - haunt: string; - healing: string; - "hefty-14": string; - hex: string; - hindering: string; - hobgoblin: string; - holy: string; - hryngar: string; - human: string; - humanoid: string; - naari: string; - ikon: string; - illusion: string; - impulse: string; - incapacitation: string; - incarnate: string; - incorporeal: string; - infused: string; - infusion: string; - ingested: string; - inhaled: string; - injection: string; - injury: string; - inscribed: string; - "integrated-1d6-b": string; - "integrated-1d6-p": string; - "integrated-1d6-s": string; - "integrated-1d6-s-versatile-p": string; - intelligent: string; - inventor: string; - invested: string; - investigator: string; - kashrishi: string; - "keep-stone": string; - kholo: string; - kickback: string; - kineticist: string; - kitsune: string; - kobold: string; - laminar: string; - "launching-dart": string; - leshy: string; - light: string; - linguistic: string; - litany: string; - lizardfolk: string; - lozenge: string; - magical: string; - magus: string; - manipulate: string; - mechanical: string; - mental: string; - merfolk: string; - metal: string; - mindless: string; - mindshift: string; - minion: string; - minotaur: string; - misfortune: string; - missive: string; - modification: string; - modular: string; - monitor: string; - monk: string; - morph: string; - mounted: string; - move: string; - multiclass: string; - mummy: string; - mutagen: string; - mutant: string; - mythic: string; - nagaji: string; - nephilim: string; - nindoru: string; - noisy: string; - nonlethal: string; - nymph: string; - oath: string; - occult: string; - oil: string; - olfactory: string; - oni: string; - ooze: string; - oracle: string; - orc: string; - oread: string; - overflow: string; - palinthanos: string; - parry: string; - peachwood: string; - "persona-flirt": string; - "persona-guardian": string; - "persona-leader": string; - "persona-scholar": string; - "persona-scoundrel": string; - "persona-underdog": string; - "persona-warrior": string; - "persona-wildcard": string; - phantom: string; - plant: string; - poison: string; - polymorph: string; - ponderous: string; - poppet: string; - portable: string; - possession: string; - potion: string; - precious: string; - prediction: string; - processed: string; - press: string; - primal: string; - propulsive: string; - protean: string; - psyche: string; - psychic: string; - psychopomp: string; - qlippoth: string; - radiation: string; - rage: string; - akshasa: string; - ranger: string; - cavalry: string; - infantry: string; - siege: string; - skirmisher: string; -}; -export { actionTraits, ancestryTraits, armorTraits, backgroundTraits, classTraits, consumableTraits, creatureTraits, damageTraits, effectTraits, elementTraits, energyDamageTypes, equipmentTraits, featTraits, hazardTraits, kingmakerTraits, magicTraditions, npcAttackTraits, otherArmorTags, otherConsumableTags, otherWeaponTags, preciousMaterials, shieldTraits, spellTraits, traitDescriptions, vehicleTraits, weaponTraits, type ElementTrait, }; diff --git a/types/src/scripts/dice.d.ts b/types/src/scripts/dice.d.ts deleted file mode 100644 index fec483c73..000000000 --- a/types/src/scripts/dice.d.ts +++ /dev/null @@ -1,54 +0,0 @@ -/// -/// -/// -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -/** - * @category Other - */ -declare class DicePF2e { - _rolled?: boolean; - terms?: string[]; - /** - * A standardized helper function for managing core PF2e "d20 rolls" - * - * Holding SHIFT, ALT, or CTRL when the attack is rolled will "fast-forward". - * This chooses the default options of a normal attack with no bonus, Advantage, or Disadvantage respectively - * - * @param event The triggering event which initiated the roll - * @param parts The dice roll component parts, excluding the initial d20 - * @param actor The Actor making the d20 roll - * @param data Actor or item data against which to parse the roll - * @param template The HTML template used to render the roll dialog - * @param title The dice roll UI window title - * @param speaker The ChatMessage speaker to pass when creating the chat - * @param flavor A callable function for determining the chat message flavor given parts and data - * @param advantage Allow rolling with advantage (and therefore also with disadvantage) - * @param situational Allow for an arbitrary situational bonus field - * @param fastForward Allow fast-forward advantage selection - * @param onClose Callback for actions to take when the dialog form is closed - * @param dialogOptions Modal dialog options - */ - static d20Roll({ event, item, parts, data, template, title, speaker, flavor, onClose, dialogOptions, rollMode, rollType, }: { - event: MouseEvent | JQuery.TriggeredEvent; - item?: ItemPF2e | null; - parts: (string | number)[]; - actor?: ActorPF2e; - data: Record; - template?: string; - title: string; - speaker: foundry.documents.ChatSpeakerData; - flavor?: (parts: (string | number | string[])[], data: Record) => string; - onClose?: (html: HTMLElement | JQuery, parts: (string | number)[], data: Record) => void; - dialogOptions?: Partial; - rollMode?: RollMode; - rollType?: string; - }): Promise; - alter(add: number, multiply: number): this; -} -/** - * Combines dice and flat values together in a condensed expression. Also repairs any + - and "- 3" errors. - * For example, 3d4 + 2d4 + 3d6 + 5 + 2 is combined into 5d4 + 3d6 + 7. - 4 is corrected to -4. - */ -declare function simplifyFormula(formula: string): string; -export { DicePF2e, simplifyFormula }; diff --git a/types/src/scripts/handlebars.d.ts b/types/src/scripts/handlebars.d.ts deleted file mode 100644 index 1f0da60fe..000000000 --- a/types/src/scripts/handlebars.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function registerHandlebarsHelpers(): void; diff --git a/types/src/scripts/hooks/canvas-ready.d.ts b/types/src/scripts/hooks/canvas-ready.d.ts deleted file mode 100644 index d69b89899..000000000 --- a/types/src/scripts/hooks/canvas-ready.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** This runs after game data has been requested and loaded from the servers, so entities exist */ -export declare const CanvasReady: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/close-combat-tracker-config.d.ts b/types/src/scripts/hooks/close-combat-tracker-config.d.ts deleted file mode 100644 index 8c8c5d995..000000000 --- a/types/src/scripts/hooks/close-combat-tracker-config.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** Add a deathIcon setting to the CombatTrackerConfig application */ -export declare const CloseCombatTrackerConfig: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/close-world-clock-settings.d.ts b/types/src/scripts/hooks/close-world-clock-settings.d.ts deleted file mode 100644 index 25d1ac100..000000000 --- a/types/src/scripts/hooks/close-world-clock-settings.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** Refresh scene controls for non-GMs when WorldClockSettings is updated */ -export declare const CloseWorldClockSettings: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/dice-so-nice-ready.d.ts b/types/src/scripts/hooks/dice-so-nice-ready.d.ts deleted file mode 100644 index 1b723c3ed..000000000 --- a/types/src/scripts/hooks/dice-so-nice-ready.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const DiceSoNiceReady: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/dice-so-nice-roll-start.d.ts b/types/src/scripts/hooks/dice-so-nice-roll-start.d.ts deleted file mode 100644 index 4b771c6ce..000000000 --- a/types/src/scripts/hooks/dice-so-nice-roll-start.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** Show DsN! rolls as "ghost rolls" when the breakdown is hidden. */ -export declare const DiceSoNiceRollStart: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/drop-canvas-data.d.ts b/types/src/scripts/hooks/drop-canvas-data.d.ts deleted file mode 100644 index d450093f3..000000000 --- a/types/src/scripts/hooks/drop-canvas-data.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const DropCanvasData: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/get-prosemirror-menu-dropdowns.d.ts b/types/src/scripts/hooks/get-prosemirror-menu-dropdowns.d.ts deleted file mode 100644 index c4bd989cf..000000000 --- a/types/src/scripts/hooks/get-prosemirror-menu-dropdowns.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const GetProseMirrorMenuDropDowns: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/get-scene-control-buttons.d.ts b/types/src/scripts/hooks/get-scene-control-buttons.d.ts deleted file mode 100644 index 82e8bb79e..000000000 --- a/types/src/scripts/hooks/get-scene-control-buttons.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** Insert system tool buttons to the control bar */ -export declare const GetSceneControlButtons: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/i18n-init.d.ts b/types/src/scripts/hooks/i18n-init.d.ts deleted file mode 100644 index eb8594a75..000000000 --- a/types/src/scripts/hooks/i18n-init.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const I18nInit: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/index.d.ts b/types/src/scripts/hooks/index.d.ts deleted file mode 100644 index f5a3b9b16..000000000 --- a/types/src/scripts/hooks/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const HooksPF2e: { - listen(): void; -}; diff --git a/types/src/scripts/hooks/init.d.ts b/types/src/scripts/hooks/init.d.ts deleted file mode 100644 index f53f6884d..000000000 --- a/types/src/scripts/hooks/init.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const Init: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/lighting-refresh.d.ts b/types/src/scripts/hooks/lighting-refresh.d.ts deleted file mode 100644 index 802fbbe47..000000000 --- a/types/src/scripts/hooks/lighting-refresh.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const LightingRefresh: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/load.d.ts b/types/src/scripts/hooks/load.d.ts deleted file mode 100644 index 8ff7ef55f..000000000 --- a/types/src/scripts/hooks/load.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** Not an actual hook listener but rather things to run on initial load */ -export declare const Load: { - listen(): void; -}; diff --git a/types/src/scripts/hooks/migration-complete.d.ts b/types/src/scripts/hooks/migration-complete.d.ts deleted file mode 100644 index 927c89fc3..000000000 --- a/types/src/scripts/hooks/migration-complete.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function listen(): void; diff --git a/types/src/scripts/hooks/ready.d.ts b/types/src/scripts/hooks/ready.d.ts deleted file mode 100644 index ef7006ffc..000000000 --- a/types/src/scripts/hooks/ready.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const Ready: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/render-chat-popout.d.ts b/types/src/scripts/hooks/render-chat-popout.d.ts deleted file mode 100644 index 761b0f0c5..000000000 --- a/types/src/scripts/hooks/render-chat-popout.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const RenderChatPopout: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/render-combat-tracker-config.d.ts b/types/src/scripts/hooks/render-combat-tracker-config.d.ts deleted file mode 100644 index 063711051..000000000 --- a/types/src/scripts/hooks/render-combat-tracker-config.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const RenderCombatTrackerConfig: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/render-dialog.d.ts b/types/src/scripts/hooks/render-dialog.d.ts deleted file mode 100644 index 9bd2017d3..000000000 --- a/types/src/scripts/hooks/render-dialog.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const RenderDialog: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/render-region-legend.d.ts b/types/src/scripts/hooks/render-region-legend.d.ts deleted file mode 100644 index 2e082ff4d..000000000 --- a/types/src/scripts/hooks/render-region-legend.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const RenderRegionLegend: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/render-settings-config.d.ts b/types/src/scripts/hooks/render-settings-config.d.ts deleted file mode 100644 index e1019fa84..000000000 --- a/types/src/scripts/hooks/render-settings-config.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -/** - * Remove certain core grid settings to manage it ourselves. - * Implementation was suggested by https://github.com/foundryvtt/foundryvtt/issues/10683 - */ -export declare const RenderSettingsConfig: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/render-settings.d.ts b/types/src/scripts/hooks/render-settings.d.ts deleted file mode 100644 index 6352d7366..000000000 --- a/types/src/scripts/hooks/render-settings.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** Attach system buttons and other knickknacks to the settings sidebar */ -export declare const RenderSettings: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/render-token-hud.d.ts b/types/src/scripts/hooks/render-token-hud.d.ts deleted file mode 100644 index e9afb1337..000000000 --- a/types/src/scripts/hooks/render-token-hud.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import type { TokenPF2e } from "@module/canvas/index.ts"; -import type { ScenePF2e, TokenDocumentPF2e } from "@scene"; -export declare class RenderTokenHUD { - static listen(): void; - /** Replace the token HUD's status effects button with one for depositing/retrieving party-member tokens. */ - static addClownCarButton(html: HTMLElement, token: TokenPF2e> | null | undefined): void; -} diff --git a/types/src/scripts/hooks/setup.d.ts b/types/src/scripts/hooks/setup.d.ts deleted file mode 100644 index a4d9dc617..000000000 --- a/types/src/scripts/hooks/setup.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** This runs after game data has been requested and loaded from the servers, so entities exist */ -export declare const Setup: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/target-token.d.ts b/types/src/scripts/hooks/target-token.d.ts deleted file mode 100644 index 3fb59ab50..000000000 --- a/types/src/scripts/hooks/target-token.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const TargetToken: { - listen: () => void; -}; diff --git a/types/src/scripts/hooks/update-world-time.d.ts b/types/src/scripts/hooks/update-world-time.d.ts deleted file mode 100644 index cd01814c1..000000000 --- a/types/src/scripts/hooks/update-world-time.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export declare const UpdateWorldTime: { - listen: () => void; -}; diff --git a/types/src/scripts/macros/check-prompt/helpers.d.ts b/types/src/scripts/macros/check-prompt/helpers.d.ts deleted file mode 100644 index 8aa8b24c7..000000000 --- a/types/src/scripts/macros/check-prompt/helpers.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -import type { ActorPF2e } from "@actor"; -declare function loreSkillsFromActors(actors: ActorPF2e | ActorPF2e[]): Record; -declare function getActions(): Promise>; -export { getActions, loreSkillsFromActors }; diff --git a/types/src/scripts/macros/check-prompt/index.d.ts b/types/src/scripts/macros/check-prompt/index.d.ts deleted file mode 100644 index f1f3f11d7..000000000 --- a/types/src/scripts/macros/check-prompt/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { checkPrompt } from "./prompt.ts"; diff --git a/types/src/scripts/macros/check-prompt/prompt.d.ts b/types/src/scripts/macros/check-prompt/prompt.d.ts deleted file mode 100644 index 9fcddcc88..000000000 --- a/types/src/scripts/macros/check-prompt/prompt.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { ActionDefaultOptions } from "@system/action-macros/types.ts"; -export declare function checkPrompt(options?: ActionDefaultOptions): Promise; diff --git a/types/src/scripts/macros/earn-income/calculate.d.ts b/types/src/scripts/macros/earn-income/calculate.d.ts deleted file mode 100644 index 5f8ba3703..000000000 --- a/types/src/scripts/macros/earn-income/calculate.d.ts +++ /dev/null @@ -1,50 +0,0 @@ -import { CoinsPF2e } from "@item/physical/coins.ts"; -import { OneToFour } from "@module/data.ts"; -import { calculateDC } from "@module/dc.ts"; -import { DegreeOfSuccessIndex, RollBrief } from "@system/degree-of-success.ts"; -/** - * Implementation of Earn Income rules on https://2e.aonprd.com/Skills.aspx?ID=2&General=true - */ -type Rewards = Record; -type IncomeForLevel = { - failure: CoinsPF2e; - rewards: Rewards; -}; -declare function getIncomeForLevel(level: number): IncomeForLevel; -interface PerDayEarnIncomeResult { - rewards: CoinsPF2e; - degreeOfSuccess: DegreeOfSuccessIndex; -} -interface EarnIncomeOptions { - useLoreAsExperiencedProfessional: boolean; -} -/** - * @param level number between 0 and 20 - * @param days how many days you want to work for - * @param rollBrief the die result and total modifier of a check roll - * @param proficiency proficiency in the relevant skill - * @param options feats or items that affect earn income - * @param dcOptions if dc by level is active - */ -declare function earnIncome({ level, days, rollBrief, proficiency, options, dc }: EarnIncomeParams): EarnIncomeResult; -interface EarnIncomeParams { - level: number; - days: number; - rollBrief: RollBrief; - proficiency: OneToFour; - options: EarnIncomeOptions; - dc: number; -} -interface EarnIncomeResult { - rewards: { - perDay: CoinsPF2e; - combined: CoinsPF2e; - }; - degreeOfSuccess: DegreeOfSuccessIndex; - daysSpentWorking: number; - level: number; - dc: number; - roll: number; -} -export { calculateDC, earnIncome, getIncomeForLevel }; -export type { EarnIncomeOptions, EarnIncomeResult, PerDayEarnIncomeResult }; diff --git a/types/src/scripts/macros/earn-income/helpers.d.ts b/types/src/scripts/macros/earn-income/helpers.d.ts deleted file mode 100644 index bddf69768..000000000 --- a/types/src/scripts/macros/earn-income/helpers.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -/// -import type { CharacterPF2e } from "@actor"; -import type { Statistic } from "@system/statistic/index.ts"; -declare function runEarnIncome({ actor, event, skill, level, days }: RunEarnIncomeParams): void; -interface RunEarnIncomeParams { - actor: CharacterPF2e; - event: JQuery.TriggeredEvent | undefined; - skill: Statistic; - level: number; - days: number; -} -declare function askSkillPopupTemplate(skills: Statistic[]): string; -export { askSkillPopupTemplate, runEarnIncome }; diff --git a/types/src/scripts/macros/earn-income/index.d.ts b/types/src/scripts/macros/earn-income/index.d.ts deleted file mode 100644 index 8413ed60e..000000000 --- a/types/src/scripts/macros/earn-income/index.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -export * from "./calculate.ts"; -export { showEarnIncomePopup } from "./macro.ts"; diff --git a/types/src/scripts/macros/earn-income/macro.d.ts b/types/src/scripts/macros/earn-income/macro.d.ts deleted file mode 100644 index 39da41164..000000000 --- a/types/src/scripts/macros/earn-income/macro.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import type { ActorPF2e } from "@actor"; -declare function showEarnIncomePopup(actor: ActorPF2e | undefined): void; -export { showEarnIncomePopup }; diff --git a/types/src/scripts/macros/edit-persistent.d.ts b/types/src/scripts/macros/edit-persistent.d.ts deleted file mode 100644 index 3c24eba74..000000000 --- a/types/src/scripts/macros/edit-persistent.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { ActionDefaultOptions } from "@system/action-macros/index.ts"; -export declare function editPersistent(options: ActionDefaultOptions): Promise; diff --git a/types/src/scripts/macros/encouraging-words.d.ts b/types/src/scripts/macros/encouraging-words.d.ts deleted file mode 100644 index 5f93b7542..000000000 --- a/types/src/scripts/macros/encouraging-words.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { ActionDefaultOptions } from "@system/action-macros/index.ts"; -export declare function encouragingWords(options: ActionDefaultOptions): void; diff --git a/types/src/scripts/macros/hotbar.d.ts b/types/src/scripts/macros/hotbar.d.ts deleted file mode 100644 index ac96db76b..000000000 --- a/types/src/scripts/macros/hotbar.d.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { type ConditionPF2e, type EffectPF2e } from "@item"; -import { EffectTrait } from "@item/abstract-effect/types.ts"; -import { ChatMessagePF2e } from "@module/chat-message/document.ts"; - -/** Given an item's id or uuid, retrieves the item and uses it. */ -export declare function rollItemMacro(itemIdOrUuid: string, event?: Event | null): Promise; -export declare function createActionMacro({ actorUUID, actionIndex, elementTrait, slot, }: { - actorUUID?: ActorUUID; - elementTrait?: string; - actionIndex?: number; - slot: number; -}): Promise; -export declare function rollActionMacro({ actorUUID, itemId, elementTrait, slug, type, }: RollActionMacroParams): Promise; -export declare function createToggleEffectMacro(effect: ConditionPF2e | EffectPF2e, slot: number): Promise; -interface RollActionMacroParams { - actorUUID?: ActorUUID; - itemId?: string; - slug?: string; - elementTrait?: EffectTrait; - type?: "blast" | "strike"; -} -export {}; diff --git a/types/src/scripts/macros/index.d.ts b/types/src/scripts/macros/index.d.ts deleted file mode 100644 index 3206523c4..000000000 --- a/types/src/scripts/macros/index.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -export { checkPrompt } from "./check-prompt/index.ts"; -export { showEarnIncomePopup } from "./earn-income/index.ts"; -export { editPersistent } from "./edit-persistent.ts"; -export { encouragingWords } from "./encouraging-words.ts"; -export { rollActionMacro, rollItemMacro } from "./hotbar.ts"; -export { perceptionForSelected } from "./perception-for-selected-tokens.ts"; -export { raiseAShield } from "./raise-a-shield.ts"; -export { restForTheNight } from "./rest-for-the-night.ts"; -export { stealthForSelected } from "./stealth-for-selected-tokens.ts"; -export { steelYourResolve } from "./steel-your-resolve.ts"; -export { takeABreather } from "./take-a-breather.ts"; -export { launchTravelSheet } from "./travel/index.ts"; -export { treatWounds } from "./treat-wounds.ts"; -export { calculateXP, xpFromEncounter } from "./xp/index.ts"; diff --git a/types/src/scripts/macros/perception-for-selected-tokens.d.ts b/types/src/scripts/macros/perception-for-selected-tokens.d.ts deleted file mode 100644 index 565a419f6..000000000 --- a/types/src/scripts/macros/perception-for-selected-tokens.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -/// -export declare function perceptionForSelected(event: JQuery.ClickEvent): Promise; diff --git a/types/src/scripts/macros/raise-a-shield.d.ts b/types/src/scripts/macros/raise-a-shield.d.ts deleted file mode 100644 index ea652945c..000000000 --- a/types/src/scripts/macros/raise-a-shield.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { ActionDefaultOptions } from "@system/action-macros/index.ts"; -/** A macro for the Raise a Shield action */ -export declare function raiseAShield(options: ActionDefaultOptions): Promise; diff --git a/types/src/scripts/macros/rest-for-the-night.d.ts b/types/src/scripts/macros/rest-for-the-night.d.ts deleted file mode 100644 index 8ca51ecae..000000000 --- a/types/src/scripts/macros/rest-for-the-night.d.ts +++ /dev/null @@ -1,8 +0,0 @@ -import { ChatMessagePF2e } from "@module/chat-message/index.ts"; -import { ActionDefaultOptions } from "@system/action-macros/index.ts"; -interface RestForTheNightOptions extends ActionDefaultOptions { - skipDialog?: boolean; -} -/** A macro for the Rest for the Night quasi-action */ -export declare function restForTheNight(options: RestForTheNightOptions): Promise; -export {}; diff --git a/types/src/scripts/macros/stealth-for-selected-tokens.d.ts b/types/src/scripts/macros/stealth-for-selected-tokens.d.ts deleted file mode 100644 index fcfcbf644..000000000 --- a/types/src/scripts/macros/stealth-for-selected-tokens.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -/// -export declare function stealthForSelected(event: JQuery.ClickEvent): Promise; diff --git a/types/src/scripts/macros/steel-your-resolve.d.ts b/types/src/scripts/macros/steel-your-resolve.d.ts deleted file mode 100644 index fd3eb6c43..000000000 --- a/types/src/scripts/macros/steel-your-resolve.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import { ActionDefaultOptions } from "@system/action-macros/index.ts"; -export declare function steelYourResolve(options: ActionDefaultOptions): void; diff --git a/types/src/scripts/macros/take-a-breather.d.ts b/types/src/scripts/macros/take-a-breather.d.ts deleted file mode 100644 index ceece0a39..000000000 --- a/types/src/scripts/macros/take-a-breather.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -declare function takeABreather(): void; -export { takeABreather }; diff --git a/types/src/scripts/macros/travel/index.d.ts b/types/src/scripts/macros/travel/index.d.ts deleted file mode 100644 index 20442be91..000000000 --- a/types/src/scripts/macros/travel/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -export { launchTravelSheet } from "./travel-speed-sheet.ts"; diff --git a/types/src/scripts/macros/travel/travel-speed-sheet.d.ts b/types/src/scripts/macros/travel/travel-speed-sheet.d.ts deleted file mode 100644 index 831963277..000000000 --- a/types/src/scripts/macros/travel/travel-speed-sheet.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -import type { CharacterPF2e } from "@actor/character/document.ts"; -export declare function launchTravelSheet(actors: CharacterPF2e[]): void; diff --git a/types/src/scripts/macros/travel/travel-speed.d.ts b/types/src/scripts/macros/travel/travel-speed.d.ts deleted file mode 100644 index 79def9969..000000000 --- a/types/src/scripts/macros/travel/travel-speed.d.ts +++ /dev/null @@ -1,99 +0,0 @@ -/** Implementation of travel speed https://2e.aonprd.com/Rules.aspx?ID=470 */ -export interface ExplorationOptions { - practicedDefender: boolean; - swiftSneak: boolean; - legendarySneak: boolean; - expeditiousSearch: boolean; - expeditiousSearchLegendary: boolean; -} -/** - * Travel speed can be affected by limiting exploration activities: - * - * Maximum feet speed: - * * Detect Magic https://2e.aonprd.com/Actions.aspx?ID=513 - * * Search https://2e.aonprd.com/Actions.aspx?ID=519 - * Half speed: - * * Search https://2e.aonprd.com/Actions.aspx?ID=519 - * * Cover Tracks https://2e.aonprd.com/Actions.aspx?ID=65 - * * Repeat a Spell https://2e.aonprd.com/Actions.aspx?ID=517 - * * Defend https://2e.aonprd.com/Actions.aspx?ID=512 - * * Scout https://2e.aonprd.com/Actions.aspx?ID=518 - * * Track https://2e.aonprd.com/Actions.aspx?ID=66 - * * Avoid Notice https://2e.aonprd.com/Actions.aspx?ID=511 - * - * Feats that increase speed: - * * Swift Sneak https://2e.aonprd.com/Feats.aspx?ID=850 - * * Legendary Sneak https://2e.aonprd.com/Feats.aspx?ID=807 - * * Expeditious Search https://2e.aonprd.com/Feats.aspx?ID=777 - * * Practiced Defender https://2e.aonprd.com/Feats.aspx?ID=2257 - * - * Note: Hustle https://2e.aonprd.com/Actions.aspx?ID=515 does not - * give you any information in what time frame this works and - * hexploration specifically excludes hustling from overland - * travel https://2e.aonprd.com/Rules.aspx?ID=1275 - */ -export declare enum ExplorationActivities { - NONE = 0, - HALF_SPEED = 1, - AVOID_NOTICE = 2, - DEFEND = 3, - DETECT_MAGIC = 4, - SCOUT = 5, - SEARCH = 6 -} -export declare enum DetectionMode { - NONE = 0, - DETECT_EVERYTHING = 1, - DETECT_BEFORE_WALKING_INTO_IT = 2 -} -interface Fraction { - numerator: number; - denominator: number; -} -export declare function calculateNormalizedCharacterSpeed(defaultSpeedInFeet: number, activity: ExplorationActivities, detectionMode: DetectionMode, explorationOptions: ExplorationOptions): number; -export declare enum LengthUnit { - MILES = 0, - FEET = 1 -} -export interface Distance { - value: number; - unit: LengthUnit; -} -export declare enum TimeUnit { - MINUTE = 0, - HOUR = 1 -} -interface Velocity { - distance: Distance; - time: TimeUnit; -} -declare function speedToVelocity(speedInFeet: number): Velocity; -export declare enum Terrain { - NORMAL = 0, - DIFFICULT = 1, - GREATER_DIFFICULT = 2 -} -export interface TerrainSlowdown { - normal: Fraction; - difficult: Fraction; - greaterDifficult: Fraction; -} -export interface Trip { - terrain: Terrain; - distance: Distance; - terrainSlowdown: TerrainSlowdown; -} -export interface TravelDuration { - weeks: number; - days: number; - hours: number; - minutes: number; -} -declare function calculateTravelDuration({ journey, velocity, hustleDurationInMinutes, hoursPerDay, }: { - journey: Trip[]; - velocity: Velocity; - hustleDurationInMinutes?: number; - hoursPerDay?: number; -}): TravelDuration; -export { calculateTravelDuration, speedToVelocity }; -export type { Fraction, Velocity }; diff --git a/types/src/scripts/macros/treat-wounds.d.ts b/types/src/scripts/macros/treat-wounds.d.ts deleted file mode 100644 index 404ce0018..000000000 --- a/types/src/scripts/macros/treat-wounds.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ChatMessagePF2e } from "@module/chat-message/index.ts"; -import type { ActionDefaultOptions } from "@system/action-macros/index.ts"; -import { type DegreeOfSuccessString } from "@system/degree-of-success.ts"; -declare function treatWounds(options: ActionDefaultOptions): Promise; -declare function treatWoundsMacroCallback({ actor, bonus, message, originalMessageId, outcome, }: { - actor: ActorPF2e; - bonus: number; - message: ChatMessagePF2e; - originalMessageId?: string; - outcome?: DegreeOfSuccessString | null; -}): Promise; -export { treatWounds, treatWoundsMacroCallback }; diff --git a/types/src/scripts/macros/xp/dialog.d.ts b/types/src/scripts/macros/xp/dialog.d.ts deleted file mode 100644 index bf8af7556..000000000 --- a/types/src/scripts/macros/xp/dialog.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -declare function xpFromEncounter(): void; -export { xpFromEncounter }; diff --git a/types/src/scripts/macros/xp/index.d.ts b/types/src/scripts/macros/xp/index.d.ts deleted file mode 100644 index fbae16635..000000000 --- a/types/src/scripts/macros/xp/index.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { DCOptions } from "@module/dc.ts"; -export interface EncounterBudgets { - trivial: number; - low: number; - moderate: number; - severe: number; - extreme: number; -} -interface XPCalculation { - encounterBudgets: EncounterBudgets; - rating: ThreatRating; - ratingXP: number; - xpPerPlayer: number; - totalXP: number; - partySize: number; - partyLevel: number; -} -type ThreatRating = keyof EncounterBudgets; -interface HazardBrief { - level: number; - isComplex: boolean; -} -declare function calculateXP(partyLevel: number, partySize: number, npcLevels: number[], hazards: HazardBrief[], dcOptions: DCOptions): XPCalculation; -export { xpFromEncounter } from "./dialog.ts"; -export { calculateXP }; -export type { ThreatRating, XPCalculation }; diff --git a/types/src/scripts/register-fonts.d.ts b/types/src/scripts/register-fonts.d.ts deleted file mode 100644 index c41280f92..000000000 --- a/types/src/scripts/register-fonts.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function registerFonts(): void; diff --git a/types/src/scripts/register-keybindings.d.ts b/types/src/scripts/register-keybindings.d.ts deleted file mode 100644 index 50036b5d6..000000000 --- a/types/src/scripts/register-keybindings.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function registerKeybindings(): void; diff --git a/types/src/scripts/register-sheets.d.ts b/types/src/scripts/register-sheets.d.ts deleted file mode 100644 index d7ea5e769..000000000 --- a/types/src/scripts/register-sheets.d.ts +++ /dev/null @@ -1 +0,0 @@ -export declare function registerSheets(): void; diff --git a/types/src/scripts/register-templates.d.ts b/types/src/scripts/register-templates.d.ts deleted file mode 100644 index d96401ba4..000000000 --- a/types/src/scripts/register-templates.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -/** Register Handlebars template partials */ -export declare function registerTemplates(): void; diff --git a/types/src/scripts/set-game-pf2e.d.ts b/types/src/scripts/set-game-pf2e.d.ts deleted file mode 100644 index 5961ea93f..000000000 --- a/types/src/scripts/set-game-pf2e.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/** Expose public game.pf2e interface */ -export declare const SetGamePF2e: { - onInit: () => void; - onSetup: () => void; - onReady: () => void; -}; diff --git a/types/src/scripts/socket.d.ts b/types/src/scripts/socket.d.ts deleted file mode 100644 index dc87db49c..000000000 --- a/types/src/scripts/socket.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { ItemTransferData } from "@actor/item-transfer.ts"; -declare function activateSocketListener(): void; -interface TransferCallbackMessage { - request: "itemTransfer"; - data: ItemTransferData; -} -interface RefreshControlsMessage { - request: "refreshSceneControls"; - data: { - layer?: string; - }; -} -interface ShowSheetMessage { - request: "showSheet"; - users: string[]; - document: string; - options?: { - /** Whether to show a campaign sheet instead, and which one */ - campaign?: boolean | "builder"; - tab?: string; - }; -} -type SocketMessage = TransferCallbackMessage | RefreshControlsMessage | ShowSheetMessage | { - request?: never; -}; -export { activateSocketListener, type SocketMessage }; diff --git a/types/src/scripts/store-versions.d.ts b/types/src/scripts/store-versions.d.ts deleted file mode 100644 index 816e89603..000000000 --- a/types/src/scripts/store-versions.d.ts +++ /dev/null @@ -1,2 +0,0 @@ -/** Store the world system and schema versions for the first time */ -export declare function storeInitialWorldVersions(): Promise; diff --git a/types/src/scripts/system/dragstart-handler.d.ts b/types/src/scripts/system/dragstart-handler.d.ts deleted file mode 100644 index 3187c8508..000000000 --- a/types/src/scripts/system/dragstart-handler.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/** - * Extends all drag and drop events on entity links to contain PF2e specific information - * such as condition value and spell level. - */ -export declare function extendDragData(): void; diff --git a/types/src/scripts/system/remigrate.d.ts b/types/src/scripts/system/remigrate.d.ts deleted file mode 100644 index 141db382a..000000000 --- a/types/src/scripts/system/remigrate.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -/** For use in worlds to rerun select migrations */ -export declare function remigrate(versionRange: { - from: number; - to?: number; -}): Promise; diff --git a/types/src/scripts/ui/inline-roll-links.d.ts b/types/src/scripts/ui/inline-roll-links.d.ts deleted file mode 100644 index cbd4fde61..000000000 --- a/types/src/scripts/ui/inline-roll-links.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -export declare class InlineRollLinks { - #private; - static activatePF2eListeners(): void; - static injectRepostElements(html: HTMLElement, foundryDoc: ClientDocument | null): void; - /** Give inline damage-roll links from items flavor text of the item name */ - static flavorDamageRolls(html: HTMLElement, document?: ClientDocument | null): void; -} diff --git a/types/src/scripts/ui/user-visibility.d.ts b/types/src/scripts/ui/user-visibility.d.ts deleted file mode 100644 index 48e80693a..000000000 --- a/types/src/scripts/ui/user-visibility.d.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { ChatMessagePF2e } from "@module/chat-message/index.ts"; - -declare class UserVisibilityPF2e { - /** Edits HTML live based on permission settings. Used to hide certain blocks and values */ - static process(html: HTMLElement, options?: ProcessOptions): void; - static processMessageSender(message: ChatMessagePF2e, html: HTMLElement): void; -} -declare const USER_VISIBILITIES: Set<"none" | "all" | "gm" | "owner">; -type UserVisibility = SetElement; -interface ProcessOptions { - document?: ClientDocument | null; - message?: ChatMessagePF2e | null; -} -export { USER_VISIBILITIES, UserVisibilityPF2e, type UserVisibility }; diff --git "a/types/src/scripts/\360\237\220\265\360\237\251\271.d.ts" "b/types/src/scripts/\360\237\220\265\360\237\251\271.d.ts" deleted file mode 100644 index 90fb6060f..000000000 --- "a/types/src/scripts/\360\237\220\265\360\237\251\271.d.ts" +++ /dev/null @@ -1,2 +0,0 @@ -declare function monkeyPatchFoundry(): void; -export { monkeyPatchFoundry }; diff --git a/types/src/util/delegated-collection.d.ts b/types/src/util/delegated-collection.d.ts deleted file mode 100644 index 7acf4c447..000000000 --- a/types/src/util/delegated-collection.d.ts +++ /dev/null @@ -1,26 +0,0 @@ -/** A proxy for a Collection that does not inherit from it, allowing it to work for getProperty() calls */ -export declare class DelegatedCollection { - #private; - constructor(entries?: [string, V][]); - [Symbol.iterator](): IterableIterator; - get size(): number; - get contents(): V[]; - get(key: Maybe, { strict }: { - strict: true; - }): T; - get(key: string, options?: CollectionGetOptions): T | undefined; - getName(name: Maybe, { strict }: { - strict: true; - }): T; - getName(name: string, options?: CollectionGetOptions): T | undefined; - set(key: string, value: V): this; - has(key: string): boolean; - find(predicate: (value: V) => boolean): V | undefined; - some(predicate: (value: V) => boolean): boolean; - filter(condition: (value: V) => value is T): T[]; - filter(condition: (value: V) => unknown): T[]; - map(callback: (value: V) => T): T[]; - flatMap(callback: (value: V, index: number, array: V[]) => U | readonly U[]): U[]; - delete(key: string): boolean; - clear(): void; -} diff --git a/types/src/util/destroyables.d.ts b/types/src/util/destroyables.d.ts deleted file mode 100644 index 5ab80eded..000000000 --- a/types/src/util/destroyables.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -/// -/// -/// -import Sortable from "sortablejs"; - -declare class DestroyableManager { - #private; - static instance: DestroyableManager; - /** Start observing the document body. */ - static initialize(): void; - constructor(); - observe(destroyable: Destroyable): void; -} -type Destroyable = Tagify<{ - id: string; - value: string; -}> | Tagify | Sortable | JQueryTooltipster.ITooltipsterInstance; -declare function createSortable(list: HTMLElement, options: Sortable.Options): Sortable; -declare function createTooltipster(target: HTMLElement, options: JQueryTooltipster.ITooltipsterOptions): JQuery; -export { DestroyableManager, createSortable, createTooltipster }; diff --git a/types/src/util/dom.d.ts b/types/src/util/dom.d.ts deleted file mode 100644 index 1a5e5f6cc..000000000 --- a/types/src/util/dom.d.ts +++ /dev/null @@ -1,47 +0,0 @@ -/** DOM helper functions that return HTMLElement(s) (or `null`) */ -type MaybeHTML = Maybe; -/** - * Create an `HTMLElement` with classes, dataset, and children - * @param nodeName A valid HTML element tag name, - * @param [options] Additional options for adjusting the created element - * @param [options.classes=[]] A list of class names - * @param [options.dataset={}] An object of keys and values with which to populate the `dataset`: nullish values will - * be excluded. - * @param [options.children=[]] A list of child elements as well as strings that will be converted to text nodes - * @param [options.innerHTML] A string to set as the inner HTML of the created element. Only one of `children` and - * `innerHTML` can be used. - * @returns The HTML element with all options applied - */ -declare function createHTMLElement(nodeName: K, options?: CreateHTMLElementOptionsWithChildren): HTMLElementTagNameMap[K]; -declare function createHTMLElement(nodeName: K, options?: CreateHTMLElementOptionsWithInnerHTML): HTMLElementTagNameMap[K]; -declare function createHTMLElement(nodeName: K, options?: CreateHTMLElementOptionsWithNeither): HTMLElementTagNameMap[K]; -interface CreateHTMLElementOptions { - classes?: string[]; - dataset?: Record>; - children?: (HTMLElement | string)[]; - innerHTML?: string; -} -interface CreateHTMLElementOptionsWithChildren extends CreateHTMLElementOptions { - children: (HTMLElement | string)[]; - innerHTML?: never; -} -interface CreateHTMLElementOptionsWithInnerHTML extends CreateHTMLElementOptions { - children?: never; - innerHTML: string; -} -interface CreateHTMLElementOptionsWithNeither extends CreateHTMLElementOptions { - children?: never; - innerHTML?: never; -} -declare function htmlQuery(parent: MaybeHTML, selectors: K): HTMLElementTagNameMap[K] | null; -declare function htmlQuery(parent: MaybeHTML, selectors: string): HTMLElement | null; -declare function htmlQuery(parent: MaybeHTML, selectors: string): E | null; -declare function htmlQueryAll(parent: MaybeHTML, selectors: K): HTMLElementTagNameMap[K][]; -declare function htmlQueryAll(parent: MaybeHTML, selectors: string): HTMLElement[]; -declare function htmlQueryAll(parent: MaybeHTML, selectors: string): E[]; -declare function htmlClosest(parent: MaybeHTML, selectors: K): HTMLElementTagNameMap[K] | null; -declare function htmlClosest(child: MaybeHTML, selectors: string): HTMLElement | null; -declare function htmlClosest(parent: MaybeHTML, selectors: string): E | null; -/** Create a reasonably specific selector for an HTML element */ -declare function htmlSelectorFor(element: HTMLElement): string; -export { createHTMLElement, htmlClosest, htmlQuery, htmlQueryAll, htmlSelectorFor }; diff --git a/types/src/util/index.d.ts b/types/src/util/index.d.ts deleted file mode 100644 index 3e0a0f058..000000000 --- a/types/src/util/index.d.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from "./delegated-collection.ts"; -export * from "./dom.ts"; -export * from "./misc.ts"; diff --git a/types/src/util/misc.d.ts b/types/src/util/misc.d.ts deleted file mode 100644 index c5ed9fc5b..000000000 --- a/types/src/util/misc.d.ts +++ /dev/null @@ -1,117 +0,0 @@ -import type { ActionCost } from "@item/base/data/system.ts"; -import type Sortable from "sortablejs"; - -/** - * Given an array and a key function, create a map where the key is the value that - * gets returned when each item is pushed into the function. Accumulate - * items in an array that have the same key - * @param array - * @param criterion - * @return - */ -declare function groupBy(array: T[], criterion: (value: T) => R): Map; -/** - * Given an array, adds a certain amount of elements to it - * until the desired length is being reached - */ -declare function padArray(array: T[], requiredLength: number, padWith: T): T[]; -/** Given an object, returns a new object with the same keys, but with each value converted by a function. */ -declare function mapValues(object: Record, mapping: (value: V, key: K) => R): Record; -/** - * Continually apply a function on the result of itself until times is reached - * - * @param func - * @param times - * @param start start element, also result if times is 0 - */ -declare function applyNTimes(func: (val: T) => T, times: number, start: T): T; -/** - * Check if a key is present in a given object in a type safe way - * - * @param obj The object to check - * @param key The key to check - */ -declare function objectHasKey(obj: O, key: unknown): key is keyof O; -/** Check if a value is present in the provided array. Especially useful for checking against literal tuples */ -declare function tupleHasValue(array: A, value: unknown): value is A[number]; -/** Check if an element is present in the provided set. Especially useful for checking against literal sets */ -declare function setHasElement>(set: T, value: unknown): value is SetElement; -/** - * Return an integer string of a number, always with sign (+/-) - * @param value The number to convert to a string - * @param options.emptyStringZero If the value is zero, return an empty string - * @param options.zeroIsNegative Treat zero as a negative value - */ -declare function signedInteger(value: number, { emptyStringZero, zeroIsNegative }?: { - emptyStringZero?: boolean | undefined; - zeroIsNegative?: boolean | undefined; -}): string; -/** - * The system's sluggification algorithm for labels and other terms. - * @param text The text to sluggify - * @param [options.camel=null] The sluggification style to use - */ -declare function sluggify(text: string, { camel }?: { - camel?: SlugCamel; -}): string; -type SlugCamel = "dromedary" | "bactrian" | null; -/** Parse a string containing html */ -declare function parseHTML(unparsed: string): HTMLElement; -declare function getActionTypeLabel(type: Maybe<"action" | "free" | "reaction" | "passive">, cost: Maybe): string | null; -declare function getActionIcon(actionType: string | ActionCost | null, fallback: ImageFilePath): ImageFilePath; -declare function getActionIcon(actionType: string | ActionCost | null, fallback: ImageFilePath | null): ImageFilePath | null; -declare function getActionIcon(actionType: string | ActionCost | null): ImageFilePath; -/** - * Returns a character that can be used with the Pathfinder action font - * to display an icon. If null it returns empty string. - */ -declare function getActionGlyph(action: string | number | null | ActionCost): string; -declare function ErrorPF2e(message: string): Error; -/** Returns the number in an ordinal format, like 1st, 2nd, 3rd, 4th, etc. */ -declare function ordinalString(value: number): string; -/** Localizes a list of strings into a (possibly comma-delimited) list for the current language */ -declare function localizeList(items: string[], { conjunction }?: { - conjunction?: "and" | "or"; -}): string; -/** - * Split and sanitize a list in string form. The empty string is always excluded from the resulting array. - * @param [options.delimiter] The delimiter by which to split (default of ",") - * @param [options.unique] Whether to ensure the uniqueness of the resulting array's elements (default of true) - */ -declare function splitListString(str: string, { delimiter, unique }?: SplitListStringOptions): string[]; -interface SplitListStringOptions { - delimiter?: string | RegExp; - unique?: boolean; -} -/** Generate and return an HTML element for a FontAwesome icon */ -type FontAwesomeStyle = "solid" | "regular" | "duotone"; -declare function fontAwesomeIcon(glyph: string, { style, fixedWidth }?: { - style?: FontAwesomeStyle; - fixedWidth?: boolean; -}): HTMLElement; -/** Short form of type and non-null check */ -declare function isObject(value: unknown): value is DeepPartial; -declare function isObject(value: unknown): value is { - [K in T]?: unknown; -}; -/** Create a copy of a record with its insertion order sorted by label */ -declare function sortLabeledRecord>(record: T): T; -/** Localize the values of a `Record` and sort by those values */ -declare function sortStringRecord>(record: T): T; -/** JSON.stringify with recursive key sorting */ -declare function sortObjByKey(value: unknown): unknown; -/** Walk an object tree and replace any string values found according to a provided function */ -declare function recursiveReplaceString(source: T, replace: (s: string) => string): T; -/** Create a localization function with a prefixed localization object path */ -declare function localizer(prefix: string): (...args: Parameters) => string; -/** Walk a localization object and recursively map the keys as localization strings starting with a given prefix */ -declare function configFromLocalization>(localization: T, prefix: string): T; -/** Does the parameter look like an image file path? */ -declare function isImageFilePath(path: unknown): path is ImageFilePath; -/** Does the parameter look like a video file path? */ -declare function isVideoFilePath(path: unknown): path is VideoFilePath; -declare function isImageOrVideoPath(path: unknown): path is ImageFilePath | VideoFilePath; -declare const SORTABLE_BASE_OPTIONS: Sortable.Options; -export { ErrorPF2e, SORTABLE_BASE_OPTIONS, applyNTimes, configFromLocalization, fontAwesomeIcon, getActionGlyph, getActionIcon, getActionTypeLabel, groupBy, isImageFilePath, isImageOrVideoPath, isObject, isVideoFilePath, localizeList, localizer, mapValues, objectHasKey, ordinalString, padArray, parseHTML, recursiveReplaceString, setHasElement, signedInteger, sluggify, sortLabeledRecord, sortObjByKey, sortStringRecord, splitListString, tupleHasValue, type SlugCamel, }; diff --git a/types/src/util/tags.d.ts b/types/src/util/tags.d.ts deleted file mode 100644 index 86b087aa1..000000000 --- a/types/src/util/tags.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { TraitViewData } from "@actor/data/base.ts"; -import { HTMLTagifyTagsElement } from "@system/html-elements/tagify-tags.ts"; -import Tagify, { TagifySettings } from "@yaireo/tagify"; - -declare function traitSlugToObject(trait: string, dictionary: Record): TraitViewData; -/** Create a tagify select menu out of a JSON input element */ -declare function tagify(element: HTMLInputElement, options?: TagifyOptions): Tagify; -declare function tagify(element: HTMLTagifyTagsElement, options?: TagifyOptions): Tagify; -declare function tagify(element: HTMLInputElement | HTMLTagifyTagsElement | null, options?: TagifyOptions): Tagify | null; -/** - * Standard properties expected by Tagify, where the `id` and `value` is what Foundry and the system would respectively - * call the `value` and `label` - */ -type TagRecord = Record<"id" | "value", string>; -type WhitelistData = string[] | Record; -interface TagifyOptions { - /** The maximum number of tags that may be added to the input */ - maxTags?: number; - /** A whitelist record, typically pulled from `CONFIG.PF2E` */ - whitelist?: WhitelistData; - /** Whether this whitelist is exhaustive */ - enforceWhitelist?: boolean; - /** - * Number of clicks to enter edit mode: `1` for single click, `2` for a double-click. - * `false` or `null` will disallow editing. - * @default {clicks: 2, keepInvalid: true} - */ - editTags?: TagifySettings["editTags"]; - /** - * RegEx string. Split tags by any of these delimiters. Example delimiters: ",|.| " (comma, dot, or whitespace) - * @default ',' - */ - delimiters?: TagifySettings["delimiters"]; -} -export { tagify, traitSlugToObject }; diff --git a/types/src/util/token-actor-utils.d.ts b/types/src/util/token-actor-utils.d.ts deleted file mode 100644 index b2b74940b..000000000 --- a/types/src/util/token-actor-utils.d.ts +++ /dev/null @@ -1,16 +0,0 @@ -import type { ActorPF2e, ActorType } from "@actor"; -/** - * Collects every actor whose token is controlled on the canvas. - * @param [options] Filter and fallback options - * @returns An array of ActorPF2E instances filtered by the requested types. - */ -declare function getSelectedActors(options?: GetSelectedActorsOptions): ActorPF2e[]; -interface GetSelectedActorsOptions { - /** Actor types that should be included (defaults to all) */ - include?: (ActorType | "creature")[]; - /** Actor types that should be excluded (defaults to none) */ - exclude?: (ActorType | "creature")[]; - /** Given no qualifying actor is selected, fall back to the user's assigned character if it also qualifies. */ - assignedFallback?: boolean; -} -export { getSelectedActors }; diff --git a/types/src/util/uuid.d.ts b/types/src/util/uuid.d.ts deleted file mode 100644 index 869ce2fc4..000000000 --- a/types/src/util/uuid.d.ts +++ /dev/null @@ -1,28 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -declare class UUIDUtils { - /** Retrieve multiple documents by UUID */ - static fromUUIDs(uuids: ActorUUID[], options?: { - relative?: Maybe; - }): Promise; - static fromUUIDs(uuids: ItemUUID[], options?: { - relative?: Maybe; - }): Promise; - static fromUUIDs(uuids: string[], options?: { - relative?: Maybe; - }): Promise; - static isItemUUID(uuid: unknown, options: { - embedded: true; - }): uuid is EmbeddedItemUUID; - static isItemUUID(uuid: unknown, options: { - embedded: false; - }): uuid is WorldItemUUID | CompendiumItemUUID; - static isItemUUID(uuid: unknown, options?: { - embedded?: boolean; - }): uuid is ItemUUID; - static isCompendiumUUID(uuid: unknown, docType: "Actor"): uuid is CompendiumActorUUID; - static isCompendiumUUID(uuid: unknown, docType: "Item"): uuid is CompendiumItemUUID; - static isCompendiumUUID(uuid: unknown, docType?: TDocType): uuid is CompendiumUUID; - static isTokenUUID(uuid: unknown): uuid is TokenDocumentUUID; -} -export { UUIDUtils }; diff --git a/types/tests/mocks/actor.d.ts b/types/tests/mocks/actor.d.ts deleted file mode 100644 index 2004d5cb5..000000000 --- a/types/tests/mocks/actor.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import { ActorSystemSource } from "@actor/data/base.ts"; -import { ActorSourcePF2e } from "@actor/data/index.ts"; -import type { ItemPF2e } from "@item"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import type { ActiveEffectPF2e } from "@module/active-effect.ts"; -import type { ScenePF2e } from "@scene"; -import type { TokenDocumentPF2e } from "@scene/token-document/document.ts"; -import { MockCollection } from "./collection.ts"; -export declare class MockActor { - options: DocumentConstructionContext; - _source: ActorSourcePF2e; - readonly parent: TokenDocumentPF2e | null; - readonly items: MockCollection>; - readonly effects: MockCollection>; - prototypeToken: {}; - _itemGuid: number; - constructor(data: ActorSourcePF2e, options?: DocumentConstructionContext); - get id(): string | null; - get name(): string; - get system(): ActorSystemSource; - prepareData(): void; - update(changes: Record): void; - static updateDocuments(updates?: Record[], _operation?: Partial>>): Promise; - updateEmbeddedDocuments(type: string, data: { - _id: string; - }[]): Promise; - createEmbeddedDocuments(type: string, data: ItemSourcePF2e[], _context: DatabaseCreateOperation): Promise; - deleteEmbeddedDocuments(type: string, ids: string[]): Promise; - toObject(): ActorSourcePF2e; -} diff --git a/types/tests/mocks/chat-message.d.ts b/types/tests/mocks/chat-message.d.ts deleted file mode 100644 index d5b4febfe..000000000 --- a/types/tests/mocks/chat-message.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare class MockChatMessage { - _source: foundry.documents.ChatMessageSource; - constructor(data: foundry.documents.ChatMessageSource); -} diff --git a/types/tests/mocks/collection.d.ts b/types/tests/mocks/collection.d.ts deleted file mode 100644 index 04080570d..000000000 --- a/types/tests/mocks/collection.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ItemPF2e } from "@item"; -/** In Foundry this is actually a subclass of Map, but it incompatibly extends it at several points. */ -export declare class MockCollection { - #private; - constructor(entries?: [string, V][]); - [Symbol.iterator](): IterableIterator; - get size(): number; - get contents(): V[]; - get(key: string): V | null; - set(key: string, value: V): MockCollection; - has(key: string): boolean; - find(predicate: (value: V) => boolean): V | undefined; - some(predicate: (value: V) => boolean): boolean; - filter(predicate: (value: V) => boolean): V[]; - map(callback: (value: V) => T): T[]; - delete(key: string): boolean; - clear(): void; -} -export declare class MockWorldCollection extends MockCollection { -} -export declare class MockActors extends MockWorldCollection> { - tokens: Record; - documentClass: typeof ActorPF2e; -} -export declare class MockItems extends MockWorldCollection> { - tokens: Record; - documentClass: typeof ItemPF2e; -} diff --git a/types/tests/mocks/item.d.ts b/types/tests/mocks/item.d.ts deleted file mode 100644 index bc7fa69f7..000000000 --- a/types/tests/mocks/item.d.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { ActorPF2e } from "@actor/index.ts"; -import { ItemSourcePF2e } from "@item/base/data/index.ts"; -import { ItemSystemSource } from "@item/base/data/system.ts"; -import type { ItemPF2e } from "@item/index.ts"; -export declare class MockItem { - options: DocumentConstructionContext; - readonly _source: ItemSourcePF2e; - readonly parent: ActorPF2e | null; - constructor(data: ItemSourcePF2e, options?: DocumentConstructionContext); - get id(): string | null; - get name(): string; - get system(): ItemSystemSource; - get level(): number | null; - get traits(): Set; - get isMagical(): boolean; - get isAlchemical(): boolean; - static updateDocuments(updates?: Record[], _operation?: Partial>): Promise[]>; - update(changes: object): void; - toObject(): ItemSourcePF2e; -} diff --git a/types/tests/mocks/journal-entry.d.ts b/types/tests/mocks/journal-entry.d.ts deleted file mode 100644 index 4e93e9ad0..000000000 --- a/types/tests/mocks/journal-entry.d.ts +++ /dev/null @@ -1,5 +0,0 @@ -export declare class MockJournalEntry { - _source: foundry.documents.JournalEntrySource; - readonly pages: object[]; - constructor(source: foundry.documents.JournalEntrySource); -} diff --git a/types/tests/mocks/macro.d.ts b/types/tests/mocks/macro.d.ts deleted file mode 100644 index 19fe7174c..000000000 --- a/types/tests/mocks/macro.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare class MockMacro { - readonly _source: foundry.documents.MacroSource; - constructor(data: foundry.documents.MacroSource); -} diff --git a/types/tests/mocks/roll-table.d.ts b/types/tests/mocks/roll-table.d.ts deleted file mode 100644 index d1399ca99..000000000 --- a/types/tests/mocks/roll-table.d.ts +++ /dev/null @@ -1,4 +0,0 @@ -export declare class MockRollTable { - readonly _source: foundry.documents.RollTableSource; - constructor(data: foundry.documents.RollTableSource); -} diff --git a/types/tests/mocks/scene.d.ts b/types/tests/mocks/scene.d.ts deleted file mode 100644 index d47ae712d..000000000 --- a/types/tests/mocks/scene.d.ts +++ /dev/null @@ -1,11 +0,0 @@ -export declare class MockScene { - _source: foundry.documents.SceneSource; - constructor(data: Partial); - get id(): string | null; - get name(): string; - addToken(token: Partial): void; - update(changes: object): void; - updateEmbeddedEntity(entityType: string, changes: { - _id: string; - }): void; -} diff --git a/types/tests/mocks/token.d.ts b/types/tests/mocks/token.d.ts deleted file mode 100644 index 6cdc1172f..000000000 --- a/types/tests/mocks/token.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -import type { ActorPF2e } from "@actor"; -import type { ScenePF2e } from "@scene"; -export declare class MockToken { - actor: ActorPF2e | null; - readonly parent: ScenePF2e | null; - readonly _source: foundry.documents.TokenSource; - constructor(data: foundry.documents.TokenSource, context?: { - parent?: ScenePF2e | null; - actor?: ActorPF2e | null; - }); - get id(): string; - get name(): string; - get scene(): this["parent"]; - update(changes: EmbeddedDocumentUpdateData, context?: Partial>>): void; -} diff --git a/types/tests/mocks/user.d.ts b/types/tests/mocks/user.d.ts deleted file mode 100644 index e75f5f7bf..000000000 --- a/types/tests/mocks/user.d.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { UserSourcePF2e } from "@module/user/data.js"; -export declare class MockUser { - readonly _source: UserSourcePF2e; - constructor(data: UserSourcePF2e); - get name(): string; - update(changes: Record): Promise; -} diff --git a/types/tests/module/apps/world-clock/time-of-day.test.d.ts b/types/tests/module/apps/world-clock/time-of-day.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/apps/world-clock/time-of-day.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/dc.test.d.ts b/types/tests/module/dc.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/dc.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/degree-of-success.test.d.ts b/types/tests/module/degree-of-success.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/degree-of-success.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/earn-income.test.d.ts b/types/tests/module/earn-income.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/earn-income.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/gm/travel/travel-speed.test.d.ts b/types/tests/module/gm/travel/travel-speed.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/gm/travel/travel-speed.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/lang/en.test.d.ts b/types/tests/module/lang/en.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/lang/en.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/migration.test.d.ts b/types/tests/module/migration.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/migration.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/recall-knowledge.test.d.ts b/types/tests/module/recall-knowledge.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/recall-knowledge.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/system/predication.test.d.ts b/types/tests/module/system/predication.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/system/predication.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/utils.test.d.ts b/types/tests/module/utils.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/utils.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/module/xp.test.d.ts b/types/tests/module/xp.test.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/tests/module/xp.test.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/tests/setup.d.ts b/types/tests/setup.d.ts deleted file mode 100644 index 256a219d8..000000000 --- a/types/tests/setup.d.ts +++ /dev/null @@ -1 +0,0 @@ -import "../build/lib/foundry-utils.ts"; diff --git a/types/types/foundry/build/generate-client-base-mixes.d.ts b/types/types/foundry/build/generate-client-base-mixes.d.ts deleted file mode 100644 index cb0ff5c3b..000000000 --- a/types/types/foundry/build/generate-client-base-mixes.d.ts +++ /dev/null @@ -1 +0,0 @@ -export {}; diff --git a/types/types/foundry/build/generate-client-base-mixes.ts b/types/types/foundry/build/generate-client-base-mixes.ts deleted file mode 100644 index 46bb4a20b..000000000 --- a/types/types/foundry/build/generate-client-base-mixes.ts +++ /dev/null @@ -1,502 +0,0 @@ -type ParentData = { name: string; hasParents: boolean }; - -const genClientBase = ( - className: string, - { - hasSheet = true, - isCanvasDoc = false, - parents = isCanvasDoc ? [{ name: "Scene", hasParents: false }] : [], - }: { hasSheet?: boolean; isCanvasDoc?: boolean; parents?: ParentData[] }, -) => { - const declareOrExportClientBase = isCanvasDoc ? "declare" : "export"; - const clientBaseName = `ClientBase${className}`; - const typeParamName = parents - .map((p) => (p.hasParents ? `ClientBase${p.name}` : `ClientBase${p.name}`)) - .join(" | "); - const typeParams = typeParamName ? `` : ""; - const tParentOrBlank = typeParamName ? "" : ""; - const tParentOrNull = typeParamName ? "TParent" : "null"; - console.log(String.raw`${declareOrExportClientBase} class ${clientBaseName}${typeParams} extends foundry.documents.Base${className}${tParentOrBlank} { - protected _sheet: DocumentSheet | null; - - /** - * A collection of Application instances which should be re-rendered whenever this document is updated. - * The keys of this object are the application ids and the values are Application instances. Each - * Application in this object will have its render method called by {@link Document#render}. - * @see {@link Document#render} - */ - apps: { [K in number]?: Application | ApplicationV2 }; - - constructor(data: object, context?: DocumentConstructionContext<${tParentOrNull}>); - - static override name: string; - - - protected override _initialize(options?: Record): void; - - /* -------------------------------------------- */ - /* Properties */ - /* -------------------------------------------- */ - - /** Return a reference to the parent Collection instance which contains this Document. */ - get collection(): Collection; - - /** A reference to the Compendium Collection which contains this Document, if any, otherwise undefined. */ - get compendium(): CompendiumCollection | undefined; - - /** - * A boolean indicator for whether or not the current game User has ownership rights for this Document. - * Different Document types may have more specialized rules for what constitutes ownership. - */ - get isOwner(): boolean; - - /** Test whether this Document is owned by any non-Gamemaster User. */ - get hasPlayerOwner(): boolean; - - /** A boolean indicator for whether the current game User has exactly LIMITED visibility (and no greater). */ - get limited(): boolean; - - /** Return a string which creates a dynamic link to this Document instance. */ - get link(): string; - - /** - * Return the permission level that the current game User has over this Document. - * See the CONST.DOCUMENT_OWNERSHIP_LEVELS object for an enumeration of these levels. - * - * @example Get the permission level the current user has for a document - * \`\`\`js - * game.user.id; // "dkasjkkj23kjf" - * actor.data.permission; // {default: 1, "dkasjkkj23kjf": 2}; - * actor.permission; // 2 - * \`\`\` - */ - get permission(): DocumentOwnershipLevel; - - /** Lazily obtain a FormApplication instance used to configure this Document, or null if no sheet is available. */ - get sheet(): ${hasSheet ? "DocumentSheet | DocumentSheetV2>" : "null"}; - - /** - * A boolean indicator for whether the current game User has at least limited visibility for this Document. - * Different Document types may have more specialized rules for what determines visibility. - */ - get visible(): boolean; - - /* -------------------------------------------- */ - /* Methods */ - /* -------------------------------------------- */ - - /** Obtain the FormApplication class constructor which should be used to configure this Document. */ - protected _getSheetClass(): Maybe; - - /** - * Prepare data for the Document. This method is called automatically by the DataModel#_initialize workflow. - * This method provides an opportunity for Document classes to define special data preparation logic. - * The work done by this method should be idempotent. There are situations in which prepareData may be called more - * than once. - */ - prepareData(): void; - - /** Prepare data related to this Document itself, before any embedded Documents or derived data is computed. */ - prepareBaseData(): void; - - /** - * Prepare all embedded Document instances which exist within this primary Document. - * @memberof ClientDocumentMixin# - */ - prepareEmbeddedDocuments(): void; - - /** - * Apply transformations or derivations to the values of the source data object. - * Compute data fields whose values are not stored to the database. - */ - prepareDerivedData(): void; - - /** - * Render all of the Application instances which are connected to this document by calling their respective - * @see Application#render - * @param [force=false] Force rendering - * @param [context={}] Optional context - */ - render(force?: boolean, context?: RenderOptions): void; - - /** - * Determine the sort order for this Document by positioning it relative a target sibling. - * See SortingHelper.performIntegerSort for more details - * @param [options] Sorting options provided to SortingHelper.performIntegerSort - * @param [options.updateData] Additional data changes which are applied to each sorted document - * @param [sortOptions] Options which are passed to the SortingHelpers.performIntegerSort method - * @returns The Document after it has been re-sorted - */ - sortRelative({ updateData, ...sortOptions }: { updateData?: object } & SortingOptions): Promise; - - /** - * Construct a UUID relative to another document. - * @param doc The document to compare against. - */ - getRelativeUUID(doc: foundry.abstract.Document): string; - - /** - * Handle clicking on a content link for this document. - * @param event The triggering click event. - */ - protected _onClickDocumentLink(event: MouseEvent): Promise; - - /* -------------------------------------------- */ - /* Event Handlers */ - /* -------------------------------------------- */ - - protected override _onCreate( - data: this["_source"], - operation: DatabaseCreateOperation<${tParentOrNull}>, - userId: string - ): void; - - protected override _onUpdate( - data: DeepPartial, - operation: DatabaseUpdateOperation<${tParentOrNull}>, - userId: string - ): void; - - protected override _onDelete(options: DatabaseDeleteOperation<${tParentOrNull}>, userId: string): void; - - /* -------------------------------------------- */ - /* Descendant Document Events */ - /* -------------------------------------------- */ - - /** - * Orchestrate dispatching descendant document events to parent documents when embedded children are modified. - * @param event The event name, preCreate, onCreate, etc... - * @param collection The collection name being modified within this parent document - * @param args Arguments passed to each dispatched function - * @param [_parent] The document with directly modified embedded documents. Either this document or a descendant - * of this one. - * @internal - */ - protected _dispatchDescendantDocumentEvents( - event: string, - collection: string, - args: unknown[], - _parent?: foundry.abstract.Document, - ): void; - - /** - * Actions taken after descendant documents have been created, but before changes are applied to the client data. - * @param parent The direct parent of the created Documents, may be this Document or a child - * @param collection The collection within which documents are being created - * @param data The source data for new documents that are being created - * @param operation Options which modified the creation operation - * @param userId The ID of the User who triggered the operation - */ - protected _preCreateDescendantDocuments( - parent: this, - collection: string, - data: object[], - operation: DatabaseCreateOperation, - userId: string - ): void; - - /** - * Actions taken after descendant documents have been created and changes have been applied to client data. - * @param parent The direct parent of the created Documents, may be this Document or a child - * @param collection The collection within which documents were created - * @param documents The array of created Documents - * @param data The source data for new documents that were created - * @param operation Options which modified the creation operation - * @param userId The ID of the User who triggered the operation - */ - protected _onCreateDescendantDocuments( - parent: this, - collection: string, - documents: foundry.abstract.Document[], - data: object[], - operation: DatabaseCreateOperation, - userId: string - ): void; - - /** - * Actions taken after descendant documents have been updated, but before changes are applied to the client data. - * @param parent The direct parent of the updated Documents, may be this Document or a child - * @param collection The collection within which documents are being updated - * @param changes The array of differential Document updates to be applied - * @param operation Options which modified the update operation - * @param userId The ID of the User who triggered the operation - */ - protected _preUpdateDescendantDocuments( - parent: this, - collection: string, - changes: object[], - operation: DatabaseUpdateOperation, - userId: string - ): void; - - /** - * Actions taken after descendant documents have been updated and changes have been applied to client data. - * @param parent The direct parent of the updated Documents, may be this Document or a child - * @param collection The collection within which documents were updated - * @param documents The array of updated Documents - * @param changes The array of differential Document updates which were applied - * @param operation Options which modified the update operation - * @param userId The ID of the User who triggered the operation - */ - protected _onUpdateDescendantDocuments( - parent: this, - collection: string, - documents: ClientDocument[], - changes: object[], - operation: DatabaseUpdateOperation, - userId: string - ): void; - - /** - * Actions taken after descendant documents have been deleted, but before deletions are applied to the client data. - * @param parent The direct parent of the deleted Documents, may be this Document or a child - * @param collection The collection within which documents were deleted - * @param ids The array of document IDs which were deleted - * @param operation Options which modified the deletion operation - * @param userId The ID of the User who triggered the operation - */ - protected _preDeleteDescendantDocuments( - parent: this, - collection: string, - ids: string[], - operation: DatabaseDeleteOperation, - userId: string - ): void; - - /** - * Actions taken after descendant documents have been deleted and those deletions have been applied to client data. - * @param parent The direct parent of the deleted Documents, may be this Document or a child - * @param collection The collection within which documents were deleted - * @param documents The array of Documents which were deleted - * @param ids The array of document IDs which were deleted - * @param operation Options which modified the deletion operation - * @param userId The ID of the User who triggered the operation - */ - protected _onDeleteDescendantDocuments( - parent: this, - collection: string, - documents: foundry.abstract.Document[], - ids: string[], - operation: DatabaseDeleteOperation, - userId: string - ): void; - - /** Gets the default new name for a Document */ - static defaultName(): string; - - /* -------------------------------------------- */ - /* Importing and Exporting */ - /* -------------------------------------------- */ - - /** - * Present a Dialog form to create a new Document of this type. - * Choose a name and a type from a select menu of types. - * @param [data] Initial data with which to populate the creation form - * @param [context={}] Additional context options or dialog positioning options - * @returns A Promise which resolves to the created Document, or null if the dialog was closed. - */ - static createDialog( - this: ConstructorOf, - data?: Record, - context?: { - parent?: TDocument["parent"]; - pack?: Collection | null; - } & Partial - ): Promise; - - /** - * Present a Dialog form to confirm deletion of this Document. - * @param [options] Positioning and sizing options for the resulting dialog - * @return A Promise which resolves to the deleted Document - */ - deleteDialog(options?: ConfirmDialogParameters): Promise; - - /** - * Export document data to a JSON file which can be saved by the client and later imported into a different session. - * @param [options] Additional options passed to the {@link ClientDocumentMixin#toCompendium} method - */ - exportToJSON(options?: Record): void; - - /** - * Create a content link for this Document. - * @param [options] Additional options to configure how the link is constructed. - * @param [options.attrs] Attributes to set on the link. - * @param [options.dataset] Custom data- attributes to set on the link. - * @param [options.classes] Classes to add to the link. - * @param [options.name] A name to use for the Document, if different from the Document's name. - * @param [options.icon] A font-awesome icon class to use as the icon, if different to the Document's configured sidebarIcon. - */ - toAnchor(options?: { - attrs?: Record; - dataset?: Record; - classes?: string[]; - name?: string; - icon?: string; - }): HTMLAnchorElement; - - /** - * Serialize salient information about this Document when dragging it. - * @returns An object of drag data. - */ - toDragData(): { type: string; [key: string]: unknown }; - - /** - * A helper function to handle obtaining the relevant Document from dropped data provided via a DataTransfer event. - * The dropped data could have: - * 1. A data object explicitly provided - * 2. A UUID - * - * @param data The data object extracted from a DataTransfer event - * @param options Additional options which affect drop data behavior - * @returns The resolved Document - * @throws If a Document could not be retrieved from the provided data. - */ - static fromDropData( - this: ConstructorOf, - data: object, - options?: Record - ): Promise; - - /** - * Update this Document using a provided JSON string. - * @param json Raw JSON data to import - * @returns The updated Document instance - */ - importFromJSON(json: string): Promise; - - /** Render an import dialog for updating the data related to this Document through an exported JSON file */ - importFromJSONDialog(): Promise; - - /** - * Transform the Document data to be stored in a Compendium pack. - * Remove any features of the data which are world-specific. - * @param [pack] A specific pack being exported to - * @param [options] Additional options which modify how the document is converted - * @param [options.clearFlags=false] Clear the flags object - * @param [options.clearSort=true] Clear the currently assigned folder and sort order - * @param [options.clearOwnership=true] Clear document ownership - * @param [options.clearState=true] Clear fields which store document state - * @param [options.keepId=false] Retain the current Document id - * @returns A data object of cleaned data suitable for compendium import - */ - toCompendium( - pack?: CompendiumCollection, - options?: { - clearSort?: boolean; - clearFlags?: boolean; - clearOwnership?: boolean; - clearState?: boolean; - keepId?: boolean; - } - ): this["_source"]; -} -`); - - if (isCanvasDoc) { - const canvasBaseName = `CanvasBase${className}`; - - console.log(String.raw`/** - * A specialized sub-class of the ClientDocumentMixin which is used for document types that are intended to be - * represented upon the game Canvas. - * @category - Mixins - */ -export class ${canvasBaseName}< - TParent extends ClientBaseScene | null -> extends ${clientBaseName} { - /** A reference to the PlaceableObject instance which represents this Embedded Document. */ - _object: PlaceableObject | null; - - /** Has this object been deliberately destroyed as part of the deletion workflow? */ - protected _destroyed: boolean; - - constructor(data: object, context: DocumentConstructionContext); - - /* -------------------------------------------- */ - /* Properties */ - /* -------------------------------------------- */ - - /** A lazily constructed PlaceableObject instance which can represent this Document on the game canvas. */ - get object(): this["_object"]; - - /** A reference to the CanvasLayer which contains Document objects of this type. */ - get layer(): NonNullable["layer"] | null; - - /** An indicator for whether this document is currently rendered on the game canvas. */ - get rendered(): boolean; - - /* -------------------------------------------- */ - /* Event Handlers */ - /* -------------------------------------------- */ - - /** - * @see abstract.Document#_onCreate - */ - protected override _onCreate(data: this["_source"], operation: DatabaseCreateOperation, userId: string): void; - - /** - * @see abstract.Document#_onUpdate - */ - protected override _onUpdate( - changed: DeepPartial, - operation: DatabaseUpdateOperation, - userId: string - ): void; - - /** - * @see abstract.Document#_onDelete - */ - protected _onDelete(operation: DatabaseDeleteOperation, userId: string): void; -} -`); - } -}; - -const clientDocs: Record = { - AmbientLight: { isCanvasDoc: true }, - AmbientSound: { isCanvasDoc: true }, - ActiveEffect: { - parents: [ - { name: "Actor", hasParents: true }, - { name: "Item", hasParents: true }, - ], - }, - Actor: { parents: [{ name: "Token", hasParents: true }] }, - ActorDelta: { parents: [{ name: "Token", hasParents: true }] }, - Adventure: {}, - Card: { parents: [{ name: "Cards", hasParents: false }] }, - Cards: {}, - ChatMessage: {}, - Combat: {}, - Combatant: { parents: [{ name: "Combat", hasParents: false }] }, - Drawing: { isCanvasDoc: true }, - FogExploration: { hasSheet: false }, - Folder: {}, - Item: { parents: [{ name: "Actor", hasParents: true }] }, - JournalEntry: {}, - JournalEntryPage: { parents: [{ name: "JournalEntry", hasParents: false }] }, - Macro: {}, - MeasuredTemplate: { isCanvasDoc: true }, - Note: { isCanvasDoc: true }, - Playlist: {}, - PlaylistSound: { parents: [{ name: "Playlist", hasParents: false }] }, - Region: { isCanvasDoc: true }, - RegionBehavior: { parents: [{ name: "Region", hasParents: true }] }, - RollTable: {}, - Scene: {}, - Setting: {}, - TableResult: { parents: [{ name: "RollTable", hasParents: false }] }, - Tile: { isCanvasDoc: true }, - Token: { isCanvasDoc: true }, - User: {}, - Wall: { isCanvasDoc: true }, -}; - -// imports -console.log( - String.raw`import type { ApplicationV2, DocumentSheetV2 } from "../../../client-esm/applications/api/module.d.ts"; - -`, -); -for (const [className, data] of Object.entries(clientDocs)) { - genClientBase(className, data); -} diff --git a/types/types/foundry/client-esm/applications/_types.d.ts b/types/types/foundry/client-esm/applications/_types.d.ts deleted file mode 100644 index 5c6c60af7..000000000 --- a/types/types/foundry/client-esm/applications/_types.d.ts +++ /dev/null @@ -1,171 +0,0 @@ -import type { DataField } from "../../common/data/fields.d.ts"; - -export interface ApplicationConfiguration { - /** An HTML element identifier used for this Application instance */ - id: string; - /** An string discriminator substituted for {id} in the default HTML element identifier for the class */ - uniqueId: string; - /** An array of CSS classes to apply to the Application */ - classes: string[]; - /** The HTMLElement tag type used for the outer Application frame */ - tag: string; - /** Configuration of the window behaviors for this Application */ - window: ApplicationWindowConfiguration; - /** Click actions supported by the Application and their event handler functions */ - actions: Record; - /** Configuration used if the application top-level element is a form */ - form?: ApplicationFormConfiguration; - /** Default positioning data for the application */ - position: Partial; -} - -export interface ApplicationWindowConfiguration { - /** - * Is this Application rendered inside a window frame? - * @default true - */ - frame?: boolean; - - /** - * Can this Application be positioned via JavaScript or only by CSS - * @default true - */ - positioned?: boolean; - - /** The window title. Displayed only if the application is framed */ - title?: string; - - /** An optional Font Awesome icon class displayed left of the window title */ - icon?: string | false; - - /** An array of window control entries */ - controls: ApplicationHeaderControlsEntry[]; - - /** - * Can the window app be minimized by double-clicking on the title - * @default true - */ - minimizable?: boolean; - - /** - * Is this window resizable? - * @default false - */ - resizable?: boolean; - - /** - * A specific tag name to use for the .window-content element - * @default "section" - */ - contentTag?: string; - - /** Additional CSS classes to apply to the .window-content element */ - contentClasses?: string[]; -} - -export interface ApplicationFormConfiguration { - handler: ApplicationFormSubmission; - submitOnChange: boolean; - closeOnSubmit: boolean; -} - -export interface ApplicationHeaderControlsEntry { - /** A font-awesome icon class which denotes the control button */ - icon: string; - /** The text label for the control button */ - label: string; - /** The action name triggered by clicking the control button */ - action: string; - /** Is the control button visible for the current client? */ - visible: boolean; -} - -export interface ApplicationConstructorParams { - position: ApplicationPosition; -} - -export interface ApplicationRenderOptions { - /** - * Force application rendering. - * If true, an application which does not yet exist in the DOM is added. - * If false, only applications which already exist are rendered. - * @default false - */ - force?: boolean; - /** A specific position at which to render the Application */ - position?: ApplicationPosition; - /** Updates to the Application window frame */ - window?: ApplicationWindowRenderOptions; - /** - * Some Application classes, for example the HandlebarsApplication, support re-rendering a subset of application - * parts instead of the full Application HTML. - */ - parts?: string[]; - /** Is this render the first one for the application? This property is populated automatically. */ - isFirstRender?: boolean; -} - -export interface ApplicationWindowRenderOptions { - /** Update the window title with a new value? */ - title: string; - /** Update the window icon with a new value? */ - icon: string | false; - /** Re-render the window controls menu? */ - controls: boolean; -} - -type ApplicationRenderContext = object; - -export interface ApplicationClosingOptions { - /** Whether to animate the close, or perform it instantaneously */ - animate?: boolean; - /** Whether the application was closed via keypress. */ - closeKey?: boolean; -} - -/** - * An on-click action supported by the Application - * @param event The originating click event - * @param target The capturing HTML element which defines the [data-action] - */ -export type ApplicationClickAction = (event: PointerEvent, target: HTMLElement) => Promise; - -/** - * A form submission handler method. - * @param event The originating form submission or input change event - * @param form The form element that was submitted - * @param formData Processed data for the submitted form - */ -export type ApplicationFormSubmission = ( - event: SubmitEvent | Event, - form: HTMLFormElement, - formData: FormDataExtended, -) => Promise; - -export interface ApplicationTab { - id: string; - group: string; - icon: string; - label: string; - active: boolean; - cssClass: string; -} - -export interface FormNode { - fieldset: boolean; - legend?: string; - fields?: FormNode[]; - field?: DataField; - value?: unknown; -} - -export interface FormFooterButton { - type: string; - name?: string; - icon?: string; - label?: string; - action?: string; - cssClass?: string; - /** @default false */ - disabled?: boolean; -} diff --git a/types/types/foundry/client-esm/applications/api/application.d.ts b/types/types/foundry/client-esm/applications/api/application.d.ts deleted file mode 100644 index 7cf4e3558..000000000 --- a/types/types/foundry/client-esm/applications/api/application.d.ts +++ /dev/null @@ -1,388 +0,0 @@ -import type { - ApplicationClosingOptions, - ApplicationConfiguration, - ApplicationFormConfiguration, - ApplicationHeaderControlsEntry, - ApplicationRenderContext, - ApplicationRenderOptions, -} from "../_types.d.ts"; - -/** The Application class is responsible for rendering an HTMLElement into the Foundry Virtual Tabletop user interface. */ -export default abstract class ApplicationV2< - TConfig extends ApplicationConfiguration = ApplicationConfiguration, - TRenderOptions extends ApplicationRenderOptions = ApplicationRenderOptions, -> { - constructor(options?: DeepPartial); - - /** - * Designates which upstream Application class in this class' inheritance chain is the base application. - * Any DEFAULT_OPTIONS of super-classes further upstream of the BASE_APPLICATION are ignored. - * Hook events for super-classes further upstream of the BASE_APPLICATION are not dispatched. - */ - static BASE_APPLICATION: ApplicationV2; - - static DEFAULT_OPTIONS: DeepPartial; - - static RENDER_STATES: { - ERROR: -3; - CLOSING: -2; - CLOSED: -1; - NONE: 0; - RENDERING: 1; - RENDERED: 2; - }; - - static emittedEvents: readonly string[]; - - options: TConfig; - - /** Convenience references to window header elements. */ - get window(): { - header: HTMLElement; - title: HTMLHeadingElement; - icon: HTMLElement; - close: HTMLButtonElement; - controls: HTMLButtonElement; - controlsDropdown: HTMLDivElement; - onDrag: (event: DragEvent) => void; - onResize: (event: DragEvent) => void; - pointerStartPosition: ApplicationPosition; - pointerMoveThrottle: boolean; - }; - - /** - * If this Application uses tabbed navigation groups, this mapping is updated whenever the changeTab method is called. - * Reports the active tab for each group. - * Subclasses may override this property to define default tabs for each group. - */ - tabGroups: Record; - - /* -------------------------------------------- */ - /* Application Properties */ - /* -------------------------------------------- */ - - /** The CSS class list of this Application instance */ - get classList(): DOMTokenList; - - /** The HTML element ID of this Application instance. */ - get id(): string; - - /** A convenience reference to the title of the Application window. */ - get title(): string; - - /** The HTMLElement which renders this Application into the DOM. */ - get element(): HTMLElement; - - /** Is this Application instance currently minimized? */ - get minimized(): boolean; - - /** The current position of the application with respect to the window.document.body. */ - position: ApplicationPosition; - - /** Is this Application instance currently rendered? */ - get rendered(): boolean; - - /** The current render state of the Application. */ - get state(): number; - - /** Does this Application instance render within an outer window frame? */ - get hasFrame(): boolean; - - /* -------------------------------------------- */ - /* Initialization */ - /* -------------------------------------------- */ - - /** - * Iterate over the inheritance chain of this Application. - * The chain includes this Application itself and all parents until the base application is encountered. - * @see ApplicationV2.BASE_APPLICATION - */ - static inheritanceChain(): Generator; - - /** - * Initialize configuration options for the Application instance. - * The default behavior of this method is to intelligently merge options for each class with those of their parents. - * - Array-based options are concatenated - * - Inner objects are merged - * - Otherwise, properties in the subclass replace those defined by a parent - * @param options Options provided directly to the constructor - * @returns Configured options for the application instance - */ - protected _initializeApplicationOptions(options: Partial): TConfig; - - /* -------------------------------------------- */ - /* Rendering */ - /* -------------------------------------------- */ - - /** - * Render the Application, creating its HTMLElement and replacing its innerHTML. - * Add it to the DOM if it is not currently rendered and rendering is forced. Otherwise, re-render its contents. - * @param options Options which configure application rendering behavior. - * A boolean is interpreted as the "force" option. - * @param _options Legacy options for backwards-compatibility with the original - * ApplicationV1#render signature. - * @returns A Promise which resolves to the rendered Application instance - */ - render(options?: boolean | TRenderOptions, _options?: TRenderOptions): Promise; - - /** - * Modify the provided options passed to a render request. - * @param options Options which configure application rendering behavior - */ - protected _configureRenderOptions(options: TRenderOptions): void; - - /** - * Prepare application rendering context data for a given render request. - * @param options Options which configure application rendering behavior - * @returns Context data for the render operation - */ - protected _prepareContext(options: TRenderOptions): Promise; - - /** - * Configure the array of header control menu options - * @returns - */ - protected _getHeaderControls(): ApplicationHeaderControlsEntry[]; - - /** - * Render an HTMLElement for the Application. - * An Application subclass must implement this method in order for the Application to be renderable. - * @param context Context data for the render operation - * @param options Options which configure application rendering behavior - * @returns The result of HTML rendering may be implementation specific. - * Whatever value is returned here is passed to _replaceHTML - */ - protected abstract _renderHTML(context: ApplicationRenderContext, options: TRenderOptions): Promise; - - /** - * Replace the HTML of the application with the result provided by the rendering backend. - * An Application subclass should implement this method in order for the Application to be renderable. - * @param result The result returned by the application rendering backend - * @param content The content element into which the rendered result must be inserted - * @param options Options which configure application rendering behavior - */ - protected abstract _replaceHTML(result: unknown, content: HTMLElement, options: TRenderOptions): void; - - /** - * Render the outer framing HTMLElement which wraps the inner HTML of the Application. - * @param options Options which configure application rendering behavior - */ - protected _renderFrame(options: TRenderOptions): Promise; - - /** Render a header control button. */ - protected _renderHeaderControl(control: ApplicationHeaderControlsEntry): HTMLLIElement; - - /** - * When the Application is rendered, optionally update aspects of the window frame. - * @param options Options provided at render-time - */ - protected _updateFrame(options: TRenderOptions): void; - - /** - * Insert the application HTML element into the DOM. - * Subclasses may override this method to customize how the application is inserted. - * @param element The element to insert - * @returns The inserted element - */ - protected _insertElement(element: HTMLElement): HTMLElement; - - /* -------------------------------------------- */ - /* Closing */ - /* -------------------------------------------- */ - - /** - * Close the Application, removing it from the DOM. - * @param options Options which modify how the application is closed. - * @returns A Promise which resolves to the closed Application instance - */ - close(options?: ApplicationClosingOptions): Promise; - - /** - * Remove the application HTML element from the DOM. - * Subclasses may override this method to customize how the application element is removed. - * @param element The element to be removed - */ - protected _removeElement(element: HTMLElement): void; - - /* -------------------------------------------- */ - /* Positioning */ - /* -------------------------------------------- */ - - /** - * Update the Application element position using provided data which is merged with the prior position. - * @param position New Application positioning data - * @returns The updated application position - */ - setPosition(position?: Partial): ApplicationPosition; - - /* -------------------------------------------- */ - - /** - * Translate a requested application position updated into a resolved allowed position for the Application. - * Subclasses may override this method to implement more advanced positioning behavior. - * @param position Requested Application positioning data - * @returns Resolved Application positioning data - */ - protected _updatePosition(position: ApplicationPosition): ApplicationPosition; - - /* -------------------------------------------- */ - /* Other Public Methods */ - /* -------------------------------------------- */ - - /** - * Toggle display of the Application controls menu. - * Only applicable to window Applications. - * @param expanded Set the controls visibility to a specific state. - * Otherwise, the visible state is toggled from its current value - */ - toggleControls(expanded?: boolean): void; - - /** Minimize the Application, collapsing it to a minimal header. */ - minimize(): Promise; - - /** Restore the Application to its original dimensions. */ - maximize(): Promise; - - /** - * Bring this Application window to the front of the rendering stack by increasing its z-index. - * Once ApplicationV1 is deprecated we should switch from _maxZ to ApplicationV2#maxZ - * We should also eliminate ui.activeWindow in favor of only ApplicationV2#frontApp - */ - bringToFront(): void; - - /** - * Change the active tab within a tab group in this Application instance. - * @param tab The name of the tab which should become active - * @param group The name of the tab group which defines the set of tabs - * @param [options] Additional options which affect tab navigation - * @param [options.event] An interaction event which caused the tab change, if any - * @param [options.navElement] An explicit navigation element being modified - * @param [options.force=false] Force changing the tab even if the new tab is already active - * @param [options.updatePosition=true] Update application position after changing the tab? - */ - changeTab( - tab: string, - group: string, - options?: { event?: Event; navElement?: HTMLElement; force?: boolean; updatePosition?: boolean }, - ): void; - - /* -------------------------------------------- */ - /* Rendering Life-Cycle Methods */ - /* -------------------------------------------- */ - - /** - * Test whether this Application is allowed to be rendered. - * @param options Provided render options - * @returns Return false to prevent rendering - * @throws {Error} An Error to display a warning message - */ - protected _canRender(options: TRenderOptions): false | void; - - /** - * Actions performed before a first render of the Application. - * @param context Prepared context data - * @param options Provided render options - */ - protected _preFirstRender(context: Record, options: TRenderOptions): Promise; - - /** - * Actions performed after a first render of the Application. - * Post-render steps are not awaited by the render process. - * @param context Prepared context data - * @param options Provided render options - */ - protected _onFirstRender(context: object, options: TRenderOptions): void; - - /** - * Actions performed before any render of the Application. - * Pre-render steps are awaited by the render process. - * @param context Prepared context data - * @param options Provided render options - */ - protected _preRender(context: object, options: TRenderOptions): Promise; - - /** - * Actions performed after any render of the Application. - * Post-render steps are not awaited by the render process. - * @param context Prepared context data - * @param options Provided render options - */ - protected _onRender(context: object, options: TRenderOptions): void; - - /** - * Actions performed before closing the Application. - * Pre-close steps are awaited by the close process. - * @param options Provided render options - */ - protected _preClose(options: TRenderOptions): Promise; - - /** - * Actions performed after closing the Application. - * Post-close steps are not awaited by the close process. - * @param options Provided render options - */ - protected _onClose(options: TRenderOptions): void; - - /** - * Actions performed before the Application is re-positioned. - * Pre-position steps are not awaited because setPosition is synchronous. - * @param {ApplicationPosition} position The requested application position - * @protected - */ - protected _prePosition(position: ApplicationPosition): void; - - /** - * Actions performed after the Application is re-positioned. - * @param position The requested application position - */ - protected _onPosition(position: ApplicationPosition): void; - - /* -------------------------------------------- */ - /* Event Listeners and Handlers */ - /* -------------------------------------------- */ - - /** Attach event listeners to the Application frame. */ - protected _attachFrameListeners(): void; - - /** - * A generic event handler for action clicks which can be extended by subclasses. - * Action handlers defined in DEFAULT_OPTIONS are called first. This method is only called for actions which have - * no defined handler. - * @param event The originating click event - * @param target The capturing HTML element which defined a [data-action] - */ - protected _onClickAction(event: PointerEvent, target: HTMLElement): void; - - /** - * Handle submission for an Application which uses the form element. - * @param formConfig The form configuration for which this handler is bound - * @param event The form submission event - */ - protected _onSubmitForm(formConfig: ApplicationFormConfiguration, event: Event | SubmitEvent): Promise; - - /** - * Handle changes to an input element within the form. - * @param formConfig The form configuration for which this handler is bound - * @param event An input change event within the form - */ - _onChangeForm(formConfig: ApplicationFormConfiguration, event: Event): void; - - /* -------------------------------------------- */ - /* Helper Methods */ - /* -------------------------------------------- */ - - /** - * Parse a CSS style rule into a number of pixels which apply to that dimension. - * @param style The CSS style rule - * @param parentDimension The relevant dimension of the parent element - * @returns The parsed style dimension in pixels - */ - static parseCSSDimension(style: string, parentDimension: number): number; - - /** - * Wait for a CSS transition to complete for an element. - * @param element The element which is transitioning - * @param timeout A timeout in milliseconds in case the transitionend event does not occur - */ - protected _awaitTransition(element: HTMLElement, timeout: number): Promise; -} diff --git a/types/types/foundry/client-esm/applications/api/document-sheet.d.ts b/types/types/foundry/client-esm/applications/api/document-sheet.d.ts deleted file mode 100644 index 7cdb5d7d9..000000000 --- a/types/types/foundry/client-esm/applications/api/document-sheet.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -import type Document from "../../../common/abstract/document.d.ts"; -import type { ApplicationConfiguration, ApplicationRenderOptions } from "../_types.d.ts"; -import type ApplicationV2 from "./application.d.ts"; - -export default abstract class DocumentSheetV2< - TConfig extends DocumentSheetConfiguration = DocumentSheetConfiguration, - TRenderOptions extends DocumentSheetRenderOptions = DocumentSheetRenderOptions, -> extends ApplicationV2 { - constructor(options?: DeepPartial); - - get document(): this["options"]["document"]; - - /** - * Is this Document sheet visible to the current User? - * This is governed by the viewPermission threshold configured for the class. - */ - get isVisible(): boolean; - - /** - * Is this Document sheet editable by the current User? - * This is governed by the editPermission threshold configured for the class. - */ - get isEditable(): boolean; - - /* -------------------------------------------- */ - /* Event Listeners and Handlers */ - /* -------------------------------------------- */ - - /** - * Prepare data used to update the Item upon form submission. - * @param event The originating form submission event - * @param form The form element that was submitted - * @param formData Processed data for the submitted form - * @returns Prepared submission data as an object - */ - protected _prepareSubmitData(event: SubmitEvent, form: HTMLFormElement, formData: FormDataExtended): object; -} - -export interface DocumentSheetConfiguration extends ApplicationConfiguration { - /** The Document instance associated with this sheet */ - document: TDocument; - /** A permission level in CONST.DOCUMENT_OWNERSHIP_LEVELS */ - viewPermission: number; - /** A permission level in CONST.DOCUMENT_OWNERSHIP_LEVELS */ - editPermission: number; - /** Allow sheet configuration as a header button */ - sheetConfig: boolean; -} - -export interface DocumentSheetRenderOptions extends ApplicationRenderOptions { - /** A string with the format "{operation}{documentName}" providing context */ - renderContext?: string; - /** Data describing the document modification that occurred */ - renderData?: object; -} diff --git a/types/types/foundry/client-esm/applications/api/handlebars-application.ts b/types/types/foundry/client-esm/applications/api/handlebars-application.ts deleted file mode 100644 index 03150feb4..000000000 --- a/types/types/foundry/client-esm/applications/api/handlebars-application.ts +++ /dev/null @@ -1,161 +0,0 @@ -import type { ApplicationFormConfiguration, ApplicationRenderOptions } from "../_types.d.ts"; -import type ApplicationV2 from "./application.d.ts"; - -/** Augment an Application class with [Handlebars](https://handlebarsjs.com) template rendering behavior. */ -/* eslint-disable @typescript-eslint/no-unused-expressions, no-unused-expressions */ -// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types -export default function HandlebarsApplicationMixin>( - BaseApplication: TBase, -) { - abstract class HandlebarsApplication extends BaseApplication { - static PARTS: Record = {}; - - /** A record of all rendered template parts. */ - get parts(): Record { - return {}; - } - - /** - * Render each configured application part using Handlebars templates. - * @param context Context data for the render operation - * @param options Options which configure application rendering behavior - * @returns A single rendered HTMLElement for each requested part - */ - protected override async _renderHTML( - context: object, - options: HandlebarsRenderOptions, - ): Promise> { - context; - options; - return {}; - } - - /** - * Prepare context that is specific to only a single rendered part. - * - * It is recommended to augment or mutate the shared context so that downstream methods like _onRender have - * visibility into the data that was used for rendering. It is acceptable to return a different context object - * rather than mutating the shared context at the expense of this transparency. - * - * @param partId The part being rendered - * @param context Shared context provided by _prepareContext - * @returns Context data for a specific part - */ - protected async _preparePartContext(partId: string, context: object): Promise { - partId; - context; - return {}; - } - - /** - * Replace the HTML of the application with the result provided by Handlebars rendering. - * @param result The result from Handlebars template rendering - * @param content The content element into which the rendered result must be inserted - * @param options Options which configure application rendering behavior - */ - protected override _replaceHTML( - result: Record, - content: HTMLElement, - options: HandlebarsRenderOptions, - ): void { - result; - content; - options; - } - - /** - * Prepare data used to synchronize the state of a template part. - * @param partId The id of the part being rendered - * @param newElement The new rendered HTML element for the part - * @param priorElement The prior rendered HTML element for the part - * @param state A state object which is used to synchronize after replacement - */ - protected _preSyncPartState( - partId: string, - newElement: HTMLElement, - priorElement: HTMLElement, - state: object, - ): void { - partId; - newElement; - priorElement; - state; - } - - /** - * Synchronize the state of a template part after it has been rendered and replaced in the DOM. - * @param partId The id of the part being rendered - * @param newElement The new rendered HTML element for the part - * @param priorElement The prior rendered HTML element for the part - * @param state A state object which is used to synchronize after replacement - */ - protected _syncPartState( - partId: string, - newElement: HTMLElement, - priorElement: HTMLElement, - state: object, - ): void { - partId; - newElement; - priorElement; - state; - } - - /* -------------------------------------------- */ - /* Event Listeners and Handlers */ - /* -------------------------------------------- */ - - /** - * Attach event listeners to rendered template parts. - * @param partId The id of the part being rendered - * @param htmlElement The rendered HTML element for the part - * @param options Rendering options passed to the render method - */ - protected _attachPartListeners( - partId: string, - htmlElement: HTMLElement, - options: HandlebarsRenderOptions, - ): void { - partId; - htmlElement; - options; - } - } - - return HandlebarsApplication; -} - -export interface HandlebarsTemplatePart { - /** The template entry-point for the part */ - template: string; - - /** - * A CSS id to assign to the top-level element of the rendered part. - * This id string is automatically prefixed by the application id. - */ - id?: string; - - /** An array of CSS classes to apply to the top-level element of the rendered part. */ - classes?: string[]; - - /** - * An array of templates that are required to render the part. - * If omitted, only the entry-point is inferred as required. - */ - templates?: string[]; - - /** - * An array of selectors within this part whose scroll positions should - * be persisted during a re-render operation. A blank string is used - * to denote that the root level of the part is scrollable. - */ - scrollable?: string[]; - - /** A registry of forms selectors and submission handlers. */ - forms?: Record; -} - -export interface HandlebarsRenderOptions extends ApplicationRenderOptions { - /** An array of named template parts to render */ - parts?: string[]; -} diff --git a/types/types/foundry/client-esm/applications/api/module.d.ts b/types/types/foundry/client-esm/applications/api/module.d.ts deleted file mode 100644 index 8b4cded7b..000000000 --- a/types/types/foundry/client-esm/applications/api/module.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -export type * from "./application.d.ts"; -export { default as ApplicationV2 } from "./application.ts"; -export type * from "./document-sheet.d.ts"; -export { default as DocumentSheetV2 } from "./document-sheet.ts"; -export type * from "./handlebars-application.ts"; -export { default as HandlebarsApplicationMixin } from "./handlebars-application.ts"; diff --git a/types/types/foundry/client-esm/applications/elements/color-picker.d.ts b/types/types/foundry/client-esm/applications/elements/color-picker.d.ts deleted file mode 100644 index 098289c08..000000000 --- a/types/types/foundry/client-esm/applications/elements/color-picker.d.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type { AbstractFormInputElement } from "./form-element.d.ts"; - -/** - * A custom HTMLElement used to select a color using a linked pair of input fields. - */ -export class HTMLColorPickerElement extends AbstractFormInputElement { - static override tagName: "color-picker"; - - protected override _buildElements(): HTMLInputElement[]; - - /** Create a HTMLColorPickerElement using provided configuration data. */ - static create(config: FormInputConfig): HTMLColorPickerElement; -} diff --git a/types/types/foundry/client-esm/applications/elements/document-tags.d.ts b/types/types/foundry/client-esm/applications/elements/document-tags.d.ts deleted file mode 100644 index 6ee13168d..000000000 --- a/types/types/foundry/client-esm/applications/elements/document-tags.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -import type { AbstractFormInputElement } from "./form-element.d.ts"; - -/** - * A custom HTMLElement used to render a set of associated Documents referenced by UUID. - */ -export default class HTMLDocumentTagsElement extends AbstractFormInputElement< - Record, - string | string[] | null -> { - static override tagName: "document-tags"; - - /** Restrict this element to documents of a particular type. */ - get type(): string | null; - set type(value: string | null); - - /** Restrict to only allow referencing a single Document instead of an array of documents. */ - get single(): boolean; - set single(value: boolean); - - /** Allow a maximum number of documents to be tagged to the element. */ - get max(): number; - set max(value: number | null); - - /** Initialize innerText or an initial value attribute of the element as a serialized JSON array. */ - protected _initializeTags(): void; - - /** - * Create an HTML string fragment for a single document tag. - * @param uuid The document UUID - * @param name The document name - * @param [editable=true] Is the tag editable? - */ - static renderTag(uuid: DocumentUUID, name: string, editable?: boolean): string; - - /** Create a HTMLDocumentTagsElement using provided configuration data. */ - static create(config: DocumentTagsInputConfig): HTMLDocumentTagsElement; -} - -declare global { - interface DocumentTagsInputConfig extends FormInputConfig { - /** A specific document type in CONST.ALL_DOCUMENT_TYPES */ - type?: string; - /** - * Only allow referencing a single document. In this case the submitted form value will be a single UUID string - * rather than an array - */ - single?: boolean; - /** Only allow attaching a maximum number of documents */ - max?: number; - } -} diff --git a/types/types/foundry/client-esm/applications/elements/file-picker.d.ts b/types/types/foundry/client-esm/applications/elements/file-picker.d.ts deleted file mode 100644 index c0886b7a4..000000000 --- a/types/types/foundry/client-esm/applications/elements/file-picker.d.ts +++ /dev/null @@ -1,40 +0,0 @@ -import type { AbstractFormInputElement } from "./form-element.d.ts"; - -/** - * A custom HTML element responsible for rendering a file input field and associated FilePicker button. - * @extends {AbstractFormInputElement} - */ -export default class HTMLFilePickerElement extends AbstractFormInputElement { - static override tagName: "file-picker"; - - /** The file path selected. */ - input: HTMLInputElement; - - /** A button to open the file picker interface. */ - button: HTMLButtonElement; - - /** A reference to the FilePicker application instance originated by this element. */ - picker: FilePicker; - - /** - * A type of file which can be selected in this field. - * @see {@link FilePicker.FILE_TYPES} - */ - get type(): (typeof FilePicker.FILE_TYPES)[number]; - set type(value: (typeof FilePicker.FILE_TYPES)[number]); - - /** Prevent uploading new files as part of this element's FilePicker dialog. */ - get noupload(): boolean; - set noupload(value: boolean); - - /** Create a HTMLFilePickerElement using provided configuration data. */ - static create(config: FilePickerInputConfig): HTMLFilePickerElement; -} - -declare global { - interface FilePickerInputConfig extends FormInputConfig { - type?: FilePickerOptions["type"]; - placeholder?: string; - noupload?: boolean; - } -} diff --git a/types/types/foundry/client-esm/applications/elements/form-element.d.ts b/types/types/foundry/client-esm/applications/elements/form-element.d.ts deleted file mode 100644 index 91afe4a7a..000000000 --- a/types/types/foundry/client-esm/applications/elements/form-element.d.ts +++ /dev/null @@ -1,94 +0,0 @@ -/** - * An abstract custom HTMLElement designed for use with form inputs. - * - * @fires {Event} input An "input" event when the value of the input changes - * @fires {Event} change A "change" event when the value of the element changes - */ -export abstract class AbstractFormInputElement extends HTMLElement { - /** The HTML tag name used by this element. */ - static tagName: string; - - /** Declare that this custom element provides form element functionality. */ - static formAssociated: boolean; - - /** Attached ElementInternals which provides form handling functionality. */ - protected _internals: ElementInternals; - - /** - * The primary input (if any). Used to determine what element should receive focus when an associated label is clicked - * on. - */ - protected _primaryInput: HTMLElement; - - /** The form this element belongs to. */ - get form(): HTMLFormElement; - - /* -------------------------------------------- */ - /* Element Properties */ - /* -------------------------------------------- */ - - /** The input element name. */ - get name(): string; - set name(value: string); - - /** The value of the input element. */ - get value(): TInputValue; - set value(value: TInputValue); - - /** The underlying value of the element. */ - protected _value: TInternalValue; - - /** Return the value of the input element which should be submitted to the form. */ - protected _getValue(): TInternalValue; - - /** - * Translate user-provided input value into the format that should be stored. - * @param value A new value to assign to the element - * @throws An error if the provided value is invalid - */ - protected _setValue(value: TInputValue): void; - - /** Is this element disabled? */ - get disabled(): boolean; - set disabled(value: boolean); - - /** Is this field editable? The field can be neither disabled nor readonly. */ - get editable(): boolean; - - /** - * Special behaviors that the subclass should implement when toggling the disabled state of the input. - * @param disabled The new disabled state - */ - protected _toggleDisabled(disabled: boolean): void; - - /* -------------------------------------------- */ - /* Element Lifecycle */ - /* -------------------------------------------- */ - - /** Initialize the custom element, constructing its HTML. */ - connectedCallback(): void; - - /** - * Create the HTML elements that should be included in this custom element. - * Elements are returned as an array of ordered children. - */ - protected _buildElements(): HTMLElement[]; - - /** Refresh the active state of the custom element. */ - protected _refresh(): void; - - /** - * Apply key attributes on the containing custom HTML element to input elements contained within it. - * @internal - */ - _applyInputAttributes(input: HTMLInputElement): void; - - /** Activate event listeners which add dynamic behavior to the custom element. */ - _activateListeners(): void; - - /** - * Special handling when the custom element is clicked. This should be implemented to transfer focus to an - * appropriate internal element. - */ - protected _onClick(event: PointerEvent): void; -} diff --git a/types/types/foundry/client-esm/applications/elements/hue-slider.d.ts b/types/types/foundry/client-esm/applications/elements/hue-slider.d.ts deleted file mode 100644 index 0cc65695e..000000000 --- a/types/types/foundry/client-esm/applications/elements/hue-slider.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -import type { AbstractFormInputElement } from "./form-element.d.ts"; - -/** - * A class designed to standardize the behavior for a hue selector UI component. - */ -export default class HTMLHueSelectorSlider extends AbstractFormInputElement { - static override tagName: "hue-slider"; - - override _buildElements(): HTMLInputElement[]; -} diff --git a/types/types/foundry/client-esm/applications/elements/module.d.ts b/types/types/foundry/client-esm/applications/elements/module.d.ts deleted file mode 100644 index 8fcd7afa5..000000000 --- a/types/types/foundry/client-esm/applications/elements/module.d.ts +++ /dev/null @@ -1,9 +0,0 @@ -export * from "./color-picker.ts"; -export * from "./document-tags.ts"; -export * from "./file-picker.ts"; -export * from "./form-element.ts"; -export * from "./hue-slider.ts"; -export * from "./multi-select.ts"; -export * from "./prosemirror-editor.ts"; -export * from "./range-picker.ts"; -export * from "./string-tags.ts"; diff --git a/types/types/foundry/client-esm/applications/elements/multi-select.d.ts b/types/types/foundry/client-esm/applications/elements/multi-select.d.ts deleted file mode 100644 index 080bb501c..000000000 --- a/types/types/foundry/client-esm/applications/elements/multi-select.d.ts +++ /dev/null @@ -1,88 +0,0 @@ -import type { AbstractFormInputElement } from "./form-element.d.ts"; - -/** - * An abstract base class designed to standardize the behavior for a multi-select UI component. - * Multi-select components return an array of values as part of form submission. - * Different implementations may provide different experiences around how inputs are presented to the user. - */ -export abstract class AbstractMultiSelectElement extends AbstractFormInputElement { - /** Predefined elements which were defined in the original HTML. */ - protected _options: (HTMLOptionElement | HTMLOptGroupElement)[]; - - /** An object which maps option values to displayed labels. */ - protected _choices: Record; - - /** Preserve existing elements which are defined in the original HTML. */ - protected _initialize(): void; - - /** - * Mark a choice as selected. - * @param value The value to add to the chosen set - */ - select(value: string): void; - - /** - * Mark a choice as un-selected. - * @param value The value to delete from the chosen set - */ - unselect(value: string): void; - - /* -------------------------------------------- */ - /* Form Handling */ - /* -------------------------------------------- */ - - override _getValue(): string[]; - - override _setValue(value: string[]): void; -} - -/** - * Provide a multi-select workflow using a select element as the input mechanism. - * - * @example Multi-Select HTML Markup - * ```html - * - * - * - * - * - * - * - * - * - * - * - * ``` - */ -export class HTMLMultiSelectElement extends AbstractMultiSelectElement { - static override tagName: "multi-select"; - - /** - * Create a HTMLMultiSelectElement using provided configuration data. - * @param {FormInputConfig & Omit} config - * @returns {HTMLMultiSelectElement} - */ - static create(config: MultiSelectInputConfig): HTMLMultiSelectElement; -} - -/** - * Provide a multi-select workflow as a grid of input checkbox elements. - * - * @example Multi-Checkbox HTML Markup - * ```html - * - * - * - * - * - * - * - * - * - * - * - * ``` - */ -export class HTMLMultiCheckboxElement extends AbstractMultiSelectElement { - static override tagName: "multi-checkbox"; -} diff --git a/types/types/foundry/client-esm/applications/elements/prosemirror-editor.d.ts b/types/types/foundry/client-esm/applications/elements/prosemirror-editor.d.ts deleted file mode 100644 index 5823c1832..000000000 --- a/types/types/foundry/client-esm/applications/elements/prosemirror-editor.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -import type { AbstractFormInputElement } from "./form-element.d.ts"; - -/** - * A custom HTML element responsible displaying a ProseMirror rich text editor. - */ -export default class HTMLProseMirrorElement extends AbstractFormInputElement { - static override tagName: "prose-mirror"; - - disconnectedCallback(): void; - - /** Configure ProseMirror editor plugins. */ - protected _configurePlugins(): Record; - - /** Create a HTMLProseMirrorElement using provided configuration data. */ - static create(config: ProseMirrorInputConfig): HTMLProseMirrorElement; -} - -declare global { - interface ProseMirrorInputConfig extends FormInputConfig { - /** Is this editor toggled (true) or always active (false) */ - toggled: boolean; - /** If the editor is toggled, provide the enrichedHTML which is displayed while the editor is not active */ - enriched?: string; - /** Does this editor instance support collaborative editing? */ - collaborate: boolean; - /** A Document UUID. Required for collaborative editing */ - documentUUID?: DocumentUUID; - } -} diff --git a/types/types/foundry/client-esm/applications/elements/range-picker.d.ts b/types/types/foundry/client-esm/applications/elements/range-picker.d.ts deleted file mode 100644 index 04218d576..000000000 --- a/types/types/foundry/client-esm/applications/elements/range-picker.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import type { AbstractFormInputElement } from "./form-element.d.ts"; - -/** - * A custom HTML element responsible selecting a value on a range slider with a linked number input field. - */ -export default class HTMLRangePickerElement extends AbstractFormInputElement { - static override tagName: "range-picker"; - - /** The value of the input element. */ - get valueAsNumber(): number; - - protected override _buildElements(): HTMLInputElement[]; - - /** Create a HTMLRangePickerElement using provided configuration data. */ - static create(config: RangePickerInputConfig): HTMLRangePickerElement; -} - -declare global { - interface RangePickerInputConfig extends FormInputConfig { - min: number; - max: number; - step?: number; - } -} diff --git a/types/types/foundry/client-esm/applications/elements/string-tags.d.ts b/types/types/foundry/client-esm/applications/elements/string-tags.d.ts deleted file mode 100644 index fbfbabf1b..000000000 --- a/types/types/foundry/client-esm/applications/elements/string-tags.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -import type { AbstractFormInputElement } from "./form-element.d.ts"; - -/** - * A custom HTML element which allows for arbitrary assignment of a set of string tags. - * This element may be used directly or subclassed to impose additional validation or functionality. - */ -export default class HTMLStringTagsElement extends AbstractFormInputElement, string[]> { - static override tagName: "string-tags"; - - static icons: { - add: string; - remove: string; - }; - - static labels: { - add: string; - remove: string; - placeholder: string; - }; - - /** - * Initialize innerText or an initial value attribute of the element as a comma-separated list of currently assigned - * string tags. - */ - protected _initializeTags(): void; - - /** - * Subclasses may impose more strict validation on what tags are allowed. - * @param tag A candidate tag - * @throws An error if the candidate tag is not allowed - */ - protected _validateTag(tag: string): void; - - /** - * Render the HTML fragment used to represent a tag. - * @param tag The raw tag value - * @param label An optional tag element - * @param [editable=true] Is the tag editable? - * @returns An HTML string for the tag - */ - static renderTag(tag: string, label?: string, editable?: boolean): string; - - /* -------------------------------------------- */ - /* Form Handling */ - /* -------------------------------------------- */ - - /** Create a HTMLStringTagsElement using provided configuration data. */ - static create(config: FormInputConfig): HTMLStringTagsElement; -} diff --git a/types/types/foundry/client-esm/applications/forms/fields.d.ts b/types/types/foundry/client-esm/applications/forms/fields.d.ts deleted file mode 100644 index 277de7f15..000000000 --- a/types/types/foundry/client-esm/applications/forms/fields.d.ts +++ /dev/null @@ -1,173 +0,0 @@ -import type { HTMLMultiSelectElement } from "../elements/multi-select.d.ts"; - -/** Create a standardized form field group. */ -export function createFormGroup(config: FormGroupConfig): HTMLDivElement; - -/** Create an `` element for a BooleanField. */ -export function createCheckboxInput(config: FormInputConfig): HTMLInputElement; - -/** Create a `
` element for a StringField. */ -export function createEditorInput(config: EditorInputConfig): HTMLDivElement; - -/** Create a `` element for a StringField. */ -export function createMultiSelectInput(config: MultiSelectInputConfig): HTMLMultiSelectElement; - -/** Create an `` element foFormInputConfig & NumberInputConfigr a NumberField. */ -export function createNumberInput(config: NumberInputConfig): HTMLInputElement; - -/** Create a `