unleash-server
Version:
Unleash is an enterprise ready feature toggles service. It provides different strategies for handling feature toggles.
30 lines (29 loc) • 1.64 kB
TypeScript
import { IProjectHealthUpdate, IProjectInsert, IProjectStore } from '../../lib/types/stores/project-store';
import { IEnvironment, IProject, IProjectWithCount } from '../../lib/types/model';
import { IEnvironmentProjectLink, IProjectMembersCount } from 'lib/db/project-store';
export default class FakeProjectStore implements IProjectStore {
projects: IProject[];
projectEnvironment: Map<string, Set<string>>;
getEnvironmentsForProject(): Promise<string[]>;
getProjectLinksForEnvironments(environments: string[]): Promise<IEnvironmentProjectLink[]>;
addEnvironmentToProject(id: string, environment: string): Promise<void>;
getProjectsWithCounts(): Promise<IProjectWithCount[]>;
private createInternal;
create(project: IProjectInsert): Promise<IProject>;
delete(key: string): Promise<void>;
deleteAll(): Promise<void>;
deleteEnvironmentForProject(id: string, environment: string): Promise<void>;
destroy(): void;
count(): Promise<number>;
exists(key: string): Promise<boolean>;
get(key: string): Promise<IProject>;
getAll(): Promise<IProject[]>;
getMembersCountByProject(projectId: string): Promise<number>;
hasProject(id: string): Promise<boolean>;
importProjects(projects: IProjectInsert[], environments?: IEnvironment[]): Promise<IProject[]>;
update(update: IProjectInsert): Promise<void>;
updateHealth(healthUpdate: IProjectHealthUpdate): Promise<void>;
getMembersCount(): Promise<IProjectMembersCount[]>;
getProjectsByUser(userId: number): Promise<string[]>;
addEnvironmentToProjects(environment: string, projects: string[]): Promise<void>;
}