declare global { /** * Represents an item in the build tree */ interface ItemTree { count: number data: number children: ItemTree[] } /** * Represents a complete build with runes and items */ interface Build { runeKeystone: number runes: Rune[] items: ItemTree bootsFirst: number count: number boots: Array<{ count: number; data: number }> suppItems: Array<{ count: number; data: number }> startItems: Array<{ count: number; data: number }> pickrate: number } /** * Represents champion build information (array of builds) */ type Builds = Array /** * Represents a rune configuration */ interface Rune { count: number primaryStyle: number secondaryStyle: number selections: number[] pickrate: number } /** * Represents counter data for a champion */ interface MatchupData { championId: number winrate: number games: number championName: string championAlias: string } /** * Represents lane-specific champion data */ interface LaneData { data: string count: number winningMatches: number losingMatches: number winrate: number pickrate: number builds?: Builds summonerSpells: Array<{ id: number; count: number; pickrate: number }> matchups?: MatchupData[] } /** * Represents complete champion data */ interface ChampionData { id: number name: string alias: string gameCount: number winrate: number pickrate: number lanes: LaneData[] } /** * Champion summary from CDragon */ interface ChampionSummary { id: number name: string alias: string squarePortraitPath: string // Add other relevant fields as needed } } export {}