/** * Item Preset Registry * * Aggregates all item preset sources into a unified, searchable database. * Easy to extend - just import new sources and add to SOURCES array. * * Usage: * getItemPreset('longsword') -> WeaponPreset * getItemPreset('+1 longsword') -> MagicItemPreset * searchItems({ type: 'weapon', properties: ['finesse'] }) * listItemsByType('armor') */ import type { ItemPreset, ItemSearchCriteria, SearchResult, ItemType, WeaponPreset, ArmorPreset, GearPreset, MagicItemPreset } from './types.js'; export * from './types.js'; /** * Normalize an item name for lookup. * "Longsword" -> "longsword" * "+1 Longsword" -> "+1_longsword" * "Studded Leather" -> "studded_leather" */ export declare function normalizeKey(name: string): string; /** * Get an item preset by name (case-insensitive, flexible matching) */ export declare function getItemPreset(name: string): ItemPreset | null; /** * Get a weapon preset by name */ export declare function getWeaponPreset(name: string): WeaponPreset | null; /** * Get an armor preset by name */ export declare function getArmorPreset(name: string): ArmorPreset | null; /** * Get a gear preset by name */ export declare function getGearPreset(name: string): GearPreset | null; /** * Get a magic item preset by name */ export declare function getMagicItemPreset(name: string): MagicItemPreset | null; /** * Check if a preset exists */ export declare function hasItemPreset(name: string): boolean; /** * Search items with flexible criteria */ export declare function searchItems(criteria: ItemSearchCriteria): SearchResult[]; /** * List all items of a specific type */ export declare function listItemsByType(type: ItemType): ItemPreset[]; /** * List all items with a specific tag */ export declare function listItemsByTag(tag: string): ItemPreset[]; /** * List all available item keys */ export declare function listAllItemKeys(): string[]; /** * List all available tags */ export declare function listAllTags(): string[]; /** * Get statistics about the registry */ export declare function getRegistryStats(): { totalItems: number; byType: Record; sources: string[]; }; //# sourceMappingURL=index.d.ts.map