UNPKG

unleash-server

Version:

Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.

28 lines (27 loc) 1.46 kB
import { IUnleashConfig } from '../types/option'; import { IUnleashStores } from '../types'; import { IFeatureStrategy, ISegment } from '../types/model'; import User from '../types/user'; export declare class SegmentService { private logger; private segmentStore; private featureStrategiesStore; private eventStore; private config; constructor({ segmentStore, featureStrategiesStore, eventStore, }: Pick<IUnleashStores, 'segmentStore' | 'featureStrategiesStore' | 'eventStore'>, config: IUnleashConfig); get(id: number): Promise<ISegment>; getAll(): Promise<ISegment[]>; getActive(): Promise<ISegment[]>; getByStrategy(strategyId: string): Promise<ISegment[]>; getStrategies(id: number): Promise<IFeatureStrategy[]>; create(data: unknown, user: Partial<Pick<User, 'username' | 'email'>>): Promise<ISegment>; update(id: number, data: unknown, user: Partial<Pick<User, 'username' | 'email'>>): Promise<void>; delete(id: number, user: User): Promise<void>; cloneStrategySegments(sourceStrategyId: string, targetStrategyId: string): Promise<void>; addToStrategy(id: number, strategyId: string): Promise<void>; updateStrategySegments(strategyId: string, segmentIds: number[]): Promise<void>; removeFromStrategy(id: number, strategyId: string): Promise<void>; validateName(name: string): Promise<void>; private validateStrategySegmentLimit; private validateSegmentValuesLimit; }