@launchdarkly/js-sdk-common
Version:
LaunchDarkly SDK for JavaScript - common code
31 lines • 1.37 kB
TypeScript
import { EventListener, EventName, LDLogger } from '../../api';
import { DataSourceErrorKind } from '../../datasource';
import { ObjProcessors, PayloadListener } from './payloadProcessor';
/**
* Interface for an event stream. Only allows listening to events.
*/
export interface EventStream {
addEventListener(type: EventName, listener: EventListener): void;
}
/**
* A FDv2 PayloadStreamReader can be used to parse payloads from a stream of FDv2 events. See {@link PayloadProcessor}
* for more details.
*/
export declare class PayloadStreamReader {
private readonly _errorHandler?;
private readonly _logger?;
private _payloadProcessor;
/**
* Creates a PayloadStreamReader
*
* @param eventStream event stream of FDv2 events
* @param _objProcessors defines object processors for each object kind.
* @param _errorHandler that will be called with parsing errors as they are encountered
* @param _logger for logging
*/
constructor(eventStream: EventStream, _objProcessors: ObjProcessors, _errorHandler?: ((errorKind: DataSourceErrorKind, message: string) => void) | undefined, _logger?: LDLogger | undefined);
addPayloadListener(listener: PayloadListener): void;
removePayloadListener(listener: PayloadListener): void;
private _attachHandler;
}
//# sourceMappingURL=payloadStreamReader.d.ts.map