import { Crop, type CropInfo } from '../constants/crops.js';
interface CalculateDropsOptions {
    farmingFortune?: number;
    cropFortune?: Record<Crop, number>;
    blocksBroken: number;
    dicerLevel?: 1 | 2 | 3;
    armorPieces?: 1 | 2 | 3 | 4;
}
type CropFortuneOption = {
    cropFortune?: Partial<Record<Crop, number>>;
};
export declare function calculateAverageDrops(options: CalculateDropsOptions & CropFortuneOption): Record<Crop, number>;
interface CalculateExpectedDropsOptions extends CalculateDropsOptions {
    blocksBroken: number;
    crop: Crop;
}
export declare function calculateExpectedDrops(options: CalculateExpectedDropsOptions): number;
export interface FortuneRequiredCalculatorOptions {
    blocksBroken: number;
    crop: Crop;
    collection: number;
    useMooshroom?: boolean;
}
export declare function getFortuneRequiredForCollection(options: FortuneRequiredCalculatorOptions): number;
export declare function getNPCProfitFromCrops(crop: Crop, amount: number): number;
interface PossibleProfit {
    items: number;
    fractionalItems: number;
    remainder: number;
    cost: number;
    fractionalCost: number;
}
export declare function getPossibleResultsFromCrops(crop: Crop, amount: number): Record<string, PossibleProfit>;
export declare function getCropInfo(crop: Crop): CropInfo;
export {};
