import type { ModCallbackCustomToClass } from "./callbacks";
import { CustomGridEntities } from "./classes/features/callbackLogic/CustomGridEntities";
import { CustomRevive } from "./classes/features/callbackLogic/CustomRevive";
import { EsauJrDetection } from "./classes/features/callbackLogic/EsauJrDetection";
import { FlipDetection } from "./classes/features/callbackLogic/FlipDetection";
import { GameReorderedCallbacks } from "./classes/features/callbackLogic/GameReorderedCallbacks";
import { GridEntityCollisionDetection } from "./classes/features/callbackLogic/GridEntityCollisionDetection";
import { GridEntityRenderDetection } from "./classes/features/callbackLogic/GridEntityRenderDetection";
import { GridEntityUpdateDetection } from "./classes/features/callbackLogic/GridEntityUpdateDetection";
import { ItemPickupDetection } from "./classes/features/callbackLogic/ItemPickupDetection";
import { PickupChangeDetection } from "./classes/features/callbackLogic/PickupChangeDetection";
import { PlayerCollectibleDetection } from "./classes/features/callbackLogic/PlayerCollectibleDetection";
import { PlayerReorderedCallbacks } from "./classes/features/callbackLogic/PlayerReorderedCallbacks";
import { SlotDestroyedDetection } from "./classes/features/callbackLogic/SlotDestroyedDetection";
import { SlotRenderDetection } from "./classes/features/callbackLogic/SlotRenderDetection";
import { SlotUpdateDetection } from "./classes/features/callbackLogic/SlotUpdateDetection";
import { CharacterHealthConversion } from "./classes/features/other/CharacterHealthConversion";
import { CharacterStats } from "./classes/features/other/CharacterStats";
import { CollectibleItemPoolType } from "./classes/features/other/CollectibleItemPoolType";
import { CustomHotkeys } from "./classes/features/other/CustomHotkeys";
import { CustomItemPools } from "./classes/features/other/CustomItemPools";
import { CustomPickups } from "./classes/features/other/CustomPickups";
import { CustomStages } from "./classes/features/other/CustomStages";
import { CustomTrapdoors } from "./classes/features/other/CustomTrapdoors";
import { DebugDisplay } from "./classes/features/other/DebugDisplay";
import { DeployJSONRoom } from "./classes/features/other/DeployJSONRoom";
import { DisableAllSound } from "./classes/features/other/DisableAllSound";
import { DisableInputs } from "./classes/features/other/DisableInputs";
import { EdenStartingStatsHealth } from "./classes/features/other/EdenStartingStatsHealth";
import { ExtraConsoleCommands } from "./classes/features/other/ExtraConsoleCommands";
import { FadeInRemover } from "./classes/features/other/FadeInRemover";
import { FastReset } from "./classes/features/other/FastReset";
import { FlyingDetection } from "./classes/features/other/FlyingDetection";
import { ForgottenSwitch } from "./classes/features/other/ForgottenSwitch";
import { ItemPoolDetection } from "./classes/features/other/ItemPoolDetection";
import { ModdedElementDetection } from "./classes/features/other/ModdedElementDetection";
import { ModdedElementSets } from "./classes/features/other/ModdedElementSets";
import { NoSirenSteal } from "./classes/features/other/NoSirenSteal";
import { Pause } from "./classes/features/other/Pause";
import { PersistentEntities } from "./classes/features/other/PersistentEntities";
import { PickupIndexCreation } from "./classes/features/other/PickupIndexCreation";
import { PlayerCollectibleTracking } from "./classes/features/other/PlayerCollectibleTracking";
import { PonyDetection } from "./classes/features/other/PonyDetection";
import { PressInput } from "./classes/features/other/PressInput";
import { PreventChildEntities } from "./classes/features/other/PreventChildEntities";
import { PreventGridEntityRespawn } from "./classes/features/other/PreventGridEntityRespawn";
import { RerunDetection } from "./classes/features/other/RerunDetection";
import { RoomClearFrame } from "./classes/features/other/RoomClearFrame";
import { RoomHistory } from "./classes/features/other/RoomHistory";
import { RunInNFrames } from "./classes/features/other/RunInNFrames";
import { RunNextRoom } from "./classes/features/other/RunNextRoom";
import { RunNextRun } from "./classes/features/other/RunNextRun";
import { SaveDataManager } from "./classes/features/other/SaveDataManager";
import { SpawnRockAltRewards } from "./classes/features/other/SpawnRockAltRewards";
import { StageHistory } from "./classes/features/other/StageHistory";
import { StartAmbush } from "./classes/features/other/StartAmbush";
import { TaintedLazarusPlayers } from "./classes/features/other/TaintedLazarusPlayers";
import { UnlockAchievementsDetection } from "./classes/features/other/UnlockAchievementsDetection";
import { ISCFeature } from "./enums/ISCFeature";
import type { ModUpgradedInterface } from "./interfaces/private/ModUpgradedInterface";
export interface ISCFeatureToClass {
    [ISCFeature.CUSTOM_REVIVE]: CustomRevive;
    [ISCFeature.ESAU_JR_DETECTION]: EsauJrDetection;
    [ISCFeature.FLIP_DETECTION]: FlipDetection;
    [ISCFeature.GRID_ENTITY_COLLISION_DETECTION]: GridEntityCollisionDetection;
    [ISCFeature.GRID_ENTITY_RENDER_DETECTION]: GridEntityRenderDetection;
    [ISCFeature.GRID_ENTITY_UPDATE_DETECTION]: GridEntityUpdateDetection;
    [ISCFeature.GAME_REORDERED_CALLBACKS]: GameReorderedCallbacks;
    [ISCFeature.ITEM_PICKUP_DETECTION]: ItemPickupDetection;
    [ISCFeature.PICKUP_CHANGE_DETECTION]: PickupChangeDetection;
    [ISCFeature.PLAYER_COLLECTIBLE_DETECTION]: PlayerCollectibleDetection;
    [ISCFeature.PLAYER_REORDERED_CALLBACKS]: PlayerReorderedCallbacks;
    [ISCFeature.SLOT_DESTROYED_DETECTION]: SlotDestroyedDetection;
    [ISCFeature.SLOT_RENDER_DETECTION]: SlotRenderDetection;
    [ISCFeature.SLOT_UPDATE_DETECTION]: SlotUpdateDetection;
    [ISCFeature.CHARACTER_HEALTH_CONVERSION]: CharacterHealthConversion;
    [ISCFeature.CHARACTER_STATS]: CharacterStats;
    [ISCFeature.COLLECTIBLE_ITEM_POOL_TYPE]: CollectibleItemPoolType;
    [ISCFeature.CUSTOM_GRID_ENTITIES]: CustomGridEntities;
    [ISCFeature.CUSTOM_ITEM_POOLS]: CustomItemPools;
    [ISCFeature.CUSTOM_HOTKEYS]: CustomHotkeys;
    [ISCFeature.CUSTOM_PICKUPS]: CustomPickups;
    [ISCFeature.CUSTOM_STAGES]: CustomStages;
    [ISCFeature.CUSTOM_TRAPDOORS]: CustomTrapdoors;
    [ISCFeature.DEBUG_DISPLAY]: DebugDisplay;
    [ISCFeature.DEPLOY_JSON_ROOM]: DeployJSONRoom;
    [ISCFeature.DISABLE_ALL_SOUND]: DisableAllSound;
    [ISCFeature.DISABLE_INPUTS]: DisableInputs;
    [ISCFeature.EDEN_STARTING_STATS_HEALTH]: EdenStartingStatsHealth;
    [ISCFeature.FADE_IN_REMOVER]: FadeInRemover;
    [ISCFeature.FAST_RESET]: FastReset;
    [ISCFeature.FLYING_DETECTION]: FlyingDetection;
    [ISCFeature.FORGOTTEN_SWITCH]: ForgottenSwitch;
    [ISCFeature.EXTRA_CONSOLE_COMMANDS]: ExtraConsoleCommands;
    [ISCFeature.ITEM_POOL_DETECTION]: ItemPoolDetection;
    [ISCFeature.MODDED_ELEMENT_DETECTION]: ModdedElementDetection;
    [ISCFeature.MODDED_ELEMENT_SETS]: ModdedElementSets;
    [ISCFeature.NO_SIREN_STEAL]: NoSirenSteal;
    [ISCFeature.PAUSE]: Pause;
    [ISCFeature.PERSISTENT_ENTITIES]: PersistentEntities;
    [ISCFeature.PICKUP_INDEX_CREATION]: PickupIndexCreation;
    [ISCFeature.PLAYER_COLLECTIBLE_TRACKING]: PlayerCollectibleTracking;
    [ISCFeature.PONY_DETECTION]: PonyDetection;
    [ISCFeature.PRESS_INPUT]: PressInput;
    [ISCFeature.PREVENT_CHILD_ENTITIES]: PreventChildEntities;
    [ISCFeature.PREVENT_GRID_ENTITY_RESPAWN]: PreventGridEntityRespawn;
    [ISCFeature.RERUN_DETECTION]: RerunDetection;
    [ISCFeature.ROOM_CLEAR_FRAME]: RoomClearFrame;
    [ISCFeature.ROOM_HISTORY]: RoomHistory;
    [ISCFeature.RUN_IN_N_FRAMES]: RunInNFrames;
    [ISCFeature.RUN_NEXT_ROOM]: RunNextRoom;
    [ISCFeature.RUN_NEXT_RUN]: RunNextRun;
    [ISCFeature.SAVE_DATA_MANAGER]: SaveDataManager;
    [ISCFeature.SPAWN_ALT_ROCK_REWARDS]: SpawnRockAltRewards;
    [ISCFeature.STAGE_HISTORY]: StageHistory;
    [ISCFeature.START_AMBUSH]: StartAmbush;
    [ISCFeature.TAINTED_LAZARUS_PLAYERS]: TaintedLazarusPlayers;
    [ISCFeature.UNLOCK_ACHIEVEMENTS_DETECTION]: UnlockAchievementsDetection;
}
export declare function getFeatures(mod: ModUpgradedInterface, callbacks: ModCallbackCustomToClass): {
    readonly 0: CustomRevive;
    readonly 1: EsauJrDetection;
    readonly 2: FlipDetection;
    readonly 3: GridEntityCollisionDetection;
    readonly 5: GridEntityUpdateDetection;
    readonly 4: GridEntityRenderDetection;
    readonly 6: GameReorderedCallbacks;
    readonly 7: ItemPickupDetection;
    readonly 8: PickupChangeDetection;
    readonly 9: PlayerCollectibleDetection;
    readonly 10: PlayerReorderedCallbacks;
    readonly 11: SlotDestroyedDetection;
    readonly 12: SlotRenderDetection;
    readonly 13: SlotUpdateDetection;
    readonly 14: CharacterHealthConversion;
    readonly 15: CharacterStats;
    readonly 16: CollectibleItemPoolType;
    readonly 17: CustomGridEntities;
    readonly 18: CustomItemPools;
    readonly 19: CustomHotkeys;
    readonly 20: CustomPickups;
    readonly 21: CustomStages;
    readonly 22: CustomTrapdoors;
    readonly 23: DebugDisplay;
    readonly 24: DeployJSONRoom;
    readonly 25: DisableAllSound;
    readonly 26: DisableInputs;
    readonly 27: EdenStartingStatsHealth;
    readonly 28: FadeInRemover;
    readonly 29: FastReset;
    readonly 30: FlyingDetection;
    readonly 31: ForgottenSwitch;
    readonly 32: ExtraConsoleCommands;
    readonly 33: ItemPoolDetection;
    readonly 34: ModdedElementDetection;
    readonly 35: ModdedElementSets;
    readonly 36: NoSirenSteal;
    readonly 37: Pause;
    readonly 38: PersistentEntities;
    readonly 39: PickupIndexCreation;
    readonly 40: PlayerCollectibleTracking;
    readonly 41: PonyDetection;
    readonly 42: PressInput;
    readonly 43: PreventChildEntities;
    readonly 44: PreventGridEntityRespawn;
    readonly 45: RerunDetection;
    readonly 46: RoomClearFrame;
    readonly 47: RoomHistory;
    readonly 48: RunInNFrames;
    readonly 49: RunNextRoom;
    readonly 50: RunNextRun;
    readonly 51: SaveDataManager;
    readonly 52: SpawnRockAltRewards;
    readonly 53: StageHistory;
    readonly 54: StartAmbush;
    readonly 55: TaintedLazarusPlayers;
    readonly 56: UnlockAchievementsDetection;
};
//# sourceMappingURL=features.d.ts.map