import { Crop } from '../../constants/crops.js';
import { FortuneSourceProgress } from '../../constants/upgrades.js';
import { FarmingTool } from '../../fortune/farmingtool.js';
import { EliteItemDto } from '../../fortune/item.js';
import { UpgradeableInfo } from '../../fortune/upgradeable.js';
export interface DynamicFortuneSource<T> {
    name: string;
    crop?: Crop;
    api?: boolean;
    wiki?: (source: T) => string | undefined;
    exists: (source: T) => boolean;
    max: (source: T) => number;
    current: (source: T) => number;
    progress?: (source: T) => FortuneSourceProgress[];
    info?: (source: T) => {
        item?: EliteItemDto;
        info?: UpgradeableInfo;
        nextInfo?: UpgradeableInfo;
        maxInfo?: UpgradeableInfo;
    };
}
export declare const TOOL_FORTUNE_SOURCES: DynamicFortuneSource<FarmingTool>[];
