export type Resource = { name: string, fontColorClass: string, bgColorClass: string } export interface IResourceCardProps { resource: Resource, isMining: boolean, yieldPerSecond: number } export type Modifier = { resource: Resource | undefined, yield: number } export type Yield = { resource: Resource | undefined, baseYield: number } export type Moon = { name: string, description: string, resources: Resource[] drill: Drill | null } export type Drill = { name: string, description: string, price: number, yield: Yield[] upgrades: Upgrade[] | null } export type Upgrade = { name: string, description: string, price: number, modifiers: Modifier[] owned: boolean }