function Event() {
    this.fns = [];
}
Event.prototype.subscribe = function(name, fn) {
    if (!name || typeof fn !== "function") return;
    this.fns.push({ key: name, fn: fn });
};
Event.prototype.unsubscribe = function(name) {
    this.fns = this.fns.filter((data) => {
        return data.key === name ? false : true;
    });
};
Event.prototype.emit = function(name, payload) {
    this.fns.map((data) => {
        if (data.key === name) data.fn(payload);
    });
};

export const event = new Event();
