local ____lualib = require("lualib_bundle")
local __TS__Class = ____lualib.__TS__Class
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
local ____exports = {}
local ____isaac_2Dtypescript_2Ddefinitions = require("isaac-typescript-definitions")
local ModCallback = ____isaac_2Dtypescript_2Ddefinitions.ModCallback
local ____gridEntitiesSpecific = require("functions.gridEntitiesSpecific")
local getPressurePlates = ____gridEntitiesSpecific.getPressurePlates
local ____shouldFire = require("shouldFire")
local shouldFirePressurePlate = ____shouldFire.shouldFirePressurePlate
local ____CustomCallback = require("classes.private.CustomCallback")
local CustomCallback = ____CustomCallback.CustomCallback
____exports.PostPressurePlateUpdate = __TS__Class()
local PostPressurePlateUpdate = ____exports.PostPressurePlateUpdate
PostPressurePlateUpdate.name = "PostPressurePlateUpdate"
__TS__ClassExtends(PostPressurePlateUpdate, CustomCallback)
function PostPressurePlateUpdate.prototype.____constructor(self)
    CustomCallback.prototype.____constructor(self)
    self.shouldFire = shouldFirePressurePlate
    self.postUpdate = function()
        for ____, pressurePlate in ipairs(getPressurePlates(nil)) do
            self:fire(pressurePlate)
        end
    end
    self.callbacksUsed = {{ModCallback.POST_UPDATE, self.postUpdate}}
end
return ____exports
