UNPKG

@bsv/sdk

Version:

BSV Blockchain Software Development Kit

27 lines 1.97 kB
import { KeyDeriverApi } from './KeyDeriver.js'; import { PrivateKey } from '../primitives/index.js'; import { CreateHmacArgs, CreateHmacResult, CreateSignatureArgs, CreateSignatureResult, GetPublicKeyArgs, PubKeyHex, RevealCounterpartyKeyLinkageArgs, RevealCounterpartyKeyLinkageResult, RevealSpecificKeyLinkageArgs, RevealSpecificKeyLinkageResult, VerifyHmacArgs, VerifyHmacResult, VerifySignatureArgs, VerifySignatureResult, WalletDecryptArgs, WalletDecryptResult, WalletEncryptArgs, WalletEncryptResult } from './Wallet.interfaces.js'; /** * A ProtoWallet is precursor to a full wallet, capable of performing all foundational cryptographic operations. * It can derive keys, create signatures, facilitate encryption and HMAC operations, and reveal key linkages. * * However, ProtoWallet does not create transactions, manage outputs, interact with the blockchain, * enable the management of identity certificates, or store any data. It is also not concerned with privileged keys. */ export declare class ProtoWallet { keyDeriver?: KeyDeriverApi; constructor(rootKeyOrKeyDeriver?: PrivateKey | 'anyone' | KeyDeriverApi); getPublicKey(args: GetPublicKeyArgs): Promise<{ publicKey: PubKeyHex; }>; revealCounterpartyKeyLinkage(args: RevealCounterpartyKeyLinkageArgs): Promise<RevealCounterpartyKeyLinkageResult>; revealSpecificKeyLinkage(args: RevealSpecificKeyLinkageArgs): Promise<RevealSpecificKeyLinkageResult>; encrypt(args: WalletEncryptArgs): Promise<WalletEncryptResult>; decrypt(args: WalletDecryptArgs, originator?: string): Promise<WalletDecryptResult>; createHmac(args: CreateHmacArgs): Promise<CreateHmacResult>; verifyHmac(args: VerifyHmacArgs): Promise<VerifyHmacResult>; createSignature(args: CreateSignatureArgs): Promise<CreateSignatureResult>; verifySignature(args: VerifySignatureArgs): Promise<VerifySignatureResult>; } export default ProtoWallet; //# sourceMappingURL=ProtoWallet.d.ts.map