UNPKG

@bsv/sdk

Version:

BSV Blockchain Software Development Kit

1,238 lines (924 loc) 242 kB
# API Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) ## Interfaces | | | | | --- | --- | --- | | [AbortActionArgs](#interface-abortactionargs) | [ListCertificatesArgs](#interface-listcertificatesargs) | [ValidInternalizeOutput](#interface-validinternalizeoutput) | | [AbortActionResult](#interface-abortactionresult) | [ListCertificatesResult](#interface-listcertificatesresult) | [ValidListActionsArgs](#interface-validlistactionsargs) | | [AcquireCertificateArgs](#interface-acquirecertificateargs) | [ListOutputsArgs](#interface-listoutputsargs) | [ValidListCertificatesArgs](#interface-validlistcertificatesargs) | | [AuthenticatedResult](#interface-authenticatedresult) | [ListOutputsResult](#interface-listoutputsresult) | [ValidListOutputsArgs](#interface-validlistoutputsargs) | | [BasketInsertion](#interface-basketinsertion) | [OutPoint](#interface-outpoint) | [ValidProcessActionArgs](#interface-validprocessactionargs) | | [CertificateResult](#interface-certificateresult) | [ProveCertificateArgs](#interface-provecertificateargs) | [ValidProcessActionOptions](#interface-validprocessactionoptions) | | [CreateActionArgs](#interface-createactionargs) | [ProveCertificateResult](#interface-provecertificateresult) | [ValidProveCertificateArgs](#interface-validprovecertificateargs) | | [CreateActionInput](#interface-createactioninput) | [RelinquishCertificateArgs](#interface-relinquishcertificateargs) | [ValidRelinquishCertificateArgs](#interface-validrelinquishcertificateargs) | | [CreateActionOptions](#interface-createactionoptions) | [RelinquishCertificateResult](#interface-relinquishcertificateresult) | [ValidRelinquishOutputArgs](#interface-validrelinquishoutputargs) | | [CreateActionOutput](#interface-createactionoutput) | [RelinquishOutputArgs](#interface-relinquishoutputargs) | [ValidSignActionArgs](#interface-validsignactionargs) | | [CreateActionResult](#interface-createactionresult) | [RelinquishOutputResult](#interface-relinquishoutputresult) | [ValidSignActionOptions](#interface-validsignactionoptions) | | [CreateHmacArgs](#interface-createhmacargs) | [RevealCounterpartyKeyLinkageArgs](#interface-revealcounterpartykeylinkageargs) | [ValidWalletPayment](#interface-validwalletpayment) | | [CreateHmacResult](#interface-createhmacresult) | [RevealCounterpartyKeyLinkageResult](#interface-revealcounterpartykeylinkageresult) | [ValidWalletSignerArgs](#interface-validwalletsignerargs) | | [CreateSignatureArgs](#interface-createsignatureargs) | [RevealSpecificKeyLinkageArgs](#interface-revealspecifickeylinkageargs) | [VerifyHmacArgs](#interface-verifyhmacargs) | | [CreateSignatureResult](#interface-createsignatureresult) | [RevealSpecificKeyLinkageResult](#interface-revealspecifickeylinkageresult) | [VerifyHmacResult](#interface-verifyhmacresult) | | [DiscoverByAttributesArgs](#interface-discoverbyattributesargs) | [ReviewActionResult](#interface-reviewactionresult) | [VerifySignatureArgs](#interface-verifysignatureargs) | | [DiscoverByIdentityKeyArgs](#interface-discoverbyidentitykeyargs) | [SendWithResult](#interface-sendwithresult) | [VerifySignatureResult](#interface-verifysignatureresult) | | [DiscoverCertificatesResult](#interface-discovercertificatesresult) | [SignActionArgs](#interface-signactionargs) | [WalletAction](#interface-walletaction) | | [GetHeaderArgs](#interface-getheaderargs) | [SignActionOptions](#interface-signactionoptions) | [WalletActionInput](#interface-walletactioninput) | | [GetHeaderResult](#interface-getheaderresult) | [SignActionResult](#interface-signactionresult) | [WalletActionOutput](#interface-walletactionoutput) | | [GetHeightResult](#interface-getheightresult) | [SignActionSpend](#interface-signactionspend) | [WalletCertificate](#interface-walletcertificate) | | [GetNetworkResult](#interface-getnetworkresult) | [SignableTransaction](#interface-signabletransaction) | [WalletDecryptArgs](#interface-walletdecryptargs) | | [GetPublicKeyArgs](#interface-getpublickeyargs) | [ValidAbortActionArgs](#interface-validabortactionargs) | [WalletDecryptResult](#interface-walletdecryptresult) | | [GetPublicKeyResult](#interface-getpublickeyresult) | [ValidAcquireCertificateArgs](#interface-validacquirecertificateargs) | [WalletEncryptArgs](#interface-walletencryptargs) | | [GetVersionResult](#interface-getversionresult) | [ValidAcquireDirectCertificateArgs](#interface-validacquiredirectcertificateargs) | [WalletEncryptResult](#interface-walletencryptresult) | | [IdentityCertificate](#interface-identitycertificate) | [ValidAcquireIssuanceCertificateArgs](#interface-validacquireissuancecertificateargs) | [WalletEncryptionArgs](#interface-walletencryptionargs) | | [IdentityCertifier](#interface-identitycertifier) | [ValidBasketInsertion](#interface-validbasketinsertion) | [WalletErrorObject](#interface-walleterrorobject) | | [InternalizeActionArgs](#interface-internalizeactionargs) | [ValidCreateActionArgs](#interface-validcreateactionargs) | [WalletInterface](#interface-walletinterface) | | [InternalizeActionResult](#interface-internalizeactionresult) | [ValidCreateActionInput](#interface-validcreateactioninput) | [WalletLoggerInterface](#interface-walletloggerinterface) | | [InternalizeOutput](#interface-internalizeoutput) | [ValidCreateActionOptions](#interface-validcreateactionoptions) | [WalletLoggerLog](#interface-walletloggerlog) | | [KeyDeriverApi](#interface-keyderiverapi) | [ValidCreateActionOutput](#interface-validcreateactionoutput) | [WalletOutput](#interface-walletoutput) | | [KeyLinkageResult](#interface-keylinkageresult) | [ValidDiscoverByAttributesArgs](#interface-validdiscoverbyattributesargs) | [WalletPayment](#interface-walletpayment) | | [ListActionsArgs](#interface-listactionsargs) | [ValidDiscoverByIdentityKeyArgs](#interface-validdiscoverbyidentitykeyargs) | [WalletWire](#interface-walletwire) | | [ListActionsResult](#interface-listactionsresult) | [ValidInternalizeActionArgs](#interface-validinternalizeactionargs) | | Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: AbortActionArgs ```ts export interface AbortActionArgs { reference: Base64String; } ``` See also: [Base64String](./wallet.md#type-base64string) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: AbortActionResult ```ts export interface AbortActionResult { aborted: true; } ``` Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: AcquireCertificateArgs ```ts export interface AcquireCertificateArgs { type: Base64String; certifier: PubKeyHex; acquisitionProtocol: AcquisitionProtocol; fields: Record<CertificateFieldNameUnder50Bytes, string>; serialNumber?: Base64String; revocationOutpoint?: OutpointString; signature?: HexString; certifierUrl?: string; keyringRevealer?: KeyringRevealer; keyringForSubject?: Record<CertificateFieldNameUnder50Bytes, Base64String>; privileged?: BooleanDefaultFalse; privilegedReason?: DescriptionString5to50Bytes; } ``` See also: [AcquisitionProtocol](./wallet.md#type-acquisitionprotocol), [Base64String](./wallet.md#type-base64string), [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [HexString](./wallet.md#type-hexstring), [KeyringRevealer](./wallet.md#type-keyringrevealer), [OutpointString](./wallet.md#type-outpointstring), [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: AuthenticatedResult ```ts export interface AuthenticatedResult { authenticated: true; } ``` Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: BasketInsertion ```ts export interface BasketInsertion { basket: BasketStringUnder300Bytes; customInstructions?: string; tags?: OutputTagStringUnder300Bytes[]; } ``` See also: [BasketStringUnder300Bytes](./wallet.md#type-basketstringunder300bytes), [OutputTagStringUnder300Bytes](./wallet.md#type-outputtagstringunder300bytes) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CertificateResult ```ts export interface CertificateResult extends WalletCertificate { keyring?: Record<CertificateFieldNameUnder50Bytes, Base64String>; verifier?: string; } ``` See also: [Base64String](./wallet.md#type-base64string), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [WalletCertificate](./wallet.md#interface-walletcertificate) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateActionArgs ```ts export interface CreateActionArgs { description: DescriptionString5to50Bytes; inputBEEF?: BEEF; inputs?: CreateActionInput[]; outputs?: CreateActionOutput[]; lockTime?: PositiveIntegerOrZero; version?: PositiveIntegerOrZero; labels?: LabelStringUnder300Bytes[]; options?: CreateActionOptions; } ``` See also: [BEEF](./wallet.md#type-beef), [CreateActionInput](./wallet.md#interface-createactioninput), [CreateActionOptions](./wallet.md#interface-createactionoptions), [CreateActionOutput](./wallet.md#interface-createactionoutput), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [LabelStringUnder300Bytes](./wallet.md#type-labelstringunder300bytes), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateActionInput ```ts export interface CreateActionInput { outpoint: OutpointString; inputDescription: DescriptionString5to50Bytes; unlockingScript?: HexString; unlockingScriptLength?: PositiveInteger; sequenceNumber?: PositiveIntegerOrZero; } ``` See also: [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [HexString](./wallet.md#type-hexstring), [OutpointString](./wallet.md#type-outpointstring), [PositiveInteger](./wallet.md#type-positiveinteger), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateActionOptions ```ts export interface CreateActionOptions { signAndProcess?: BooleanDefaultTrue; acceptDelayedBroadcast?: BooleanDefaultTrue; trustSelf?: TrustSelf; knownTxids?: TXIDHexString[]; returnTXIDOnly?: BooleanDefaultFalse; noSend?: BooleanDefaultFalse; noSendChange?: OutpointString[]; sendWith?: TXIDHexString[]; randomizeOutputs?: BooleanDefaultTrue; } ``` See also: [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [BooleanDefaultTrue](./wallet.md#type-booleandefaulttrue), [OutpointString](./wallet.md#type-outpointstring), [TXIDHexString](./wallet.md#type-txidhexstring), [TrustSelf](./wallet.md#type-trustself) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateActionOutput ```ts export interface CreateActionOutput { lockingScript: HexString; satoshis: SatoshiValue; outputDescription: DescriptionString5to50Bytes; basket?: BasketStringUnder300Bytes; customInstructions?: string; tags?: OutputTagStringUnder300Bytes[]; } ``` See also: [BasketStringUnder300Bytes](./wallet.md#type-basketstringunder300bytes), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [HexString](./wallet.md#type-hexstring), [OutputTagStringUnder300Bytes](./wallet.md#type-outputtagstringunder300bytes), [SatoshiValue](./wallet.md#type-satoshivalue) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateActionResult ```ts export interface CreateActionResult { txid?: TXIDHexString; tx?: AtomicBEEF; noSendChange?: OutpointString[]; sendWithResults?: SendWithResult[]; signableTransaction?: SignableTransaction; } ``` See also: [AtomicBEEF](./wallet.md#type-atomicbeef), [OutpointString](./wallet.md#type-outpointstring), [SendWithResult](./wallet.md#interface-sendwithresult), [SignableTransaction](./wallet.md#interface-signabletransaction), [TXIDHexString](./wallet.md#type-txidhexstring) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateHmacArgs ```ts export interface CreateHmacArgs extends WalletEncryptionArgs { data: Byte[]; } ``` See also: [Byte](./wallet.md#type-byte), [WalletEncryptionArgs](./wallet.md#interface-walletencryptionargs) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateHmacResult ```ts export interface CreateHmacResult { hmac: Byte[]; } ``` See also: [Byte](./wallet.md#type-byte) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateSignatureArgs ```ts export interface CreateSignatureArgs extends WalletEncryptionArgs { data?: Byte[]; hashToDirectlySign?: Byte[]; } ``` See also: [Byte](./wallet.md#type-byte), [WalletEncryptionArgs](./wallet.md#interface-walletencryptionargs) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: CreateSignatureResult ```ts export interface CreateSignatureResult { signature: Byte[]; } ``` See also: [Byte](./wallet.md#type-byte) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: DiscoverByAttributesArgs ```ts export interface DiscoverByAttributesArgs { attributes: Record<CertificateFieldNameUnder50Bytes, string>; limit?: PositiveIntegerDefault10Max10000; offset?: PositiveIntegerOrZero; seekPermission?: BooleanDefaultTrue; } ``` See also: [BooleanDefaultTrue](./wallet.md#type-booleandefaulttrue), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [PositiveIntegerDefault10Max10000](./wallet.md#type-positiveintegerdefault10max10000), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: DiscoverByIdentityKeyArgs ```ts export interface DiscoverByIdentityKeyArgs { identityKey: PubKeyHex; limit?: PositiveIntegerDefault10Max10000; offset?: PositiveIntegerOrZero; seekPermission?: BooleanDefaultTrue; } ``` See also: [BooleanDefaultTrue](./wallet.md#type-booleandefaulttrue), [PositiveIntegerDefault10Max10000](./wallet.md#type-positiveintegerdefault10max10000), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero), [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: DiscoverCertificatesResult ```ts export interface DiscoverCertificatesResult { totalCertificates: PositiveIntegerOrZero; certificates: IdentityCertificate[]; } ``` See also: [IdentityCertificate](./wallet.md#interface-identitycertificate), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: GetHeaderArgs ```ts export interface GetHeaderArgs { height: PositiveInteger; } ``` See also: [PositiveInteger](./wallet.md#type-positiveinteger) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: GetHeaderResult ```ts export interface GetHeaderResult { header: HexString; } ``` See also: [HexString](./wallet.md#type-hexstring) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: GetHeightResult ```ts export interface GetHeightResult { height: PositiveInteger; } ``` See also: [PositiveInteger](./wallet.md#type-positiveinteger) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: GetNetworkResult ```ts export interface GetNetworkResult { network: WalletNetwork; } ``` See also: [WalletNetwork](./wallet.md#type-walletnetwork) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: GetPublicKeyArgs When `identityKey` is true, `WalletEncryptionArgs` are not used. When `identityKey` is undefined, `WalletEncryptionArgs` are required. ```ts export interface GetPublicKeyArgs extends Partial<WalletEncryptionArgs> { identityKey?: true; forSelf?: BooleanDefaultFalse; } ``` See also: [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [WalletEncryptionArgs](./wallet.md#interface-walletencryptionargs) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: GetPublicKeyResult ```ts export interface GetPublicKeyResult { publicKey: PubKeyHex; } ``` See also: [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: GetVersionResult ```ts export interface GetVersionResult { version: VersionString7To30Bytes; } ``` See also: [VersionString7To30Bytes](./wallet.md#type-versionstring7to30bytes) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: IdentityCertificate ```ts export interface IdentityCertificate extends WalletCertificate { certifierInfo: IdentityCertifier; publiclyRevealedKeyring: Record<CertificateFieldNameUnder50Bytes, Base64String>; decryptedFields: Record<CertificateFieldNameUnder50Bytes, string>; } ``` See also: [Base64String](./wallet.md#type-base64string), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [IdentityCertifier](./wallet.md#interface-identitycertifier), [WalletCertificate](./wallet.md#interface-walletcertificate) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: IdentityCertifier ```ts export interface IdentityCertifier { name: EntityNameStringMax100Bytes; iconUrl: EntityIconURLStringMax500Bytes; description: DescriptionString5to50Bytes; trust: PositiveIntegerMax10; } ``` See also: [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [EntityIconURLStringMax500Bytes](./wallet.md#type-entityiconurlstringmax500bytes), [EntityNameStringMax100Bytes](./wallet.md#type-entitynamestringmax100bytes), [PositiveIntegerMax10](./wallet.md#type-positiveintegermax10) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: InternalizeActionArgs ```ts export interface InternalizeActionArgs { tx: AtomicBEEF; outputs: InternalizeOutput[]; description: DescriptionString5to50Bytes; labels?: LabelStringUnder300Bytes[]; seekPermission?: BooleanDefaultTrue; } ``` See also: [AtomicBEEF](./wallet.md#type-atomicbeef), [BooleanDefaultTrue](./wallet.md#type-booleandefaulttrue), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [InternalizeOutput](./wallet.md#interface-internalizeoutput), [LabelStringUnder300Bytes](./wallet.md#type-labelstringunder300bytes) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: InternalizeActionResult ```ts export interface InternalizeActionResult { accepted: true; } ``` Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: InternalizeOutput ```ts export interface InternalizeOutput { outputIndex: PositiveIntegerOrZero; protocol: "wallet payment" | "basket insertion"; paymentRemittance?: WalletPayment; insertionRemittance?: BasketInsertion; } ``` See also: [BasketInsertion](./wallet.md#interface-basketinsertion), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero), [WalletPayment](./wallet.md#interface-walletpayment) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: KeyDeriverApi ```ts export interface KeyDeriverApi { rootKey: PrivateKey; identityKey: string; derivePublicKey: (protocolID: WalletProtocol, keyID: string, counterparty: Counterparty, forSelf?: boolean) => PublicKey; derivePrivateKey: (protocolID: WalletProtocol, keyID: string, counterparty: Counterparty) => PrivateKey; deriveSymmetricKey: (protocolID: WalletProtocol, keyID: string, counterparty: Counterparty) => SymmetricKey; revealCounterpartySecret: (counterparty: Counterparty) => number[]; revealSpecificSecret: (counterparty: Counterparty, protocolID: WalletProtocol, keyID: string) => number[]; } ``` See also: [Counterparty](./wallet.md#type-counterparty), [PrivateKey](./primitives.md#class-privatekey), [PublicKey](./primitives.md#class-publickey), [SymmetricKey](./primitives.md#class-symmetrickey), [WalletProtocol](./wallet.md#type-walletprotocol) #### Property derivePrivateKey Derives a private key based on protocol ID, key ID, and counterparty. ```ts derivePrivateKey: (protocolID: WalletProtocol, keyID: string, counterparty: Counterparty) => PrivateKey ``` See also: [Counterparty](./wallet.md#type-counterparty), [PrivateKey](./primitives.md#class-privatekey), [WalletProtocol](./wallet.md#type-walletprotocol) #### Property derivePublicKey Derives a public key based on protocol ID, key ID, and counterparty. ```ts derivePublicKey: (protocolID: WalletProtocol, keyID: string, counterparty: Counterparty, forSelf?: boolean) => PublicKey ``` See also: [Counterparty](./wallet.md#type-counterparty), [PublicKey](./primitives.md#class-publickey), [WalletProtocol](./wallet.md#type-walletprotocol) #### Property deriveSymmetricKey Derives a symmetric key based on protocol ID, key ID, and counterparty. Note: Symmetric keys should not be derivable by everyone due to security risks. ```ts deriveSymmetricKey: (protocolID: WalletProtocol, keyID: string, counterparty: Counterparty) => SymmetricKey ``` See also: [Counterparty](./wallet.md#type-counterparty), [SymmetricKey](./primitives.md#class-symmetrickey), [WalletProtocol](./wallet.md#type-walletprotocol) #### Property identityKey The identity of this key deriver which is normally the public key associated with the `rootKey` ```ts identityKey: string ``` #### Property revealCounterpartySecret Reveals the shared secret between the root key and the counterparty. Note: This should not be used for 'self'. ```ts revealCounterpartySecret: (counterparty: Counterparty) => number[] ``` See also: [Counterparty](./wallet.md#type-counterparty) #### Property revealSpecificSecret Reveals the specific key association for a given protocol ID, key ID, and counterparty. ```ts revealSpecificSecret: (counterparty: Counterparty, protocolID: WalletProtocol, keyID: string) => number[] ``` See also: [Counterparty](./wallet.md#type-counterparty), [WalletProtocol](./wallet.md#type-walletprotocol) #### Property rootKey The root key from which all other keys are derived. ```ts rootKey: PrivateKey ``` See also: [PrivateKey](./primitives.md#class-privatekey) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: KeyLinkageResult ```ts export interface KeyLinkageResult { encryptedLinkage: Byte[]; encryptedLinkageProof: Byte[]; prover: PubKeyHex; verifier: PubKeyHex; counterparty: PubKeyHex; } ``` See also: [Byte](./wallet.md#type-byte), [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ListActionsArgs ```ts export interface ListActionsArgs { labels: LabelStringUnder300Bytes[]; labelQueryMode?: "any" | "all"; includeLabels?: BooleanDefaultFalse; includeInputs?: BooleanDefaultFalse; includeInputSourceLockingScripts?: BooleanDefaultFalse; includeInputUnlockingScripts?: BooleanDefaultFalse; includeOutputs?: BooleanDefaultFalse; includeOutputLockingScripts?: BooleanDefaultFalse; limit?: PositiveIntegerDefault10Max10000; offset?: PositiveIntegerOrZero; seekPermission?: BooleanDefaultTrue; } ``` See also: [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [BooleanDefaultTrue](./wallet.md#type-booleandefaulttrue), [LabelStringUnder300Bytes](./wallet.md#type-labelstringunder300bytes), [PositiveIntegerDefault10Max10000](./wallet.md#type-positiveintegerdefault10max10000), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ListActionsResult ```ts export interface ListActionsResult { totalActions: PositiveIntegerOrZero; actions: WalletAction[]; } ``` See also: [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero), [WalletAction](./wallet.md#interface-walletaction) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ListCertificatesArgs ```ts export interface ListCertificatesArgs { certifiers: PubKeyHex[]; types: Base64String[]; limit?: PositiveIntegerDefault10Max10000; offset?: PositiveIntegerOrZero; privileged?: BooleanDefaultFalse; privilegedReason?: DescriptionString5to50Bytes; } ``` See also: [Base64String](./wallet.md#type-base64string), [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [PositiveIntegerDefault10Max10000](./wallet.md#type-positiveintegerdefault10max10000), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero), [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ListCertificatesResult ```ts export interface ListCertificatesResult { totalCertificates: PositiveIntegerOrZero; certificates: CertificateResult[]; } ``` See also: [CertificateResult](./wallet.md#interface-certificateresult), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ListOutputsArgs ```ts export interface ListOutputsArgs { basket: BasketStringUnder300Bytes; tags?: OutputTagStringUnder300Bytes[]; tagQueryMode?: "all" | "any"; include?: "locking scripts" | "entire transactions"; includeCustomInstructions?: BooleanDefaultFalse; includeTags?: BooleanDefaultFalse; includeLabels?: BooleanDefaultFalse; limit?: PositiveIntegerDefault10Max10000; offset?: number; seekPermission?: BooleanDefaultTrue; } ``` See also: [BasketStringUnder300Bytes](./wallet.md#type-basketstringunder300bytes), [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [BooleanDefaultTrue](./wallet.md#type-booleandefaulttrue), [OutputTagStringUnder300Bytes](./wallet.md#type-outputtagstringunder300bytes), [PositiveIntegerDefault10Max10000](./wallet.md#type-positiveintegerdefault10max10000) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ListOutputsResult ```ts export interface ListOutputsResult { totalOutputs: PositiveIntegerOrZero; BEEF?: BEEF; outputs: WalletOutput[]; } ``` See also: [BEEF](./wallet.md#type-beef), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero), [WalletOutput](./wallet.md#interface-walletoutput) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: OutPoint Identifies a unique transaction output by its `txid` and index `vout` ```ts export interface OutPoint { txid: string; vout: number; } ``` #### Property txid Transaction double sha256 hash as big endian hex string ```ts txid: string ``` #### Property vout zero based output index within the transaction ```ts vout: number ``` Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ProveCertificateArgs ```ts export interface ProveCertificateArgs { certificate: Partial<WalletCertificate>; fieldsToReveal: CertificateFieldNameUnder50Bytes[]; verifier: PubKeyHex; privileged?: BooleanDefaultFalse; privilegedReason?: DescriptionString5to50Bytes; } ``` See also: [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [PubKeyHex](./wallet.md#type-pubkeyhex), [WalletCertificate](./wallet.md#interface-walletcertificate) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ProveCertificateResult ```ts export interface ProveCertificateResult { keyringForVerifier: Record<CertificateFieldNameUnder50Bytes, Base64String>; certificate?: WalletCertificate; verifier?: PubKeyHex; } ``` See also: [Base64String](./wallet.md#type-base64string), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [PubKeyHex](./wallet.md#type-pubkeyhex), [WalletCertificate](./wallet.md#interface-walletcertificate) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: RelinquishCertificateArgs ```ts export interface RelinquishCertificateArgs { type: Base64String; serialNumber: Base64String; certifier: PubKeyHex; } ``` See also: [Base64String](./wallet.md#type-base64string), [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: RelinquishCertificateResult ```ts export interface RelinquishCertificateResult { relinquished: true; } ``` Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: RelinquishOutputArgs ```ts export interface RelinquishOutputArgs { basket: BasketStringUnder300Bytes; output: OutpointString; } ``` See also: [BasketStringUnder300Bytes](./wallet.md#type-basketstringunder300bytes), [OutpointString](./wallet.md#type-outpointstring) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: RelinquishOutputResult ```ts export interface RelinquishOutputResult { relinquished: true; } ``` Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: RevealCounterpartyKeyLinkageArgs ```ts export interface RevealCounterpartyKeyLinkageArgs { counterparty: PubKeyHex; verifier: PubKeyHex; privileged?: BooleanDefaultFalse; privilegedReason?: DescriptionString5to50Bytes; } ``` See also: [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: RevealCounterpartyKeyLinkageResult ```ts export interface RevealCounterpartyKeyLinkageResult extends KeyLinkageResult { revelationTime: ISOTimestampString; } ``` See also: [ISOTimestampString](./wallet.md#type-isotimestampstring), [KeyLinkageResult](./wallet.md#interface-keylinkageresult) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: RevealSpecificKeyLinkageArgs ```ts export interface RevealSpecificKeyLinkageArgs { counterparty: WalletCounterparty; verifier: PubKeyHex; protocolID: WalletProtocol; keyID: KeyIDStringUnder800Bytes; privilegedReason?: DescriptionString5to50Bytes; privileged?: BooleanDefaultFalse; } ``` See also: [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [KeyIDStringUnder800Bytes](./wallet.md#type-keyidstringunder800bytes), [PubKeyHex](./wallet.md#type-pubkeyhex), [WalletCounterparty](./wallet.md#type-walletcounterparty), [WalletProtocol](./wallet.md#type-walletprotocol) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: RevealSpecificKeyLinkageResult ```ts export interface RevealSpecificKeyLinkageResult extends KeyLinkageResult { protocolID: WalletProtocol; keyID: KeyIDStringUnder800Bytes; proofType: Byte; } ``` See also: [Byte](./wallet.md#type-byte), [KeyIDStringUnder800Bytes](./wallet.md#type-keyidstringunder800bytes), [KeyLinkageResult](./wallet.md#interface-keylinkageresult), [WalletProtocol](./wallet.md#type-walletprotocol) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ReviewActionResult ```ts export interface ReviewActionResult { txid: TXIDHexString; status: ReviewActionResultStatus; competingTxs?: string[]; competingBeef?: number[]; } ``` See also: [ReviewActionResultStatus](./wallet.md#type-reviewactionresultstatus), [TXIDHexString](./wallet.md#type-txidhexstring) #### Property competingBeef Merged beef of competingTxs, valid when status is 'doubleSpend'. ```ts competingBeef?: number[] ``` #### Property competingTxs Any competing txids reported for this txid, valid when status is 'doubleSpend'. ```ts competingTxs?: string[] ``` Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: SendWithResult ```ts export interface SendWithResult { txid: TXIDHexString; status: SendWithResultStatus; } ``` See also: [SendWithResultStatus](./wallet.md#type-sendwithresultstatus), [TXIDHexString](./wallet.md#type-txidhexstring) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: SignActionArgs ```ts export interface SignActionArgs { spends: Record<PositiveIntegerOrZero, SignActionSpend>; reference: Base64String; options?: SignActionOptions; } ``` See also: [Base64String](./wallet.md#type-base64string), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero), [SignActionOptions](./wallet.md#interface-signactionoptions), [SignActionSpend](./wallet.md#interface-signactionspend) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: SignActionOptions ```ts export interface SignActionOptions { acceptDelayedBroadcast?: BooleanDefaultTrue; returnTXIDOnly?: BooleanDefaultFalse; noSend?: BooleanDefaultFalse; sendWith?: TXIDHexString[]; } ``` See also: [BooleanDefaultFalse](./wallet.md#type-booleandefaultfalse), [BooleanDefaultTrue](./wallet.md#type-booleandefaulttrue), [TXIDHexString](./wallet.md#type-txidhexstring) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: SignActionResult ```ts export interface SignActionResult { txid?: TXIDHexString; tx?: AtomicBEEF; sendWithResults?: SendWithResult[]; } ``` See also: [AtomicBEEF](./wallet.md#type-atomicbeef), [SendWithResult](./wallet.md#interface-sendwithresult), [TXIDHexString](./wallet.md#type-txidhexstring) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: SignActionSpend ```ts export interface SignActionSpend { unlockingScript: HexString; sequenceNumber?: PositiveIntegerOrZero; } ``` See also: [HexString](./wallet.md#type-hexstring), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: SignableTransaction ```ts export interface SignableTransaction { tx: AtomicBEEF; reference: Base64String; } ``` See also: [AtomicBEEF](./wallet.md#type-atomicbeef), [Base64String](./wallet.md#type-base64string) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidAbortActionArgs ```ts export interface ValidAbortActionArgs extends ValidWalletSignerArgs { reference: Base64String; } ``` See also: [Base64String](./wallet.md#type-base64string), [ValidWalletSignerArgs](./wallet.md#interface-validwalletsignerargs) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidAcquireCertificateArgs ```ts export interface ValidAcquireCertificateArgs extends ValidWalletSignerArgs { acquisitionProtocol: AcquisitionProtocol; type: Base64String; serialNumber?: Base64String; certifier: PubKeyHex; revocationOutpoint?: OutpointString; fields: Record<CertificateFieldNameUnder50Bytes, string>; signature?: HexString; certifierUrl?: string; keyringRevealer?: KeyringRevealer; keyringForSubject?: Record<CertificateFieldNameUnder50Bytes, Base64String>; privileged: boolean; privilegedReason?: DescriptionString5to50Bytes; } ``` See also: [AcquisitionProtocol](./wallet.md#type-acquisitionprotocol), [Base64String](./wallet.md#type-base64string), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [HexString](./wallet.md#type-hexstring), [KeyringRevealer](./wallet.md#type-keyringrevealer), [OutpointString](./wallet.md#type-outpointstring), [PubKeyHex](./wallet.md#type-pubkeyhex), [ValidWalletSignerArgs](./wallet.md#interface-validwalletsignerargs) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidAcquireDirectCertificateArgs ```ts export interface ValidAcquireDirectCertificateArgs extends ValidWalletSignerArgs { type: Base64String; serialNumber: Base64String; certifier: PubKeyHex; revocationOutpoint: OutpointString; fields: Record<CertificateFieldNameUnder50Bytes, string>; signature: HexString; subject: PubKeyHex; keyringRevealer: KeyringRevealer; keyringForSubject: Record<CertificateFieldNameUnder50Bytes, Base64String>; privileged: boolean; privilegedReason?: DescriptionString5to50Bytes; } ``` See also: [Base64String](./wallet.md#type-base64string), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [HexString](./wallet.md#type-hexstring), [KeyringRevealer](./wallet.md#type-keyringrevealer), [OutpointString](./wallet.md#type-outpointstring), [PubKeyHex](./wallet.md#type-pubkeyhex), [ValidWalletSignerArgs](./wallet.md#interface-validwalletsignerargs) #### Property subject validated to an empty string, must be provided by wallet and must match expectations of keyringForSubject ```ts subject: PubKeyHex ``` See also: [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidAcquireIssuanceCertificateArgs ```ts export interface ValidAcquireIssuanceCertificateArgs extends ValidWalletSignerArgs { type: Base64String; certifier: PubKeyHex; certifierUrl: string; fields: Record<CertificateFieldNameUnder50Bytes, string>; subject: PubKeyHex; privileged: boolean; privilegedReason?: DescriptionString5to50Bytes; } ``` See also: [Base64String](./wallet.md#type-base64string), [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [DescriptionString5to50Bytes](./wallet.md#type-descriptionstring5to50bytes), [PubKeyHex](./wallet.md#type-pubkeyhex), [ValidWalletSignerArgs](./wallet.md#interface-validwalletsignerargs) #### Property subject validated to an empty string, must be provided by wallet and must match expectations of keyringForSubject ```ts subject: PubKeyHex ``` See also: [PubKeyHex](./wallet.md#type-pubkeyhex) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidBasketInsertion ```ts export interface ValidBasketInsertion { basket: BasketStringUnder300Bytes; customInstructions?: string; tags: BasketStringUnder300Bytes[]; } ``` See also: [BasketStringUnder300Bytes](./wallet.md#type-basketstringunder300bytes) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidCreateActionArgs ```ts export interface ValidCreateActionArgs extends ValidProcessActionArgs { description: DescriptionString5to2000Bytes; inputBEEF?: BEEF; inputs: ValidCreateActionInput[]; outputs: ValidCreateActionOutput[]; lockTime: number; version: number; labels: string[]; options: ValidCreateActionOptions; isSignAction: boolean; randomVals?: number[]; includeAllSourceTransactions: boolean; } ``` See also: [BEEF](./wallet.md#type-beef), [DescriptionString5to2000Bytes](./wallet.md#type-descriptionstring5to2000bytes), [ValidCreateActionInput](./wallet.md#interface-validcreateactioninput), [ValidCreateActionOptions](./wallet.md#interface-validcreateactionoptions), [ValidCreateActionOutput](./wallet.md#interface-validcreateactionoutput), [ValidProcessActionArgs](./wallet.md#interface-validprocessactionargs) #### Property includeAllSourceTransactions If true, signableTransactions will include sourceTransaction for each input, including those that do not require signature and those that were also contained in the inputBEEF. ```ts includeAllSourceTransactions: boolean ``` Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidCreateActionInput ```ts export interface ValidCreateActionInput { outpoint: OutPoint; inputDescription: DescriptionString5to2000Bytes; sequenceNumber: PositiveIntegerOrZero; unlockingScript?: HexString; unlockingScriptLength: PositiveInteger; } ``` See also: [DescriptionString5to2000Bytes](./wallet.md#type-descriptionstring5to2000bytes), [HexString](./wallet.md#type-hexstring), [OutPoint](./wallet.md#interface-outpoint), [PositiveInteger](./wallet.md#type-positiveinteger), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidCreateActionOptions ```ts export interface ValidCreateActionOptions extends ValidProcessActionOptions { signAndProcess: boolean; trustSelf?: TrustSelf; knownTxids: TXIDHexString[]; noSendChange: OutPoint[]; randomizeOutputs: boolean; } ``` See also: [OutPoint](./wallet.md#interface-outpoint), [TXIDHexString](./wallet.md#type-txidhexstring), [TrustSelf](./wallet.md#type-trustself), [ValidProcessActionOptions](./wallet.md#interface-validprocessactionoptions) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidCreateActionOutput ```ts export interface ValidCreateActionOutput { lockingScript: HexString; satoshis: SatoshiValue; outputDescription: DescriptionString5to2000Bytes; basket?: BasketStringUnder300Bytes; customInstructions?: string; tags: BasketStringUnder300Bytes[]; } ``` See also: [BasketStringUnder300Bytes](./wallet.md#type-basketstringunder300bytes), [DescriptionString5to2000Bytes](./wallet.md#type-descriptionstring5to2000bytes), [HexString](./wallet.md#type-hexstring), [SatoshiValue](./wallet.md#type-satoshivalue) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidDiscoverByAttributesArgs ```ts export interface ValidDiscoverByAttributesArgs extends ValidWalletSignerArgs { attributes: Record<CertificateFieldNameUnder50Bytes, string>; limit: PositiveIntegerDefault10Max10000; offset: PositiveIntegerOrZero; seekPermission: boolean; } ``` See also: [CertificateFieldNameUnder50Bytes](./wallet.md#type-certificatefieldnameunder50bytes), [PositiveIntegerDefault10Max10000](./wallet.md#type-positiveintegerdefault10max10000), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero), [ValidWalletSignerArgs](./wallet.md#interface-validwalletsignerargs) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidDiscoverByIdentityKeyArgs ```ts export interface ValidDiscoverByIdentityKeyArgs extends ValidWalletSignerArgs { identityKey: PubKeyHex; limit: PositiveIntegerDefault10Max10000; offset: PositiveIntegerOrZero; seekPermission: boolean; } ``` See also: [PositiveIntegerDefault10Max10000](./wallet.md#type-positiveintegerdefault10max10000), [PositiveIntegerOrZero](./wallet.md#type-positiveintegerorzero), [PubKeyHex](./wallet.md#type-pubkeyhex), [ValidWalletSignerArgs](./wallet.md#interface-validwalletsignerargs) Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Enums](#enums), [Variables](#variables) --- ### Interface: ValidInternalizeActionArgs ```ts export interface ValidInternalizeActionArgs extends ValidWalletSignerArgs { tx: AtomicBEEF; outputs: InternalizeOutput[]; description: DescriptionString5to2000Bytes; labels: LabelStrin