/// import { KeyExchange } from "../key-exchange"; export declare type CipherHeader = { type: number; version: number; epoch: number; sequenceNumber: number; }; export declare enum SessionType { CLIENT = 1, SERVER = 2 } export default class AbstractCipher { id: number; name?: string; hash?: string; verifyDataLength: number; blockAlgorithm?: string; kx?: KeyExchange; /** * Init cipher. * @abstract */ init(...args: any): void; /** * Encrypts data. * @abstract */ encrypt(...args: any): Buffer; /** * Decrypts data. * @abstract */ decrypt(...args: any): Buffer; /** * @returns {string} */ toString(): string; }