import { OnDestroy } from '@angular/core'; import { Observable } from 'rxjs'; import { ActivityEvent } from '../models/session.model'; import * as i0 from "@angular/core"; /** * Service for tracking user activity and managing session validation */ export declare class FgsActivityTrackerService implements OnDestroy { private config; private storageService; private sessionTimer; private ngZone; private isTracking; private lastActivityUpdate; private lastValidation; private boundEventHandlers; private readonly TRACKED_EVENTS; private activityDetected; /** * Observable for activity events */ activityDetected$: Observable; private get features(); private get activityThrottleMs(); private get validationThrottleMs(); private get debug(); ngOnDestroy(): void; /** * Start tracking user activity */ startTracking(): void; /** * Stop tracking user activity */ stopTracking(): void; /** * Create throttled event handler for activity events */ private createEventHandler; /** * Create visibility change handler */ private createVisibilityHandler; /** * Handle activity event (called after throttle check passes) */ private handleActivity; /** * Handle visibility change (tab focus) */ private handleVisibilityChange; /** * Manually record an API call (should be called by interceptor) */ recordApiCall(): void; /** * Get last activity timestamp */ getLastActivityTime(): number | null; /** * Get last API call timestamp */ getLastApiCallTime(): number | null; /** * Get time since last activity in milliseconds */ getIdleTime(): number; /** * Check if user is considered idle */ isIdle(thresholdMs: number): boolean; /** * Check if tracking is active */ isActive(): boolean; /** * Debug logging */ private log; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } //# sourceMappingURL=activity-tracker.service.d.ts.map