UNPKG

movex-core-util

Version:

Movex Core Util is the library of utilities for Movex

13 lines (12 loc) 888 B
import type { EventMap } from 'typed-emitter'; import type { EmptyFn } from '../core-types'; export declare const emptyFn: EmptyFn; export interface EventEmitter<TEventMap extends EventMap> { on<E extends keyof TEventMap>(event: E, listener: (p: Parameters<TEventMap[E]>[0], ack?: (r: ReturnType<TEventMap[E]>) => void) => void): this; off<E extends keyof TEventMap>(event: E, listener: (p: Parameters<TEventMap[E]>[0], ack?: (r: ReturnType<TEventMap[E]>) => void) => void): this; emit<E extends keyof TEventMap>(event: E, request: Parameters<TEventMap[E]>[0], acknowledgeCb?: (response: ReturnType<TEventMap[E]>) => void): boolean; emitAndAcknowledge<E extends keyof TEventMap>(event: E, request: Parameters<TEventMap[E]>[0]): Promise<ReturnType<TEventMap[E]>>; disconnect(): void; onConnect(fn: () => void): EmptyFn; onDisconnect(fn: () => void): EmptyFn; }