import { EDHOC, EdhocCryptoManager, EdhocSuite, PublicPrivateTuple } from './edhoc'; import { RecoveredSignatureType } from '@noble/curves/abstract/weierstrass'; type KeyUtils = { utils: { randomPrivateKey: () => Uint8Array; }; getPublicKey: (privateKey: Uint8Array, compressed?: boolean) => Uint8Array; getSharedSecret?: (privateKey: Uint8Array, publicKey: Uint8Array) => Uint8Array; sign?: (msg: Uint8Array, privateKey: Uint8Array) => Uint8Array | RecoveredSignatureType; verify?: (signature: Uint8Array, msgHash: Uint8Array, publicKey: Uint8Array) => boolean; }; export declare class DefaultEdhocCryptoManager implements EdhocCryptoManager { generateKeyPair(edhoc: EDHOC): PublicPrivateTuple; keyAgreement(edhoc: EDHOC, privateKey: Buffer, peerPublicKey: Buffer): Buffer; sign(edhoc: EDHOC, privateKey: Buffer, input: Buffer): Buffer; verify(edhoc: EDHOC, publicKey: Buffer, input: Buffer, signature: Buffer): Promise; hkdfExtract(_edhoc: EDHOC, ikm: Buffer, salt: Buffer): Buffer; hkdfExpand(_edhoc: EDHOC, prk: Buffer, info: Buffer, length: number): Buffer; encrypt(edhoc: EDHOC, key: Buffer, nonce: Buffer, aad: Buffer, plaintext: Buffer): Promise; decrypt(edhoc: EDHOC, key: Buffer, nonce: Buffer, aad: Buffer, ciphertext: Buffer): Promise; hash(_edhoc: EDHOC, input: Buffer): Promise; private formatToBeSigned; private formatPublicKey; protected getCurveForSignature(suite: EdhocSuite): KeyUtils; protected getCurveForKeyAgreement(suite: EdhocSuite): KeyUtils; private getTagLength; private getAlgorithm; } export {}; //# sourceMappingURL=crypto.d.ts.map