tink-crypto
Version:
A multi-language, cross-platform library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse.
35 lines (34 loc) • 1.18 kB
TypeScript
/**
* @license
* Copyright 2020 Google LLC
* SPDX-License-Identifier: Apache-2.0
*/
import * as KeyManager from '../internal/key_manager';
import { PbKeyData, PbMessage } from '../internal/proto';
import * as Util from '../internal/util';
import { HybridEncrypt } from './internal/hybrid_encrypt';
/**
* @final
*/
declare class EciesAeadHkdfPublicKeyFactory implements KeyManager.KeyFactory {
newKey(keyFormat: PbMessage | Uint8Array): never;
newKeyData(serializedKeyFormat: Uint8Array): never;
}
/**
* @final
*/
export declare class EciesAeadHkdfPublicKeyManager implements KeyManager.KeyManager<HybridEncrypt> {
static KEY_TYPE: string;
private static readonly SUPPORTED_PRIMITIVE;
static VERSION: number;
keyFactory: EciesAeadHkdfPublicKeyFactory;
getPrimitive(primitiveType: Util.Constructor<HybridEncrypt>, key: PbKeyData | PbMessage): Promise<HybridEncrypt>;
doesSupport(keyType: string): boolean;
getKeyType(): string;
getPrimitiveType(): typeof HybridEncrypt;
getVersion(): number;
getKeyFactory(): EciesAeadHkdfPublicKeyFactory;
private static getKeyProto;
private static getKeyProtoFromKeyData;
}
export {};