ttrpg-engine-dnd 0.1.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (329) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/CONTRIBUTING.md +98 -0
  3. package/DEVELOPMENT.md +70 -0
  4. package/LICENSE +21 -0
  5. package/README.md +247 -0
  6. package/VERSIONING.md +151 -0
  7. package/dist/content/index.d.ts +3 -0
  8. package/dist/content/index.d.ts.map +1 -0
  9. package/dist/content/pack.d.ts +1657 -0
  10. package/dist/content/pack.d.ts.map +1 -0
  11. package/dist/content/packs/starter.d.ts +4 -0
  12. package/dist/content/packs/starter.d.ts.map +1 -0
  13. package/dist/content/validate.d.ts +8 -0
  14. package/dist/content/validate.d.ts.map +1 -0
  15. package/dist/derive/ability-check.d.ts +26 -0
  16. package/dist/derive/ability-check.d.ts.map +1 -0
  17. package/dist/derive/ability.d.ts +9 -0
  18. package/dist/derive/ability.d.ts.map +1 -0
  19. package/dist/derive/ac.d.ts +19 -0
  20. package/dist/derive/ac.d.ts.map +1 -0
  21. package/dist/derive/action-economy.d.ts +17 -0
  22. package/dist/derive/action-economy.d.ts.map +1 -0
  23. package/dist/derive/attack.d.ts +20 -0
  24. package/dist/derive/attack.d.ts.map +1 -0
  25. package/dist/derive/character-view.d.ts +29 -0
  26. package/dist/derive/character-view.d.ts.map +1 -0
  27. package/dist/derive/damage-mitigation.d.ts +18 -0
  28. package/dist/derive/damage-mitigation.d.ts.map +1 -0
  29. package/dist/derive/effect-stack.d.ts +15 -0
  30. package/dist/derive/effect-stack.d.ts.map +1 -0
  31. package/dist/derive/encumbrance.d.ts +17 -0
  32. package/dist/derive/encumbrance.d.ts.map +1 -0
  33. package/dist/derive/index.d.ts +12 -0
  34. package/dist/derive/index.d.ts.map +1 -0
  35. package/dist/derive/save.d.ts +23 -0
  36. package/dist/derive/save.d.ts.map +1 -0
  37. package/dist/derive/spell-dc.d.ts +21 -0
  38. package/dist/derive/spell-dc.d.ts.map +1 -0
  39. package/dist/derive/spell-slots.d.ts +21 -0
  40. package/dist/derive/spell-slots.d.ts.map +1 -0
  41. package/dist/derive/terrain.d.ts +10 -0
  42. package/dist/derive/terrain.d.ts.map +1 -0
  43. package/dist/effects/builder.d.ts +66 -0
  44. package/dist/effects/builder.d.ts.map +1 -0
  45. package/dist/effects/formula.d.ts +12 -0
  46. package/dist/effects/formula.d.ts.map +1 -0
  47. package/dist/effects/index.d.ts +4 -0
  48. package/dist/effects/index.d.ts.map +1 -0
  49. package/dist/effects/predicate.d.ts +12 -0
  50. package/dist/effects/predicate.d.ts.map +1 -0
  51. package/dist/engine/apply.d.ts +5 -0
  52. package/dist/engine/apply.d.ts.map +1 -0
  53. package/dist/engine/commit.d.ts +12 -0
  54. package/dist/engine/commit.d.ts.map +1 -0
  55. package/dist/engine/conveniences.d.ts +7124 -0
  56. package/dist/engine/conveniences.d.ts.map +1 -0
  57. package/dist/engine/ids-utils.d.ts +2 -0
  58. package/dist/engine/ids-utils.d.ts.map +1 -0
  59. package/dist/engine/index.d.ts +107 -0
  60. package/dist/engine/index.d.ts.map +1 -0
  61. package/dist/engine/plan/action-surge.d.ts +10 -0
  62. package/dist/engine/plan/action-surge.d.ts.map +1 -0
  63. package/dist/engine/plan/attack.d.ts +30 -0
  64. package/dist/engine/plan/attack.d.ts.map +1 -0
  65. package/dist/engine/plan/cast-spell.d.ts +18 -0
  66. package/dist/engine/plan/cast-spell.d.ts.map +1 -0
  67. package/dist/engine/plan/checks.d.ts +26 -0
  68. package/dist/engine/plan/checks.d.ts.map +1 -0
  69. package/dist/engine/plan/concentration.d.ts +12 -0
  70. package/dist/engine/plan/concentration.d.ts.map +1 -0
  71. package/dist/engine/plan/contested.d.ts +28 -0
  72. package/dist/engine/plan/contested.d.ts.map +1 -0
  73. package/dist/engine/plan/encounter.d.ts +47 -0
  74. package/dist/engine/plan/encounter.d.ts.map +1 -0
  75. package/dist/engine/plan/falling.d.ts +11 -0
  76. package/dist/engine/plan/falling.d.ts.map +1 -0
  77. package/dist/engine/plan/index.d.ts +20 -0
  78. package/dist/engine/plan/index.d.ts.map +1 -0
  79. package/dist/engine/plan/level-up.d.ts +22 -0
  80. package/dist/engine/plan/level-up.d.ts.map +1 -0
  81. package/dist/engine/plan/movement.d.ts +25 -0
  82. package/dist/engine/plan/movement.d.ts.map +1 -0
  83. package/dist/engine/plan/multiattack.d.ts +12 -0
  84. package/dist/engine/plan/multiattack.d.ts.map +1 -0
  85. package/dist/engine/plan/npc.d.ts +21 -0
  86. package/dist/engine/plan/npc.d.ts.map +1 -0
  87. package/dist/engine/plan/offhand-attack.d.ts +13 -0
  88. package/dist/engine/plan/offhand-attack.d.ts.map +1 -0
  89. package/dist/engine/plan/opportunity-attack.d.ts +14 -0
  90. package/dist/engine/plan/opportunity-attack.d.ts.map +1 -0
  91. package/dist/engine/plan/reactive-spells.d.ts +34 -0
  92. package/dist/engine/plan/reactive-spells.d.ts.map +1 -0
  93. package/dist/engine/plan/rest.d.ts +16 -0
  94. package/dist/engine/plan/rest.d.ts.map +1 -0
  95. package/dist/engine/plan/travel.d.ts +21 -0
  96. package/dist/engine/plan/travel.d.ts.map +1 -0
  97. package/dist/engine/plan/weapon-mastery.d.ts +15 -0
  98. package/dist/engine/plan/weapon-mastery.d.ts.map +1 -0
  99. package/dist/engine/reducers/action-economy.d.ts +12 -0
  100. package/dist/engine/reducers/action-economy.d.ts.map +1 -0
  101. package/dist/engine/reducers/attack.d.ts +6 -0
  102. package/dist/engine/reducers/attack.d.ts.map +1 -0
  103. package/dist/engine/reducers/bastion.d.ts +10 -0
  104. package/dist/engine/reducers/bastion.d.ts.map +1 -0
  105. package/dist/engine/reducers/charges.d.ts +7 -0
  106. package/dist/engine/reducers/charges.d.ts.map +1 -0
  107. package/dist/engine/reducers/checks.d.ts +6 -0
  108. package/dist/engine/reducers/checks.d.ts.map +1 -0
  109. package/dist/engine/reducers/combat.d.ts +12 -0
  110. package/dist/engine/reducers/combat.d.ts.map +1 -0
  111. package/dist/engine/reducers/concentration.d.ts +6 -0
  112. package/dist/engine/reducers/concentration.d.ts.map +1 -0
  113. package/dist/engine/reducers/downtime.d.ts +5 -0
  114. package/dist/engine/reducers/downtime.d.ts.map +1 -0
  115. package/dist/engine/reducers/encounter.d.ts +11 -0
  116. package/dist/engine/reducers/encounter.d.ts.map +1 -0
  117. package/dist/engine/reducers/inventory.d.ts +9 -0
  118. package/dist/engine/reducers/inventory.d.ts.map +1 -0
  119. package/dist/engine/reducers/level-up.d.ts +7 -0
  120. package/dist/engine/reducers/level-up.d.ts.map +1 -0
  121. package/dist/engine/reducers/locations.d.ts +8 -0
  122. package/dist/engine/reducers/locations.d.ts.map +1 -0
  123. package/dist/engine/reducers/mounts-vehicles.d.ts +11 -0
  124. package/dist/engine/reducers/mounts-vehicles.d.ts.map +1 -0
  125. package/dist/engine/reducers/movement.d.ts +7 -0
  126. package/dist/engine/reducers/movement.d.ts.map +1 -0
  127. package/dist/engine/reducers/npc.d.ts +7 -0
  128. package/dist/engine/reducers/npc.d.ts.map +1 -0
  129. package/dist/engine/reducers/party.d.ts +10 -0
  130. package/dist/engine/reducers/party.d.ts.map +1 -0
  131. package/dist/engine/reducers/progression.d.ts +5 -0
  132. package/dist/engine/reducers/progression.d.ts.map +1 -0
  133. package/dist/engine/reducers/quests.d.ts +14 -0
  134. package/dist/engine/reducers/quests.d.ts.map +1 -0
  135. package/dist/engine/reducers/reactive-spells.d.ts +7 -0
  136. package/dist/engine/reducers/reactive-spells.d.ts.map +1 -0
  137. package/dist/engine/reducers/resources.d.ts +7 -0
  138. package/dist/engine/reducers/resources.d.ts.map +1 -0
  139. package/dist/engine/reducers/rest.d.ts +8 -0
  140. package/dist/engine/reducers/rest.d.ts.map +1 -0
  141. package/dist/engine/reducers/resurrection.d.ts +5 -0
  142. package/dist/engine/reducers/resurrection.d.ts.map +1 -0
  143. package/dist/engine/reducers/session.d.ts +8 -0
  144. package/dist/engine/reducers/session.d.ts.map +1 -0
  145. package/dist/engine/reducers/settings.d.ts +5 -0
  146. package/dist/engine/reducers/settings.d.ts.map +1 -0
  147. package/dist/engine/reducers/spellcasting.d.ts +7 -0
  148. package/dist/engine/reducers/spellcasting.d.ts.map +1 -0
  149. package/dist/engine/reducers/transformations.d.ts +8 -0
  150. package/dist/engine/reducers/transformations.d.ts.map +1 -0
  151. package/dist/engine/reducers/travel.d.ts +7 -0
  152. package/dist/engine/reducers/travel.d.ts.map +1 -0
  153. package/dist/engine/reducers/triggers.d.ts +9 -0
  154. package/dist/engine/reducers/triggers.d.ts.map +1 -0
  155. package/dist/engine/reducers/weapon-mastery.d.ts +5 -0
  156. package/dist/engine/reducers/weapon-mastery.d.ts.map +1 -0
  157. package/dist/engine/replay.d.ts +4 -0
  158. package/dist/engine/replay.d.ts.map +1 -0
  159. package/dist/engine/triggers/dispatch.d.ts +13 -0
  160. package/dist/engine/triggers/dispatch.d.ts.map +1 -0
  161. package/dist/engine/undo-redo.d.ts +4 -0
  162. package/dist/engine/undo-redo.d.ts.map +1 -0
  163. package/dist/handlers/context.d.ts +7 -0
  164. package/dist/handlers/context.d.ts.map +1 -0
  165. package/dist/handlers/index.d.ts +12 -0
  166. package/dist/handlers/index.d.ts.map +1 -0
  167. package/dist/ids.d.ts +64 -0
  168. package/dist/ids.d.ts.map +1 -0
  169. package/dist/index.d.ts +72 -0
  170. package/dist/index.d.ts.map +1 -0
  171. package/dist/internal/clock.d.ts +2 -0
  172. package/dist/internal/clock.d.ts.map +1 -0
  173. package/dist/internal/constants.d.ts +6 -0
  174. package/dist/internal/constants.d.ts.map +1 -0
  175. package/dist/internal/immer.d.ts +4 -0
  176. package/dist/internal/immer.d.ts.map +1 -0
  177. package/dist/internal/invariants.d.ts +5 -0
  178. package/dist/internal/invariants.d.ts.map +1 -0
  179. package/dist/migrations/index.d.ts +5 -0
  180. package/dist/migrations/index.d.ts.map +1 -0
  181. package/dist/rng/default.d.ts +6 -0
  182. package/dist/rng/default.d.ts.map +1 -0
  183. package/dist/rng/dice.d.ts +20 -0
  184. package/dist/rng/dice.d.ts.map +1 -0
  185. package/dist/rng/index.d.ts +10 -0
  186. package/dist/rng/index.d.ts.map +1 -0
  187. package/dist/rng/seeded.d.ts +9 -0
  188. package/dist/rng/seeded.d.ts.map +1 -0
  189. package/dist/rng/throw.d.ts +9 -0
  190. package/dist/rng/throw.d.ts.map +1 -0
  191. package/dist/schemas/content/background.d.ts +46 -0
  192. package/dist/schemas/content/background.d.ts.map +1 -0
  193. package/dist/schemas/content/class.d.ts +264 -0
  194. package/dist/schemas/content/class.d.ts.map +1 -0
  195. package/dist/schemas/content/condition.d.ts +90 -0
  196. package/dist/schemas/content/condition.d.ts.map +1 -0
  197. package/dist/schemas/content/feat.d.ts +25 -0
  198. package/dist/schemas/content/feat.d.ts.map +1 -0
  199. package/dist/schemas/content/index.d.ts +9 -0
  200. package/dist/schemas/content/index.d.ts.map +1 -0
  201. package/dist/schemas/content/item.d.ts +602 -0
  202. package/dist/schemas/content/item.d.ts.map +1 -0
  203. package/dist/schemas/content/monster.d.ts +203 -0
  204. package/dist/schemas/content/monster.d.ts.map +1 -0
  205. package/dist/schemas/content/species.d.ts +63 -0
  206. package/dist/schemas/content/species.d.ts.map +1 -0
  207. package/dist/schemas/content/spell.d.ts +253 -0
  208. package/dist/schemas/content/spell.d.ts.map +1 -0
  209. package/dist/schemas/effects.d.ts +175 -0
  210. package/dist/schemas/effects.d.ts.map +1 -0
  211. package/dist/schemas/events/action-economy.d.ts +38 -0
  212. package/dist/schemas/events/action-economy.d.ts.map +1 -0
  213. package/dist/schemas/events/attack.d.ts +139 -0
  214. package/dist/schemas/events/attack.d.ts.map +1 -0
  215. package/dist/schemas/events/bastion.d.ts +227 -0
  216. package/dist/schemas/events/bastion.d.ts.map +1 -0
  217. package/dist/schemas/events/charges.d.ts +110 -0
  218. package/dist/schemas/events/charges.d.ts.map +1 -0
  219. package/dist/schemas/events/checks.d.ts +103 -0
  220. package/dist/schemas/events/checks.d.ts.map +1 -0
  221. package/dist/schemas/events/combat.d.ts +308 -0
  222. package/dist/schemas/events/combat.d.ts.map +1 -0
  223. package/dist/schemas/events/concentration.d.ts +99 -0
  224. package/dist/schemas/events/concentration.d.ts.map +1 -0
  225. package/dist/schemas/events/downtime.d.ts +53 -0
  226. package/dist/schemas/events/downtime.d.ts.map +1 -0
  227. package/dist/schemas/events/encounter.d.ts +260 -0
  228. package/dist/schemas/events/encounter.d.ts.map +1 -0
  229. package/dist/schemas/events/envelope.d.ts +22 -0
  230. package/dist/schemas/events/envelope.d.ts.map +1 -0
  231. package/dist/schemas/events/index.d.ts +4594 -0
  232. package/dist/schemas/events/index.d.ts.map +1 -0
  233. package/dist/schemas/events/inventory.d.ts +253 -0
  234. package/dist/schemas/events/inventory.d.ts.map +1 -0
  235. package/dist/schemas/events/level-up.d.ts +141 -0
  236. package/dist/schemas/events/level-up.d.ts.map +1 -0
  237. package/dist/schemas/events/locations.d.ts +183 -0
  238. package/dist/schemas/events/locations.d.ts.map +1 -0
  239. package/dist/schemas/events/mounts-vehicles.d.ts +233 -0
  240. package/dist/schemas/events/mounts-vehicles.d.ts.map +1 -0
  241. package/dist/schemas/events/movement.d.ts +131 -0
  242. package/dist/schemas/events/movement.d.ts.map +1 -0
  243. package/dist/schemas/events/npc.d.ts +113 -0
  244. package/dist/schemas/events/npc.d.ts.map +1 -0
  245. package/dist/schemas/events/party.d.ts +260 -0
  246. package/dist/schemas/events/party.d.ts.map +1 -0
  247. package/dist/schemas/events/progression.d.ts +698 -0
  248. package/dist/schemas/events/progression.d.ts.map +1 -0
  249. package/dist/schemas/events/quests.d.ts +426 -0
  250. package/dist/schemas/events/quests.d.ts.map +1 -0
  251. package/dist/schemas/events/reactive-spells.d.ts +98 -0
  252. package/dist/schemas/events/reactive-spells.d.ts.map +1 -0
  253. package/dist/schemas/events/resources.d.ts +107 -0
  254. package/dist/schemas/events/resources.d.ts.map +1 -0
  255. package/dist/schemas/events/rest.d.ts +104 -0
  256. package/dist/schemas/events/rest.d.ts.map +1 -0
  257. package/dist/schemas/events/resurrection.d.ts +44 -0
  258. package/dist/schemas/events/resurrection.d.ts.map +1 -0
  259. package/dist/schemas/events/session.d.ts +144 -0
  260. package/dist/schemas/events/session.d.ts.map +1 -0
  261. package/dist/schemas/events/settings.d.ts +47 -0
  262. package/dist/schemas/events/settings.d.ts.map +1 -0
  263. package/dist/schemas/events/spellcasting.d.ts +103 -0
  264. package/dist/schemas/events/spellcasting.d.ts.map +1 -0
  265. package/dist/schemas/events/transformations.d.ts +279 -0
  266. package/dist/schemas/events/transformations.d.ts.map +1 -0
  267. package/dist/schemas/events/travel.d.ts +143 -0
  268. package/dist/schemas/events/travel.d.ts.map +1 -0
  269. package/dist/schemas/events/triggers.d.ts +60 -0
  270. package/dist/schemas/events/triggers.d.ts.map +1 -0
  271. package/dist/schemas/events/weapon-mastery.d.ts +38 -0
  272. package/dist/schemas/events/weapon-mastery.d.ts.map +1 -0
  273. package/dist/schemas/formula.d.ts +103 -0
  274. package/dist/schemas/formula.d.ts.map +1 -0
  275. package/dist/schemas/index.d.ts +8 -0
  276. package/dist/schemas/index.d.ts.map +1 -0
  277. package/dist/schemas/predicate.d.ts +72 -0
  278. package/dist/schemas/predicate.d.ts.map +1 -0
  279. package/dist/schemas/primitives.d.ts +156 -0
  280. package/dist/schemas/primitives.d.ts.map +1 -0
  281. package/dist/schemas/runtime/bastion.d.ts +130 -0
  282. package/dist/schemas/runtime/bastion.d.ts.map +1 -0
  283. package/dist/schemas/runtime/campaign.d.ts +2122 -0
  284. package/dist/schemas/runtime/campaign.d.ts.map +1 -0
  285. package/dist/schemas/runtime/character.d.ts +580 -0
  286. package/dist/schemas/runtime/character.d.ts.map +1 -0
  287. package/dist/schemas/runtime/currency.d.ts +9 -0
  288. package/dist/schemas/runtime/currency.d.ts.map +1 -0
  289. package/dist/schemas/runtime/downtime.d.ts +31 -0
  290. package/dist/schemas/runtime/downtime.d.ts.map +1 -0
  291. package/dist/schemas/runtime/effect-instance.d.ts +65 -0
  292. package/dist/schemas/runtime/effect-instance.d.ts.map +1 -0
  293. package/dist/schemas/runtime/encounter.d.ts +264 -0
  294. package/dist/schemas/runtime/encounter.d.ts.map +1 -0
  295. package/dist/schemas/runtime/in-game-time.d.ts +18 -0
  296. package/dist/schemas/runtime/in-game-time.d.ts.map +1 -0
  297. package/dist/schemas/runtime/index.d.ts +15 -0
  298. package/dist/schemas/runtime/index.d.ts.map +1 -0
  299. package/dist/schemas/runtime/item-instance.d.ts +66 -0
  300. package/dist/schemas/runtime/item-instance.d.ts.map +1 -0
  301. package/dist/schemas/runtime/location.d.ts +111 -0
  302. package/dist/schemas/runtime/location.d.ts.map +1 -0
  303. package/dist/schemas/runtime/party.d.ts +52 -0
  304. package/dist/schemas/runtime/party.d.ts.map +1 -0
  305. package/dist/schemas/runtime/pending-choice.d.ts +77 -0
  306. package/dist/schemas/runtime/pending-choice.d.ts.map +1 -0
  307. package/dist/schemas/runtime/quest.d.ts +207 -0
  308. package/dist/schemas/runtime/quest.d.ts.map +1 -0
  309. package/dist/schemas/runtime/session.d.ts +102 -0
  310. package/dist/schemas/runtime/session.d.ts.map +1 -0
  311. package/dist/schemas/runtime/settings.d.ts +26 -0
  312. package/dist/schemas/runtime/settings.d.ts.map +1 -0
  313. package/dist/schemas/runtime/travel.d.ts +34 -0
  314. package/dist/schemas/runtime/travel.d.ts.map +1 -0
  315. package/dist/schemas/runtime/vehicle.d.ts +49 -0
  316. package/dist/schemas/runtime/vehicle.d.ts.map +1 -0
  317. package/dist/ttrpg-engine-dnd.cjs +6 -0
  318. package/dist/ttrpg-engine-dnd.cjs.map +1 -0
  319. package/dist/ttrpg-engine-dnd.js +10464 -0
  320. package/dist/ttrpg-engine-dnd.js.map +1 -0
  321. package/dist/types/index.d.ts +8 -0
  322. package/dist/types/index.d.ts.map +1 -0
  323. package/dist/version.d.ts +3 -0
  324. package/dist/version.d.ts.map +1 -0
  325. package/docs/api-overview.md +111 -0
  326. package/docs/concepts.md +154 -0
  327. package/docs/getting-started.md +142 -0
  328. package/docs/recipes.md +302 -0
  329. package/package.json +83 -0
@@ -0,0 +1,602 @@
1
+ import { z } from 'zod';
2
+ export declare const WeaponSchema: z.ZodObject<{
3
+ id: z.ZodString;
4
+ name: z.ZodString;
5
+ weight: z.ZodOptional<z.ZodNumber>;
6
+ cost: z.ZodOptional<z.ZodObject<{
7
+ amount: z.ZodNumber;
8
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ amount: number;
11
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
12
+ }, {
13
+ amount: number;
14
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
15
+ }>>;
16
+ } & {
17
+ itemKind: z.ZodLiteral<"weapon">;
18
+ category: z.ZodEnum<["simple", "martial"]>;
19
+ attackKind: z.ZodEnum<["melee", "ranged"]>;
20
+ damageType: z.ZodEnum<["acid", "bludgeoning", "cold", "fire", "force", "lightning", "necrotic", "piercing", "poison", "psychic", "radiant", "slashing", "thunder"]>;
21
+ damageDice: z.ZodString;
22
+ versatileDice: z.ZodOptional<z.ZodString>;
23
+ properties: z.ZodDefault<z.ZodArray<z.ZodEnum<["ammunition", "finesse", "heavy", "light", "loading", "reach", "thrown", "two-handed", "versatile", "special"]>, "many">>;
24
+ mastery: z.ZodOptional<z.ZodEnum<["Vex", "Topple", "Sap", "Nick", "Push", "Slow", "Cleave", "Graze", "Flex"]>>;
25
+ rangeNormal: z.ZodOptional<z.ZodNumber>;
26
+ rangeLong: z.ZodOptional<z.ZodNumber>;
27
+ }, "strip", z.ZodTypeAny, {
28
+ damageType: "acid" | "bludgeoning" | "cold" | "fire" | "force" | "lightning" | "necrotic" | "piercing" | "poison" | "psychic" | "radiant" | "slashing" | "thunder";
29
+ id: string;
30
+ name: string;
31
+ category: "simple" | "martial";
32
+ damageDice: string;
33
+ itemKind: "weapon";
34
+ attackKind: "melee" | "ranged";
35
+ properties: ("ammunition" | "finesse" | "heavy" | "light" | "loading" | "reach" | "thrown" | "two-handed" | "versatile" | "special")[];
36
+ cost?: {
37
+ amount: number;
38
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
39
+ } | undefined;
40
+ weight?: number | undefined;
41
+ versatileDice?: string | undefined;
42
+ mastery?: "Vex" | "Topple" | "Sap" | "Nick" | "Push" | "Slow" | "Cleave" | "Graze" | "Flex" | undefined;
43
+ rangeNormal?: number | undefined;
44
+ rangeLong?: number | undefined;
45
+ }, {
46
+ damageType: "acid" | "bludgeoning" | "cold" | "fire" | "force" | "lightning" | "necrotic" | "piercing" | "poison" | "psychic" | "radiant" | "slashing" | "thunder";
47
+ id: string;
48
+ name: string;
49
+ category: "simple" | "martial";
50
+ damageDice: string;
51
+ itemKind: "weapon";
52
+ attackKind: "melee" | "ranged";
53
+ cost?: {
54
+ amount: number;
55
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
56
+ } | undefined;
57
+ weight?: number | undefined;
58
+ versatileDice?: string | undefined;
59
+ properties?: ("ammunition" | "finesse" | "heavy" | "light" | "loading" | "reach" | "thrown" | "two-handed" | "versatile" | "special")[] | undefined;
60
+ mastery?: "Vex" | "Topple" | "Sap" | "Nick" | "Push" | "Slow" | "Cleave" | "Graze" | "Flex" | undefined;
61
+ rangeNormal?: number | undefined;
62
+ rangeLong?: number | undefined;
63
+ }>;
64
+ export type Weapon = z.infer<typeof WeaponSchema>;
65
+ export declare const ArmorSchema: z.ZodObject<{
66
+ id: z.ZodString;
67
+ name: z.ZodString;
68
+ weight: z.ZodOptional<z.ZodNumber>;
69
+ cost: z.ZodOptional<z.ZodObject<{
70
+ amount: z.ZodNumber;
71
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
72
+ }, "strip", z.ZodTypeAny, {
73
+ amount: number;
74
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
75
+ }, {
76
+ amount: number;
77
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
78
+ }>>;
79
+ } & {
80
+ itemKind: z.ZodLiteral<"armor">;
81
+ category: z.ZodEnum<["light", "medium", "heavy", "shield"]>;
82
+ baseAC: z.ZodNumber;
83
+ dexCap: z.ZodOptional<z.ZodNumber>;
84
+ strRequirement: z.ZodOptional<z.ZodNumber>;
85
+ stealthDisadvantage: z.ZodDefault<z.ZodBoolean>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ id: string;
88
+ name: string;
89
+ category: "heavy" | "light" | "medium" | "shield";
90
+ itemKind: "armor";
91
+ baseAC: number;
92
+ stealthDisadvantage: boolean;
93
+ dexCap?: number | undefined;
94
+ cost?: {
95
+ amount: number;
96
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
97
+ } | undefined;
98
+ weight?: number | undefined;
99
+ strRequirement?: number | undefined;
100
+ }, {
101
+ id: string;
102
+ name: string;
103
+ category: "heavy" | "light" | "medium" | "shield";
104
+ itemKind: "armor";
105
+ baseAC: number;
106
+ dexCap?: number | undefined;
107
+ cost?: {
108
+ amount: number;
109
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
110
+ } | undefined;
111
+ weight?: number | undefined;
112
+ strRequirement?: number | undefined;
113
+ stealthDisadvantage?: boolean | undefined;
114
+ }>;
115
+ export type Armor = z.infer<typeof ArmorSchema>;
116
+ export declare const ToolSchema: z.ZodObject<{
117
+ id: z.ZodString;
118
+ name: z.ZodString;
119
+ weight: z.ZodOptional<z.ZodNumber>;
120
+ cost: z.ZodOptional<z.ZodObject<{
121
+ amount: z.ZodNumber;
122
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
123
+ }, "strip", z.ZodTypeAny, {
124
+ amount: number;
125
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
126
+ }, {
127
+ amount: number;
128
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
129
+ }>>;
130
+ } & {
131
+ itemKind: z.ZodLiteral<"tool">;
132
+ category: z.ZodEnum<["artisan", "gaming", "musical", "other"]>;
133
+ }, "strip", z.ZodTypeAny, {
134
+ id: string;
135
+ name: string;
136
+ category: "artisan" | "gaming" | "musical" | "other";
137
+ itemKind: "tool";
138
+ cost?: {
139
+ amount: number;
140
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
141
+ } | undefined;
142
+ weight?: number | undefined;
143
+ }, {
144
+ id: string;
145
+ name: string;
146
+ category: "artisan" | "gaming" | "musical" | "other";
147
+ itemKind: "tool";
148
+ cost?: {
149
+ amount: number;
150
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
151
+ } | undefined;
152
+ weight?: number | undefined;
153
+ }>;
154
+ export type Tool = z.infer<typeof ToolSchema>;
155
+ export declare const MagicItemSchema: z.ZodObject<{
156
+ id: z.ZodString;
157
+ name: z.ZodString;
158
+ weight: z.ZodOptional<z.ZodNumber>;
159
+ cost: z.ZodOptional<z.ZodObject<{
160
+ amount: z.ZodNumber;
161
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
162
+ }, "strip", z.ZodTypeAny, {
163
+ amount: number;
164
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
165
+ }, {
166
+ amount: number;
167
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
168
+ }>>;
169
+ } & {
170
+ itemKind: z.ZodLiteral<"magic">;
171
+ rarity: z.ZodEnum<["common", "uncommon", "rare", "very-rare", "legendary", "artifact"]>;
172
+ requiresAttunement: z.ZodDefault<z.ZodBoolean>;
173
+ attunementCondition: z.ZodOptional<z.ZodString>;
174
+ charges: z.ZodOptional<z.ZodObject<{
175
+ max: z.ZodNumber;
176
+ recharge: z.ZodEnum<["shortRest", "longRest", "turn", "round", "dawn", "never"]>;
177
+ rechargeFormula: z.ZodOptional<z.ZodString>;
178
+ }, "strip", z.ZodTypeAny, {
179
+ max: number;
180
+ recharge: "never" | "shortRest" | "longRest" | "turn" | "round" | "dawn";
181
+ rechargeFormula?: string | undefined;
182
+ }, {
183
+ max: number;
184
+ recharge: "never" | "shortRest" | "longRest" | "turn" | "round" | "dawn";
185
+ rechargeFormula?: string | undefined;
186
+ }>>;
187
+ effects: z.ZodDefault<z.ZodArray<z.ZodType<import("../effects.js").Effect, z.ZodTypeDef, import("../effects.js").Effect>, "many">>;
188
+ }, "strip", z.ZodTypeAny, {
189
+ id: string;
190
+ name: string;
191
+ effects: import("../effects.js").Effect[];
192
+ itemKind: "magic";
193
+ rarity: "common" | "uncommon" | "rare" | "very-rare" | "legendary" | "artifact";
194
+ requiresAttunement: boolean;
195
+ cost?: {
196
+ amount: number;
197
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
198
+ } | undefined;
199
+ weight?: number | undefined;
200
+ attunementCondition?: string | undefined;
201
+ charges?: {
202
+ max: number;
203
+ recharge: "never" | "shortRest" | "longRest" | "turn" | "round" | "dawn";
204
+ rechargeFormula?: string | undefined;
205
+ } | undefined;
206
+ }, {
207
+ id: string;
208
+ name: string;
209
+ itemKind: "magic";
210
+ rarity: "common" | "uncommon" | "rare" | "very-rare" | "legendary" | "artifact";
211
+ cost?: {
212
+ amount: number;
213
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
214
+ } | undefined;
215
+ effects?: import("../effects.js").Effect[] | undefined;
216
+ weight?: number | undefined;
217
+ requiresAttunement?: boolean | undefined;
218
+ attunementCondition?: string | undefined;
219
+ charges?: {
220
+ max: number;
221
+ recharge: "never" | "shortRest" | "longRest" | "turn" | "round" | "dawn";
222
+ rechargeFormula?: string | undefined;
223
+ } | undefined;
224
+ }>;
225
+ export type MagicItem = z.infer<typeof MagicItemSchema>;
226
+ export declare const ConsumableSchema: z.ZodObject<{
227
+ id: z.ZodString;
228
+ name: z.ZodString;
229
+ weight: z.ZodOptional<z.ZodNumber>;
230
+ cost: z.ZodOptional<z.ZodObject<{
231
+ amount: z.ZodNumber;
232
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
233
+ }, "strip", z.ZodTypeAny, {
234
+ amount: number;
235
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
236
+ }, {
237
+ amount: number;
238
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
239
+ }>>;
240
+ } & {
241
+ itemKind: z.ZodLiteral<"consumable">;
242
+ onConsume: z.ZodDefault<z.ZodArray<z.ZodType<import("../effects.js").Effect, z.ZodTypeDef, import("../effects.js").Effect>, "many">>;
243
+ description: z.ZodOptional<z.ZodString>;
244
+ }, "strip", z.ZodTypeAny, {
245
+ id: string;
246
+ name: string;
247
+ itemKind: "consumable";
248
+ onConsume: import("../effects.js").Effect[];
249
+ cost?: {
250
+ amount: number;
251
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
252
+ } | undefined;
253
+ description?: string | undefined;
254
+ weight?: number | undefined;
255
+ }, {
256
+ id: string;
257
+ name: string;
258
+ itemKind: "consumable";
259
+ cost?: {
260
+ amount: number;
261
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
262
+ } | undefined;
263
+ description?: string | undefined;
264
+ weight?: number | undefined;
265
+ onConsume?: import("../effects.js").Effect[] | undefined;
266
+ }>;
267
+ export type Consumable = z.infer<typeof ConsumableSchema>;
268
+ export declare const GearSchema: z.ZodObject<{
269
+ id: z.ZodString;
270
+ name: z.ZodString;
271
+ weight: z.ZodOptional<z.ZodNumber>;
272
+ cost: z.ZodOptional<z.ZodObject<{
273
+ amount: z.ZodNumber;
274
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
275
+ }, "strip", z.ZodTypeAny, {
276
+ amount: number;
277
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
278
+ }, {
279
+ amount: number;
280
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
281
+ }>>;
282
+ } & {
283
+ itemKind: z.ZodLiteral<"gear">;
284
+ description: z.ZodOptional<z.ZodString>;
285
+ }, "strip", z.ZodTypeAny, {
286
+ id: string;
287
+ name: string;
288
+ itemKind: "gear";
289
+ cost?: {
290
+ amount: number;
291
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
292
+ } | undefined;
293
+ description?: string | undefined;
294
+ weight?: number | undefined;
295
+ }, {
296
+ id: string;
297
+ name: string;
298
+ itemKind: "gear";
299
+ cost?: {
300
+ amount: number;
301
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
302
+ } | undefined;
303
+ description?: string | undefined;
304
+ weight?: number | undefined;
305
+ }>;
306
+ export type Gear = z.infer<typeof GearSchema>;
307
+ export declare const ItemDefinitionSchema: z.ZodDiscriminatedUnion<"itemKind", [z.ZodObject<{
308
+ id: z.ZodString;
309
+ name: z.ZodString;
310
+ weight: z.ZodOptional<z.ZodNumber>;
311
+ cost: z.ZodOptional<z.ZodObject<{
312
+ amount: z.ZodNumber;
313
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
314
+ }, "strip", z.ZodTypeAny, {
315
+ amount: number;
316
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
317
+ }, {
318
+ amount: number;
319
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
320
+ }>>;
321
+ } & {
322
+ itemKind: z.ZodLiteral<"weapon">;
323
+ category: z.ZodEnum<["simple", "martial"]>;
324
+ attackKind: z.ZodEnum<["melee", "ranged"]>;
325
+ damageType: z.ZodEnum<["acid", "bludgeoning", "cold", "fire", "force", "lightning", "necrotic", "piercing", "poison", "psychic", "radiant", "slashing", "thunder"]>;
326
+ damageDice: z.ZodString;
327
+ versatileDice: z.ZodOptional<z.ZodString>;
328
+ properties: z.ZodDefault<z.ZodArray<z.ZodEnum<["ammunition", "finesse", "heavy", "light", "loading", "reach", "thrown", "two-handed", "versatile", "special"]>, "many">>;
329
+ mastery: z.ZodOptional<z.ZodEnum<["Vex", "Topple", "Sap", "Nick", "Push", "Slow", "Cleave", "Graze", "Flex"]>>;
330
+ rangeNormal: z.ZodOptional<z.ZodNumber>;
331
+ rangeLong: z.ZodOptional<z.ZodNumber>;
332
+ }, "strip", z.ZodTypeAny, {
333
+ damageType: "acid" | "bludgeoning" | "cold" | "fire" | "force" | "lightning" | "necrotic" | "piercing" | "poison" | "psychic" | "radiant" | "slashing" | "thunder";
334
+ id: string;
335
+ name: string;
336
+ category: "simple" | "martial";
337
+ damageDice: string;
338
+ itemKind: "weapon";
339
+ attackKind: "melee" | "ranged";
340
+ properties: ("ammunition" | "finesse" | "heavy" | "light" | "loading" | "reach" | "thrown" | "two-handed" | "versatile" | "special")[];
341
+ cost?: {
342
+ amount: number;
343
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
344
+ } | undefined;
345
+ weight?: number | undefined;
346
+ versatileDice?: string | undefined;
347
+ mastery?: "Vex" | "Topple" | "Sap" | "Nick" | "Push" | "Slow" | "Cleave" | "Graze" | "Flex" | undefined;
348
+ rangeNormal?: number | undefined;
349
+ rangeLong?: number | undefined;
350
+ }, {
351
+ damageType: "acid" | "bludgeoning" | "cold" | "fire" | "force" | "lightning" | "necrotic" | "piercing" | "poison" | "psychic" | "radiant" | "slashing" | "thunder";
352
+ id: string;
353
+ name: string;
354
+ category: "simple" | "martial";
355
+ damageDice: string;
356
+ itemKind: "weapon";
357
+ attackKind: "melee" | "ranged";
358
+ cost?: {
359
+ amount: number;
360
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
361
+ } | undefined;
362
+ weight?: number | undefined;
363
+ versatileDice?: string | undefined;
364
+ properties?: ("ammunition" | "finesse" | "heavy" | "light" | "loading" | "reach" | "thrown" | "two-handed" | "versatile" | "special")[] | undefined;
365
+ mastery?: "Vex" | "Topple" | "Sap" | "Nick" | "Push" | "Slow" | "Cleave" | "Graze" | "Flex" | undefined;
366
+ rangeNormal?: number | undefined;
367
+ rangeLong?: number | undefined;
368
+ }>, z.ZodObject<{
369
+ id: z.ZodString;
370
+ name: z.ZodString;
371
+ weight: z.ZodOptional<z.ZodNumber>;
372
+ cost: z.ZodOptional<z.ZodObject<{
373
+ amount: z.ZodNumber;
374
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
375
+ }, "strip", z.ZodTypeAny, {
376
+ amount: number;
377
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
378
+ }, {
379
+ amount: number;
380
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
381
+ }>>;
382
+ } & {
383
+ itemKind: z.ZodLiteral<"armor">;
384
+ category: z.ZodEnum<["light", "medium", "heavy", "shield"]>;
385
+ baseAC: z.ZodNumber;
386
+ dexCap: z.ZodOptional<z.ZodNumber>;
387
+ strRequirement: z.ZodOptional<z.ZodNumber>;
388
+ stealthDisadvantage: z.ZodDefault<z.ZodBoolean>;
389
+ }, "strip", z.ZodTypeAny, {
390
+ id: string;
391
+ name: string;
392
+ category: "heavy" | "light" | "medium" | "shield";
393
+ itemKind: "armor";
394
+ baseAC: number;
395
+ stealthDisadvantage: boolean;
396
+ dexCap?: number | undefined;
397
+ cost?: {
398
+ amount: number;
399
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
400
+ } | undefined;
401
+ weight?: number | undefined;
402
+ strRequirement?: number | undefined;
403
+ }, {
404
+ id: string;
405
+ name: string;
406
+ category: "heavy" | "light" | "medium" | "shield";
407
+ itemKind: "armor";
408
+ baseAC: number;
409
+ dexCap?: number | undefined;
410
+ cost?: {
411
+ amount: number;
412
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
413
+ } | undefined;
414
+ weight?: number | undefined;
415
+ strRequirement?: number | undefined;
416
+ stealthDisadvantage?: boolean | undefined;
417
+ }>, z.ZodObject<{
418
+ id: z.ZodString;
419
+ name: z.ZodString;
420
+ weight: z.ZodOptional<z.ZodNumber>;
421
+ cost: z.ZodOptional<z.ZodObject<{
422
+ amount: z.ZodNumber;
423
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
424
+ }, "strip", z.ZodTypeAny, {
425
+ amount: number;
426
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
427
+ }, {
428
+ amount: number;
429
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
430
+ }>>;
431
+ } & {
432
+ itemKind: z.ZodLiteral<"tool">;
433
+ category: z.ZodEnum<["artisan", "gaming", "musical", "other"]>;
434
+ }, "strip", z.ZodTypeAny, {
435
+ id: string;
436
+ name: string;
437
+ category: "artisan" | "gaming" | "musical" | "other";
438
+ itemKind: "tool";
439
+ cost?: {
440
+ amount: number;
441
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
442
+ } | undefined;
443
+ weight?: number | undefined;
444
+ }, {
445
+ id: string;
446
+ name: string;
447
+ category: "artisan" | "gaming" | "musical" | "other";
448
+ itemKind: "tool";
449
+ cost?: {
450
+ amount: number;
451
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
452
+ } | undefined;
453
+ weight?: number | undefined;
454
+ }>, z.ZodObject<{
455
+ id: z.ZodString;
456
+ name: z.ZodString;
457
+ weight: z.ZodOptional<z.ZodNumber>;
458
+ cost: z.ZodOptional<z.ZodObject<{
459
+ amount: z.ZodNumber;
460
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
461
+ }, "strip", z.ZodTypeAny, {
462
+ amount: number;
463
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
464
+ }, {
465
+ amount: number;
466
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
467
+ }>>;
468
+ } & {
469
+ itemKind: z.ZodLiteral<"magic">;
470
+ rarity: z.ZodEnum<["common", "uncommon", "rare", "very-rare", "legendary", "artifact"]>;
471
+ requiresAttunement: z.ZodDefault<z.ZodBoolean>;
472
+ attunementCondition: z.ZodOptional<z.ZodString>;
473
+ charges: z.ZodOptional<z.ZodObject<{
474
+ max: z.ZodNumber;
475
+ recharge: z.ZodEnum<["shortRest", "longRest", "turn", "round", "dawn", "never"]>;
476
+ rechargeFormula: z.ZodOptional<z.ZodString>;
477
+ }, "strip", z.ZodTypeAny, {
478
+ max: number;
479
+ recharge: "never" | "shortRest" | "longRest" | "turn" | "round" | "dawn";
480
+ rechargeFormula?: string | undefined;
481
+ }, {
482
+ max: number;
483
+ recharge: "never" | "shortRest" | "longRest" | "turn" | "round" | "dawn";
484
+ rechargeFormula?: string | undefined;
485
+ }>>;
486
+ effects: z.ZodDefault<z.ZodArray<z.ZodType<import("../effects.js").Effect, z.ZodTypeDef, import("../effects.js").Effect>, "many">>;
487
+ }, "strip", z.ZodTypeAny, {
488
+ id: string;
489
+ name: string;
490
+ effects: import("../effects.js").Effect[];
491
+ itemKind: "magic";
492
+ rarity: "common" | "uncommon" | "rare" | "very-rare" | "legendary" | "artifact";
493
+ requiresAttunement: boolean;
494
+ cost?: {
495
+ amount: number;
496
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
497
+ } | undefined;
498
+ weight?: number | undefined;
499
+ attunementCondition?: string | undefined;
500
+ charges?: {
501
+ max: number;
502
+ recharge: "never" | "shortRest" | "longRest" | "turn" | "round" | "dawn";
503
+ rechargeFormula?: string | undefined;
504
+ } | undefined;
505
+ }, {
506
+ id: string;
507
+ name: string;
508
+ itemKind: "magic";
509
+ rarity: "common" | "uncommon" | "rare" | "very-rare" | "legendary" | "artifact";
510
+ cost?: {
511
+ amount: number;
512
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
513
+ } | undefined;
514
+ effects?: import("../effects.js").Effect[] | undefined;
515
+ weight?: number | undefined;
516
+ requiresAttunement?: boolean | undefined;
517
+ attunementCondition?: string | undefined;
518
+ charges?: {
519
+ max: number;
520
+ recharge: "never" | "shortRest" | "longRest" | "turn" | "round" | "dawn";
521
+ rechargeFormula?: string | undefined;
522
+ } | undefined;
523
+ }>, z.ZodObject<{
524
+ id: z.ZodString;
525
+ name: z.ZodString;
526
+ weight: z.ZodOptional<z.ZodNumber>;
527
+ cost: z.ZodOptional<z.ZodObject<{
528
+ amount: z.ZodNumber;
529
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
530
+ }, "strip", z.ZodTypeAny, {
531
+ amount: number;
532
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
533
+ }, {
534
+ amount: number;
535
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
536
+ }>>;
537
+ } & {
538
+ itemKind: z.ZodLiteral<"consumable">;
539
+ onConsume: z.ZodDefault<z.ZodArray<z.ZodType<import("../effects.js").Effect, z.ZodTypeDef, import("../effects.js").Effect>, "many">>;
540
+ description: z.ZodOptional<z.ZodString>;
541
+ }, "strip", z.ZodTypeAny, {
542
+ id: string;
543
+ name: string;
544
+ itemKind: "consumable";
545
+ onConsume: import("../effects.js").Effect[];
546
+ cost?: {
547
+ amount: number;
548
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
549
+ } | undefined;
550
+ description?: string | undefined;
551
+ weight?: number | undefined;
552
+ }, {
553
+ id: string;
554
+ name: string;
555
+ itemKind: "consumable";
556
+ cost?: {
557
+ amount: number;
558
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
559
+ } | undefined;
560
+ description?: string | undefined;
561
+ weight?: number | undefined;
562
+ onConsume?: import("../effects.js").Effect[] | undefined;
563
+ }>, z.ZodObject<{
564
+ id: z.ZodString;
565
+ name: z.ZodString;
566
+ weight: z.ZodOptional<z.ZodNumber>;
567
+ cost: z.ZodOptional<z.ZodObject<{
568
+ amount: z.ZodNumber;
569
+ currency: z.ZodEnum<["cp", "sp", "ep", "gp", "pp"]>;
570
+ }, "strip", z.ZodTypeAny, {
571
+ amount: number;
572
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
573
+ }, {
574
+ amount: number;
575
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
576
+ }>>;
577
+ } & {
578
+ itemKind: z.ZodLiteral<"gear">;
579
+ description: z.ZodOptional<z.ZodString>;
580
+ }, "strip", z.ZodTypeAny, {
581
+ id: string;
582
+ name: string;
583
+ itemKind: "gear";
584
+ cost?: {
585
+ amount: number;
586
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
587
+ } | undefined;
588
+ description?: string | undefined;
589
+ weight?: number | undefined;
590
+ }, {
591
+ id: string;
592
+ name: string;
593
+ itemKind: "gear";
594
+ cost?: {
595
+ amount: number;
596
+ currency: "cp" | "sp" | "ep" | "gp" | "pp";
597
+ } | undefined;
598
+ description?: string | undefined;
599
+ weight?: number | undefined;
600
+ }>]>;
601
+ export type ItemDefinition = z.infer<typeof ItemDefinitionSchema>;
602
+ //# sourceMappingURL=item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../../../src/schemas/content/item.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAsBxB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOtB,CAAC;AACH,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAEhD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGrB,CAAC;AACH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAE9C,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAI3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGrB,CAAC;AACH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAE9C,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAO/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC"}