import { Template, ChainDefinition } from './templates'; import { NPC } from './npcs'; import { RuleDefinition } from './rules'; import { AIEnhancementOptions } from '../ai'; import { SeededRandom } from '../utils/random'; export interface GeneratorOptions { /** Injectable seeded RNG for reproducible generation */ rng?: SeededRandom; stateSize?: number; trainingData?: string[]; theme?: string | null; culture?: string | null; enableTemplates?: boolean; templateLibrary?: string | null; enableDependencies?: boolean; enableModifiers?: boolean; enableRelationships?: boolean; language?: string; pureMarkovMode?: boolean; enableRuleEngine?: boolean; customRules?: { [key: string]: RuleDefinition; }; aiEnhancement?: AIEnhancementOptions; enableDatabase?: boolean; databaseAdapter?: any; debug?: boolean; } export interface MarkovOptions { stateSize?: number; minLength?: number; maxLength?: number; maxTries?: number; allowDuplicates?: boolean; } export interface ExportData { templates: { [key: string]: Template; }; trainingData: { [key: string]: string[]; }; chains: { [key: string]: ChainDefinition; }; rules?: { [key: string]: RuleDefinition; }; npcs?: { [key: string]: NPC; }; } export interface ImportResult { templates: { success: number; failed: string[]; }; trainingData: { success: number; failed: string[]; }; chains: { success: number; failed: string[]; }; rules?: { success: number; failed: string[]; }; npcs?: { success: number; failed: string[]; }; } export interface DifficultyTier { powerRange: [number, number]; rewardMultiplier: number; penaltyMultiplier: number; } export interface DifficultySettings { easy: DifficultyTier; normal: DifficultyTier; hard: DifficultyTier; legendary: DifficultyTier; } export interface ValidationResult { valid: boolean; errors: string[]; } export interface ThemeData { name: string; version: string; created: string; author: string; description: string; tags: string[]; license: string; settings: Partial; trainingData: string[]; templates?: { [key: string]: Template; }; chains?: { [key: string]: ChainDefinition; }; rules?: { [key: string]: RuleDefinition; }; } //# sourceMappingURL=config.d.ts.map