github.com/hyperledger/burrow@v0.34.5-0.20220512172541-77f09336001d/rpc/web3/types.go (about) 1 // Code generated by go-openrpc. DO NOT EDIT. 2 package web3 3 4 type Service interface { 5 // Returns the version of the current client 6 Web3ClientVersion() (*Web3ClientVersionResult, error) 7 // Hashes data using the Keccak-256 algorithm 8 Web3Sha3(*Web3Sha3Params) (*Web3Sha3Result, error) 9 // Determines if this client is listening for new network connections. 10 NetListening() (*NetListeningResult, error) 11 // Returns the number of peers currently connected to this client. 12 NetPeerCount() (*NetPeerCountResult, error) 13 // Returns the chain ID associated with the current network. 14 NetVersion() (*NetVersionResult, error) 15 // Returns the number of most recent block. 16 EthBlockNumber() (*EthBlockNumberResult, error) 17 // Executes a new message call (locally) immediately without creating a transaction on the block chain. 18 EthCall(*EthCallParams) (*EthCallResult, error) 19 // Returns the currently configured chain id, a value used in replay-protected transaction signing as introduced by [EIP-155](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-155.md). 20 EthChainId() (*EthChainIdResult, error) 21 // Returns the client coinbase address. 22 EthCoinbase() (*EthCoinbaseResult, error) 23 // Generates and returns an estimate of how much gas is necessary to allow the transaction to complete. The transaction will not be added to the blockchain. Note that the estimate may be significantly more than the amount of gas actually used by the transaction, for a variety of reasons including EVM mechanics and node performance. 24 EthEstimateGas(*EthEstimateGasParams) (*EthEstimateGasResult, error) 25 // Returns the current price per gas in wei 26 EthGasPrice() (*EthGasPriceResult, error) 27 // Returns Ether balance of a given or account or contract 28 EthGetBalance(*EthGetBalanceParams) (*EthGetBalanceResult, error) 29 // Gets a block for a given hash 30 EthGetBlockByHash(*EthGetBlockByHashParams) (*EthGetBlockByHashResult, error) 31 // Gets a block for a given number salad 32 EthGetBlockByNumber(*EthGetBlockByNumberParams) (*EthGetBlockByNumberResult, error) 33 // Returns the number of transactions in a block from a block matching the given block hash. 34 EthGetBlockTransactionCountByHash(*EthGetBlockTransactionCountByHashParams) (*EthGetBlockTransactionCountByHashResult, error) 35 // Returns the number of transactions in a block from a block matching the given block number. 36 EthGetBlockTransactionCountByNumber(*EthGetBlockTransactionCountByNumberParams) (*EthGetBlockTransactionCountByNumberResult, error) 37 // Returns code at a given contract address 38 EthGetCode(*EthGetCodeParams) (*EthGetCodeResult, error) 39 // Polling method for a filter, which returns an array of logs which occurred since last poll. 40 EthGetFilterChanges(*EthGetFilterChangesParams) (*EthGetFilterChangesResult, error) 41 // Returns an array of all logs matching filter with given id. 42 EthGetFilterLogs(*EthGetFilterLogsParams) (*EthGetFilterLogsResult, error) 43 // Returns raw transaction data of a transaction with the given hash. 44 EthGetRawTransactionByHash(*EthGetRawTransactionByHashParams) (*EthGetRawTransactionByHashResult, error) 45 // Returns raw transaction data of a transaction with the given hash. 46 EthGetRawTransactionByBlockHashAndIndex(*EthGetRawTransactionByBlockHashAndIndexParams) (*EthGetRawTransactionByBlockHashAndIndexResult, error) 47 // Returns raw transaction data of a transaction with the given hash. 48 EthGetRawTransactionByBlockNumberAndIndex(*EthGetRawTransactionByBlockNumberAndIndexParams) (*EthGetRawTransactionByBlockNumberAndIndexResult, error) 49 // Returns an array of all logs matching a given filter object. 50 EthGetLogs(*EthGetLogsParams) (*EthGetLogsResult, error) 51 // Gets a storage value from a contract address, a position, and an optional blockNumber 52 EthGetStorageAt(*EthGetStorageAtParams) (*EthGetStorageAtResult, error) 53 // Returns the information about a transaction requested by the block hash and index of which it was mined. 54 EthGetTransactionByBlockHashAndIndex(*EthGetTransactionByBlockHashAndIndexParams) (*EthGetTransactionByBlockHashAndIndexResult, error) 55 // Returns the information about a transaction requested by the block hash and index of which it was mined. 56 EthGetTransactionByBlockNumberAndIndex(*EthGetTransactionByBlockNumberAndIndexParams) (*EthGetTransactionByBlockNumberAndIndexResult, error) 57 // Returns the information about a transaction requested by transaction hash. 58 EthGetTransactionByHash(*EthGetTransactionByHashParams) (*EthGetTransactionByHashResult, error) 59 // Returns the number of transactions sent from an address 60 EthGetTransactionCount(*EthGetTransactionCountParams) (*EthGetTransactionCountResult, error) 61 // Returns the receipt information of a transaction by its hash. 62 EthGetTransactionReceipt(*EthGetTransactionReceiptParams) (*EthGetTransactionReceiptResult, error) 63 // Returns information about a uncle of a block by hash and uncle index position. 64 EthGetUncleByBlockHashAndIndex(*EthGetUncleByBlockHashAndIndexParams) (*EthGetUncleByBlockHashAndIndexResult, error) 65 // Returns information about a uncle of a block by hash and uncle index position. 66 EthGetUncleByBlockNumberAndIndex(*EthGetUncleByBlockNumberAndIndexParams) (*EthGetUncleByBlockNumberAndIndexResult, error) 67 // Returns the number of uncles in a block from a block matching the given block hash. 68 EthGetUncleCountByBlockHash(*EthGetUncleCountByBlockHashParams) (*EthGetUncleCountByBlockHashResult, error) 69 // Returns the number of uncles in a block from a block matching the given block number. 70 EthGetUncleCountByBlockNumber(*EthGetUncleCountByBlockNumberParams) (*EthGetUncleCountByBlockNumberResult, error) 71 // Returns the account- and storage-values of the specified account including the Merkle-proof. 72 EthGetProof(*EthGetProofParams) (*EthGetProofResult, error) 73 // Returns the hash of the current block, the seedHash, and the boundary condition to be met ('target'). 74 EthGetWork() (*EthGetWorkResult, error) 75 // Returns the number of hashes per second that the node is mining with. 76 EthHashrate() (*EthHashrateResult, error) 77 // Returns true if client is actively mining new blocks. 78 EthMining() (*EthMiningResult, error) 79 // Creates a filter in the node, to notify when a new block arrives. To check if the state has changed, call eth_getFilterChanges. 80 EthNewBlockFilter() (*EthNewBlockFilterResult, error) 81 // Creates a filter object, based on filter options, to notify when the state changes (logs). To check if the state has changed, call eth_getFilterChanges. 82 EthNewFilter(*EthNewFilterParams) (*EthNewFilterResult, error) 83 // Creates a filter in the node, to notify when new pending transactions arrive. To check if the state has changed, call eth_getFilterChanges. 84 EthNewPendingTransactionFilter() (*EthNewPendingTransactionFilterResult, error) 85 // Returns the pending transactions list 86 EthPendingTransactions() (*EthPendingTransactionsResult, error) 87 // Returns the current ethereum protocol version. 88 EthProtocolVersion() (*EthProtocolVersionResult, error) 89 // The sign method calculates an Ethereum specific signature. 90 EthSign(*EthSignParams) (*EthSignResult, error) 91 // Returns a list of addresses owned by client. 92 EthAccounts() (*EthAccountsResult, error) 93 // Creates new message call transaction or a contract creation, if the data field contains code. 94 EthSendTransaction(*EthSendTransactionParams) (*EthSendTransactionResult, error) 95 // Creates new message call transaction or a contract creation for signed transactions. 96 EthSendRawTransaction(*EthSendRawTransactionParams) (*EthSendRawTransactionResult, error) 97 // Returns an array of all logs matching a given filter object. 98 EthSubmitHashrate(*EthSubmitHashrateParams) (*EthSubmitHashrateResult, error) 99 // Used for submitting a proof-of-work solution. 100 EthSubmitWork(*EthSubmitWorkParams) (*EthSubmitWorkResult, error) 101 // Returns an object with data about the sync status or false. 102 EthSyncing() (*EthSyncingResult, error) 103 // Uninstalls a filter with given id. Should always be called when watch is no longer needed. Additionally Filters timeout when they aren't requested with eth_getFilterChanges for a period of time. 104 EthUninstallFilter(*EthUninstallFilterParams) (*EthUninstallFilterResult, error) 105 } 106 type Web3ClientVersionResult struct { 107 // client version 108 ClientVersion string `json:"clientVersion"` 109 } 110 type Web3Sha3Params struct { 111 // data to hash using the Keccak-256 algorithm 112 Data string `json:"data"` 113 } 114 type Web3Sha3Result struct { 115 // Hex representation of a Keccak 256 hash 116 HashedData string `json:"hashedData"` 117 } 118 type NetListeningResult struct { 119 // `true` if listening is active or `false` if listening is not active 120 IsNetListening bool `json:"isNetListening"` 121 } 122 type NetPeerCountResult struct { 123 // Hex representation of number of connected peers 124 NumConnectedPeers string `json:"numConnectedPeers"` 125 } 126 type NetVersionResult struct { 127 // chain ID associated with the current network 128 ChainID string `json:"chainID"` 129 } 130 type BlockNumber struct { 131 // The hex representation of the block's height 132 BlockNumber string `json:"blockNumber"` 133 } 134 type EthBlockNumberResult struct { 135 BlockNumber string `json:"blockNumber"` 136 } 137 type TransactionIndex struct { 138 // Hex representation of the integer 139 Integer string `json:"integer"` 140 } 141 type Transaction struct { 142 // Integer of the transaction's index position in the block. null when its pending 143 TransactionIndex string `json:"transactionIndex"` 144 // Hash of the block where this transaction was in. null when its pending 145 BlockHash string `json:"blockHash"` 146 // Address of the sender 147 From string `json:"from"` 148 // Hex representation of a Keccak 256 hash 149 Hash string `json:"hash"` 150 // The data field sent with the transaction 151 Data string `json:"data"` 152 // A number only to be used once 153 Nonce string `json:"nonce"` 154 // The gas limit provided by the sender in Wei 155 Gas string `json:"gas"` 156 // Hex representation of a Keccak 256 hash 157 Value string `json:"value"` 158 // ECDSA recovery id 159 V string `json:"v"` 160 // ECDSA signature s 161 S string `json:"s"` 162 // The gas price willing to be paid by the sender in Wei 163 GasPrice string `json:"gasPrice"` 164 // address of the receiver. null when its a contract creation transaction 165 To string `json:"to"` 166 // Block number where this transaction was in. null when its pending 167 BlockNumber string `json:"blockNumber"` 168 // ECDSA signature r 169 R string `json:"r"` 170 } 171 type BlockHash struct { 172 // Hex representation of a Keccak 256 hash 173 Keccak string `json:"keccak"` 174 } 175 type EthCallParams struct { 176 Transaction 177 178 BlockNumber string `json:"blockNumber"` 179 } 180 type EthCallResult struct { 181 // Hex representation of a variable length byte array 182 ReturnValue string `json:"returnValue"` 183 } 184 type EthChainIdResult struct { 185 // hex format integer of the current chain id. Defaults are mainnet=61, morden=62. 186 ChainId string `json:"chainId"` 187 } 188 type EthCoinbaseResult struct { 189 // The address owned by the client that is used as default for things like the mining reward 190 Address string `json:"address"` 191 } 192 type EthEstimateGasParams struct { 193 Transaction 194 } 195 type EthEstimateGasResult struct { 196 // Hex representation of the integer 197 GasUsed string `json:"gasUsed"` 198 } 199 type EthGasPriceResult struct { 200 // Hex representation of the integer 201 GasPrice string `json:"gasPrice"` 202 } 203 type EthGetBalanceParams struct { 204 // The address of the account or contract 205 Address string `json:"address"` 206 // The hex representation of the block's height 207 BlockNumber string `json:"blockNumber"` 208 } 209 type GetBalanceResult struct { 210 // Hex representation of the integer 211 Integer string `json:"integer"` 212 } 213 type EthGetBalanceResult struct { 214 GetBalanceResult string `json:"getBalanceResult"` 215 } 216 type EthGetBlockByHashParams struct { 217 // The hex representation of the Keccak 256 of the RLP encoded block 218 BlockHash string `json:"blockHash"` 219 // If `true` it returns the full transaction objects, if `false` only the hashes of the transactions. 220 IsTransactionsIncluded bool `json:"isTransactionsIncluded"` 221 } 222 type Block struct { 223 // Hex representation of a Keccak 256 hash 224 Sha3Uncles string `json:"sha3Uncles"` 225 // Hex representation of a Keccak 256 hash 226 TransactionsRoot string `json:"transactionsRoot"` 227 // Hex representation of a Keccak 256 hash 228 ParentHash string `json:"parentHash"` 229 // The address of the beneficiary to whom the mining rewards were given or null when its the pending block 230 Miner string `json:"miner"` 231 // Integer of the difficulty for this block 232 Difficulty string `json:"difficulty"` 233 // The total used gas by all transactions in this block 234 GasUsed string `json:"gasUsed"` 235 // The unix timestamp for when the block was collated 236 Timestamp string `json:"timestamp"` 237 // Array of transaction objects, or 32 Bytes transaction hashes depending on the last given parameter 238 Transactions []Transactions `json:"transactions"` 239 // The block number or null when its the pending block 240 Number string `json:"number"` 241 // The block hash or null when its the pending block 242 Hash string `json:"hash"` 243 // Array of uncle hashes 244 Uncles []string `json:"uncles"` 245 // Hex representation of a Keccak 256 hash 246 ReceiptsRoot string `json:"receiptsRoot"` 247 // The 'extra data' field of this block 248 ExtraData string `json:"extraData"` 249 // Hex representation of a Keccak 256 hash 250 StateRoot string `json:"stateRoot"` 251 // Integer of the total difficulty of the chain until this block 252 TotalDifficulty string `json:"totalDifficulty"` 253 // Integer the size of this block in bytes 254 Size string `json:"size"` 255 // The maximum gas allowed in this block 256 GasLimit string `json:"gasLimit"` 257 // Randomly selected number to satisfy the proof-of-work or null when its the pending block 258 Nonce string `json:"nonce"` 259 // The bloom filter for the logs of the block or null when its the pending block 260 LogsBloom string `json:"logsBloom"` 261 } 262 type Miner struct { 263 Address string `json:"address"` 264 } 265 type Transactions struct { 266 Transaction 267 } 268 type Number struct { 269 // Hex representation of the integer 270 Integer string `json:"integer"` 271 } 272 type Hash struct { 273 // Hex representation of a Keccak 256 hash 274 Keccak string `json:"keccak"` 275 } 276 type Uncles struct { 277 // Hex representation of a Keccak 256 hash 278 Keccak string `json:"keccak"` 279 } 280 type TotalDifficulty struct { 281 // Hex representation of the integer 282 Integer string `json:"integer"` 283 } 284 type Nonce struct { 285 // Hex representation of the integer 286 Integer string `json:"integer"` 287 } 288 type GetBlockByHashResult struct { 289 Block 290 } 291 type EthGetBlockByHashResult struct { 292 GetBlockByHashResult Block `json:"getBlockByHashResult"` 293 } 294 type EthGetBlockByNumberParams struct { 295 BlockNumber string `json:"blockNumber"` 296 // If `true` it returns the full transaction objects, if `false` only the hashes of the transactions. 297 IsTransactionsIncluded bool `json:"isTransactionsIncluded"` 298 } 299 type GetBlockByNumberResult struct { 300 Block 301 } 302 type EthGetBlockByNumberResult struct { 303 GetBlockByNumberResult Block `json:"getBlockByNumberResult"` 304 } 305 type EthGetBlockTransactionCountByHashParams struct { 306 // The hex representation of the Keccak 256 of the RLP encoded block 307 BlockHash string `json:"blockHash"` 308 } 309 type BlockTransactionCountByHash struct { 310 // Hex representation of the integer 311 Integer string `json:"integer"` 312 } 313 type EthGetBlockTransactionCountByHashResult struct { 314 // The Number of total transactions in the given block 315 BlockTransactionCountByHash string `json:"blockTransactionCountByHash"` 316 } 317 type EthGetBlockTransactionCountByNumberParams struct { 318 BlockNumber string `json:"blockNumber"` 319 } 320 type EthGetBlockTransactionCountByNumberResult struct { 321 // The Number of total transactions in the given block 322 BlockTransactionCountByHash string `json:"blockTransactionCountByHash"` 323 } 324 type EthGetCodeParams struct { 325 // The address of the contract 326 Address string `json:"address"` 327 // The hex representation of the block's height 328 BlockNumber string `json:"blockNumber"` 329 } 330 type EthGetCodeResult struct { 331 // Hex representation of a variable length byte array 332 Bytes string `json:"bytes"` 333 } 334 type EthGetFilterChangesParams struct { 335 // An identifier used to reference the filter. 336 FilterId string `json:"filterId"` 337 } 338 type Log struct { 339 Topics []Topics `json:"topics"` 340 // Hex representation of a Keccak 256 hash 341 TransactionHash string `json:"transactionHash"` 342 // Sender of the transaction 343 Address string `json:"address"` 344 // The hex representation of the Keccak 256 of the RLP encoded block 345 BlockHash string `json:"blockHash"` 346 // The hex representation of the block's height 347 BlockNumber string `json:"blockNumber"` 348 // Hex representation of a variable length byte array 349 Data string `json:"data"` 350 // Hex representation of the integer 351 LogIndex string `json:"logIndex"` 352 // Hex representation of the integer 353 TransactionIndex string `json:"transactionIndex"` 354 } 355 type LogResult struct { 356 // An indexed event generated during a transaction 357 Log 358 359 Topics []Topics `json:"topics"` 360 // Hex representation of a Keccak 256 hash 361 TransactionHash string `json:"transactionHash"` 362 // Sender of the transaction 363 Address string `json:"address"` 364 // The hex representation of the Keccak 256 of the RLP encoded block 365 BlockHash string `json:"blockHash"` 366 // The hex representation of the block's height 367 BlockNumber string `json:"blockNumber"` 368 // Hex representation of a variable length byte array 369 Data string `json:"data"` 370 // Hex representation of the integer 371 LogIndex string `json:"logIndex"` 372 // Hex representation of the integer 373 TransactionIndex string `json:"transactionIndex"` 374 } 375 type EthGetFilterChangesResult struct { 376 LogResult []LogResult `json:"logResult"` 377 } 378 type EthGetFilterLogsParams struct { 379 // An identifier used to reference the filter. 380 FilterId string `json:"filterId"` 381 } 382 type Logs struct { 383 // An indexed event generated during a transaction 384 Log 385 // Hex representation of the integer 386 LogIndex string `json:"logIndex"` 387 // Hex representation of the integer 388 TransactionIndex string `json:"transactionIndex"` 389 // Hex representation of a Keccak 256 hash 390 TransactionHash string `json:"transactionHash"` 391 // Sender of the transaction 392 Address string `json:"address"` 393 // The hex representation of the Keccak 256 of the RLP encoded block 394 BlockHash string `json:"blockHash"` 395 // The hex representation of the block's height 396 BlockNumber string `json:"blockNumber"` 397 // Hex representation of a variable length byte array 398 Data string `json:"data"` 399 400 Topics []Topics `json:"topics"` 401 } 402 type EthGetFilterLogsResult struct { 403 Logs []Logs `json:"logs"` 404 } 405 type EthGetRawTransactionByHashParams struct { 406 // Hex representation of a Keccak 256 hash 407 TransactionHash string `json:"transactionHash"` 408 } 409 type EthGetRawTransactionByHashResult struct { 410 // Hex representation of a variable length byte array 411 RawTransactionByHash string `json:"rawTransactionByHash"` 412 } 413 type EthGetRawTransactionByBlockHashAndIndexParams struct { 414 // The hex representation of the Keccak 256 of the RLP encoded block 415 BlockHash string `json:"blockHash"` 416 // Hex representation of the integer 417 Index string `json:"index"` 418 } 419 type EthGetRawTransactionByBlockHashAndIndexResult struct { 420 // Hex representation of a variable length byte array 421 RawTransaction string `json:"rawTransaction"` 422 } 423 type EthGetRawTransactionByBlockNumberAndIndexParams struct { 424 BlockNumber string `json:"blockNumber"` 425 // Hex representation of the integer 426 Index string `json:"index"` 427 } 428 type EthGetRawTransactionByBlockNumberAndIndexResult struct { 429 // Hex representation of a variable length byte array 430 RawTransaction string `json:"rawTransaction"` 431 } 432 type Filter struct { 433 // The hex representation of the block's height 434 FromBlock string `json:"fromBlock"` 435 // The hex representation of the block's height 436 ToBlock string `json:"toBlock"` 437 438 Address string `json:"address"` 439 // Array of 32 Bytes DATA topics. Topics are order-dependent. Each topic can also be an array of DATA with 'or' options 440 Topics []string `json:"topics"` 441 } 442 type Address struct { 443 // Address of the contract from which to monitor events 444 Address string `json:"address"` 445 } 446 type Topics struct { 447 // Hex representation of a 256 bit unit of data 448 DataWord string `json:"dataWord"` 449 } 450 type EthGetLogsParams struct { 451 // A filter used to monitor the blockchain for log/events 452 Filter 453 } 454 type EthGetLogsResult struct { 455 Logs []Logs `json:"logs"` 456 } 457 type EthGetStorageAtParams struct { 458 Address string `json:"address"` 459 // Hex representation of the storage slot where the variable exists 460 Position string `json:"position"` 461 462 BlockNumber string `json:"blockNumber"` 463 } 464 type EthGetStorageAtResult struct { 465 // Hex representation of a 256 bit unit of data 466 DataWord string `json:"dataWord"` 467 } 468 type EthGetTransactionByBlockHashAndIndexParams struct { 469 // The hex representation of the Keccak 256 of the RLP encoded block 470 BlockHash string `json:"blockHash"` 471 // Hex representation of the integer 472 Index string `json:"index"` 473 } 474 type TransactionResult struct { 475 Transaction 476 } 477 type EthGetTransactionByBlockHashAndIndexResult struct { 478 TransactionResult Transaction `json:"transactionResult"` 479 } 480 type EthGetTransactionByBlockNumberAndIndexParams struct { 481 BlockNumber string `json:"blockNumber"` 482 // Hex representation of the integer 483 Index string `json:"index"` 484 } 485 type EthGetTransactionByBlockNumberAndIndexResult struct { 486 TransactionResult Transaction `json:"transactionResult"` 487 } 488 type EthGetTransactionByHashParams struct { 489 // Hex representation of a Keccak 256 hash 490 TransactionHash string `json:"transactionHash"` 491 } 492 type EthGetTransactionByHashResult struct { 493 Transaction 494 } 495 type EthGetTransactionCountParams struct { 496 Address string `json:"address"` 497 498 BlockNumber string `json:"blockNumber"` 499 } 500 type NonceOrNull struct { 501 // A number only to be used once 502 Nonce string `json:"nonce"` 503 } 504 type EthGetTransactionCountResult struct { 505 NonceOrNull string `json:"nonceOrNull"` 506 } 507 type EthGetTransactionReceiptParams struct { 508 // Hex representation of a Keccak 256 hash 509 TransactionHash string `json:"transactionHash"` 510 } 511 type Receipt struct { 512 // The hex representation of the block's height 513 BlockNumber string `json:"blockNumber"` 514 // Hex representation of the integer 515 CumulativeGasUsed string `json:"cumulativeGasUsed"` 516 // Hex representation of the integer 517 GasUsed string `json:"gasUsed"` 518 // An array of all the logs triggered during the transaction 519 Logs []Logs `json:"logs"` 520 // A 2048 bit bloom filter from the logs of the transaction. Each log sets 3 bits though taking the low-order 11 bits of each of the first three pairs of bytes in a Keccak 256 hash of the log's byte series 521 TransactionIndex string `json:"transactionIndex"` 522 // Whether or not the transaction threw an error. 523 Status string `json:"status"` 524 // The hex representation of the Keccak 256 of the RLP encoded block 525 BlockHash string `json:"blockHash"` 526 // The contract address created, if the transaction was a contract creation, otherwise null 527 ContractAddress string `json:"contractAddress"` 528 // The sender of the transaction 529 From string `json:"from"` 530 // A 2048 bit bloom filter from the logs of the transaction. Each log sets 3 bits though taking the low-order 11 bits of each of the first three pairs of bytes in a Keccak 256 hash of the log's byte series 531 LogsBloom string `json:"logsBloom"` 532 // Destination address of the transaction 533 To string `json:"to"` 534 // Hex representation of a Keccak 256 hash 535 TransactionHash string `json:"transactionHash"` 536 } 537 type EthGetTransactionReceiptResult struct { 538 // returns either a receipt or null 539 Receipt 540 } 541 type EthGetUncleByBlockHashAndIndexParams struct { 542 // The hex representation of the Keccak 256 of the RLP encoded block 543 BlockHash string `json:"blockHash"` 544 // Hex representation of the integer 545 Index string `json:"index"` 546 } 547 type Uncle struct { 548 // Randomly selected number to satisfy the proof-of-work or null when its the pending block 549 Nonce string `json:"nonce"` 550 // Hex representation of a Keccak 256 hash 551 TransactionsRoot string `json:"transactionsRoot"` 552 // Integer of the total difficulty of the chain until this block 553 TotalDifficulty string `json:"totalDifficulty"` 554 // Integer the size of this block in bytes 555 Size string `json:"size"` 556 // The total used gas by all transactions in this block 557 GasUsed string `json:"gasUsed"` 558 // Array of uncle hashes 559 Uncles []string `json:"uncles"` 560 // The block number or null when its the pending block 561 Number string `json:"number"` 562 // The block hash or null when its the pending block 563 Hash string `json:"hash"` 564 // Hex representation of a Keccak 256 hash 565 Sha3Uncles string `json:"sha3Uncles"` 566 // Hex representation of a Keccak 256 hash 567 StateRoot string `json:"stateRoot"` 568 // The 'extra data' field of this block 569 ExtraData string `json:"extraData"` 570 // The unix timestamp for when the block was collated 571 Timestamp string `json:"timestamp"` 572 // Hex representation of a Keccak 256 hash 573 ReceiptsRoot string `json:"receiptsRoot"` 574 // The address of the beneficiary to whom the mining rewards were given or null when its the pending block 575 Miner string `json:"miner"` 576 // The maximum gas allowed in this block 577 GasLimit string `json:"gasLimit"` 578 // Hex representation of a Keccak 256 hash 579 ParentHash string `json:"parentHash"` 580 // The bloom filter for the logs of the block or null when its the pending block 581 LogsBloom string `json:"logsBloom"` 582 // Integer of the difficulty for this block 583 Difficulty string `json:"difficulty"` 584 } 585 type UncleOrNull struct { 586 // Orphaned blocks that can be included in the chain but at a lower block reward. NOTE: An uncle doesn’t contain individual transactions. 587 Uncle 588 } 589 type EthGetUncleByBlockHashAndIndexResult struct { 590 UncleOrNull Uncle `json:"uncleOrNull"` 591 } 592 type EthGetUncleByBlockNumberAndIndexParams struct { 593 // The hex representation of the block's height 594 UncleBlockNumber string `json:"uncleBlockNumber"` 595 // Hex representation of the integer 596 Index string `json:"index"` 597 } 598 type UncleResult struct { 599 // Orphaned blocks that can be included in the chain but at a lower block reward. NOTE: An uncle doesn’t contain individual transactions. 600 Uncle 601 } 602 type EthGetUncleByBlockNumberAndIndexResult struct { 603 // returns an uncle or null 604 UncleResult Uncle `json:"uncleResult"` 605 } 606 type EthGetUncleCountByBlockHashParams struct { 607 // The hex representation of the Keccak 256 of the RLP encoded block 608 BlockHash string `json:"blockHash"` 609 } 610 type UncleCountOrNull struct { 611 // Hex representation of the integer 612 Integer string `json:"integer"` 613 } 614 type EthGetUncleCountByBlockHashResult struct { 615 UncleCountOrNull string `json:"uncleCountOrNull"` 616 } 617 type EthGetUncleCountByBlockNumberParams struct { 618 BlockNumber string `json:"blockNumber"` 619 } 620 type EthGetUncleCountByBlockNumberResult struct { 621 UncleCountOrNull string `json:"uncleCountOrNull"` 622 } 623 type EthGetProofParams struct { 624 // The address of the account or contract 625 Address string `json:"address"` 626 // The storage keys of all the storage slots being requested 627 StorageKeys []string `json:"storageKeys"` 628 629 BlockNumber string `json:"blockNumber"` 630 } 631 type StorageKeys struct { 632 // Hex representation of the integer 633 Integer string `json:"integer"` 634 } 635 type ProofAccount struct { 636 // Hex representation of the integer 637 Balance string `json:"balance"` 638 // Hex representation of a Keccak 256 hash 639 CodeHash string `json:"codeHash"` 640 // A number only to be used once 641 Nonce string `json:"nonce"` 642 // Hex representation of a Keccak 256 hash 643 StorageHash string `json:"storageHash"` 644 // Current block header PoW hash. 645 StorageProof []StorageProof `json:"storageProof"` 646 // The address of the account or contract of the request 647 Address string `json:"address"` 648 // The set of node values needed to traverse a patricia merkle tree (from root to leaf) to retrieve a value 649 AccountProof []string `json:"accountProof"` 650 } 651 type Proof struct { 652 // Hex representation of a variable length byte array 653 ProofNode string `json:"proofNode"` 654 } 655 type StorageProof struct { 656 // The set of node values needed to traverse a patricia merkle tree (from root to leaf) to retrieve a value 657 Proof []string `json:"proof"` 658 // Hex representation of the integer 659 Key string `json:"key"` 660 // Hex representation of the integer 661 Value string `json:"value"` 662 } 663 type AccountProof struct { 664 // Hex representation of a variable length byte array 665 ProofNode string `json:"proofNode"` 666 } 667 type ProofAccountOrNull struct { 668 // The merkle proofs of the specified account connecting them to the blockhash of the block specified 669 ProofAccount 670 } 671 type EthGetProofResult struct { 672 ProofAccountOrNull ProofAccount `json:"proofAccountOrNull"` 673 } 674 type EthGetWorkResult struct { 675 Work []string `json:"work"` 676 } 677 type EthHashrateResult struct { 678 // Hex representation of the integer 679 HashesPerSecond string `json:"hashesPerSecond"` 680 } 681 type EthMiningResult struct { 682 // Whether of not the client is mining 683 Mining bool `json:"mining"` 684 } 685 type EthNewBlockFilterResult struct { 686 // Hex representation of the integer 687 FilterId string `json:"filterId"` 688 } 689 type EthNewFilterParams struct { 690 // A filter used to monitor the blockchain for log/events 691 Filter 692 } 693 type EthNewFilterResult struct { 694 // Hex representation of the integer 695 FilterId string `json:"filterId"` 696 } 697 type EthNewPendingTransactionFilterResult struct { 698 // Hex representation of the integer 699 FilterId string `json:"filterId"` 700 } 701 type PendingTransactions struct { 702 Transaction 703 // Integer of the transaction's index position in the block. null when its pending 704 TransactionIndex string `json:"transactionIndex"` 705 // Hash of the block where this transaction was in. null when its pending 706 BlockHash string `json:"blockHash"` 707 // Address of the sender 708 From string `json:"from"` 709 // Hex representation of a Keccak 256 hash 710 Hash string `json:"hash"` 711 // The data field sent with the transaction 712 Data string `json:"data"` 713 // A number only to be used once 714 Nonce string `json:"nonce"` 715 // The gas limit provided by the sender in Wei 716 Gas string `json:"gas"` 717 // Hex representation of a Keccak 256 hash 718 Value string `json:"value"` 719 // ECDSA recovery id 720 V string `json:"v"` 721 // ECDSA signature s 722 S string `json:"s"` 723 // The gas price willing to be paid by the sender in Wei 724 GasPrice string `json:"gasPrice"` 725 // address of the receiver. null when its a contract creation transaction 726 To string `json:"to"` 727 // Block number where this transaction was in. null when its pending 728 BlockNumber string `json:"blockNumber"` 729 // ECDSA signature r 730 R string `json:"r"` 731 } 732 type EthPendingTransactionsResult struct { 733 PendingTransactions []PendingTransactions `json:"pendingTransactions"` 734 } 735 type EthProtocolVersionResult struct { 736 // Hex representation of the integer 737 ProtocolVersion string `json:"protocolVersion"` 738 } 739 type EthSignParams struct { 740 Address string `json:"address"` 741 // Hex representation of a variable length byte array 742 Bytes string `json:"bytes"` 743 } 744 type EthSignResult struct { 745 // Hex representation of a variable length byte array 746 Signature string `json:"signature"` 747 } 748 type Addresses struct { 749 Address string `json:"address"` 750 } 751 type EthAccountsResult struct { 752 // addresses owned by the client 753 Addresses []string `json:"addresses"` 754 } 755 type EthSendTransactionParams struct { 756 Transaction 757 } 758 type EthSendTransactionResult struct { 759 // Hex representation of a Keccak 256 hash 760 TransactionHash string `json:"transactionHash"` 761 } 762 type EthSendRawTransactionParams struct { 763 // Hex representation of a variable length byte array 764 SignedTransactionData string `json:"signedTransactionData"` 765 } 766 type EthSendRawTransactionResult struct { 767 // Hex representation of a Keccak 256 hash 768 TransactionHash string `json:"transactionHash"` 769 } 770 type EthSubmitHashrateParams struct { 771 // Hex representation of a 256 bit unit of data 772 HashRate string `json:"hashRate"` 773 // Hex representation of a 256 bit unit of data 774 Id string `json:"id"` 775 } 776 type EthSubmitHashrateResult struct { 777 // whether of not submitting went through successfully 778 SubmitHashRateSuccess bool `json:"submitHashRateSuccess"` 779 } 780 type EthSubmitWorkParams struct { 781 // A number only to be used once 782 Nonce string `json:"nonce"` 783 // Hex representation of a 256 bit unit of data 784 PowHash string `json:"powHash"` 785 // Hex representation of a 256 bit unit of data 786 MixHash string `json:"mixHash"` 787 } 788 type EthSubmitWorkResult struct { 789 // Whether or not the provided solution is valid 790 SolutionValid bool `json:"solutionValid"` 791 } 792 type SyncStatus struct { 793 // Hex representation of the integer 794 StartingBlock string `json:"startingBlock"` 795 // Hex representation of the integer 796 CurrentBlock string `json:"currentBlock"` 797 // Hex representation of the integer 798 HighestBlock string `json:"highestBlock"` 799 // Hex representation of the integer 800 KnownStates string `json:"knownStates"` 801 // Hex representation of the integer 802 PulledStates string `json:"pulledStates"` 803 } 804 type Syncing struct { 805 // An object with sync status data 806 SyncStatus 807 } 808 type EthSyncingResult struct { 809 Syncing SyncStatus `json:"syncing"` 810 } 811 type EthUninstallFilterParams struct { 812 // An identifier used to reference the filter. 813 FilterId string `json:"filterId"` 814 } 815 type EthUninstallFilterResult struct { 816 // Whether of not the filter was successfully uninstalled 817 FilterUninstalledSuccess bool `json:"filterUninstalledSuccess"` 818 }