import { OsrsAccount } from '../account/OsrsAccount';
import { Quest } from './Quest';
declare class QuestTool {
    private osrsAccount;
    constructor(account?: OsrsAccount);
    /**
     * Set the account to be used in this quest tool
     * @param  {OsrsAccount} acc1 The osrs Account to be associated with this class object.
     */
    setOsrsAccount(acc1: OsrsAccount): boolean;
    /**
     * Get the osrs account associated with this quest tool
     * @return  {OsrsAccount | undefined} The osrs Account associated with this class object.
     */
    getOsrsAccount(): OsrsAccount | undefined;
    /**
     * Determine if the account can complete a quest, including recursively checking quest requirements.
     * @param quest The quest to check (must be a Quest instance)
     * @param visited (internal) Set of quest names already checked to prevent infinite recursion
     */
    canCompleteQuest(quest: Quest | undefined, visited?: Set<string>): boolean;
    /**
     * Static utility to get a Quest instance by its name.
     * This assumes all quests are exported as default from their respective files in quest/all/.
     * @param questName The name of the quest to retrieve
     * @returns Quest instance or undefined if not found
     */
    static getQuestByName(questName: string): Quest | undefined;
    /**
     * Get the maximum boost for a given skill, based on OSRS Wiki data.
     * @param skillName The name of the skill (case-insensitive, e.g. 'Attack', 'Herblore')
     * @returns The maximum boost amount for the skill (positive integer, or 0 if unboostable)
     */
    static getMaxSkillBoost(skillName: string): number;
}
export { QuestTool };
