/// import * as crypto from 'crypto'; import { Key } from './basic'; import { CryptoCipher, CipherMode, CipherKeySize, HashAlgorithm, KeySize } from './types'; export interface SCryptOptions { cost?: number; blockSize?: number; parallelization?: number; maxmem?: number; } export declare const CIPHER_IV: { [name: string]: CipherKeySize; }; export declare class SecretKey extends Key { export(): Uint8Array; encrypt(alhorithm: CryptoCipher, data: Uint8Array | Iterable | AsyncIterable, iv: Uint8Array, mode?: CipherMode): Promise>; decrypt(alhorithm: CryptoCipher, data: Uint8Array | Iterable | AsyncIterable, iv: Uint8Array, mode?: CipherMode): Promise>; static fromBytes(keydata: Uint8Array): SecretKey; static createRandom(size: CipherKeySize): Promise; static createPBKDF2(password: string | Uint8Array, salt: string | Uint8Array, iterations?: number, keylen?: CipherKeySize, digest?: HashAlgorithm): Promise; static createSCRYPT(password: string | Uint8Array, salt: string | Uint8Array, keylen?: KeySize, options?: crypto.ScryptOptions): Promise; static keySize(name: CryptoCipher): CipherKeySize; static ivSize(name: CryptoCipher): number; static iv(name: CryptoCipher): Promise; static get ciphers(): CryptoCipher[]; }