@bitblit/ratchet-warden-server
Version:
Typescript library to simplify using simplewebauthn and secondary auth methods over GraphQL
36 lines (35 loc) • 2.89 kB
TypeScript
import { WardenServiceOptions } from "./warden-service-options.js";
import { WardenContact } from "@bitblit/ratchet-warden-common/common/model/warden-contact";
import { WardenEntry } from "@bitblit/ratchet-warden-common/common/model/warden-entry";
import { WardenUserDecoration } from "@bitblit/ratchet-warden-common/common/model/warden-user-decoration";
import { WardenJwtToken } from "@bitblit/ratchet-warden-common/common/model/warden-jwt-token";
export declare class WardenAuthorizer {
private opts;
constructor(opts: WardenServiceOptions);
findEntryByContact(contact: WardenContact): Promise<WardenEntry>;
findEntryById(userId: string): Promise<WardenEntry>;
findDecoratorById(userId: string): Promise<WardenUserDecoration<any>>;
userHasGlobalRoleById(userId: string, roleId: string): Promise<boolean>;
userHasRoleOnTeamById(userId: string, teamId: string, roleId: string): Promise<boolean>;
userHasAtLeastOneGlobalRoleById(userId: string, roleIds: string[]): Promise<boolean>;
userHasAtLeastOneRoleOnTeamById(userId: string, teamId: string, roleIds: string[]): Promise<boolean>;
userHasAllGlobalRolesById(userId: string, roleIds: string[]): Promise<boolean>;
userHasAllRolesOnTeamById(userId: string, teamId: string, roleIds: string[]): Promise<boolean>;
userHasGlobalRolesById(userId: string, roleIds: string[], combineWithAnd: boolean): Promise<boolean>;
userHasRolesOnTeamById(userId: string, teamId: string, roleIds: string[], combineWithAnd: boolean): Promise<boolean>;
userIsTeamMemberById(userId: string, teamId: string): Promise<boolean>;
userHasAnyRoleOnTeamById(userId: string, teamId: string): Promise<boolean>;
usersTeamMembershipsById(userId: string): Promise<string[]>;
userHasGlobalRole(user: WardenUserDecoration<any>, roleId: string): boolean;
userHasRoleOnTeam(user: WardenUserDecoration<any>, teamId: string, roleId: string): boolean;
userHasAtLeastOneGlobalRole(user: WardenUserDecoration<any>, roleIds: string[]): boolean;
userHasAtLeastOneRoleOnTeam(user: WardenUserDecoration<any>, teamId: string, roleIds: string[]): boolean;
userHasAllGlobalRoles(user: WardenUserDecoration<any>, roleIds: string[]): boolean;
userHasAllRolesOnTeam(user: WardenUserDecoration<any>, teamId: string, roleIds: string[]): boolean;
userHasGlobalRoles(user: WardenUserDecoration<any>, roleIds: string[], combineWithAnd: boolean): boolean;
userHasRolesOnTeam(user: WardenUserDecoration<any>, teamId: string, roleIds: string[], combineWithAnd: boolean): boolean;
wardenUserDecorationFromToken(jwt: WardenJwtToken<any>): WardenUserDecoration<any>;
userIsTeamMember(user: WardenUserDecoration<any>, teamId: string): boolean;
userHasAnyRoleOnTeam(user: WardenUserDecoration<any>, teamId: string): boolean;
usersTeamMemberships(user: WardenUserDecoration<any>): string[];
}