/** The INI file a component belongs to */ export type IniFile = 'events.ini' | 'tiles.ini' | 'tokens.ini' | 'spawns.ini' | 'items.ini' | 'ui.ini' | 'other.ini'; /** Map component type prefix to INI file */ export declare const COMPONENT_FILE_MAP: Record; /** Determine which INI file a component belongs to by its section name */ export declare function getIniFileForSection(sectionName: string): IniFile; /** Determine the component type prefix from a component name */ export declare function getTypePrefix(name: string): string; /** Reference fields that may contain space-separated component names */ export declare const REFERENCE_FIELDS: readonly ["event1", "event2", "event3", "event4", "event5", "event6", "add", "remove", "monster", "inspect"]; /** Event-specific reference fields (event1..event6) */ export declare const EVENT_FIELDS: readonly ["event1", "event2", "event3", "event4", "event5", "event6"]; /** Split a space-separated reference value into individual names */ export declare function parseRefList(value: string): string[]; /** INI sections that contain bare keys (filenames) instead of key=value pairs */ export declare const BARE_KEY_SECTIONS: Set; /** A single INI section: key-value pairs (undefined for absent keys) */ export interface IniSection { [key: string]: string | undefined; } /** Parsed INI file: section name -> key-value pairs */ export interface IniData { [sectionName: string]: IniSection; } /** Quest config from quest.ini [Quest] section */ export interface QuestConfig { format: number; type: 'MoM'; hidden: boolean; defaultlanguage: string; defaultmusicon: boolean; difficulty: number; lengthmin: number; lengthmax: number; image: string; version: string; packs: string; } /** A generic scenario component (any INI section) */ export interface ScenarioComponent { /** Section name (unique ID) e.g. "EventStart", "TileTownSquare" */ name: string; /** Which INI file this component belongs to */ file: IniFile; /** Raw key-value data */ data: IniSection; } /** Validation severity */ export type ValidationSeverity = 'error' | 'warning'; /** A single validation result */ export interface ValidationResult { rule: string; severity: ValidationSeverity; message: string; component?: string; field?: string; } /** Default quest config for new scenarios */ export declare const DEFAULT_QUEST_CONFIG: QuestConfig; /** Serialize a QuestConfig into key-value pairs for INI writing */ export declare function serializeQuestConfig(config: QuestConfig): Record; //# sourceMappingURL=component-types.d.ts.map