import { UpgradeableInfo } from '../fortune/upgradable';
import { Rarity, ReforgeTarget } from './reforges';
import { Skill } from './skills';
import { SpecialCrop } from './specialcrops';
import { Stat } from './stats';
import { Upgrade } from './upgrades';
export declare enum GearSlot {
	Boots = 'Boots',
	Leggings = 'Leggings',
	Chestplate = 'Chestplate',
	Helmet = 'Helmet',
	Necklace = 'Necklace',
	Cloak = 'Cloak',
	Belt = 'Belt',
	Gloves = 'Gloves',
}
export interface GearSlotInfo {
	name: string;
	startingItem: string;
	target: ReforgeTarget;
}
export declare const GEAR_SLOTS: Record<GearSlot, GearSlotInfo>;
export interface FarmingArmorInfo extends UpgradeableInfo {
	special?: SpecialCrop[];
	slot: GearSlot;
	family?: string;
	name: string;
	maxRarity: Rarity;
	upgrade?: Upgrade;
	wiki: string;
	contestStatsMultiplier?: number;
	perLevelStats?: {
		skill: Skill;
		appliesTo?: ReforgeTarget[];
		stats: Partial<Record<Stat, number>>;
	};
	skillReq?: Partial<Record<Skill, number>>;
}
export declare const ARMOR_INFO: Record<string, FarmingArmorInfo>;
export type ArmorSetBonusStats = Partial<Record<number, Partial<Record<Stat, number>>>>;
export interface ArmorSetBonus {
	name: string;
	piecePotential?: Partial<Record<Stat, number>>;
	stats: ArmorSetBonusStats;
	special?: SpecialCrop[];
}
export declare const ARMOR_SET_BONUS: Record<string, ArmorSetBonus>;
