local ____lualib = require("lualib_bundle")
local __TS__Class = ____lualib.__TS__Class
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
local __TS__DecorateLegacy = ____lualib.__TS__DecorateLegacy
local ____exports = {}
local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
local NullItemID = ____isaac_2Dtypescript_2Ddefinitions.NullItemID
local ____decorators = require("decorators")
local Exported = ____decorators.Exported
local ____ISCFeature = require("enums.ISCFeature")
local ISCFeature = ____ISCFeature.ISCFeature
local ____Feature = require("classes.private.Feature")
local Feature = ____Feature.Feature
local FLYING_NULL_ITEMS = {NullItemID.REVERSE_SUN, NullItemID.SPIRIT_SHACKLES_SOUL, NullItemID.LOST_CURSE}
____exports.FlyingDetection = __TS__Class()
local FlyingDetection = ____exports.FlyingDetection
FlyingDetection.name = "FlyingDetection"
__TS__ClassExtends(FlyingDetection, Feature)
function FlyingDetection.prototype.____constructor(self, moddedElementSets)
    Feature.prototype.____constructor(self)
    self.featuresUsed = {ISCFeature.MODDED_ELEMENT_SETS}
    self.moddedElementSets = moddedElementSets
end
function FlyingDetection.prototype.hasFlyingTemporaryEffect(self, player)
    local effects = player:GetEffects()
    local flyingCollectibles = self.moddedElementSets:getFlyingCollectibleTypes(true)
    for ____, collectibleType in ipairs(flyingCollectibles) do
        if effects:HasCollectibleEffect(collectibleType) then
            return true
        end
    end
    local flyingTrinkets = self.moddedElementSets:getFlyingTrinketTypes()
    for ____, trinketType in ipairs(flyingTrinkets) do
        if effects:HasTrinketEffect(trinketType) then
            return true
        end
    end
    for ____, nullItemID in ipairs(FLYING_NULL_ITEMS) do
        if effects:HasNullEffect(nullItemID) then
            return true
        end
    end
    return false
end
__TS__DecorateLegacy({Exported}, FlyingDetection.prototype, "hasFlyingTemporaryEffect", true)
return ____exports
