unleash-server
Version:
Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.
31 lines • 1.55 kB
TypeScript
import EventEmitter from 'events';
import type { Segment } from 'unleash-client/lib/strategy/strategy.js';
import type { FeatureInterface } from 'unleash-client/lib/feature.js';
import type { IApiUser } from '../../types/api-user.js';
import type { ISegmentReadModel, IUnleashConfig } from '../../types/index.js';
import type { IClientFeatureToggleReadModel } from './client-feature-toggle-read-model-type.js';
type Config = Pick<IUnleashConfig, 'getLogger' | 'flagResolver' | 'eventBus'>;
export type GlobalFrontendApiCacheState = 'starting' | 'ready' | 'updated';
export declare class GlobalFrontendApiCache extends EventEmitter {
private readonly logger;
private readonly clientFeatureToggleReadModel;
private readonly segmentReadModel;
private readonly configurationRevisionService;
private featuresByEnvironment;
private segments;
private status;
constructor(config: Config, segmentReadModel: ISegmentReadModel, clientFeatureToggleReadModel: IClientFeatureToggleReadModel, configurationRevisionService: EventEmitter);
getSegment(id: number): Segment | undefined;
getToggle(name: string, token: IApiUser): FeatureInterface;
getToggles(token: IApiUser): FeatureInterface[];
private filterTogglesByProjects;
private getTogglesByEnvironment;
refreshData(): Promise<void>;
private getAllFeatures;
private getAllSegments;
private onUpdateRevisionEvent;
private environmentNameForToken;
private mapFeatures;
}
export {};
//# sourceMappingURL=global-frontend-api-cache.d.ts.map