unleash-server
Version:
Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.
26 lines • 1.87 kB
TypeScript
import { type IAuditUser, type IEnvironment, type IProjectsAvailableOnEnvironment, type ISortOrder, type IUnleashConfig, type IUnleashStores } from '../../types/index.js';
import type { CreateFeatureStrategySchema } from '../../openapi/index.js';
import type EventService from '../events/event-service.js';
export default class EnvironmentService {
private logger;
private environmentStore;
private featureStrategiesStore;
private projectStore;
private featureEnvironmentStore;
private eventService;
private flagResolver;
constructor({ environmentStore, featureStrategiesStore, featureEnvironmentStore, projectStore, }: Pick<IUnleashStores, 'environmentStore' | 'featureStrategiesStore' | 'featureEnvironmentStore' | 'projectStore'>, { getLogger, flagResolver, }: Pick<IUnleashConfig, 'getLogger' | 'flagResolver'>, eventService: EventService);
getAll(): Promise<IEnvironment[]>;
get(name: string): Promise<IEnvironment>;
exists(name: string): Promise<boolean>;
getProjectEnvironments(projectId: string): Promise<IProjectsAvailableOnEnvironment[]>;
updateSortOrder(sortOrder: ISortOrder): Promise<void>;
toggleEnvironment(name: string, value: boolean): Promise<void>;
addEnvironmentToProject(environment: string, projectId: string, auditUser: IAuditUser): Promise<void>;
updateDefaultStrategy(environment: string, projectId: string, strategy: CreateFeatureStrategySchema, auditUser: IAuditUser): Promise<CreateFeatureStrategySchema>;
overrideEnabledProjects(environmentNamesToEnable: string[]): Promise<void>;
private remapProjectsLinks;
forceRemoveEnvironmentFromProject(environment: string, projectId: string): Promise<void>;
removeEnvironmentFromProject(environment: string, projectId: string, auditUser: IAuditUser): Promise<void>;
}
//# sourceMappingURL=environment-service.d.ts.map