|
| 1 | +// SPDX-License-Identifier: CC0-1.0 |
| 2 | + |
| 3 | +//! Structs with standard types. |
| 4 | +//! |
| 5 | +//! These structs model the types returned by the JSON-RPC API and use stdlib types (or custom |
| 6 | +//! types) and are specific to a specific to Bitcoin Core `v26`. |
| 7 | +//! |
| 8 | +//! **== Blockchain ==** |
| 9 | +//! - [ ] `dumptxoutset "path"` |
| 10 | +//! - [x] `getbestblockhash` |
| 11 | +//! - [x] `getblock "blockhash" ( verbosity )` |
| 12 | +//! - [x] `getblockchaininfo` |
| 13 | +//! - [ ] `getblockcount` |
| 14 | +//! - [ ] `getblockfilter "blockhash" ( "filtertype" )` |
| 15 | +//! - [ ] `getblockfrompeer "blockhash" peer_id` |
| 16 | +//! - [ ] `getblockhash height` |
| 17 | +//! - [ ] `getblockheader "blockhash" ( verbose )` |
| 18 | +//! - [ ] `getblockstats hash_or_height ( stats )` |
| 19 | +//! - [ ] `getchainstates` |
| 20 | +//! - [ ] `getchaintips` |
| 21 | +//! - [ ] `getchaintxstats ( nblocks "blockhash" )` |
| 22 | +//! - [ ] `getdeploymentinfo ( "blockhash" )` |
| 23 | +//! - [ ] `getdifficulty` |
| 24 | +//! - [ ] `getmempoolancestors "txid" ( verbose )` |
| 25 | +//! - [ ] `getmempooldescendants "txid" ( verbose )` |
| 26 | +//! - [ ] `getmempoolentry "txid"` |
| 27 | +//! - [ ] `getmempoolinfo` |
| 28 | +//! - [ ] `getrawmempool ( verbose mempool_sequence )` |
| 29 | +//! - [ ] `gettxout "txid" n ( include_mempool )` |
| 30 | +//! - [ ] `gettxoutproof ["txid",...] ( "blockhash" )` |
| 31 | +//! - [ ] `gettxoutsetinfo ( "hash_type" hash_or_height use_index )` |
| 32 | +//! - [ ] `gettxspendingprevout [{"txid":"hex","vout":n},...]` |
| 33 | +//! - [ ] `importmempool "filepath" ( options )` |
| 34 | +//! - [ ] `loadtxoutset "path"` |
| 35 | +//! - [ ] `preciousblock "blockhash"` |
| 36 | +//! - [ ] `pruneblockchain height` |
| 37 | +//! - [ ] `savemempool` |
| 38 | +//! - [ ] `scanblocks "action" ( [scanobjects,...] start_height stop_height "filtertype" options )` |
| 39 | +//! - [ ] `scantxoutset "action" ( [scanobjects,...] )` |
| 40 | +//! - [ ] `verifychain ( checklevel nblocks )` |
| 41 | +//! - [ ] `verifytxoutproof "proof"` |
| 42 | +//! |
| 43 | +//! **== Control ==** |
| 44 | +//! - [ ] `getmemoryinfo ( "mode" )` |
| 45 | +//! - [ ] `getrpcinfo` |
| 46 | +//! - [ ] `help ( "command" )` |
| 47 | +//! - [ ] `logging ( ["include_category",...] ["exclude_category",...] )` |
| 48 | +//! - [x] `stop` |
| 49 | +//! - [ ] `uptime` |
| 50 | +//! |
| 51 | +//! **== Mining ==** |
| 52 | +//! - [ ] `getblocktemplate {"mode":"str","capabilities":["str",...],"rules":["segwit","str",...],"longpollid":"str","data":"hex"}` |
| 53 | +//! - [ ] `getmininginfo` |
| 54 | +//! - [ ] `getnetworkhashps ( nblocks height )` |
| 55 | +//! - [ ] `getprioritisedtransactions` |
| 56 | +//! - [ ] `prioritisetransaction "txid" ( dummy ) fee_delta` |
| 57 | +//! - [ ] `submitblock "hexdata" ( "dummy" )` |
| 58 | +//! - [ ] `submitheader "hexdata"` |
| 59 | +//! - [ ] `//!` |
| 60 | +//! - [ ] `//! **== Network ==**` |
| 61 | +//! - [ ] `addnode "node" "command" ( v2transport )` |
| 62 | +//! - [ ] `clearbanned` |
| 63 | +//! - [ ] `disconnectnode ( "address" nodeid )` |
| 64 | +//! - [ ] `getaddednodeinfo ( "node" )` |
| 65 | +//! - [ ] `getaddrmaninfo` |
| 66 | +//! - [ ] `getconnectioncount` |
| 67 | +//! - [ ] `getnettotals` |
| 68 | +//! - [ ] `getnetworkinfo` |
| 69 | +//! - [ ] `getnodeaddresses ( count "network" )` |
| 70 | +//! - [ ] `getpeerinfo` |
| 71 | +//! - [ ] `listbanned` |
| 72 | +//! - [ ] `ping` |
| 73 | +//! - [ ] `setban "subnet" "command" ( bantime absolute )` |
| 74 | +//! - [ ] `setnetworkactive state` |
| 75 | +//! |
| 76 | +//! **== Rawtransactions ==** |
| 77 | +//! - [ ] `analyzepsbt "psbt"` |
| 78 | +//! - [ ] `combinepsbt ["psbt",...]` |
| 79 | +//! - [ ] `combinerawtransaction ["hexstring",...]` |
| 80 | +//! - [ ] `converttopsbt "hexstring" ( permitsigdata iswitness )` |
| 81 | +//! - [ ] `createpsbt [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount,...},{"data":"hex"},...] ( locktime replaceable )` |
| 82 | +//! - [ ] `createrawtransaction [{"txid":"hex","vout":n,"sequence":n},...] [{"address":amount,...},{"data":"hex"},...] ( locktime replaceable )` |
| 83 | +//! - [ ] `decodepsbt "psbt"` |
| 84 | +//! - [ ] `decoderawtransaction "hexstring" ( iswitness )` |
| 85 | +//! - [ ] `decodescript "hexstring"` |
| 86 | +//! - [ ] `descriptorprocesspsbt "psbt" ["",{"desc":"str","range":n or [n,n]},...] ( "sighashtype" bip32derivs finalize )` |
| 87 | +//! - [ ] `finalizepsbt "psbt" ( extract )` |
| 88 | +//! - [ ] `fundrawtransaction "hexstring" ( options iswitness )` |
| 89 | +//! - [ ] `getrawtransaction "txid" ( verbosity "blockhash" )` |
| 90 | +//! - [ ] `joinpsbts ["psbt",...]` |
| 91 | +//! - [ ] `sendrawtransaction "hexstring" ( maxfeerate maxburnamount )` |
| 92 | +//! - [ ] `signrawtransactionwithkey "hexstring" ["privatekey",...] ( [{"txid":"hex","vout":n,"scriptPubKey":"hex","redeemScript":"hex","witnessScript":"hex","amount":amount},...] "sighashtype" )` |
| 93 | +//! - [ ] `submitpackage ["rawtx",...] ( maxfeerate maxburnamount )` |
| 94 | +//! - [ ] `testmempoolaccept ["rawtx",...] ( maxfeerate )` |
| 95 | +//! - [ ] `utxoupdatepsbt "psbt" ( ["",{"desc":"str","range":n or [n,n]},...] )` |
| 96 | +//! |
| 97 | +//! **== Signer ==** |
| 98 | +//! - [ ] `enumeratesigners` |
| 99 | +//! |
| 100 | +//! **== Util ==** |
| 101 | +//! - [ ] `createmultisig nrequired ["key",...] ( "address_type" )` |
| 102 | +//! - [ ] `deriveaddresses "descriptor" ( range )` |
| 103 | +//! - [ ] `estimatesmartfee conf_target ( "estimate_mode" )` |
| 104 | +//! - [ ] `getdescriptorinfo "descriptor"` |
| 105 | +//! - [ ] `getindexinfo ( "index_name" )` |
| 106 | +//! - [ ] `signmessagewithprivkey "privkey" "message"` |
| 107 | +//! - [ ] `validateaddress "address"` |
| 108 | +//! - [ ] `verifymessage "address" "signature" "message"` |
| 109 | +//! |
| 110 | +//! **== Wallet ==** |
| 111 | +//! - [ ] `abandontransaction "txid"` |
| 112 | +//! - [ ] `abortrescan` |
| 113 | +//! - [ ] `addmultisigaddress nrequired ["key",...] ( "label" "address_type" )` |
| 114 | +//! - [ ] `backupwallet "destination"` |
| 115 | +//! - [ ] `bumpfee "txid" ( options )` |
| 116 | +//! - [x] `createwallet "wallet_name" ( disable_private_keys blank "passphrase" avoid_reuse descriptors load_on_startup external_signer )` |
| 117 | +//! - [ ] `createwalletdescriptor "type" ( {"internal":bool,"hdkey":"str",...} )` |
| 118 | +//! - [ ] `dumpprivkey "address"` |
| 119 | +//! - [ ] `dumpwallet "filename"` |
| 120 | +//! - [ ] `encryptwallet "passphrase"` |
| 121 | +//! - [ ] `getaddressesbylabel "label"` |
| 122 | +//! - [ ] `getaddressinfo "address"` |
| 123 | +//! - [x] `getbalance ( "dummy" minconf include_watchonly avoid_reuse )` |
| 124 | +//! - [x] `getbalances` |
| 125 | +//! - [ ] `gethdkeys ( {"active_only":bool,"private":bool,...} )` |
| 126 | +//! - [x] `getnewaddress ( "label" "address_type" )` |
| 127 | +//! - [ ] `getrawchangeaddress ( "address_type" )` |
| 128 | +//! - [ ] `getreceivedbyaddress "address" ( minconf include_immature_coinbase )` |
| 129 | +//! - [ ] `getreceivedbylabel "label" ( minconf include_immature_coinbase )` |
| 130 | +//! - [x] `gettransaction "txid" ( include_watchonly verbose )` |
| 131 | +//! - [ ] `getunconfirmedbalance` |
| 132 | +//! - [ ] `getwalletinfo` |
| 133 | +//! - [ ] `importaddress "address" ( "label" rescan p2sh )` |
| 134 | +//! - [ ] `importdescriptors requests` |
| 135 | +//! - [ ] `importmulti requests ( options )` |
| 136 | +//! - [ ] `importprivkey "privkey" ( "label" rescan )` |
| 137 | +//! - [ ] `importprunedfunds "rawtransaction" "txoutproof"` |
| 138 | +//! - [ ] `importpubkey "pubkey" ( "label" rescan )` |
| 139 | +//! - [ ] `importwallet "filename"` |
| 140 | +//! - [ ] `keypoolrefill ( newsize )` |
| 141 | +//! - [ ] `listaddressgroupings` |
| 142 | +//! - [ ] `listdescriptors ( private )` |
| 143 | +//! - [ ] `listlabels ( "purpose" )` |
| 144 | +//! - [ ] `listlockunspent` |
| 145 | +//! - [ ] `listreceivedbyaddress ( minconf include_empty include_watchonly "address_filter" include_immature_coinbase )` |
| 146 | +//! - [ ] `listreceivedbylabel ( minconf include_empty include_watchonly include_immature_coinbase )` |
| 147 | +//! - [ ] `listsinceblock ( "blockhash" target_confirmations include_watchonly include_removed include_change "label" )` |
| 148 | +//! - [ ] `listtransactions ( "label" count skip include_watchonly )` |
| 149 | +//! - [ ] `listunspent ( minconf maxconf ["address",...] include_unsafe query_options )` |
| 150 | +//! - [ ] `listwalletdir` |
| 151 | +//! - [ ] `listwallets` |
| 152 | +//! - [x] `loadwallet "filename" ( load_on_startup )` |
| 153 | +//! - [ ] `lockunspent unlock ( [{"txid":"hex","vout":n},...] persistent )` |
| 154 | +//! - [ ] `migratewallet ( "wallet_name" "passphrase" )` |
| 155 | +//! - [ ] `newkeypool` |
| 156 | +//! - [ ] `psbtbumpfee "txid" ( options )` |
| 157 | +//! - [ ] `removeprunedfunds "txid"` |
| 158 | +//! - [ ] `rescanblockchain ( start_height stop_height )` |
| 159 | +//! - [ ] `restorewallet "wallet_name" "backup_file" ( load_on_startup )` |
| 160 | +//! - [ ] `send [{"address":amount,...},{"data":"hex"},...] ( conf_target "estimate_mode" fee_rate options )` |
| 161 | +//! - [ ] `sendall ["address",{"address":amount,...},...] ( conf_target "estimate_mode" fee_rate options )` |
| 162 | +//! - [ ] `sendmany ( "" ) {"address":amount,...} ( minconf "comment" ["address",...] replaceable conf_target "estimate_mode" fee_rate verbose )` |
| 163 | +//! - [x] `sendtoaddress "address" amount ( "comment" "comment_to" subtractfeefromamount replaceable conf_target "estimate_mode" avoid_reuse fee_rate verbose )` |
| 164 | +//! - [ ] `sethdseed ( newkeypool "seed" )` |
| 165 | +//! - [ ] `setlabel "address" "label"` |
| 166 | +//! - [ ] `settxfee amount` |
| 167 | +//! - [ ] `setwalletflag "flag" ( value )` |
| 168 | +//! - [ ] `signmessage "address" "message"` |
| 169 | +//! - [ ] `signrawtransactionwithwallet "hexstring" ( [{"txid":"hex","vout":n,"scriptPubKey":"hex","redeemScript":"hex","witnessScript":"hex","amount":amount},...] "sighashtype" )` |
| 170 | +//! - [ ] `simulaterawtransaction ( ["rawtx",...] {"include_watchonly":bool,...} )` |
| 171 | +//! - [ ] `unloadwallet ( "wallet_name" load_on_startup )` |
| 172 | +//! - [ ] `upgradewallet ( version )` |
| 173 | +//! - [ ] `walletcreatefundedpsbt ( [{"txid":"hex","vout":n,"sequence":n,"weight":n},...] ) [{"address":amount,...},{"data":"hex"},...] ( locktime options bip32derivs )` |
| 174 | +//! - [ ] `walletdisplayaddress "address"` |
| 175 | +//! - [ ] `walletlock` |
| 176 | +//! - [ ] `walletpassphrase "passphrase" timeout` |
| 177 | +//! - [ ] `walletpassphrasechange "oldpassphrase" "newpassphrase"` |
| 178 | +//! - [ ] `walletprocesspsbt "psbt" ( sign "sighashtype" bip32derivs finalize )` |
| 179 | +//! |
| 180 | +//! **== Zmq ==** |
| 181 | +//! - [ ] `getzmqnotifications` |
| 182 | +
|
| 183 | +#[doc(inline)] |
| 184 | +pub use crate::{ |
| 185 | + v17::{ |
| 186 | + GenerateToAddress, GetBalance, GetBestBlockHash, GetBlockVerbosityOne, |
| 187 | + GetBlockVerbosityZero, GetNetworkInfo, GetNetworkInfoAddress, GetNetworkInfoNetwork, |
| 188 | + GetNewAddress, GetTransaction, GetTransactionDetail, GetTransactionDetailCategory, |
| 189 | + GetTxOut, SendRawTransaction, |
| 190 | + }, |
| 191 | + v19::{ |
| 192 | + Bip9SoftforkInfo, Bip9SoftforkStatistics, Bip9SoftforkStatus, GetBalances, GetBalancesMine, |
| 193 | + GetBalancesWatchOnly, GetBlockchainInfo, Softfork, SoftforkType, |
| 194 | + }, |
| 195 | + v22::{SendToAddress, UnloadWallet}, |
| 196 | + v25::{CreateWallet, LoadWallet}, |
| 197 | +}; |
0 commit comments