export class SessionEntity { /** * Create a self-managing Session Entity. This entity is scoped to the agent which triggered it, allowing for multiple simultaneous session objects to exist. * Session data is stored at NRBA_SESSION::{key}, where key can be app-scoped by the caller to avoid collisions across multiple agents on the same origin. * The value can be overridden in the constructor, but will default to a unique 16 character hex string * expiresMs and inactiveMs are used to "expire" the session, but can be overridden in the constructor. Pass 0 to disable expiration timers. */ constructor(opts: any); agentRef: any; storage: any; state: {}; key: any; ee: any; setup({ value, expiresMs, inactiveMs, numOfResets }: { value?: string | undefined; expiresMs?: number | undefined; inactiveMs?: number | undefined; numOfResets?: number | undefined; }): void; expiresMs: number | undefined; inactiveMs: number | undefined; expiresTimer: Timer | undefined; inactiveTimer: InteractionTimer | undefined; initialized: boolean | undefined; get lookupKey(): string; sync(data: any): void; /** * Fetch the stored values from the storage API tied to this entity * @returns {Object} */ read(): Object; /** * Store data to the storage API tied to this entity * To preseve existing attributes, the output of ...session.read() * should be appended to the data argument * @param {Object} data * @returns {Object} */ write(data: Object): Object; reset(): Object; /** * Refresh the inactivity timer data */ refresh(): void; /** * @param {number} timestamp * @returns {boolean} */ isExpired(timestamp: number): boolean; /** * @param {Object} data * @returns {boolean} */ isInvalid(data: Object): boolean; collectSM(type: any, data: any, useUpdatedAt: any): void; getDuration(data: {} | undefined, useUpdatedAt: any): number; /** * @param {number} futureMs - The number of ms to use to generate a future timestamp * @returns {number} */ getFutureTimestamp(futureMs: number): number; syncCustomAttribute(key: any, value: any): void; custom: any; } import { Timer } from '../timer/timer'; import { InteractionTimer } from '../timer/interaction-timer'; //# sourceMappingURL=session-entity.d.ts.map