UNPKG

saltfish

Version:

An interactive video-guided tour system for web applications

45 lines 1.6 kB
import type { IUserManagementService, IPlayerInitializationService, ManagedManagers } from './ServiceInterfaces'; /** * Service for handling user identification, anonymous users, and A/B testing */ export declare class UserManagementService implements IUserManagementService { private managers; private playerInitializationService?; private userDataLoadedPromise; private userDataLoadedResolve; private lastUserIdentification; constructor(managers: ManagedManagers); /** * Set the player initialization service for dependency */ setPlayerInitializationService(service: IPlayerInitializationService): void; /** * Get the last user identification for restoration */ getLastUserIdentification(): { userId: string; userData?: Record<string, unknown>; } | null; /** * Get the user data loaded promise for waiting on A/B test assignments */ getUserDataLoadedPromise(): Promise<void> | null; /** * Identify a user with ID and optional data */ identifyUser(userId: string, userData?: Record<string, unknown>): void; /** * Identify user anonymously with optional data */ identifyAnonymous(userData?: Record<string, unknown>): Promise<void>; /** * Record A/B test attempt for analytics */ recordABTestAttempt(playlistId: string): Promise<void>; /** * Resolve the user data loaded promise (called by PlayerInitializationService) */ resolveUserDataLoaded(): void; destroy(): void; } //# sourceMappingURL=UserManagementService.d.ts.map