import { PrismaService } from "@hed-hog/api-prisma";
import { JwtService } from "@nestjs/jwt";
import { SecurityService } from "../security/security.service";
import { SettingService } from "../setting/setting.service";
export declare class TokenService {
    private readonly prisma;
    private readonly jwt;
    private readonly security;
    private readonly setting;
    constructor(prisma: PrismaService, jwt: JwtService, security: SecurityService, setting: SettingService);
    verify(locale: string, token: string): Promise<any>;
    createAccessToken(payload: Record<string, any>): Promise<string>;
    createOpaqueToken(size?: number): Promise<string>;
    private normalizeCookieDomain;
    private getCookieDomain;
    removeRefreshTokenCookie(res: any): Promise<void>;
    setRefreshTokenCookie(locale: string, res: any, token: string, expires_at: Date): Promise<void>;
    createMfaChallengeToken(payload: {
        userId: number;
        ipAddress: string;
        userAgent: string;
        email: string;
    }): Promise<string>;
    verifyMfaChallengeToken(token: string): Promise<{
        userId: number;
        ipAddress: string;
        userAgent: string;
        email: string;
    }>;
    decodeExpiredToken(token: string): Promise<any>;
}
//# sourceMappingURL=token.service.d.ts.map