import { Event } from './event'; /** * The EventBufferer is useful in situations in which you want * to delay firing your events during some code. * You can wrap that code and be sure that the event will not * be fired during that wrap. * * ``` * const emitter: Emitter; * const delayer = new EventBufferer(); * const delayedEvent = delayer.wrapEvent(emitter.event); * * delayedEvent(console.log); * * delayer.bufferEvents(() => { * emitter.emit(); // event will not be emitted yet * }); * * // event will only be emitted at this point * ``` */ export declare class EventBufferer { private buffers; wrapEvent(event: Event): Event; bufferEvents(fn: () => R): R; }