import type { Creature, CreatureId, Encounter, PlayerCharacter, } from "@initiative/domain"; export interface EncounterStore { get(): Encounter; save(encounter: Encounter): void; } export interface BestiarySourceCache { getCreature(creatureId: CreatureId): Creature | undefined; isSourceCached(sourceCode: string): boolean; } export interface PlayerCharacterStore { getAll(): PlayerCharacter[]; save(characters: PlayerCharacter[]): void; }