Simple class to handle callbacks.

T Event map for the listeners as object with event name and the type of the arguments in the callback.

type EventMap = {
test: number;
}
class SomeEmitter extends CallbackEmitter<EventMap> {}

const emitter = new SomeEmitter();
emitter.addListener('test', (e, test) => {
// e is instance of the emitter
// test is number
})

Hierarchy (view full)

Constructors

Properties

castResponse: ((options: {
    [key: string]: Type.Type;
}) => MethodDecorator)

Decorator for casting response with defined types.

class User extends SocketRequest {
@SocketRequest.castResponse({
id: Type.integer,
name: Type.string,
})
get() {
return this.execute('user.get');
}
}

Methods

  • Registers the listener of the event.

    Type Parameters

    • K extends string | number

    Parameters

    • event: K

      Name of the event.

    • listener: ((self: this) => void)

      Listener to execute when the event is called.

        • (self): void
        • Parameters

          • self: this

          Returns void

    Returns this

  • Registers the listener of the event.

    Type Parameters

    • K extends string | number

    Parameters

    • event: K

      Name of the event.

    • listener: ((self: this, args: EventMap[K]) => void)

      Listener to execute when the event is called.

        • (self, args): void
        • Parameters

          Returns void

    Returns this

  • Emits the socket event. The response can be handled in the on method.

    Parameters

    • event: string

      Name of the event.

    Returns this

    P Type of parameters.

  • Emits the socket event. The response can be handled in the on method.

    Parameters

    • event: string

      Name of the event.

    • key: string

      Socket event key.

    Returns this

  • Emits the socket event. The response can be handled in the on method.

    Type Parameters

    • P = any

    Parameters

    • event: string

      Name of the event.

    • key: string

      Socket event key.

    • data: P

      Event parameters.

    Returns this

    P Type of parameters.

  • Emits the socket event. The response can be handled in the on method.

    Type Parameters

    • P = any

    Parameters

    • event: string

      Name of the event.

    • key: string

      Socket event key.

    • data: P

      Event parameters.

    • onProgress: ((progress: number) => void)

      Function called in the progress tick.

        • (progress): void
        • Parameters

          • progress: number

          Returns void

    Returns this

    P Type of parameters.

  • Calls the socket event.

    Type Parameters

    • R = any

    Parameters

    • event: string

      Name of the event.

    Returns Promise<R>

    R Type of response.

  • Calls the socket event.

    Type Parameters

    • P = any
    • R = any

    Parameters

    • event: string

      Name of the event.

    • data: P

      Event parameters.

    Returns Promise<R>

    P Type of parameters.

    R Type of response.

  • Calls the socket event.

    Type Parameters

    • P = any
    • R = any

    Parameters

    • event: string

      Name of the event.

    • data: P

      Event parameters.

    • timeout: number

      Timeout of the event.

    Returns Promise<R>

    P Type of parameters.

    R Type of response.

  • Calls the socket event.

    Type Parameters

    • P = any
    • R = any

    Parameters

    • event: string

      Name of the event.

    • data: P

      Event parameters.

    • timeout: number

      Timeout of the event.

    • onProgress: ((progress: number) => void)

      Function called in the progress tick.

        • (progress): void
        • Parameters

          • progress: number

          Returns void

    Returns Promise<R>

    P Type of parameters.

    R Type of response.

  • Registers socket event listener. This method should be called in componentDidMount.

    Type Parameters

    • R = any

    Parameters

    • event: string

      Name of the event.

    • callback: ((error?: any, data?: R) => void)

      Callback for the event.

        • (error?, data?): void
        • Parameters

          • Optionalerror: any
          • Optionaldata: R

          Returns void

    Returns this

  • Removes the listener of the event.

    Type Parameters

    • K extends string | number

    Parameters

    • event: K

      Name of the event.

    • listener: ((self: this) => void)
        • (self): void
        • Parameters

          • self: this

          Returns void

    Returns this

  • Removes the listener of the event.

    Type Parameters

    • K extends string | number

    Parameters

    • event: K

      Name of the event.

    • listener: ((self: this, args: EventMap[K]) => void)
        • (self, args): void
        • Parameters

          Returns void

    Returns this