import { Base64 } from "../../Base64"; import { Encrypted as AesEncrypted } from "./Encrypted"; export declare class Aes { private readonly key; name?: string; private constructor(); encrypt(data: string | ArrayBuffer, salt?: string): Promise; decrypt(encrypted: AesEncrypted): Promise; decrypt(encrypted: Base64, salt: Base64): Promise; export(): Promise; export(parts: 1): Promise<[Base64]>; export(parts: 2): Promise<[Base64, Base64]>; export(parts: 3): Promise<[Base64, Base64, Base64]>; export(parts: 4): Promise<[Base64, Base64, Base64, Base64]>; export(parts: 5): Promise<[Base64, Base64, Base64, Base64, Base64]>; export(parts: number): Promise; export(parts: Uint8Array): Promise; export(parts: [Uint8Array]): Promise<[Base64, Base64]>; export(parts: [Uint8Array, Uint8Array]): Promise<[Base64, Base64, Base64]>; export(parts: [Uint8Array, Uint8Array, Uint8Array]): Promise<[Base64, Base64, Base64, Base64]>; export(parts: [Uint8Array, Uint8Array, Uint8Array, Uint8Array]): Promise<[Base64, Base64, Base64, Base64, Base64]>; export(parts: Uint8Array[]): Promise; export(parts: Base64): Promise; export(parts: Base64[]): Promise; static cbc(key: 256 | Base64 | Base64[]): Aes; static gcm(key: 256 | Base64 | Base64[]): Aes; static random(length: 256): Base64; static random(length: 256, parts: 1): [Base64]; static random(length: 256, parts: 2): [Base64, Base64]; static random(length: 256, parts: 3): [Base64, Base64, Base64]; static random(length: 256, parts: 4): [Base64, Base64, Base64, Base64]; static random(length: 256, parts: 5): [Base64, Base64, Base64, Base64, Base64]; static random(length: 256, parts: number): Base64[]; private static generate; private static generateRandomKeys; private static reduceKeys; } export declare namespace Aes { export import Encrypted = AesEncrypted; }