UNPKG

@intuitionrobotics/permissions

Version:
37 lines (36 loc) 2.72 kB
import { AssignAppPermissions, DB_PermissionsGroup, DB_PermissionsUser, PredefinedGroup } from "../_imports"; import { BaseDB_ApiGenerator } from "@intuitionrobotics/db-api-generator/backend"; import { OnNewUserRegistered, OnUserLogin } from "@intuitionrobotics/user-account/backend"; import { Clause_Where } from "@intuitionrobotics/firebase"; import { ExpressRequest } from "@intuitionrobotics/thunderstorm/backend"; import { TypeValidator } from "@intuitionrobotics/ts-common"; import { FirestoreTransaction } from "@intuitionrobotics/firebase/backend"; import { UI_Account } from "@intuitionrobotics/user-account"; export declare class GroupsDB_Class extends BaseDB_ApiGenerator<DB_PermissionsGroup> { static _validator: TypeValidator<DB_PermissionsGroup>; constructor(); protected externalFilter(item: DB_PermissionsGroup): Clause_Where<DB_PermissionsGroup>; protected internalFilter(item: DB_PermissionsGroup): Clause_Where<DB_PermissionsGroup>[]; protected assertDeletion(transaction: FirestoreTransaction, dbInstance: DB_PermissionsGroup): Promise<void>; private setAccessLevels; getGroupsByTags(tags: string[]): Promise<DB_PermissionsGroup[]>; deleteTags(tag: string): Promise<void>; protected preUpsertProcessing(transaction: FirestoreTransaction, dbInstance: DB_PermissionsGroup, request?: ExpressRequest): Promise<void>; getConfig(): import("@intuitionrobotics/db-api-generator/backend").Config<DB_PermissionsGroup>; getPredefinedGroupId(projectId: string, predefinedGroupId: string): string; upsertPredefinedGroups(projectId: string, projectName: string, predefinedGroups: PredefinedGroup[]): Promise<DB_PermissionsGroup[]>; } export declare class UsersDB_Class extends BaseDB_ApiGenerator<DB_PermissionsUser> implements OnNewUserRegistered, OnUserLogin { static _validator: TypeValidator<DB_PermissionsUser>; constructor(); protected preUpsertProcessing(transaction: FirestoreTransaction, dbInstance: DB_PermissionsUser, request?: ExpressRequest): Promise<void>; protected internalFilter(item: DB_PermissionsUser): Clause_Where<DB_PermissionsUser>[]; private setGroupIds; __onUserLogin(account: UI_Account): Promise<void>; __onNewUserRegistered(account: UI_Account): Promise<void>; insertIfNotExist(email: string): Promise<DB_PermissionsUser | undefined>; assignAppPermissions(assignAppPermissionsObj: AssignAppPermissions, request?: ExpressRequest): Promise<void>; patch(instance: DB_PermissionsUser, propsToPatch?: (keyof DB_PermissionsUser)[], request?: ExpressRequest): Promise<DB_PermissionsUser>; } export declare const GroupPermissionsDB: GroupsDB_Class; export declare const UserPermissionsDB: UsersDB_Class;