local ____lualib = require("lualib_bundle")
local __TS__Class = ____lualib.__TS__Class
local __TS__ArrayForEach = ____lualib.__TS__ArrayForEach
local ____exports = {}
____exports.Observable = __TS__Class()
local Observable = ____exports.Observable
Observable.name = "Observable"
function Observable.prototype.____constructor(self)
    self.observers = {}
end
function Observable.prototype.addObserver(self, observer)
    local ____self_observers_0 = self.observers
    ____self_observers_0[#____self_observers_0 + 1] = observer
end
function Observable.prototype.notify(self, event)
    __TS__ArrayForEach(
        self.observers,
        function(____, o) return o(event) end
    )
end
return ____exports
