"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getCallbacks = void 0;
const cachedEnumValues_1 = require("./cachedEnumValues");
const cc = __importStar(require("./callbackClasses"));
const ModCallbackCustom_1 = require("./enums/ModCallbackCustom");
const MOD_CALLBACK_CUSTOM_TO_CLASS = {
    [ModCallbackCustom_1.ModCallbackCustom.ENTITY_TAKE_DMG_FILTER]: cc.EntityTakeDmgFilter,
    [ModCallbackCustom_1.ModCallbackCustom.ENTITY_TAKE_DMG_PLAYER]: cc.EntityTakeDmgPlayer,
    [ModCallbackCustom_1.ModCallbackCustom.INPUT_ACTION_FILTER]: cc.InputActionFilter,
    [ModCallbackCustom_1.ModCallbackCustom.INPUT_ACTION_PLAYER]: cc.InputActionPlayer,
    [ModCallbackCustom_1.ModCallbackCustom.POST_AMBUSH_FINISHED]: cc.PostAmbushFinished,
    [ModCallbackCustom_1.ModCallbackCustom.POST_AMBUSH_STARTED]: cc.PostAmbushStarted,
    [ModCallbackCustom_1.ModCallbackCustom.POST_BOMB_EXPLODED]: cc.PostBombExploded,
    [ModCallbackCustom_1.ModCallbackCustom.POST_BOMB_INIT_FILTER]: cc.PostBombInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_BOMB_INIT_LATE]: cc.PostBombInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_BOMB_RENDER_FILTER]: cc.PostBombRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_BOMB_UPDATE_FILTER]: cc.PostBombUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_BONE_SWING]: cc.PostBoneSwing,
    [ModCallbackCustom_1.ModCallbackCustom.POST_COLLECTIBLE_EMPTY]: cc.PostCollectibleEmpty,
    [ModCallbackCustom_1.ModCallbackCustom.POST_CURSED_TELEPORT]: cc.PostCursedTeleport,
    [ModCallbackCustom_1.ModCallbackCustom.POST_CUSTOM_REVIVE]: cc.PostCustomRevive,
    [ModCallbackCustom_1.ModCallbackCustom.POST_DICE_ROOM_ACTIVATED]: cc.PostDiceRoomActivated,
    [ModCallbackCustom_1.ModCallbackCustom.POST_DOOR_RENDER]: cc.PostDoorRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_DOOR_UPDATE]: cc.PostDoorUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_EFFECT_INIT_FILTER]: cc.PostEffectInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_EFFECT_INIT_LATE]: cc.PostEffectInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_EFFECT_RENDER_FILTER]: cc.PostEffectRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_EFFECT_STATE_CHANGED]: cc.PostEffectStateChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_EFFECT_UPDATE_FILTER]: cc.PostEffectUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_ENTITY_KILL_FILTER]: cc.PostEntityKillFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_ESAU_JR]: cc.PostEsauJr,
    [ModCallbackCustom_1.ModCallbackCustom.POST_FAMILIAR_INIT_FILTER]: cc.PostFamiliarInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_FAMILIAR_INIT_LATE]: cc.PostFamiliarInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_FAMILIAR_RENDER_FILTER]: cc.PostFamiliarRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_FAMILIAR_STATE_CHANGED]: cc.PostFamiliarStateChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_FAMILIAR_UPDATE_FILTER]: cc.PostFamiliarUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_FIRST_FLIP]: cc.PostFirstFlip,
    [ModCallbackCustom_1.ModCallbackCustom.POST_FIRST_ESAU_JR]: cc.PostFirstEsauJr,
    [ModCallbackCustom_1.ModCallbackCustom.POST_FLIP]: cc.PostFlip,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GAME_END_FILTER]: cc.PostGameEndFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GAME_STARTED_REORDERED]: cc.PostGameStartedReordered,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GAME_STARTED_REORDERED_LAST]: cc.PostGameStartedReorderedLast,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GREED_MODE_WAVE]: cc.PostGreedModeWave,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_BROKEN]: cc.PostGridEntityBroken,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_COLLISION]: cc.PostGridEntityCollision,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_BROKEN]: cc.PostGridEntityCustomBroken,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_COLLISION]: cc.PostGridEntityCustomCollision,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_INIT]: cc.PostGridEntityCustomInit,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_REMOVE]: cc.PostGridEntityCustomRemove,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_RENDER]: cc.PostGridEntityCustomRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_STATE_CHANGED]: cc.PostGridEntityCustomStateChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_CUSTOM_UPDATE]: cc.PostGridEntityCustomUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_INIT]: cc.PostGridEntityInit,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_REMOVE]: cc.PostGridEntityRemove,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_RENDER]: cc.PostGridEntityRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_STATE_CHANGED]: cc.PostGridEntityStateChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_GRID_ENTITY_UPDATE]: cc.PostGridEntityUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_HOLY_MANTLE_REMOVED]: cc.PostHolyMantleRemoved,
    [ModCallbackCustom_1.ModCallbackCustom.POST_ITEM_DISCHARGE]: cc.PostItemDischarge,
    [ModCallbackCustom_1.ModCallbackCustom.POST_ITEM_PICKUP]: cc.PostItemPickup,
    [ModCallbackCustom_1.ModCallbackCustom.POST_KEYBOARD_CHANGED]: cc.PostKeyboardPressed,
    [ModCallbackCustom_1.ModCallbackCustom.POST_KNIFE_INIT_FILTER]: cc.PostKnifeInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_KNIFE_INIT_LATE]: cc.PostKnifeInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_KNIFE_RENDER_FILTER]: cc.PostKnifeRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_KNIFE_UPDATE_FILTER]: cc.PostKnifeUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_LASER_INIT_FILTER]: cc.PostLaserInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_LASER_INIT_LATE]: cc.PostLaserInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_LASER_RENDER_FILTER]: cc.PostLaserRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_LASER_UPDATE_FILTER]: cc.PostLaserUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NEW_LEVEL_REORDERED]: cc.PostNewLevelReordered,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NEW_ROOM_EARLY]: cc.PostNewRoomEarly,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NEW_ROOM_REORDERED]: cc.PostNewRoomReordered,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NPC_DEATH_FILTER]: cc.PostNPCDeathFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NPC_INIT_FILTER]: cc.PostNPCInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NPC_INIT_LATE]: cc.PostNPCInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NPC_RENDER_FILTER]: cc.PostNPCRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NPC_STATE_CHANGED]: cc.PostNPCStateChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_NPC_UPDATE_FILTER]: cc.PostNPCUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PEFFECT_UPDATE_REORDERED]: cc.PostPEffectUpdateReordered,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_CHANGED]: cc.PostPickupChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_COLLECT]: cc.PostPickupCollect,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_INIT_FILTER]: cc.PostPickupInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_INIT_FIRST]: cc.PostPickupInitFirst,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_INIT_LATE]: cc.PostPickupInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_RENDER_FILTER]: cc.PostPickupRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_SELECTION_FILTER]: cc.PostPickupSelectionFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_STATE_CHANGED]: cc.PostPickupStateChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PICKUP_UPDATE_FILTER]: cc.PostPickupUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PIT_RENDER]: cc.PostPitRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PIT_UPDATE]: cc.PostPitUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_CHANGE_HEALTH]: cc.PostPlayerChangeHealth,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_CHANGE_STAT]: cc.PostPlayerChangeStat,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_CHANGE_TYPE]: cc.PostPlayerChangeType,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_ADDED]: cc.PostPlayerCollectibleAdded,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_COLLECTIBLE_REMOVED]: cc.PostPlayerCollectibleRemoved,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_FATAL_DAMAGE]: cc.PostPlayerFatalDamage,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_INIT_FIRST]: cc.PostPlayerInitFirst,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_INIT_LATE]: cc.PostPlayerInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_RENDER_REORDERED]: cc.PostPlayerRenderReordered,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PLAYER_UPDATE_REORDERED]: cc.PostPlayerUpdateReordered,
    [ModCallbackCustom_1.ModCallbackCustom.POST_POOP_RENDER]: cc.PostPoopRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_POOP_UPDATE]: cc.PostPoopUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PRESSURE_PLATE_RENDER]: cc.PostPressurePlateRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PRESSURE_PLATE_UPDATE]: cc.PostPressurePlateUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PROJECTILE_INIT_FILTER]: cc.PostProjectileInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PROJECTILE_INIT_LATE]: cc.PostProjectileInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PROJECTILE_KILL]: cc.PostProjectileKill,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PROJECTILE_RENDER_FILTER]: cc.PostProjectileRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PROJECTILE_UPDATE_FILTER]: cc.PostProjectileUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_PURCHASE]: cc.PostPurchase,
    [ModCallbackCustom_1.ModCallbackCustom.POST_ROCK_RENDER]: cc.PostRockRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_ROCK_UPDATE]: cc.PostRockUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_ROOM_CLEAR_CHANGED]: cc.PostRoomClearChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SACRIFICE]: cc.PostSacrifice,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SLOT_ANIMATION_CHANGED]: cc.PostSlotAnimationChanged,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SLOT_COLLISION]: cc.PostSlotCollision,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SLOT_DESTROYED]: cc.PostSlotDestroyed,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SLOT_INIT]: cc.PostSlotInit,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SLOT_RENDER]: cc.PostSlotRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SLOT_UPDATE]: cc.PostSlotUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SPIKES_RENDER]: cc.PostSpikesRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_SPIKES_UPDATE]: cc.PostSpikesUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TEAR_INIT_FILTER]: cc.PostTearInitFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TEAR_INIT_LATE]: cc.PostTearInitLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TEAR_INIT_VERY_LATE]: cc.PostTearInitVeryLate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TEAR_KILL]: cc.PostTearKill,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TEAR_RENDER_FILTER]: cc.PostTearRenderFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TEAR_UPDATE_FILTER]: cc.PostTearUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TNT_RENDER]: cc.PostTNTRender,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TNT_UPDATE]: cc.PostTNTUpdate,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TRANSFORMATION]: cc.PostTransformation,
    [ModCallbackCustom_1.ModCallbackCustom.POST_TRINKET_BREAK]: cc.PostTrinketBreak,
    [ModCallbackCustom_1.ModCallbackCustom.POST_USE_PILL_FILTER]: cc.PostUsePillFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_BERSERK_DEATH]: cc.PreBerserkDeath,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_BOMB_COLLISION_FILTER]: cc.PreBombCollisionFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_CUSTOM_REVIVE]: cc.PreCustomRevive,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_ENTITY_SPAWN_FILTER]: cc.PreEntitySpawnFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_FAMILIAR_COLLISION_FILTER]: cc.PreFamiliarCollisionFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_GET_PEDESTAL]: cc.PreGetPedestal,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_ITEM_PICKUP]: cc.PreItemPickup,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_KNIFE_COLLISION_FILTER]: cc.PreKnifeCollisionFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_NEW_LEVEL]: cc.PreNewLevel,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_NPC_COLLISION_FILTER]: cc.PreNPCCollisionFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_NPC_UPDATE_FILTER]: cc.PreNPCUpdateFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_PROJECTILE_COLLISION_FILTER]: cc.PreProjectileCollisionFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_ROOM_ENTITY_SPAWN_FILTER]: cc.PreRoomEntitySpawnFilter,
    [ModCallbackCustom_1.ModCallbackCustom.PRE_TEAR_COLLISION_FILTER]: cc.PreTearCollisionFilter,
};
function getCallbacks() {
    const instantiatedClasses = {};
    for (const modCallbackCustom of cachedEnumValues_1.MOD_CALLBACK_CUSTOM_VALUES) {
        const constructor = MOD_CALLBACK_CUSTOM_TO_CLASS[modCallbackCustom];
        instantiatedClasses[modCallbackCustom] = new constructor();
    }
    return instantiatedClasses;
}
exports.getCallbacks = getCallbacks;
