import materialsData from "../../data/materials.json";
import { MaterialCategory } from "../types/Category";
import { Rarity } from "../types/Rarity";
import { Event } from "./events";
import { Faction } from "./factions";
export declare class Material {
    id: string;
    rarity: Rarity;
    category: MaterialCategory;
    required?: Map<Material, number>;
    requiredRank?: string;
    faction?: Faction;
    event?: Event;
    deprecated?: boolean;
    constructor(id: string, rarity: Rarity, category: MaterialCategory, requiredRank?: string, faction?: Faction, event?: Event, deprecated?: boolean);
    static fromRawData(key: string, rawData: any): Material;
    static updateMaterialWithRequired(key: string, rawData: any, materials: Record<string, Material>): void;
    static loadMaterials(): Record<string, Material>;
}
type Materials = {
    [K in keyof typeof materialsData]: Material;
};
export declare const Materials: Materials;
export {};
//# sourceMappingURL=materials.d.ts.map