UNPKG

@convergence/convergence

Version:
23 lines (22 loc) 1.44 kB
import { StringMapLike } from "../util/StringMap"; import { DomainUserIdMap } from "../identity"; import { IAllPermissions } from "./IAllPermissions"; import { DomainUserMapping } from "../identity/DomainUserMapping"; export declare abstract class AbstractPermissionManager<T extends string> { resolveSessionPermissions(): Promise<Set<T>>; getPermissions(): Promise<IAllPermissions<T>>; addWorldPermissions(permissions: Set<T> | T[]): Promise<void>; removeWorldPermissions(permissions: Set<T> | T[]): Promise<void>; setWorldPermissions(permissions: Set<T> | T[]): Promise<void>; getWorldPermissions(): Promise<Set<T>>; addUserPermissions(permissions: DomainUserMapping<Set<T> | T[]>): Promise<void>; removeUserPermissions(permissions: DomainUserMapping<Set<T> | T[]>): Promise<void>; setUserPermissions(permissions: DomainUserMapping<Set<T> | T[]>, replaceAll?: boolean): Promise<void>; getAllUserPermissions(): Promise<DomainUserIdMap<Set<T>>>; getUserPermissions(username: string): Promise<Set<T>>; addGroupPermissions(permissions: StringMapLike<Set<T> | T[]>): Promise<void>; removeGroupPermissions(permissions: StringMapLike<Set<T> | T[]>): Promise<void>; setGroupPermissions(permissions: StringMapLike<Set<T> | T[]>, replaceAll?: boolean): Promise<void>; getAllGroupPermissions(): Promise<Map<string, Set<T>>>; getGroupPermissions(groupId: string): Promise<Set<T>>; }