-
Notifications
You must be signed in to change notification settings - Fork 309
/
data.ts
23 lines (18 loc) · 749 Bytes
/
data.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import { EquipmentTrait } from "@item/equipment/data.ts";
import {
BasePhysicalItemSource,
PhysicalItemTraits,
PhysicalSystemData,
PhysicalSystemSource,
} from "@item/physical/data.ts";
type BookSource = BasePhysicalItemSource<"book", BookSystemSource>;
type BookTraits = PhysicalItemTraits<EquipmentTrait>;
interface BookSystemSource extends PhysicalSystemSource {
traits: BookTraits;
category: "formula" | "spell";
capacity: number;
contents: ItemUUID[];
}
interface BookSystemData extends Omit<BookSystemSource, SourceOmission>, PhysicalSystemData {}
type SourceOmission = "bulk" | "hp" | "identification" | "material" | "price" | "temporary" | "traits" | "usage";
export type { BookSource, BookSystemData };