node-seal
Version:
Homomorphic Encryption for TypeScript or JavaScript using Microsoft SEAL
96 lines (95 loc) • 5.85 kB
TypeScript
import { BatchEncoderConstructorOptions, BatchEncoderDependencies } from './batch-encoder';
import { CipherTextConstructorOptions, CipherTextDependencies } from './cipher-text';
import { CKKSEncoderConstructorOptions, CKKSEncoderDependencies } from './ckks-encoder';
import { CoeffModulus, CoeffModulusDependencies } from './coeff-modulus';
import { ComprModeType, ComprModeTypeDependencies } from './compr-mode-type';
import { ContextConstructorOptions, ContextDependencies } from './context';
import { ContextDataConstructorOptions, ContextDataDependencies } from './context-data';
import { DecryptorConstructorOptions, DecryptorDependencies } from './decryptor';
import { EncryptionParameterQualifiersConstructorOptions, EncryptionParameterQualifiersDependencies } from './encryption-parameter-qualifiers';
import { EncryptionParametersConstructorOptions, EncryptionParametersDependencies } from './encryption-parameters';
import { EncryptorConstructorOptions, EncryptorDependencies } from './encryptor';
import { EvaluatorConstructorOptions, EvaluatorDependencies } from './evaluator';
import { Exception, ExceptionDependencies } from './exception';
import { GaloisKeysConstructorOptions, GaloisKeysDependencies } from './galois-keys';
import { KeyGeneratorConstructorOptions, KeyGeneratorDependencies } from './key-generator';
import { MemoryPoolHandle, MemoryPoolHandleDependencies } from './memory-pool-handle';
import { ModulusConstructorOptions, ModulusDependencies } from './modulus';
import { ParmsIdTypeConstructorOptions, ParmsIdTypeDependencies } from './parms-id-type';
import { PlainModulus, PlainModulusDependencies } from './plain-modulus';
import { PlainTextConstructorOptions, PlainTextDependencies } from './plain-text';
import { PublicKeyConstructorOptions, PublicKeyDependencies } from './public-key';
import { RelinKeysConstructorOptions, RelinKeysDependencies } from './relin-keys';
import { SchemeType, SchemeTypeDependencies } from './scheme-type';
import { SecretKeyConstructorOptions, SecretKeyDependencies } from './secret-key';
import { SecurityLevel, SecurityLevelDependencies } from './security-level';
import { SerializableConstructorOptions, SerializableDependencies } from './serializable';
import { VectorConstructorOptions, VectorDependencies } from './vector';
export type Instance = any;
export type Loader = any;
export type Library = any;
export type Dependencies = any;
export type LoaderOptions = {
readonly loader: Loader;
};
export type SEALLibrary = {
readonly BatchEncoder: BatchEncoderConstructorOptions;
readonly CipherText: CipherTextConstructorOptions;
readonly CKKSEncoder: CKKSEncoderConstructorOptions;
readonly CoeffModulus: CoeffModulus;
readonly ComprModeType: ComprModeType;
readonly ContextData: ContextDataConstructorOptions;
readonly Context: ContextConstructorOptions;
readonly Decryptor: DecryptorConstructorOptions;
readonly EncryptionParameterQualifiers: EncryptionParameterQualifiersConstructorOptions;
readonly EncryptionParameters: EncryptionParametersConstructorOptions;
readonly Encryptor: EncryptorConstructorOptions;
readonly Evaluator: EvaluatorConstructorOptions;
readonly Exception: Exception;
readonly GaloisKeys: GaloisKeysConstructorOptions;
readonly KeyGenerator: KeyGeneratorConstructorOptions;
readonly MemoryPoolHandle: MemoryPoolHandle;
readonly Modulus: ModulusConstructorOptions;
readonly ParmsIdType: ParmsIdTypeConstructorOptions;
readonly PlainText: PlainTextConstructorOptions;
readonly PlainModulus: PlainModulus;
readonly PublicKey: PublicKeyConstructorOptions;
readonly RelinKeys: RelinKeysConstructorOptions;
readonly SchemeType: SchemeType;
readonly SecretKey: SecretKeyConstructorOptions;
readonly SecurityLevel: SecurityLevel;
readonly Serializable: SerializableConstructorOptions;
readonly Vector: VectorConstructorOptions;
readonly Version: string;
};
type SEALConstructorOptions = {
readonly BatchEncoder: BatchEncoderDependencies;
readonly CipherText: CipherTextDependencies;
readonly CKKSEncoder: CKKSEncoderDependencies;
readonly CoeffModulus: CoeffModulusDependencies;
readonly ComprModeType: ComprModeTypeDependencies;
readonly ContextData: ContextDataDependencies;
readonly Context: ContextDependencies;
readonly Decryptor: DecryptorDependencies;
readonly EncryptionParameterQualifiers: EncryptionParameterQualifiersDependencies;
readonly EncryptionParameters: EncryptionParametersDependencies;
readonly Encryptor: EncryptorDependencies;
readonly Evaluator: EvaluatorDependencies;
readonly Exception: ExceptionDependencies;
readonly GaloisKeys: GaloisKeysDependencies;
readonly KeyGenerator: KeyGeneratorDependencies;
readonly MemoryPoolHandle: MemoryPoolHandleDependencies;
readonly Modulus: ModulusDependencies;
readonly ParmsIdType: ParmsIdTypeDependencies;
readonly PlainText: PlainTextDependencies;
readonly PlainModulus: PlainModulusDependencies;
readonly PublicKey: PublicKeyDependencies;
readonly RelinKeys: RelinKeysDependencies;
readonly SchemeType: SchemeTypeDependencies;
readonly SecretKey: SecretKeyDependencies;
readonly SecurityLevel: SecurityLevelDependencies;
readonly Serializable: SerializableDependencies;
readonly Vector: VectorDependencies;
};
export declare const SEALConstructor: ({ BatchEncoder, CipherText, CKKSEncoder, CoeffModulus, ComprModeType, ContextData, Context, Decryptor, EncryptionParameterQualifiers, EncryptionParameters, Encryptor, Evaluator, Exception, GaloisKeys, KeyGenerator, MemoryPoolHandle, Modulus, ParmsIdType, PlainText, PlainModulus, PublicKey, RelinKeys, SchemeType, SecretKey, SecurityLevel, Serializable, Vector }: SEALConstructorOptions) => SEALLibrary;
export {};