node-seal
Version:
Homomorphic Encryption for TypeScript or JavaScript using Microsoft SEAL
25 lines (24 loc) • 1.06 kB
TypeScript
import { CipherText } from './cipher-text';
import { Context } from './context';
import { Exception } from './exception';
import { PlainText, PlainTextConstructorOptions } from './plain-text';
import { Instance, LoaderOptions } from './seal';
import { SecretKey } from './secret-key';
export interface DecryptorDependencyOptions {
readonly Exception: Exception;
readonly PlainText: PlainTextConstructorOptions;
}
export interface DecryptorDependencies {
({ Exception, PlainText }: DecryptorDependencyOptions): DecryptorConstructorOptions;
}
export interface DecryptorConstructorOptions {
(context: Context, secretKey: SecretKey): Decryptor;
}
export interface Decryptor {
readonly instance: Instance;
readonly unsafeInject: (instance: Instance) => void;
readonly delete: () => void;
readonly decrypt: (cipherText: CipherText, plainText?: PlainText) => PlainText | void;
readonly invariantNoiseBudget: (cipherText: CipherText) => number;
}
export declare const DecryptorInit: ({ loader }: LoaderOptions) => DecryptorDependencies;