UNPKG

featurehub-javascript-client-sdk

Version:
56 lines (55 loc) 1.99 kB
import { EdgeService } from './edge_service'; import { FeatureHubConfig } from './feature_hub_config'; import { InternalFeatureRepository } from './internal_feature_repository'; export declare class EventSource { static readonly CLOSED: number; static readonly CONNECTING: number; static readonly OPEN: number; readonly CLOSED: number; readonly CONNECTING: number; readonly OPEN: number; readonly url: string; readonly readyState: number; readonly withCredentials: boolean; onopen: (evt: MessageEvent) => any; onmessage: (evt: MessageEvent) => any; onerror: (evt: MessageEvent) => any; constructor(url: string, eventSourceInitDict?: EventSource.EventSourceInitDict); addEventListener(type: string, listener: EventListener): void; dispatchEvent(evt: Event): boolean; removeEventListener(type: string, listener?: EventListener): void; close(): void; } export declare namespace EventSource { enum ReadyState { CONNECTING = 0, OPEN = 1, CLOSED = 2 } interface EventSourceInitDict { withCredentials?: boolean; headers?: object; proxy?: string; https?: object; rejectUnauthorized?: boolean; } } export type EventSourceProvider = (url: string, eventSourceInitDict?: EventSource.EventSourceInitDict) => EventSource; export declare class FeatureHubEventSourceClient implements EdgeService { private eventSource; private readonly _config; private readonly _repository; private _header; private _staleEnvironmentTimeoutId; private _stopped; static eventSourceProvider: EventSourceProvider; constructor(config: FeatureHubConfig, repository: InternalFeatureRepository); get stopped(): boolean; init(): void; close(): void; clientEvaluated(): boolean; contextChange(header: string): Promise<void>; poll(): Promise<void>; requiresReplacementOnHeaderChange(): boolean; private processConfig; }