unleash-server
Version:
Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.
59 lines • 3.98 kB
TypeScript
import type { IAccessStore, IProjectRoleUsage, IRole, IRoleWithProject, IUserPermission, IUserRole, IUserWithProjectRoles } from '../../lib/types/stores/access-store.js';
import type { IPermission } from '../../lib/types/model.js';
import { type IRoleStore, type IUserAccessOverview } from '../../lib/types/index.js';
import type { PermissionRef } from '../../lib/services/access-service.js';
export declare class FakeAccessStore implements IAccessStore {
fakeRolesStore: IRoleStore;
userToRoleMap: Map<number, number>;
rolePermissions: Map<number, IPermission[]>;
constructor(roleStore?: IRoleStore);
getProjectUserAndGroupCountsForRole(roleId: number): Promise<IProjectRoleUsage[]>;
getAllProjectRolesForUser(userId: number, project: string): Promise<IRoleWithProject[]>;
addAccessToProject(roles: number[], groups: number[], users: number[], projectId: string, createdBy: string): Promise<void>;
addGroupToRole(groupId: number, roleId: number, created_by: string, projectId?: string): Promise<void>;
updateUserProjectRole(userId: number, roleId: number, projectId: string): Promise<void>;
removeUserFromRole(userId: number, roleId: number, projectId: string): Promise<void>;
wipePermissionsFromRole(role_id: number): Promise<void>;
unlinkUserRoles(userId: number): Promise<void>;
getRoleByName(name: string): Promise<IRole>;
getProjectUsersForRole(roleId: number, projectId?: string): Promise<IUserRole[]>;
getProjectUsers(projectId?: string): Promise<IUserWithProjectRoles[]>;
getProjectRoles(): Promise<IRole[]>;
addEnvironmentPermissionsToRole(role_id: number, permissions: PermissionRef[]): Promise<void>;
getAvailablePermissions(): Promise<IPermission[]>;
getPermissionsForUser(userId: Number): Promise<IUserPermission[]>;
getPermissionsForRole(roleId: number): Promise<IPermission[]>;
getRoles(): Promise<IRole[]>;
getRoleWithId(id: number): Promise<IRole>;
getRolesForProject(projectId: string): Promise<IRole[]>;
removeRolesForProject(projectId: string): Promise<void>;
getRolesForUserId(userId: number): Promise<IRoleWithProject[]>;
getUserIdsForRole(roleId: number, projectId: string): Promise<number[]>;
getGroupIdsForRole(roleId: number, projectId?: string): Promise<number[]>;
addUserToRole(userId: number, roleId: number): Promise<void>;
addPermissionsToRole(role_id: number, permissions: PermissionRef[], environment?: string): Promise<void>;
removePermissionFromRole(roleId: number, permission: string, projectId?: string): Promise<void>;
getRootRoleForAllUsers(): Promise<IUserRole[]>;
delete(key: number): Promise<void>;
deleteAll(): Promise<void>;
destroy(): void;
exists(key: number): Promise<boolean>;
get(key: number): Promise<IRole>;
getAll(): Promise<IRole[]>;
getRootRoles(): Promise<IRole[]>;
removeRolesOfTypeForUser(userId: number, roleTypes: string[]): Promise<void>;
cloneEnvironmentPermissions(sourceEnvironment: string, destinationEnvironment: string): Promise<void>;
clearUserPersonalAccessTokens(userId: number): Promise<void>;
unlinkUserGroups(userId: number): Promise<void>;
clearPublicSignupUserTokens(userId: number): Promise<void>;
getProjectRolesForGroup(projectId: string, groupId: number): Promise<number[]>;
getProjectRolesForUser(projectId: string, userId: number): Promise<number[]>;
setProjectRolesForGroup(projectId: string, groupId: number, roles: number[], createdBy: string): Promise<void>;
setProjectRolesForUser(projectId: string, userId: number, roles: number[]): Promise<void>;
removeUserAccess(projectId: string, userId: number): Promise<void>;
removeGroupAccess(projectId: string, groupId: number): Promise<void>;
getUserAccessOverview(): Promise<IUserAccessOverview[]>;
getRootRoleForUser(userId: number): Promise<IRole | undefined>;
}
export default FakeAccessStore;
//# sourceMappingURL=fake-access-store.d.ts.map