import { SuccessInterface } from "../config/Interfaces/Helper/response.helper.interface";
/**
 * Helper class for cryptographic operations such as encryption and decryption.
 */
export declare class CryptoHelper {
    /**
     * The encryption key used for cryptographic operations.
     */
    private encryptionKey;
    /**
     * Instance of ResponseHelper to handle responses.
     */
    private readonly responseHelper;
    /**
     * Instance of Cryptography class for performing cryptographic operations.
     */
    private readonly Cryptography;
    /**
     * Instance of Converter class for converting data formats.
     */
    private readonly Converter;
    /**
     * Constructor to initialize the CryptoHelper class.
     * @param encryptionKey - Optional encryption key. If not provided, a default key based on hostname and platform will be used.
     */
    constructor(encryptionKey?: string);
    /**
     * Sets a new encryption key.
     * @param encryptionKey - The new encryption key to be set.
     * @returns A promise that resolves to a success response.
     */
    setEncryptionKey(encryptionKey: string): Promise<SuccessInterface>;
    /**
     * Encrypts data asynchronously.
     * @param data - The data to be encrypted.
     * @returns A promise that resolves to the encrypted data as a string.
     */
    encrypt(data: string): Promise<string>;
    /**
     * Decrypts data asynchronously.
     * @param data - The data to be decrypted.
     * @returns A promise that resolves to the decrypted data as an object.
     */
    decrypt(data: string): Promise<any>;
    /**
     * Encrypts data synchronously.
     * @param data - The data to be encrypted.
     * @returns The encrypted data as a string.
     */
    encryptSync(data: string): string;
    /**
     * Decrypts data synchronously.
     * @param data - The data to be decrypted.
     * @returns The decrypted data as an object.
     */
    decryptSync(data: string): object;
}
