/// <reference types="node" />
/**
 * Generate a new encryption key string encoded in base64
 *
 * @param algorithm The algorithm that will be used to encrypt/decrypt the data
 * @returns The encryption key
 */
export declare const generate: (algorithm?: algorithm) => string;
/**
 * Read an encryption key from a base64 encoded string
 *
 * @param based The base64 enconded encryption key
 * @returns The buffer rappresenting the key
 */
export declare const read: (based: string) => Buffer;
/**
 * The key length for each algorithm
 */
export declare const config: {
    'aes-128-cbc': number;
    'aes-256-cbc': number;
    'aes-256-gcm': number;
    'aes-128-gcm': number;
};
/**
 * The supported algorithms
 */
export type algorithm = 'aes-128-cbc' | 'aes-256-cbc' | 'aes-256-gcm' | 'aes-128-gcm';
