UNPKG

incubed

Version:

Typescript-version of the incubed client

844 lines (399 loc) 86.7 kB
# Data Structures This page contains a list of all Datastructures and Classes used within the IN3 Client. * [**AccountProof**](#type-accountproof) : `interface` - the Proof-for a single Account * [**BlockData**](#type-blockdata) : `interface` - Block as returned by eth_getBlockByNumber * [**ChainSpec**](#type-chainspec) : `interface` - describes the chainspecific consensus params * [**IN3Client**](#type-client) : `class` - Client for N3. * [**IN3Config**](#type-in3config) : `interface` - the iguration of the IN3-Client. This can be paritally overriden for every request. * [**IN3NodeConfig**](#type-in3nodeconfig) : `interface` - a configuration of a in3-server. * [**IN3NodeWeight**](#type-in3nodeweight) : `interface` - a local weight of a n3-node. (This is used internally to weight the requests) * [**IN3RPCConfig**](#type-in3rpcconfig) : `interface` - the configuration for the rpc-handler * [**IN3RPCHandlerConfig**](#type-in3rpchandlerconfig) : `interface` - the configuration for the rpc-handler * [**IN3RPCRequestConfig**](#type-in3rpcrequestconfig) : `interface` - additional config for a IN3 RPC-Request * [**IN3ResponseConfig**](#type-in3responseconfig) : `interface` - additional data returned from a IN3 Server * [**LogData**](#type-logdata) : `interface` - LogData as part of the TransactionReceipt * [**LogProof**](#type-logproof) : `interface` - a Object holding proofs for event logs. The key is the blockNumber as hex * [**Proof**](#type-proof) : `interface` - the Proof-data as part of the in3-section * [**RPCRequest**](#type-rpcrequest) : `interface` - a JSONRPC-Request with N3-Extension * [**RPCResponse**](#type-rpcresponse) : `interface` - a JSONRPC-Responset with N3-Extension * [**ReceiptData**](#type-receiptdata) : `interface` - TransactionReceipt as returned by eth_getTransactionReceipt * [**ServerList**](#type-serverlist) : `interface` - a List of nodes * [**Signature**](#type-signature) : `interface` - Verified ECDSA Signature. Signatures are a pair (r, s). Where r is computed as the X coordinate of a point R, modulo the curve order n. * [**TransactionData**](#type-transactiondata) : `interface` - Transaction as returned by eth_getTransactionByHash * [**Transport**](#type-transport) : `interface` - A Transport-object responsible to transport the message to the handler. * [**AxiosTransport**](#type-axiostransport) : `class` - Default Transport impl sending http-requests. * **[cbor](https://github.com/slockit/in3/blob/master/src/index.ts#L33)** * **[createRefs](https://github.com/slockit/in3/blob/master/src/util/cbor.ts#L86)**(val :[`T`](#type-t), cache :`string`[] = []) :[`T`](#type-t) * **[decodeRequests](https://github.com/slockit/in3/blob/master/src/util/cbor.ts#L30)**(request :[`Buffer`](#type-buffer)) :[`RPCRequest`](#type-rpcrequest)[] * **[decodeResponses](https://github.com/slockit/in3/blob/master/src/util/cbor.ts#L44)**(responses :[`Buffer`](#type-buffer)) :[`RPCResponse`](#type-rpcresponse)[] * **[encodeRequests](https://github.com/slockit/in3/blob/master/src/util/cbor.ts#L26)**(requests :[`RPCRequest`](#type-rpcrequest)[]) :[`Buffer`](#type-buffer) - turn * **[encodeResponses](https://github.com/slockit/in3/blob/master/src/util/cbor.ts#L41)**(responses :[`RPCResponse`](#type-rpcresponse)[]) :[`Buffer`](#type-buffer) * **[resolveRefs](https://github.com/slockit/in3/blob/master/src/util/cbor.ts#L107)**(val :[`T`](#type-t), cache :`string`[] = []) :[`T`](#type-t) * **[chainAliases](https://github.com/slockit/in3/blob/master/src/index.ts#L81)** * **[goerli](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L674)** :`string` * **[ipfs](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L674)** :`string` * **[kovan](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L674)** :`string` * **[main](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L674)** :`string` * **[mainnet](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L674)** :`string` * **[tobalaba](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L674)** :`string` * **[chainData](https://github.com/slockit/in3/blob/master/src/index.ts#L49)** * **[callContract](https://github.com/slockit/in3/blob/master/src/modules/eth/chainData.ts#L26)**(client :[`Client`](#type-client), contract :`string`, chainId :`string`, signature :`string`, args :`any`[], config :[`IN3Config`](#type-in3config)) :`Promise<any>` * **[getChainData](https://github.com/slockit/in3/blob/master/src/modules/eth/chainData.ts#L35)**(client :[`Client`](#type-client), chainId :`string`, config :[`IN3Config`](#type-in3config)) :`Promise<>` * **[createRandomIndexes](https://github.com/slockit/in3/blob/master/src/client/serverList.ts#L32)**(len :`number`, limit :`number`, seed :[`Buffer`](#type-buffer), result :`number`[] = []) :`number`[] * [**eth**](#type-api) : `class` * **[header](https://github.com/slockit/in3/blob/master/src/index.ts#L39)** * **[checkBlockSignatures](https://github.com/slockit/in3/blob/master/src/modules/eth/header.ts#L16)**(blockHeaders :`string`|[`Buffer`](#type-buffer)|[`Block`](#type-block)|[`BlockData`](#type-blockdata)[], getChainSpec :) :`Promise<number>` - verify a Blockheader and returns the percentage of finality * **[getAuthorities](https://github.com/slockit/in3/blob/master/src/modules/eth/header.ts#L81)**(chainSpec :[`ChainSpec`](#type-chainspec), blockNumner :`number`, handle :) :`Promise<>` - find the authorities able to sign for the given blocknumber * **[getChainSpec](https://github.com/slockit/in3/blob/master/src/modules/eth/header.ts#L153)**(b :[`Block`](#type-block), ctx :[`ChainContext`](#type-chaincontext)) :`Promise<>` * **[getSigner](https://github.com/slockit/in3/blob/master/src/modules/eth/header.ts#L69)**(data :[`Block`](#type-block)) :[`Buffer`](#type-buffer) * **[serialize](https://github.com/slockit/in3/blob/master/src/index.ts#L36)** * [**Block**](#type-block) :`class` - encodes and decodes the blockheader * [**AccountData**](#type-accountdata) :`interface` - Account-Object * [**BlockData**](#type-blockdata) :`interface` - Block as returned by eth_getBlockByNumber * [**LogData**](#type-logdata) :`interface` - LogData as part of the TransactionReceipt * [**ReceiptData**](#type-receiptdata) :`interface` - TransactionReceipt as returned by eth_getTransactionReceipt * [**TransactionData**](#type-transactiondata) :`interface` - Transaction as returned by eth_getTransactionByHash * **[Account](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L33)** :[`Buffer`](#type-buffer)[] - Buffer[] of the Account * **[BlockHeader](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L27)** :[`Buffer`](#type-buffer)[] - Buffer[] of the header * **[Receipt](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L36)** : - Buffer[] of the Receipt * **[Transaction](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L30)** :[`Buffer`](#type-buffer)[] - Buffer[] of the transaction * **[rlp](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L25)** :`any` - RLP-functions * **[address](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L144)**(val :`any`) :`any` - converts it to a Buffer with 20 bytes length * **[blockFromHex](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L310)**(hex :`string`) :[`Block`](#type-block) - converts a hexstring to a block-object * **[blockToHex](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L305)**(block :`any`) :`string` - converts blockdata to a hexstring * **[bytes](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L142)**(val :`any`) :`any` - converts it to a Buffer * **[bytes256](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L136)**(val :`any`) :`any` - converts it to a Buffer with 256 bytes length * **[bytes32](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L138)**(val :`any`) :`any` - converts it to a Buffer with 32 bytes length * **[bytes8](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L140)**(val :`any`) :`any` - converts it to a Buffer with 8 bytes length * **[createTx](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L277)**(transaction :`any`) :`any` - creates a Transaction-object from the rpc-transaction-data * **[hash](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L130)**(val :[`Block`](#type-block)|[`Transaction`](#type-transaction)|[`Receipt`](#type-receipt)|[`Account`](#type-account)|[`Buffer`](#type-buffer)) :[`Buffer`](#type-buffer) - returns the hash of the object * **[serialize](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L127)**(val :[`Block`](#type-block)|[`Transaction`](#type-transaction)|[`Receipt`](#type-receipt)|[`Account`](#type-account)) :[`Buffer`](#type-buffer) - serialize the data * **[toAccount](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L188)**(account :[`AccountData`](#type-accountdata)) :[`Buffer`](#type-buffer)[] * **[toBlockHeader](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L149)**(block :[`BlockData`](#type-blockdata)) :[`Buffer`](#type-buffer)[] - create a Buffer[] from RPC-Response * **[toReceipt](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L197)**(r :[`ReceiptData`](#type-receiptdata)) :`Object` - create a Buffer[] from RPC-Response * **[toTransaction](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L174)**(tx :[`TransactionData`](#type-transactiondata)) :[`Buffer`](#type-buffer)[] - create a Buffer[] from RPC-Response * **[uint](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L146)**(val :`any`) :`any` - converts it to a Buffer with a variable length. 0 = length 0 * **[storage](https://github.com/slockit/in3/blob/master/src/index.ts#L42)** * **[getStorageArrayKey](https://github.com/slockit/in3/blob/master/src/modules/eth/storage.ts#L28)**(pos :`number`, arrayIndex :`number`, structSize :`number` = 1, structPos :`number` = 0) :`any` - calc the storrage array key * **[getStorageMapKey](https://github.com/slockit/in3/blob/master/src/modules/eth/storage.ts#L40)**(pos :`number`, key :`string`, structPos :`number` = 0) :`any` - calcs the storage Map key. * **[getStorageValue](https://github.com/slockit/in3/blob/master/src/modules/eth/storage.ts#L88)**(rpc :`string`, contract :`string`, pos :`number`, type :`'address'`|`'bytes32'`|`'bytes16'`|`'bytes4'`|`'int'`|`'string'`, keyOrIndex :`number`|`string`, structSize :`number`, structPos :`number`) :`Promise<any>` - get a storage value from the server * **[getStringValue](https://github.com/slockit/in3/blob/master/src/modules/eth/storage.ts#L50)**(data :[`Buffer`](#type-buffer), storageKey :[`Buffer`](#type-buffer)) :`string`| - creates a string from storage. * **[getStringValueFromList](https://github.com/slockit/in3/blob/master/src/modules/eth/storage.ts#L69)**(values :[`Buffer`](#type-buffer)[], len :`number`) :`string` - concats the storage values to a string. * **[toBN](https://github.com/slockit/in3/blob/master/src/modules/eth/storage.ts#L76)**(val :`any`) :`any` - converts any value to BN * **[transport](https://github.com/slockit/in3/blob/master/src/index.ts#L45)** * [**AxiosTransport**](#type-axiostransport) :`class` - Default Transport impl sending http-requests. * [**Transport**](#type-transport) :`interface` - A Transport-object responsible to transport the message to the handler. * **[typeDefs](https://github.com/slockit/in3/blob/master/src/index.ts#L79)** * **[AccountProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[ChainSpec](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[IN3Config](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[IN3NodeConfig](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[IN3NodeWeight](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[IN3RPCConfig](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[IN3RPCHandlerConfig](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[IN3RPCRequestConfig](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[IN3ResponseConfig](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[LogProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[Proof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[RPCRequest](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[RPCResponse](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[ServerList](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[Signature](https://github.com/slockit/in3/blob/master/src/types/types.ts#L820)** : `Object` * **[util](https://github.com/slockit/in3/blob/master/src/index.ts#L28)** * **[checkForError](https://github.com/slockit/in3/blob/master/src/util/util.ts#L51)**(res :[`T`](#type-t)) :[`T`](#type-t) - check a RPC-Response for errors and rejects the promise if found * **[getAddress](https://github.com/slockit/in3/blob/master/src/util/util.ts#L151)**(pk :`string`) :`any` - returns a address from a private key * **[padEnd](https://github.com/slockit/in3/blob/master/src/util/util.ts#L184)**(val :`string`, minLength :`number`, fill :`string` = " ") :`string` - padEnd for legacy * **[padStart](https://github.com/slockit/in3/blob/master/src/util/util.ts#L177)**(val :`string`, minLength :`number`, fill :`string` = " ") :`string` - padStart for legacy * **[promisify](https://github.com/slockit/in3/blob/master/src/util/util.ts#L36)**(self :`any`, fn :`any`, args :`any`[]) :`Promise<any>` - simple promisy-function * **[toBN](https://github.com/slockit/in3/blob/master/src/util/util.ts#L60)**(val :`any`) :`any` - convert to BigNumber * **[toBuffer](https://github.com/slockit/in3/blob/master/src/util/util.ts#L112)**(val :`any`, len :`number` = -1) :`any` - converts any value as Buffer if len === 0 it will return an empty Buffer if the value is 0 or '0x00', since this is the way rlpencode works wit 0-values. * **[toHex](https://github.com/slockit/in3/blob/master/src/util/util.ts#L70)**(val :`any`, bytes :`number`) :`string` - converts any value as hex-string * **[toMinHex](https://github.com/slockit/in3/blob/master/src/util/util.ts#L157)**(key :`string`|[`Buffer`](#type-buffer)|`number`) :`string` - removes all leading 0 in the hexstring * **[toNumber](https://github.com/slockit/in3/blob/master/src/util/util.ts#L91)**(val :`any`) :`number` - converts to a js-number * **[toSimpleHex](https://github.com/slockit/in3/blob/master/src/util/util.ts#L140)**(val :`string`) :`string` - removes all leading 0 in a hex-string * **[validate](https://github.com/slockit/in3/blob/master/src/util/validate.ts#L55)**(ob :`any`, def :`any`) :`void` ## Type AccountProof the Proof-for a single Account Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L6) * **[accountProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L10)** :`string`[] - the serialized merle-noodes beginning with the root-node * **[address](https://github.com/slockit/in3/blob/master/src/types/types.ts#L14)** :`string` - the address of this account * **[balance](https://github.com/slockit/in3/blob/master/src/types/types.ts#L18)** :`string` - the balance of this account as hex * **[code](https://github.com/slockit/in3/blob/master/src/types/types.ts#L26)** :`string` *(optional)* - the code of this account as hex ( if required) * **[codeHash](https://github.com/slockit/in3/blob/master/src/types/types.ts#L22)** :`string` - the codeHash of this account as hex * **[nonce](https://github.com/slockit/in3/blob/master/src/types/types.ts#L30)** :`string` - the nonce of this account as hex * **[storageHash](https://github.com/slockit/in3/blob/master/src/types/types.ts#L34)** :`string` - the storageHash of this account as hex * **[storageProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L38)** :[] - proof for requested storage-data ## Type BlockData Block as returned by eth_getBlockByNumber Source: [modules/eth/serialize.ts](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L39) * **[coinbase](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L44)** :`string` *(optional)* * **[difficulty](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L50)** :`string`|`number` * **[extraData](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L55)** :`string` * **[gasLimit](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L52)** :`string`|`number` * **[gasUsed](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L53)** :`string`|`number` * **[hash](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L40)** :`string` * **[logsBloom](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L49)** :`string` * **[miner](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L43)** :`string` * **[mixHash](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L57)** :`string` *(optional)* * **[nonce](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L58)** :`string`|`number` *(optional)* * **[number](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L51)** :`string`|`number` * **[parentHash](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L41)** :`string` * **[receiptRoot](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L48)** :`string` *(optional)* * **[receiptsRoot](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L47)** :`string` * **[sealFields](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L56)** :`string`[] *(optional)* * **[sha3Uncles](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L42)** :`string` * **[stateRoot](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L45)** :`string` * **[timestamp](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L54)** :`string`|`number` * **[transactions](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L59)** :`any`[] *(optional)* * **[transactionsRoot](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L46)** :`string` * **[uncles](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L60)** :`string`[] *(optional)* ## Type ChainSpec describes the chainspecific consensus params Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L56) * **[engine](https://github.com/slockit/in3/blob/master/src/types/types.ts#L60)** :`string` *(optional)* - the engine type (like Ethhash, authorityRound, ... ) * **[validatorContract](https://github.com/slockit/in3/blob/master/src/types/types.ts#L64)** :`string` *(optional)* - the aura contract to get the validators * **[validatorList](https://github.com/slockit/in3/blob/master/src/types/types.ts#L68)** :`any`[] *(optional)* - the list of validators ## Type Client Client for N3. Source: [client/Client.ts](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L53) * **[defaultMaxListeners](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L8)** :`number` * `static` **[listenerCount](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L7)**(emitter :[`EventEmitter`](#type-eventemitter), event :`string`|`symbol`) :`number` * `constructor` **[constructor](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L62)**(config :[`Partial<IN3Config>`](#type-partial) = {}, transport :[`Transport`](#type-transport)) :[`Client`](#type-client) - creates a new Client. * **[defConfig](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L60)** :[`IN3Config`](#type-in3config) - the iguration of the IN3-Client. This can be paritally overriden for every request. * **[eth](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L56)** :[`EthAPI`](#type-ethapi) * **config()** * **[addListener](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L10)**(event :`string`|`symbol`, listener :) :`this` * **[call](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L197)**(method :`string`, params :`any`, chain :`string`, config :[`Partial<IN3Config>`](#type-partial)) :`Promise<any>` - sends a simply RPC-Request * **[clearStats](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L229)**() :`void` - clears all stats and weights, like blocklisted nodes * **[createWeb3Provider](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L90)**() :[`EthereumProvider`](#type-ethereumprovider) * **[emit](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L22)**(event :`string`|`symbol`, args :`any`[]) :`boolean` * **[eventNames](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L23)**() :[`Array<>`](#type-array) * **[getChainContext](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L97)**(chainId :`string`) :[`ChainContext`](#type-chaincontext) * **[getMaxListeners](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L19)**() :`number` * **[listenerCount](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L24)**(type :`string`|`symbol`) :`number` * **[listeners](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L20)**(event :`string`|`symbol`) :[`Function`](#type-function)[] * **[off](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L16)**(event :`string`|`symbol`, listener :) :`this` * **[on](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L11)**(event :`string`|`symbol`, listener :) :`this` * **[once](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L12)**(event :`string`|`symbol`, listener :) :`this` * **[prependListener](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L13)**(event :`string`|`symbol`, listener :) :`this` * **[prependOnceListener](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L14)**(event :`string`|`symbol`, listener :) :`this` * **[rawListeners](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L21)**(event :`string`|`symbol`) :[`Function`](#type-function)[] * **[removeAllListeners](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L17)**(event :`string`|`symbol`) :`this` * **[removeListener](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L15)**(event :`string`|`symbol`, listener :) :`this` * **[send](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L209)**(request :[`RPCRequest`](#type-rpcrequest)[]|[`RPCRequest`](#type-rpcrequest), callback :, config :[`Partial<IN3Config>`](#type-partial)) :`Promise<>` - sends one or a multiple requests. if the request is a array the response will be a array as well. If the callback is given it will be called with the response, if not a Promise will be returned. This function supports callback so it can be used as a Provider for the web3. * **[sendRPC](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L186)**(method :`string`, params :`any`[] = [], chain :`string`, config :[`Partial<IN3Config>`](#type-partial)) :[`Promise<RPCResponse>`](#type-rpcresponse) - sends a simply RPC-Request * **[setMaxListeners](https://github.com/slockit/in3/blob/master/src//Users/simon/ws/in3/ts/in3/node_modules/@types/node/events.d.ts#L18)**(n :`number`) :`this` * **[updateNodeList](https://github.com/slockit/in3/blob/master/src/client/Client.ts#L120)**(chainId :`string`, conf :[`Partial<IN3Config>`](#type-partial), retryCount :`number` = 5) :`Promise<void>` - fetches the nodeList from the servers. ## Type IN3Config the iguration of the IN3-Client. This can be paritally overriden for every request. Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L73) * **[autoConfig](https://github.com/slockit/in3/blob/master/src/types/types.ts#L100)** :`boolean` *(optional)* - if true the config will be adjusted depending on the request * **[autoUpdateList](https://github.com/slockit/in3/blob/master/src/types/types.ts#L182)** :`boolean` *(optional)* - if true the nodelist will be automaticly updated if the lastBlock is newer example: true * **[cacheStorage](https://github.com/slockit/in3/blob/master/src/types/types.ts#L186)** :`any` *(optional)* - a cache handler offering 2 functions ( setItem(string,string), getItem(string) ) * **[cacheTimeout](https://github.com/slockit/in3/blob/master/src/types/types.ts#L77)** :`number` *(optional)* - number of seconds requests can be cached. * **[chainId](https://github.com/slockit/in3/blob/master/src/types/types.ts#L167)** :`string` - servers to filter for the given chain. The chain-id based on EIP-155. example: 0x1 * **[chainRegistry](https://github.com/slockit/in3/blob/master/src/types/types.ts#L172)** :`string` *(optional)* - main chain-registry contract example: 0xe36179e2286ef405e929C90ad3E70E649B22a945 * **[finality](https://github.com/slockit/in3/blob/master/src/types/types.ts#L157)** :`number` *(optional)* - the number in percent needed in order reach finality (% of signature of the validators) example: 50 * **[format](https://github.com/slockit/in3/blob/master/src/types/types.ts#L91)** :`'json'`|`'jsonRef'`|`'cbor'` *(optional)* - the format for sending the data to the client. Default is json, but using cbor means using only 30-40% of the payload since it is using binary encoding example: json * **[includeCode](https://github.com/slockit/in3/blob/master/src/types/types.ts#L114)** :`boolean` *(optional)* - if true, the request should include the codes of all accounts. otherwise only the the codeHash is returned. In this case the client may ask by calling eth_getCode() afterwards example: true * **[keepIn3](https://github.com/slockit/in3/blob/master/src/types/types.ts#L86)** :`boolean` *(optional)* - if true, the in3-section of thr response will be kept. Otherwise it will be removed after validating the data. This is useful for debugging or if the proof should be used afterwards. * **[key](https://github.com/slockit/in3/blob/master/src/types/types.ts#L96)** :`any` *(optional)* - the client key to sign requests example: 0x387a8233c96e1fc0ad5e284353276177af2186e7afa85296f106336e376669f7 * **[loggerUrl](https://github.com/slockit/in3/blob/master/src/types/types.ts#L190)** :`string` *(optional)* - a url of RES-Endpoint, the client will log all errors to. The client will post to this endpoint JSON like { id?, level, message, meta? } * **[mainChain](https://github.com/slockit/in3/blob/master/src/types/types.ts#L177)** :`string` *(optional)* - main chain-id, where the chain registry is running. example: 0x1 * **[maxAttempts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L109)** :`number` *(optional)* - max number of attempts in case a response is rejected example: 10 * **[maxBlockCache](https://github.com/slockit/in3/blob/master/src/types/types.ts#L124)** :`number` *(optional)* - number of number of blocks cached in memory example: 100 * **[maxCodeCache](https://github.com/slockit/in3/blob/master/src/types/types.ts#L119)** :`number` *(optional)* - number of max bytes used to cache the code in memory example: 100000 * **[minDeposit](https://github.com/slockit/in3/blob/master/src/types/types.ts#L142)** :`number` - min stake of the server. Only nodes owning at least this amount will be chosen. * **[nodeLimit](https://github.com/slockit/in3/blob/master/src/types/types.ts#L82)** :`number` *(optional)* - the limit of nodes to store in the client. example: 150 * **[proof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L133)** :`'none'`|`'standard'`|`'full'` *(optional)* - if true the nodes should send a proof of the response example: true * **[replaceLatestBlock](https://github.com/slockit/in3/blob/master/src/types/types.ts#L147)** :`number` *(optional)* - if specified, the blocknumber *latest* will be replaced by blockNumber- specified value example: 6 * **[requestCount](https://github.com/slockit/in3/blob/master/src/types/types.ts#L152)** :`number` - the number of request send when getting a first answer example: 3 * **[retryWithoutProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L104)** :`boolean` *(optional)* - if true the the request may be handled without proof in case of an error. (use with care!) * **[servers](https://github.com/slockit/in3/blob/master/src/types/types.ts#L194)** *(optional)* - the nodelist per chain * **[signatureCount](https://github.com/slockit/in3/blob/master/src/types/types.ts#L138)** :`number` *(optional)* - number of signatures requested example: 2 * **[timeout](https://github.com/slockit/in3/blob/master/src/types/types.ts#L162)** :`number` *(optional)* - specifies the number of milliseconds before the request times out. increasing may be helpful if the device uses a slow connection. example: 3000 * **[verifiedHashes](https://github.com/slockit/in3/blob/master/src/types/types.ts#L128)** :`string`[] *(optional)* - if the client sends a array of blockhashes the server will not deliver any signatures or blockheaders for these blocks, but only return a string with a number. This is automaticly updated by the cache, but can be overriden per request. ## Type IN3NodeConfig a configuration of a in3-server. Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L253) * **[address](https://github.com/slockit/in3/blob/master/src/types/types.ts#L263)** :`string` - the address of the node, which is the public address it iis signing with. example: 0x6C1a01C2aB554930A937B0a2E8105fB47946c679 * **[capacity](https://github.com/slockit/in3/blob/master/src/types/types.ts#L283)** :`number` *(optional)* - the capacity of the node. example: 100 * **[chainIds](https://github.com/slockit/in3/blob/master/src/types/types.ts#L273)** :`string`[] - the list of supported chains example: 0x1 * **[deposit](https://github.com/slockit/in3/blob/master/src/types/types.ts#L278)** :`number` - the deposit of the node in wei example: 12350000 * **[index](https://github.com/slockit/in3/blob/master/src/types/types.ts#L258)** :`number` *(optional)* - the index within the contract example: 13 * **[props](https://github.com/slockit/in3/blob/master/src/types/types.ts#L288)** :`number` *(optional)* - the properties of the node. example: 3 * **[url](https://github.com/slockit/in3/blob/master/src/types/types.ts#L268)** :`string` - the endpoint to post to example: https://in3.slock.it ## Type IN3NodeWeight a local weight of a n3-node. (This is used internally to weight the requests) Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L293) * **[avgResponseTime](https://github.com/slockit/in3/blob/master/src/types/types.ts#L308)** :`number` *(optional)* - average time of a response in ms example: 240 * **[blacklistedUntil](https://github.com/slockit/in3/blob/master/src/types/types.ts#L322)** :`number` *(optional)* - blacklisted because of failed requests until the timestamp example: 1529074639623 * **[lastRequest](https://github.com/slockit/in3/blob/master/src/types/types.ts#L317)** :`number` *(optional)* - timestamp of the last request in ms example: 1529074632623 * **[pricePerRequest](https://github.com/slockit/in3/blob/master/src/types/types.ts#L312)** :`number` *(optional)* - last price * **[responseCount](https://github.com/slockit/in3/blob/master/src/types/types.ts#L303)** :`number` *(optional)* - number of uses. example: 147 * **[weight](https://github.com/slockit/in3/blob/master/src/types/types.ts#L298)** :`number` *(optional)* - factor the weight this noe (default 1.0) example: 0.5 ## Type IN3RPCConfig the configuration for the rpc-handler Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L327) * **[chains](https://github.com/slockit/in3/blob/master/src/types/types.ts#L420)** *(optional)* - a definition of the Handler per chain * **[db](https://github.com/slockit/in3/blob/master/src/types/types.ts#L340)** *(optional)* * **[database](https://github.com/slockit/in3/blob/master/src/types/types.ts#L360)** :`string` *(optional)* - name of the database * **[host](https://github.com/slockit/in3/blob/master/src/types/types.ts#L352)** :`string` *(optional)* - db-host (default = localhost) * **[password](https://github.com/slockit/in3/blob/master/src/types/types.ts#L348)** :`string` *(optional)* - password for db-access * **[port](https://github.com/slockit/in3/blob/master/src/types/types.ts#L356)** :`number` *(optional)* - the database port * **[user](https://github.com/slockit/in3/blob/master/src/types/types.ts#L344)** :`string` *(optional)* - username for the db * **[defaultChain](https://github.com/slockit/in3/blob/master/src/types/types.ts#L335)** :`string` *(optional)* - the default chainId in case the request does not contain one. * **[id](https://github.com/slockit/in3/blob/master/src/types/types.ts#L331)** :`string` *(optional)* - a identifier used in logfiles as also for reading the config from the database * **[logging](https://github.com/slockit/in3/blob/master/src/types/types.ts#L387)** *(optional)* - logger config * **[colors](https://github.com/slockit/in3/blob/master/src/types/types.ts#L399)** :`boolean` *(optional)* - if true colors will be used * **[file](https://github.com/slockit/in3/blob/master/src/types/types.ts#L391)** :`string` *(optional)* - the path to the logile * **[host](https://github.com/slockit/in3/blob/master/src/types/types.ts#L415)** :`string` *(optional)* - the host for custom logging * **[level](https://github.com/slockit/in3/blob/master/src/types/types.ts#L395)** :`string` *(optional)* - Loglevel * **[name](https://github.com/slockit/in3/blob/master/src/types/types.ts#L403)** :`string` *(optional)* - the name of the provider * **[port](https://github.com/slockit/in3/blob/master/src/types/types.ts#L411)** :`number` *(optional)* - the port for custom logging * **[type](https://github.com/slockit/in3/blob/master/src/types/types.ts#L407)** :`string` *(optional)* - the module of the provider * **[port](https://github.com/slockit/in3/blob/master/src/types/types.ts#L339)** :`number` *(optional)* - the listeneing port for the server * **[profile](https://github.com/slockit/in3/blob/master/src/types/types.ts#L362)** *(optional)* * **[comment](https://github.com/slockit/in3/blob/master/src/types/types.ts#L378)** :`string` *(optional)* - comments for the node * **[icon](https://github.com/slockit/in3/blob/master/src/types/types.ts#L366)** :`string` *(optional)* - url to a icon or logo of company offering this node * **[name](https://github.com/slockit/in3/blob/master/src/types/types.ts#L374)** :`string` *(optional)* - name of the node or company * **[noStats](https://github.com/slockit/in3/blob/master/src/types/types.ts#L382)** :`boolean` *(optional)* - if active the stats will not be shown (default:false) * **[url](https://github.com/slockit/in3/blob/master/src/types/types.ts#L370)** :`string` *(optional)* - url of the website of the company ## Type IN3RPCHandlerConfig the configuration for the rpc-handler Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L427) * **[autoRegistry](https://github.com/slockit/in3/blob/master/src/types/types.ts#L488)** *(optional)* * **[capabilities](https://github.com/slockit/in3/blob/master/src/types/types.ts#L505)** *(optional)* * **[multiChain](https://github.com/slockit/in3/blob/master/src/types/types.ts#L513)** :`boolean` *(optional)* - if true, this node is able to deliver multiple chains * **[proof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L509)** :`boolean` *(optional)* - if true, this node is able to deliver proofs * **[capacity](https://github.com/slockit/in3/blob/master/src/types/types.ts#L500)** :`number` *(optional)* - max number of parallel requests * **[deposit](https://github.com/slockit/in3/blob/master/src/types/types.ts#L496)** :`number` - the deposit you want ot store * **[depositUnit](https://github.com/slockit/in3/blob/master/src/types/types.ts#L504)** :`'ether'`|`'finney'`|`'szabo'`|`'wei'` *(optional)* - unit of the deposit value * **[url](https://github.com/slockit/in3/blob/master/src/types/types.ts#L492)** :`string` - the public url to reach this node * **[clientKeys](https://github.com/slockit/in3/blob/master/src/types/types.ts#L447)** :`string` *(optional)* - a comma sepearted list of client keys to use for simulating clients for the watchdog * **[freeScore](https://github.com/slockit/in3/blob/master/src/types/types.ts#L455)** :`number` *(optional)* - the score for requests without a valid signature * **[handler](https://github.com/slockit/in3/blob/master/src/types/types.ts#L431)** :`'eth'`|`'ipfs'`|`'btc'` *(optional)* - the impl used to handle the calls * **[ipfsUrl](https://github.com/slockit/in3/blob/master/src/types/types.ts#L435)** :`string` *(optional)* - the url of the ipfs-client * **[minBlockHeight](https://github.com/slockit/in3/blob/master/src/types/types.ts#L459)** :`number` *(optional)* - the minimal blockheight in order to sign * **[persistentFile](https://github.com/slockit/in3/blob/master/src/types/types.ts#L463)** :`string` *(optional)* - the filename of the file keeping track of the last handled blocknumber * **[privateKey](https://github.com/slockit/in3/blob/master/src/types/types.ts#L475)** :`string` - the private key used to sign blockhashes. this can be either a 0x-prefixed string with the raw private key or the path to a key-file. * **[privateKeyPassphrase](https://github.com/slockit/in3/blob/master/src/types/types.ts#L479)** :`string` *(optional)* - the password used to decrpyt the private key * **[registry](https://github.com/slockit/in3/blob/master/src/types/types.ts#L483)** :`string` - the address of the server registry used in order to update the nodeList * **[registryRPC](https://github.com/slockit/in3/blob/master/src/types/types.ts#L487)** :`string` *(optional)* - the url of the client in case the registry is not on the same chain. * **[rpcUrl](https://github.com/slockit/in3/blob/master/src/types/types.ts#L443)** :`string` - the url of the client * **[startBlock](https://github.com/slockit/in3/blob/master/src/types/types.ts#L467)** :`number` *(optional)* - blocknumber to start watching the registry * **[timeout](https://github.com/slockit/in3/blob/master/src/types/types.ts#L439)** :`number` *(optional)* - number of milliseconds to wait before a request gets a timeout * **[watchInterval](https://github.com/slockit/in3/blob/master/src/types/types.ts#L471)** :`number` *(optional)* - the number of seconds of the interval for checking for new events * **[watchdogInterval](https://github.com/slockit/in3/blob/master/src/types/types.ts#L451)** :`number` *(optional)* - average time between sending requests to the same node. 0 turns it off (default) ## Type IN3RPCRequestConfig additional config for a IN3 RPC-Request Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L520) * **[chainId](https://github.com/slockit/in3/blob/master/src/types/types.ts#L525)** :`string` - the requested chainId example: 0x1 * **[clientSignature](https://github.com/slockit/in3/blob/master/src/types/types.ts#L564)** :`any` *(optional)* - the signature of the client * **[finality](https://github.com/slockit/in3/blob/master/src/types/types.ts#L555)** :`number` *(optional)* - if given the server will deliver the blockheaders of the following blocks until at least the number in percent of the validators is reached. * **[includeCode](https://github.com/slockit/in3/blob/master/src/types/types.ts#L530)** :`boolean` *(optional)* - if true, the request should include the codes of all accounts. otherwise only the the codeHash is returned. In this case the client may ask by calling eth_getCode() afterwards example: true * **[latestBlock](https://github.com/slockit/in3/blob/master/src/types/types.ts#L539)** :`number` *(optional)* - if specified, the blocknumber *latest* will be replaced by blockNumber- specified value example: 6 * **[signatures](https://github.com/slockit/in3/blob/master/src/types/types.ts#L569)** :`string`[] *(optional)* - a list of addresses requested to sign the blockhash example: 0x6C1a01C2aB554930A937B0a2E8105fB47946c679 * **[useBinary](https://github.com/slockit/in3/blob/master/src/types/types.ts#L547)** :`boolean` *(optional)* - if true binary-data will be used. * **[useFullProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L551)** :`boolean` *(optional)* - if true all data in the response will be proven, which leads to a higher payload. * **[useRef](https://github.com/slockit/in3/blob/master/src/types/types.ts#L543)** :`boolean` *(optional)* - if true binary-data (starting with a 0x) will be refered if occuring again. * **[verification](https://github.com/slockit/in3/blob/master/src/types/types.ts#L560)** :`'never'`|`'proof'`|`'proofWithSignature'` *(optional)* - defines the kind of proof the client is asking for example: proof * **[verifiedHashes](https://github.com/slockit/in3/blob/master/src/types/types.ts#L534)** :`string`[] *(optional)* - if the client sends a array of blockhashes the server will not deliver any signatures or blockheaders for these blocks, but only return a string with a number. ## Type IN3ResponseConfig additional data returned from a IN3 Server Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L574) * **[currentBlock](https://github.com/slockit/in3/blob/master/src/types/types.ts#L592)** :`number` *(optional)* - the current blocknumber. example: 320126478 * **[lastNodeList](https://github.com/slockit/in3/blob/master/src/types/types.ts#L583)** :`number` *(optional)* - the blocknumber for the last block updating the nodelist. If the client has a smaller blocknumber he should update the nodeList. example: 326478 * **[lastValidatorChange](https://github.com/slockit/in3/blob/master/src/types/types.ts#L587)** :`number` *(optional)* - the blocknumber of gthe last change of the validatorList * **[proof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L578)** :[`Proof`](#type-proof) *(optional)* - the Proof-data ## Type LogData LogData as part of the TransactionReceipt Source: [modules/eth/serialize.ts](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L99) * **[address](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L106)** :`string` * **[blockHash](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L104)** :`string` * **[blockNumber](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L105)** :`string` * **[data](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L107)** :`string` * **[logIndex](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L101)** :`string` * **[removed](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L100)** :`boolean` * **[topics](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L108)** :`string`[] * **[transactionHash](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L103)** :`string` * **[transactionIndex](https://github.com/slockit/in3/blob/master/src/modules/eth/serialize.ts#L102)** :`string` ## Type LogProof a Object holding proofs for event logs. The key is the blockNumber as hex Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L597) ## Type Proof the Proof-data as part of the in3-section Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L640) * **[accounts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L685)** *(optional)* - a map of addresses and their AccountProof * **[block](https://github.com/slockit/in3/blob/master/src/types/types.ts#L650)** :`string` *(optional)* - the serialized blockheader as hex, required in most proofs example: 0x72804cfa0179d648ccbe6a65b01a6463a8f1ebb14f3aff6b19cb91acf2b8ec1ffee98c0437b4ac839d8a2ece1b18166da704b86d8f42c92bbda6463a8f1ebb14f3aff6b19cb91acf2b8ec1ffee98c0437b4ac839d8a2ece1b18166da704b * **[finalityBlocks](https://github.com/slockit/in3/blob/master/src/types/types.ts#L655)** :`any`[] *(optional)* - the serialized blockheader as hex, required in case of finality asked example: 0x72804cfa0179d648ccbe6a65b01a6463a8f1ebb14f3aff6b19cb91acf2b8ec1ffee98c0437b4ac839d8a2ece1b18166da704b86d8f42c92bbda6463a8f1ebb14f3aff6b19cb91acf2b8ec1ffee98c0437b4ac839d8a2ece1b18166da704b * **[logProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L681)** :[`LogProof`](#type-logproof) *(optional)* - the Log Proof in case of a Log-Request * **[merkleProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L669)** :`string`[] *(optional)* - the serialized merle-noodes beginning with the root-node * **[merkleProofPrev](https://github.com/slockit/in3/blob/master/src/types/types.ts#L673)** :`string`[] *(optional)* - the serialized merkle-noodes beginning with the root-node of the previous entry (only for full proof of receipts) * **[signatures](https://github.com/slockit/in3/blob/master/src/types/types.ts#L696)** :[`Signature`](#type-signature)[] *(optional)* - requested signatures * **[transactions](https://github.com/slockit/in3/blob/master/src/types/types.ts#L660)** :`any`[] *(optional)* - the list of transactions of the block example: * **[txIndex](https://github.com/slockit/in3/blob/master/src/types/types.ts#L692)** :`number` *(optional)* - the transactionIndex within the block example: 4 * **[txProof](https://github.com/slockit/in3/blob/master/src/types/types.ts#L677)** :`string`[] *(optional)* - the serialized merkle-nodes beginning with the root-node in order to prrof the transactionIndex * **[type](https://github.com/slockit/in3/blob/master/src/types/types.ts#L645)** :`'transactionProof'`|`'receiptProof'`|`'blockProof'`|`'accountProof'`|`'callProof'`|`'logProof'` - the type of the proof example: accountProof * **[uncles](https://github.com/slockit/in3/blob/master/src/types/types.ts#L665)** :`any`[] *(optional)* - the list of uncle-headers of the block example: ## Type RPCRequest a JSONRPC-Request with N3-Extension Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L701) * **[id](https://github.com/slockit/in3/blob/master/src/types/types.ts#L715)** :`number`|`string` *(optional)* - the identifier of the request example: 2 * **[in3](https://github.com/slockit/in3/blob/master/src/types/types.ts#L724)** :[`IN3RPCRequestConfig`](#type-in3rpcrequestconfig) *(optional)* - the IN3-Config * **[jsonrpc](https://github.com/slockit/in3/blob/master/src/types/types.ts#L705)** :`'2.0'` - the version * **[method](https://github.com/slockit/in3/blob/master/src/types/types.ts#L710)** :`string` - the method to call example: eth_getBalance * **[params](https://github.com/slockit/in3/blob/master/src/types/types.ts#L720)** :`any`[] *(optional)* - the params example: 0xe36179e2286ef405e929C90ad3E70E649B22a945,latest ## Type RPCResponse a JSONRPC-Responset with N3-Extension Source: [types/types.ts](https://github.com/slockit/in3/blob/master/src/types/types.ts#L729) * **[error](https://github.com/slockit/in3/blob/master/src/types/types.ts#L742)** :`string