export declare abstract class BaseEncryptor { private readonly encryptionSecret; private readonly decryptionSecretsByDescriptor; constructor(encryptionSecret: string, decryptionSecrets?: string[]); protected abstract md5(input: string): string; getSecretDescriptor(secret: string): string; abstract generateInitialisationVector(): Uint8Array; encrypt(input: string): Promise; protected abstract _encrypt(input: string, iv: Uint8Array, key: string): Promise<[cipher: Uint8Array, authTag: Uint8Array]>; decrypt(string: string): Promise; protected abstract _decrypt(cipher: Uint8Array, authTag: Uint8Array | undefined, iv: Uint8Array, key: string): Promise; }