import type { RoleSchema } from '../../lib/openapi/index.js';
import type { ICustomRole } from '../../lib/types/model.js';
import type { IRole, IUserRole } from '../../lib/types/stores/access-store.js';
import type { ICustomRoleInsert, ICustomRoleUpdate, IRoleStore } from '../../lib/types/stores/role-store.js';
export default class FakeRoleStore implements IRoleStore {
    count(): Promise<number>;
    filteredCount(_search: Partial<RoleSchema>): Promise<number>;
    filteredCountInUse(_search: Partial<RoleSchema>): Promise<number>;
    roles: ICustomRole[];
    getGroupRolesForProject(_projectId: string): Promise<IRole[]>;
    nameInUse(name: string, _existingId?: number): Promise<boolean>;
    getAll(): Promise<ICustomRole[]>;
    create(role: ICustomRoleInsert): Promise<ICustomRole>;
    update(_role: ICustomRoleUpdate): Promise<ICustomRole>;
    delete(_id: number): Promise<void>;
    getRoles(): Promise<IRole[]>;
    getRoleByName(name: string): Promise<IRole>;
    getRolesForProject(_projectId: string): Promise<IRole[]>;
    removeRolesForProject(_projectId: string): Promise<void>;
    getProjectRoles(): Promise<IRole[]>;
    getRootRoles(): Promise<IRole[]>;
    getRootRoleForAllUsers(): Promise<IUserRole[]>;
    get(id: number): Promise<ICustomRole>;
    exists(_key: number): Promise<boolean>;
    deleteAll(): Promise<void>;
    destroy(): void;
}
//# sourceMappingURL=fake-role-store.d.ts.map