/** * D&D 5e SRD Creature Presets * * Provides pre-configured creature stat blocks for common monsters. * These reduce token overhead by ~90% compared to manual specification. * * Usage: * getCreaturePreset('goblin') -> full stat block * expandCreatureTemplate('goblin:archer') -> goblin with shortbow * * Template syntax: "creature" or "creature:variant" */ /** * Partial character data for presets - id, createdAt, updatedAt generated on use */ export interface CreaturePreset { name: string; stats: { str: number; dex: number; con: number; int: number; wis: number; cha: number; }; hp: number; maxHp: number; ac: number; level: number; characterType: 'enemy' | 'npc'; race?: string; characterClass?: string; resistances?: string[]; vulnerabilities?: string[]; immunities?: string[]; defaultAttack?: { name: string; damage: string; damageType: string; toHit?: number; }; size?: 'tiny' | 'small' | 'medium' | 'large' | 'huge' | 'gargantuan'; speed?: number; perceptionBonus?: number; stealthBonus?: number; cr?: number; xpValue?: number; traits?: string[]; } /** * Creature variant modifiers */ interface CreatureVariant { namePrefix?: string; nameSuffix?: string; hpModifier?: number; acModifier?: number; statModifiers?: Partial<{ str: number; dex: number; con: number; int: number; wis: number; cha: number; }>; defaultAttack?: CreaturePreset['defaultAttack']; equipment?: string[]; } export declare const CREATURE_PRESETS: Record; export declare const CREATURE_VARIANTS: Record>; /** * Get a raw creature preset by name */ export declare function getCreaturePreset(name: string): CreaturePreset | null; /** * Parse a creature template string like "goblin:archer" or just "goblin" */ export declare function parseCreatureTemplate(template: string): { base: string; variant?: string; }; /** * Expand a creature template into a full preset with variant applied */ export declare function expandCreatureTemplate(template: string, nameOverride?: string): CreaturePreset | null; /** * List all available creature presets */ export declare function listCreaturePresets(): string[]; /** * List all variants for a creature */ export declare function listCreatureVariants(creatureName: string): string[]; /** * Get all available templates (base and variants) as strings */ export declare function listAllTemplates(): string[]; export {}; //# sourceMappingURL=creature-presets.d.ts.map