local ____exports = {}
local getPillEffectsOfType
local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
local ItemConfigPillEffectType = ____isaac_2Dtypescript_2Ddefinitions.ItemConfigPillEffectType
local ____constantsVanilla = require("core.constantsVanilla")
local VANILLA_PILL_EFFECTS = ____constantsVanilla.VANILLA_PILL_EFFECTS
local ____array = require("functions.array")
local filterMap = ____array.filterMap
local ____pillEffectTypes = require("objects.pillEffectTypes")
local PILL_EFFECT_TYPES = ____pillEffectTypes.PILL_EFFECT_TYPES
function getPillEffectsOfType(self, matchingPillEffectType)
    return filterMap(
        nil,
        VANILLA_PILL_EFFECTS,
        function(____, pillEffect)
            local pillEffectType = PILL_EFFECT_TYPES[pillEffect]
            return pillEffectType == matchingPillEffectType and pillEffect or nil
        end
    )
end
____exports.PILL_EFFECT_TYPE_TO_PILL_EFFECTS = {
    [ItemConfigPillEffectType.POSITIVE] = getPillEffectsOfType(nil, ItemConfigPillEffectType.POSITIVE),
    [ItemConfigPillEffectType.NEGATIVE] = getPillEffectsOfType(nil, ItemConfigPillEffectType.NEGATIVE),
    [ItemConfigPillEffectType.NEUTRAL] = getPillEffectsOfType(nil, ItemConfigPillEffectType.NEUTRAL),
    [ItemConfigPillEffectType.MODDED] = getPillEffectsOfType(nil, ItemConfigPillEffectType.MODDED)
}
return ____exports
