import { Feature } from "../../private/Feature";
export declare class CustomStages extends Feature {
    /** Indexed by custom stage name. */
    private readonly customStagesMap;
    /** Indexed by room variant. */
    private readonly customStageCachedRoomData;
    private usingRedKey;
    private readonly customGridEntities;
    private readonly customTrapdoors;
    private readonly disableAllSound;
    private readonly gameReorderedCallbacks;
    private readonly pause;
    private readonly runInNFrames;
    private initCustomStageMetadata;
    private initRoomTypeMap;
    private initCustomTrapdoorDestination;
    private readonly goToCustomStage;
    private readonly postRender;
    /**
     * Fix the bug where Red Key will not work on custom floors (due to the stage being a bugged
     * value).
     */
    private readonly postUseItemRedKey;
    private readonly postCurseEval;
    private readonly getShaderParams;
    /**
     * Fix the bug where Red Key will not work on custom floors (due to the stage being a bugged
     * value).
     */
    private readonly preUseItemRedKey;
    private readonly postGridEntityBrokenRockAlt;
    private readonly postGridEntityInit;
    private readonly postNewRoomReordered;
    /** Pick a custom room for each vanilla room. */
    private setStageRoomsData;
    /**
     * Helper function to warp to a custom stage/level.
     *
     * Custom stages/levels must first be defined in the "tsconfig.json" file. See the documentation
     * for more details: https://isaacscript.github.io/main/custom-stages/
     *
     * In order to use this function, you must upgrade your mod with `ISCFeature.CUSTOM_STAGES`.
     *
     * @param name The name of the custom stage, corresponding to what is in the "tsconfig.json" file.
     * @param firstFloor Optional. Whether to go to the first floor or the second floor. For example,
     *                   if you have a custom stage emulating Caves, then the first floor would be
     *                   Caves 1, and the second floor would be Caves 2. Default is true.
     * @param streakText Optional. Whether to show the streak text at the top of the screen that
     *                   announces the name of the level. Default is true.
     * @param verbose Optional. Whether to log additional information about the rooms that are chosen.
     *                Default is false.
     * @public
     */
    setCustomStage(name: string, firstFloor?: boolean, streakText?: boolean, verbose?: boolean): void;
    /**
     * Helper function to disable the custom stage. This is typically called before taking the player
     * to a vanilla floor.
     *
     * In order to use this function, you must upgrade your mod with `ISCFeature.CUSTOM_STAGES`.
     *
     * @public
     */
    disableCustomStage(): void;
}
//# sourceMappingURL=CustomStages.d.ts.map