import { JsmLogger } from "jsm-logger";
/**
 * @classdesc This class should not extend BaseService because it's used in it
 */
export declare class AuthManager {
    logger: JsmLogger;
    constructor();
    generateToken(payload: Jsm.Core.Security.JWTUserAuthPayload | Jsm.Core.Security.JWTPaymentAuthPayload, space: Jsm.Core.Auth.Entity.TJWTTokenSpace, isRefreshToken: boolean, config: {
        secret: string;
        algorithm: string | undefined;
        tokenExpiration: string;
        refreshTokenExpiration: string;
    }): string;
    verifyToken(token: string, secret: string): any;
    decodeToken(token: string): Jsm.Core.Security.JWTUserAuthPayload;
    verifyPassword(password: string, hash: string): Promise<boolean>;
    hashPassword(password: string): Promise<{
        salt: string;
        password: string;
    }>;
}
