import type { CipherKeyIV, USR } from "../types/helper/cipherHelper";
import { CookieKeys } from "../constant/constant";
declare class CipherHelper {
    private errorHandler;
    constructor(errorHandler: (error: any) => void);
    encrypt: (plainText: string, key: string, iv: string, urlSafe?: boolean) => string;
    encryptAsJson: (plainText: string, cookieKey: (typeof CookieKeys)[keyof typeof CookieKeys] | "device_security_code", key: string, iv: string) => string;
    encryptByProgramID: (plainText: string, programId: string) => string;
    decrypt: (cipherText: string, key: string, iv: string, urlSafe?: boolean) => string;
    decryptAsJson: <K extends string>(cipherText: string, key: string, iv: string) => {
        [x: string]: string;
    };
    decryptByProgramID: (cipherText: string, programId: string) => string;
    generate: (code: string) => CipherKeyIV;
    generateByUSRAndIID: (USR: USR, IID: string) => CipherKeyIV;
    generateByProgramID: (programId: string) => CipherKeyIV;
    generateByUserID: (user_id: string) => CipherKeyIV;
    generateByInstallationID: (IID: string) => CipherKeyIV;
    private PaddingLeft;
}
export { CipherHelper };
