@woosh/meep-engine
Version:
Pure JavaScript game engine. Fully featured and production ready.
58 lines (45 loc) • 2.67 kB
TypeScript
export default class Signal<A = any, B = any, C = any, D = any, E = any, F = any, G = any, H = any> {
add(listener: () => any, thisArg?: any): void
add(listener: (a: A) => any, thisArg?: any): void
add(listener: (a: A, b: B) => any, thisArg?: any): void
add(listener: (a: A, b: B, c: C) => any, thisArg?: any): void
add(listener: (a: A, b: B, c: C, d: D) => any, thisArg?: any): void
add(listener: (a: A, b: B, c: C, d: D, e: E) => any, thisArg?: any): void
add(listener: (a: A, b: B, c: C, d: D, e: E, f: F) => any, thisArg?: any): void
add(listener: (a: A, b: B, c: C, d: D, e: E, f: F, g: G) => any, thisArg?: any): void
add(listener: (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H) => any, thisArg?: any): void
addOne(listener: () => any, thisArg?: any): void
addOne(listener: (a: A) => any, thisArg?: any): void
addOne(listener: (a: A, b: B) => any, thisArg?: any): void
addOne(listener: (a: A, b: B, c: C) => any, thisArg?: any): void
addOne(listener: (a: A, b: B, c: C, d: D) => any, thisArg?: any): void
addOne(listener: (a: A, b: B, c: C, d: D, e: E) => any, thisArg?: any): void
addOne(listener: (a: A, b: B, c: C, d: D, e: E, f: F) => any, thisArg?: any): void
addOne(listener: (a: A, b: B, c: C, d: D, e: E, f: F, g: G) => any, thisArg?: any): void
addOne(listener: (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H) => any, thisArg?: any): void
remove(listener: () => any, thisArg?: any): void
remove(listener: (a: A) => any, thisArg?: any): void
remove(listener: (a: A, b: B) => any, thisArg?: any): void
remove(listener: (a: A, b: B, c: C) => any, thisArg?: any): void
remove(listener: (a: A, b: B, c: C, d: D) => any, thisArg?: any): void
remove(listener: (a: A, b: B, c: C, d: D, e: E) => any, thisArg?: any): void
remove(listener: (a: A, b: B, c: C, d: D, e: E, f: F) => any, thisArg?: any): void
remove(listener: (a: A, b: B, c: C, d: D, e: E, f: F, g: G) => any, thisArg?: any): void
remove(listener: (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H) => any, thisArg?: any): void
send0(): void
send1(a: A): void
send2(a: A, b: B): void
send3(a: A, b: B, c: C): void
send4(a: A, b: B, c: C, d: D): void
send6(a: A, b: B, c: C, d: D, e: E, f: F): void
send8(a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H): void
/**
* Prefer strongly typed dispatch methods instead (send0, send1 etc)
*/
dispatch(...params: any[]): void
promise(): Promise<[A, B, C, D, E, F, G, H]>
/**
* @deprecated
*/
removeAll(): void
}