import { Request, Response } from 'express';
import { JWTTokenPayload, SessionPayload } from '../core/interfaces/token-payload.interface';
export declare class RequestContext {
    private static storage;
    readonly id: number;
    request: Request;
    response: Response;
    private constructor();
    static create(request: Request, response: Response, next: () => void): void;
    static current(): RequestContext | undefined;
    static currentRequest(): Request | null;
    static currentUser(): JWTTokenPayload | null;
    static currentSession(): SessionPayload | null;
    static getDeviceInfo(): {
        deviceName: string;
        ipAddress: string;
        browser: string;
    };
    private static getDeviceName;
    private static getBrowser;
    private static getIpAddress;
}
//# sourceMappingURL=request-context.d.ts.map