unleash-server
Version:
Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.
22 lines (21 loc) • 1.22 kB
TypeScript
import { IGroup, IGroupModel, IGroupModelWithProjectRole, IGroupProject, IGroupRole } from '../types/group';
import { IUnleashConfig, IUnleashStores } from '../types';
export declare class GroupService {
private groupStore;
private eventStore;
private userStore;
private logger;
constructor(stores: Pick<IUnleashStores, 'groupStore' | 'eventStore' | 'userStore'>, { getLogger }: Pick<IUnleashConfig, 'getLogger'>);
getAll(): Promise<IGroupModel[]>;
mapGroupWithProjects(groupProjects: IGroupProject[], group: IGroupModel): IGroupModel;
getGroup(id: number): Promise<IGroupModel>;
createGroup(group: IGroupModel, userName: string): Promise<IGroup>;
updateGroup(group: IGroupModel, userName: string): Promise<IGroup>;
getProjectGroups(projectId?: string): Promise<IGroupModelWithProjectRole[]>;
deleteGroup(id: number): Promise<void>;
validateGroup({ name }: IGroupModel, existingGroup?: IGroup): Promise<void>;
getRolesForProject(projectId: string): Promise<IGroupRole[]>;
private mapGroupWithUsers;
syncExternalGroups(userId: number, externalGroups: string[], createdBy?: string): Promise<void>;
getGroupsForUser(userId: number): Promise<IGroup[]>;
}