− export const unsubscribe = (event: string, callback: Callback): void => {
− subscribers.get(event)?.delete(callback)
− }
−
− export const unsubscribeEvent = (event: string): void => {
− subscribers.delete(event)
− }
−
− export const unsubscribeAll = (): void => {
− subscribers.clear()
+ export const unsubscribe = (event: string, callback?: Callback): void => {
+ if (callback) {
+ subscribers.get(event)?.delete(callback)
+ } else if (event === "*") {
+ subscribers.clear()
+ } else {
+ subscribers.delete(event)
+ }