UNPKG

realm-object-server

Version:

Realm Object Server

53 lines (52 loc) 2.1 kB
import { Server } from "../Server"; import { ConfigurableServiceBase, ConfigurableServiceConfig } from "./ConfigurableServiceBase"; export interface IPermissionChangeRequest { condition: Realm.Sync.PermissionCondition; realmPath: string; accessLevel: Realm.Sync.AccessLevel; } export interface PermissionsServiceConfig extends ConfigurableServiceConfig { enablePermissionRealmReflection?: boolean; enableManagementRealmReflection?: boolean; } export declare class PermissionsService extends ConfigurableServiceBase<PermissionsServiceConfig> { private static MANAGEMENT_REALM_REGEX; private static ADMIN_REALM_REGEX; private enablePermissionRealmReflection; private enableManagementRealmReflection; private adminRealm; private wildcardPermissionRealm; private logger; private handleManagementChangeCallback; private handleAdminChangeCallback; private pendingHandlerCallbacks; private static ensureInTransaction; constructor(config?: PermissionsServiceConfig); protected setConfigCore(config?: PermissionsServiceConfig): void; private getManagementRealmForUserId; private getUserSpecificPermissionRealm; protected startCore(server: Server): Promise<void>; private setupHandlers; private stopping; protected stopCore(): Promise<void>; private onDemand; private applyPermissions; private getOffers; private offerPermissions; private invalidatePermissionOffer; private acceptPermissionOffer; private getGrantedPermissions; private unreflectPermissionIn; private reflectPermissionIn; private getUserIdsWithMetadata; private grantReadOnlyAccessToWildcardPermissionRealm; private grantReadWriteOnUserPermissionRealms; private applyPermissionChangeInAdminRealm; private handleAdminRealmChange; private handleManagementRealmChange; private handleGNCallback; private handlePermissionOfferObject; private handlePermissionOfferResponseObject; private handlePermissionChangeObject; private validateUserIdCanChangePermissionsForPath; }