import { UserRole } from "vr-models"; export interface JWTPayload { userId: string; role: string; level: number; tokenVersion: number; sessionId?: string; iat?: number; exp?: number; } export declare const generateToken: (userId: string, role: UserRole, level: number, tokenVersion: number, sessionId?: string, // Made optional for new flow type?: "ADMIN" | "PASSENGER" | "RIDER") => string; export declare const generateAdminToken: (userId: string, role: UserRole, level: number, tokenVersion: number, sessionId?: string) => string; export declare const generatePassengerToken: (userId: string, role: UserRole, level: number, tokenVersion: number, sessionId?: string) => string; export declare const generateRiderToken: (userId: string, role: UserRole, level: number, tokenVersion: number, sessionId?: string) => string; export declare const verifyToken: (token: string) => Promise; export declare const shouldRefreshToken: (token: string) => boolean; export declare const getTokenTimeRemaining: (token: string) => number | null; export declare const formatTimeRemaining: (seconds: number) => string;