@launchdarkly/react-native-client-sdk
Version:
React Native LaunchDarkly SDK
50 lines • 1.86 kB
TypeScript
/**
* Ripped from https://github.com/binaryminds/react-native-sse
* These changes are made from the above repo at fork-time:
* 1. converted to ts and fix ts related errors.
* 2. added onopen, onclose, onerror, onretrying functions.
* 3. modified dispatch to work with functions added in 2.
* 4. replaced all for of loops with foreach
*/
import type { EventSourceEvent, EventSourceListener, EventSourceOptions, EventType } from './types';
export declare function backoff(base: number, retryCount: number): number;
export declare function jitter(computedDelayMillis: number): number;
export default class EventSource<E extends string = never> {
ERROR: number;
CONNECTING: number;
OPEN: number;
CLOSED: number;
private _lastEventId;
private _lastIndexProcessed;
private _eventType;
private _status;
private _eventHandlers;
private _method;
private _timeout;
private _withCredentials;
private _headers;
private _body;
private _url;
private _xhr;
private _connectTimer;
private _retryAndHandleError?;
private _initialRetryDelayMillis;
private _retryCount;
private _logger?;
constructor(url: string, options?: EventSourceOptions);
private _getNextRetryDelay;
private _tryConnect;
private _open;
private _handleEvent;
addEventListener<T extends EventType<E>>(type: T, listener: EventSourceListener<E, T>): void;
removeEventListener<T extends EventType<E>>(type: T, listener: EventSourceListener<E, T>): void;
removeAllEventListeners<T extends EventType<E>>(type?: T): void;
dispatch<T extends EventType<E>>(type: T, data: EventSourceEvent<T>): void;
close(): void;
getStatus(): number;
onopen(): void;
onclose(): void;
onerror(_err: any): void;
onretrying(_e: any): void;
}
//# sourceMappingURL=EventSource.d.ts.map