npaw-plugin-nwf
Version:
NPAW's Plugin
43 lines (42 loc) • 1.39 kB
TypeScript
import Core from '../../core/Core';
import CoreStorage from '../../core/storage/CoreStorage';
import SessionsRequest from '../SessionsRequest';
import ExpirationManager from '../../common/ExpirationManager';
/**
* Handles expired session recovery and cleanup
*/
export default class ExpirationRecovery {
private core;
private coreStorage;
private expirationManager;
constructor(core: Core, coreStorage: CoreStorage, expirationManager: ExpirationManager);
/**
* Check if session has expired
*/
hasExpired(): boolean;
/**
* Recover from expired session
* Returns a new START request with cleaned params
* @param lastStartRequest - The last START request (if any)
* @returns New START request for recovery
*/
recover(lastStartRequest: SessionsRequest | null): SessionsRequest;
/**
* Close session and cleanup storage
*/
closeSession(): void;
/**
* Close the expired session without queueing a recovery START request.
* Used when sessionRecovery option is 'never' — the host app is expected
* to start a fresh session itself.
*/
expireWithoutRecovery(): void;
/**
* Trigger SESSION_EXPIRE event after configured delay
*/
private triggerExpireEvent;
/**
* Get expiration manager (for external use)
*/
getExpirationManager(): ExpirationManager;
}