/// import { EventEmitter } from 'events'; import XAPI from '.'; import { Handler, Listener, Path } from './types'; export declare type FeedbackInterceptor = (payload: any, emit: (payload: any) => void) => void; export interface FeedbackId { Id: number; } export interface Registration { (): void; registration: Promise; } export declare class FeedbackGroup { private handlers; constructor(handlers: Handler[]); add(handler: Handler): this; remove(handler: Handler): this; off(): this; } export default class Feedback { readonly xapi: XAPI; readonly interceptor: FeedbackInterceptor; readonly eventEmitter: EventEmitter; constructor(xapi: XAPI, interceptor?: FeedbackInterceptor); on(path: Path, listener: Listener): Registration; once(path: Path, listener: Listener): Registration; off(): void; dispatch(data: any): this; group(handlers: Handler[]): FeedbackGroup; }