import { OnRunProps } from '@drincs/nqtr';
import { StoredClassModel } from '@drincs/pixi-vn';
import { c as StageBaseInternalInterface, S as StageInterface, a as QuestsRequiredType } from '../../StageInterface-DX74DUxG.mjs';

declare class StageStoredClass extends StoredClassModel implements StageBaseInternalInterface {
    constructor(id: string, options?: {
        /**
         * The function that will be executed when the stage starts.
         */
        onStart?: (stage: StageInterface, props: OnRunProps) => void;
        /**
         * The function that will be executed when the stage ends.
         */
        onEnd?: (stage: StageInterface, props: OnRunProps) => void;
        /**
         * The day required to start the stage.
         * @example If the value is 3, and the previous stage ends on day 1, the stage will start on day 4.
         */
        daysRequiredToStart?: number;
        /**
         * The quests required to start the stage.
         * @default []
         */
        questsRequiredToStart?: QuestsRequiredType[];
    });
    private _onStart?;
    get onStart(): undefined | ((stage: StageInterface, props: OnRunProps) => void);
    private _onEnd?;
    get onEnd(): undefined | ((stage: StageInterface, props: OnRunProps) => void);
    get completed(): boolean;
    set completed(value: boolean);
    get started(): boolean;
    set started(value: boolean);
    private get prevStageEndDay();
    private set prevStageEndDay(value);
    get startDay(): number | undefined;
    get canStart(): boolean;
    inizialize(): void;
    start(props: OnRunProps): void;
    private _daysRequiredToStart?;
    get daysRequiredToStart(): number;
    private _questsRequiredToStart;
    get questsRequiredToStart(): QuestsRequiredType[];
}

export { StageStoredClass as default };
