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