import { Crop } from '../../constants/crops.js';
import { Rarity, ReforgeTarget } from '../../constants/reforges.js';
import { UpgradeReason } from '../../constants/upgrades.js';
import { BaseItem } from '../base-item.js';
export declare class CactusKnife1 extends BaseItem {
    get skyblockId(): string;
    get name(): string;
    get wiki(): string;
    get maxRarity(): Rarity;
    crops: Crop[];
    type: ReforgeTarget;
    gemSlots: import("./gem-slots.js").ToolGemSlot[];
    upgrade: {
        id: string;
        reason: UpgradeReason;
        cost: {
            items: {
                ENCHANTED_CACTUS: number;
                JACOBS_TICKET: number;
            };
        };
    };
}
export declare class CactusKnife2 extends BaseItem {
    get skyblockId(): string;
    get name(): string;
    get wiki(): string;
    get maxRarity(): Rarity;
    crops: Crop[];
    type: ReforgeTarget;
    gemSlots: import("./gem-slots.js").ToolGemSlot[];
    upgrade: {
        id: string;
        reason: UpgradeReason;
        cost: {
            items: {
                ENCHANTED_CACTUS: number;
                JACOBS_TICKET: number;
            };
        };
    };
}
export declare class CactusKnife3 extends BaseItem {
    get skyblockId(): string;
    get name(): string;
    get wiki(): string;
    get maxRarity(): Rarity;
    crops: Crop[];
    type: ReforgeTarget;
    gemSlots: import("./gem-slots.js").ToolGemSlot[];
}
