essential-eth 0.5.1 → 0.5.4-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/classes/Contract.d.ts +3 -2
- package/lib/cjs/classes/Contract.js +3 -2
- package/lib/cjs/classes/utils/encode-decode-transaction.d.ts +1 -0
- package/lib/cjs/classes/utils/encode-decode-transaction.js +4 -4
- package/lib/cjs/classes/utils/fetchers.d.ts +1 -1
- package/lib/cjs/index.d.ts +2 -1
- package/lib/cjs/index.js +3 -1
- package/lib/cjs/logger/package-version.d.ts +1 -1
- package/lib/cjs/logger/package-version.js +1 -1
- package/lib/cjs/providers/BaseProvider.d.ts +261 -0
- package/lib/cjs/providers/BaseProvider.js +340 -0
- package/lib/cjs/providers/FallthroughProvider.d.ts +25 -0
- package/lib/cjs/providers/FallthroughProvider.js +65 -0
- package/lib/cjs/providers/JsonRpcProvider.d.ts +4 -200
- package/lib/cjs/providers/JsonRpcProvider.js +11 -263
- package/lib/cjs/providers/test/rpc-urls.d.ts +1 -0
- package/lib/cjs/providers/test/rpc-urls.js +1 -0
- package/lib/cjs/providers/utils/chains-info.d.ts +4 -0
- package/lib/cjs/providers/utils/chains-info.js +12 -0
- package/lib/cjs/shared/tiny-big/tiny-big.d.ts +2 -2
- package/lib/cjs/shared/tiny-big/tiny-big.js +2 -2
- package/lib/cjs/utils/bytes.d.ts +82 -1
- package/lib/cjs/utils/bytes.js +83 -3
- package/lib/cjs/utils/solidity-keccak256.js +2 -2
- package/lib/esm/classes/Contract.js +1 -1
- package/lib/esm/classes/utils/encode-decode-transaction.d.ts +1 -0
- package/lib/esm/classes/utils/encode-decode-transaction.js +2 -2
- package/lib/esm/classes/utils/fetchers.d.ts +1 -1
- package/lib/esm/index.d.ts +2 -1
- package/lib/esm/index.js +2 -1
- package/lib/esm/logger/package-version.d.ts +1 -1
- package/lib/esm/logger/package-version.js +1 -1
- package/lib/esm/providers/BaseProvider.d.ts +17 -0
- package/lib/esm/providers/BaseProvider.js +88 -0
- package/lib/esm/providers/FallthroughProvider.d.ts +12 -0
- package/lib/esm/providers/FallthroughProvider.js +41 -0
- package/lib/esm/providers/JsonRpcProvider.d.ts +4 -12
- package/lib/esm/providers/JsonRpcProvider.js +8 -69
- package/lib/esm/providers/test/rpc-urls.d.ts +1 -0
- package/lib/esm/providers/test/rpc-urls.js +1 -0
- package/lib/esm/providers/utils/chains-info.d.ts +4 -0
- package/lib/esm/providers/utils/chains-info.js +12 -0
- package/lib/esm/utils/bytes.d.ts +1 -1
- package/lib/esm/utils/bytes.js +2 -2
- package/lib/esm/utils/solidity-keccak256.js +2 -2
- package/package.json +11 -9
- package/readme.md +32 -5
|
@@ -18,8 +18,9 @@ export declare class BaseContract {
|
|
|
18
18
|
*/
|
|
19
19
|
export declare function defineReadOnly<T>(object: T, name: string, value: any): void;
|
|
20
20
|
/**
|
|
21
|
+
* @alpha
|
|
21
22
|
* Only accepts ABIS in JSON format. This allows for stronger typing and assurances of data-types
|
|
22
|
-
*
|
|
23
|
+
* * Only read-only function calls currently supported.
|
|
23
24
|
* @example
|
|
24
25
|
* ```typescript
|
|
25
26
|
* import { Contract, JsonRpcProvider } from 'essential-eth';
|
|
@@ -65,7 +66,7 @@ export declare function defineReadOnly<T>(object: T, name: string, value: any):
|
|
|
65
66
|
*/
|
|
66
67
|
export declare class Contract extends BaseContract {
|
|
67
68
|
/**
|
|
68
|
-
* The
|
|
69
|
+
* The function names on any given contract. Like "isClaimed", "merkleRoot", etc.
|
|
69
70
|
*/
|
|
70
71
|
readonly [key: string]: any;
|
|
71
72
|
}
|
|
@@ -51,7 +51,7 @@ class BaseContract {
|
|
|
51
51
|
? estimateGas(data)
|
|
52
52
|
: null;
|
|
53
53
|
const req = () => __awaiter(this, void 0, void 0, function* () {
|
|
54
|
-
return yield (0, fetchers_1.post)(this._provider.
|
|
54
|
+
return yield (0, fetchers_1.post)(this._provider.selectRpcUrl(), (0, fetchers_1.buildRPCPostBody)('eth_call', [
|
|
55
55
|
Object.assign({ to: this._address.toLowerCase(), data }, (decimalGas
|
|
56
56
|
? { gas: `0x${decimalGas.toString(16)}` }
|
|
57
57
|
: {})),
|
|
@@ -78,8 +78,9 @@ function defineReadOnly(object, name, value) {
|
|
|
78
78
|
}
|
|
79
79
|
exports.defineReadOnly = defineReadOnly;
|
|
80
80
|
/**
|
|
81
|
+
* @alpha
|
|
81
82
|
* Only accepts ABIS in JSON format. This allows for stronger typing and assurances of data-types
|
|
82
|
-
*
|
|
83
|
+
* * Only read-only function calls currently supported.
|
|
83
84
|
* @example
|
|
84
85
|
* ```typescript
|
|
85
86
|
* import { Contract, JsonRpcProvider } from 'essential-eth';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { JSONABIArgument } from '../../types/Contract.types';
|
|
2
|
+
export declare const hexFalse: string;
|
|
2
3
|
export declare function encodeData(jsonABIArgument: JSONABIArgument, args: any[]): string;
|
|
3
4
|
export declare function decodeRPCResponse(jsonABIArgument: JSONABIArgument, nodeResponse: string): string | number | boolean | import("../..").TinyBig | (string | number | boolean | import("../..").TinyBig)[];
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.decodeRPCResponse = exports.encodeData = void 0;
|
|
3
|
+
exports.decodeRPCResponse = exports.encodeData = exports.hexFalse = void 0;
|
|
4
4
|
const sha3_1 = require("sha3");
|
|
5
5
|
const __1 = require("../..");
|
|
6
6
|
const hex_to_decimal_1 = require("./hex-to-decimal");
|
|
7
|
-
|
|
8
|
-
const
|
|
7
|
+
exports.hexFalse = '0'.repeat(64);
|
|
8
|
+
const hexTrue = '0'.repeat(63) + '1';
|
|
9
9
|
function expandType(type) {
|
|
10
10
|
// https://docs.soliditylang.org/en/v0.8.7/types.html#integers
|
|
11
11
|
if (type === 'uint[]') {
|
|
@@ -50,7 +50,7 @@ function encodeData(jsonABIArgument, args) {
|
|
|
50
50
|
let rawArg = arg;
|
|
51
51
|
switch (inputType) {
|
|
52
52
|
case 'bool':
|
|
53
|
-
return arg ? hexTrue : hexFalse;
|
|
53
|
+
return arg ? hexTrue : exports.hexFalse;
|
|
54
54
|
case 'address':
|
|
55
55
|
// remove leading "0x"
|
|
56
56
|
rawArg = arg.replace(/^0x/g, '').toLowerCase();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare function post(url: string, body: Record<string, unknown>): Promise<any>;
|
|
2
|
-
declare type RPCMethodName = 'eth_getBlockByNumber' | 'eth_call' | 'eth_chainId' | 'eth_gasPrice' | 'eth_getBalance' | 'eth_getTransactionByHash';
|
|
2
|
+
declare type RPCMethodName = 'eth_getBlockByNumber' | 'eth_getBlockByHash' | 'eth_call' | 'eth_chainId' | 'eth_gasPrice' | 'eth_getBalance' | 'eth_getTransactionByHash' | 'eth_getTransactionCount';
|
|
3
3
|
export declare function buildRPCPostBody(method: RPCMethodName, params: unknown[]): {
|
|
4
4
|
jsonrpc: string;
|
|
5
5
|
id: number;
|
package/lib/cjs/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Contract } from './classes/Contract';
|
|
2
|
+
import { FallthroughProvider } from './providers/FallthroughProvider';
|
|
2
3
|
import { JsonRpcProvider, jsonRpcProvider } from './providers/JsonRpcProvider';
|
|
3
4
|
import { tinyBig, TinyBig } from './shared/tiny-big/tiny-big';
|
|
4
5
|
import { BlockResponse } from './types/Block.types';
|
|
@@ -13,4 +14,4 @@ import { toChecksumAddress } from './utils/to-checksum-address';
|
|
|
13
14
|
import { weiToEther } from './utils/wei-to-ether';
|
|
14
15
|
export * from './utils/bytes';
|
|
15
16
|
export * from './utils/solidity-keccak256';
|
|
16
|
-
export { etherToWei, etherToGwei, isAddress, jsonRpcProvider, JsonRpcProvider, tinyBig, toChecksumAddress, weiToEther, gweiToEther, Contract, TinyBig, BlockResponse, ContractTypes, JSONABI, JSONABIArgument, Network, TransactionResponse, };
|
|
17
|
+
export { etherToWei, etherToGwei, isAddress, jsonRpcProvider, JsonRpcProvider, FallthroughProvider, tinyBig, toChecksumAddress, weiToEther, gweiToEther, Contract, TinyBig, BlockResponse, ContractTypes, JSONABI, JSONABIArgument, Network, TransactionResponse, };
|
package/lib/cjs/index.js
CHANGED
|
@@ -14,9 +14,11 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.TinyBig = exports.Contract = exports.gweiToEther = exports.weiToEther = exports.toChecksumAddress = exports.tinyBig = exports.JsonRpcProvider = exports.jsonRpcProvider = exports.isAddress = exports.etherToGwei = exports.etherToWei = void 0;
|
|
17
|
+
exports.TinyBig = exports.Contract = exports.gweiToEther = exports.weiToEther = exports.toChecksumAddress = exports.tinyBig = exports.FallthroughProvider = exports.JsonRpcProvider = exports.jsonRpcProvider = exports.isAddress = exports.etherToGwei = exports.etherToWei = void 0;
|
|
18
18
|
const Contract_1 = require("./classes/Contract");
|
|
19
19
|
Object.defineProperty(exports, "Contract", { enumerable: true, get: function () { return Contract_1.Contract; } });
|
|
20
|
+
const FallthroughProvider_1 = require("./providers/FallthroughProvider");
|
|
21
|
+
Object.defineProperty(exports, "FallthroughProvider", { enumerable: true, get: function () { return FallthroughProvider_1.FallthroughProvider; } });
|
|
20
22
|
const JsonRpcProvider_1 = require("./providers/JsonRpcProvider");
|
|
21
23
|
Object.defineProperty(exports, "JsonRpcProvider", { enumerable: true, get: function () { return JsonRpcProvider_1.JsonRpcProvider; } });
|
|
22
24
|
Object.defineProperty(exports, "jsonRpcProvider", { enumerable: true, get: function () { return JsonRpcProvider_1.jsonRpcProvider; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const version = "0.5.
|
|
1
|
+
export declare const version = "0.5.4-alpha.0";
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
import { TinyBig } from '../shared/tiny-big/tiny-big';
|
|
2
|
+
import { BlockResponse, BlockTag } from '../types/Block.types';
|
|
3
|
+
import { Network } from '../types/Network.types';
|
|
4
|
+
import { TransactionResponse } from '../types/Transaction.types';
|
|
5
|
+
export declare abstract class BaseProvider {
|
|
6
|
+
/**
|
|
7
|
+
* ignore
|
|
8
|
+
*/
|
|
9
|
+
abstract selectRpcUrl(): string;
|
|
10
|
+
abstract post(body: Record<string, unknown>): Promise<any>;
|
|
11
|
+
/**
|
|
12
|
+
* @ignore
|
|
13
|
+
*/
|
|
14
|
+
readonly _rpcUrls: string[];
|
|
15
|
+
/**
|
|
16
|
+
* @ignore
|
|
17
|
+
*/
|
|
18
|
+
protected _post: (body: Record<string, unknown>) => Promise<any>;
|
|
19
|
+
/**
|
|
20
|
+
* @param rpcUrl The URL to your Eth node. Consider POKT or Infura
|
|
21
|
+
*/
|
|
22
|
+
constructor(rpcUrls: string[]);
|
|
23
|
+
/**
|
|
24
|
+
* Returns the network this provider is connected to
|
|
25
|
+
*/
|
|
26
|
+
getNetwork(): Promise<Network>;
|
|
27
|
+
/**
|
|
28
|
+
* * Similar to [`ethers.provider.getTransaction`](https://docs.ethers.io/v5/api/providers/provider/#Provider-getTransaction), some information not included
|
|
29
|
+
*
|
|
30
|
+
* @returns information about one transaction
|
|
31
|
+
* @example
|
|
32
|
+
* ```js
|
|
33
|
+
* await provider.getTransaction('0x9014ae6ef92464338355a79e5150e542ff9a83e2323318b21f40d6a3e65b4789');
|
|
34
|
+
* {
|
|
35
|
+
* accessList: [],
|
|
36
|
+
* blockHash: '0x876810a013dbcd140f6fd6048c1dc33abbb901f1f96b394c2fa63aef3cb40b5d',
|
|
37
|
+
* blockNumber: 14578286,
|
|
38
|
+
* chainId: 1,
|
|
39
|
+
* from: '0xdfD9dE5f6FA60BD70636c0900752E93a6144AEd4',
|
|
40
|
+
* gas: Big {
|
|
41
|
+
* s: 1,
|
|
42
|
+
* e: 5,
|
|
43
|
+
* c: [ 1, 1, 2, 1, 6, 3 ],
|
|
44
|
+
* constructor: <ref *1> [Function: Big] {
|
|
45
|
+
* DP: 20,
|
|
46
|
+
* RM: 1,
|
|
47
|
+
* NE: -7,
|
|
48
|
+
* PE: 21,
|
|
49
|
+
* strict: false,
|
|
50
|
+
* roundDown: 0,
|
|
51
|
+
* roundHalfUp: 1,
|
|
52
|
+
* roundHalfEven: 2,
|
|
53
|
+
* roundUp: 3,
|
|
54
|
+
* Big: [Circular *1],
|
|
55
|
+
* default: [Circular *1]
|
|
56
|
+
* }
|
|
57
|
+
* },
|
|
58
|
+
* gasPrice: Big {
|
|
59
|
+
* s: 1,
|
|
60
|
+
* e: 10,
|
|
61
|
+
* c: [
|
|
62
|
+
* 4, 8, 5, 9, 2,
|
|
63
|
+
* 4, 2, 6, 8, 5,
|
|
64
|
+
* 8
|
|
65
|
+
* ],
|
|
66
|
+
* constructor: <ref *1> [Function: Big] {
|
|
67
|
+
* DP: 20,
|
|
68
|
+
* RM: 1,
|
|
69
|
+
* NE: -7,
|
|
70
|
+
* PE: 21,
|
|
71
|
+
* strict: false,
|
|
72
|
+
* roundDown: 0,
|
|
73
|
+
* roundHalfUp: 1,
|
|
74
|
+
* roundHalfEven: 2,
|
|
75
|
+
* roundUp: 3,
|
|
76
|
+
* Big: [Circular *1],
|
|
77
|
+
* default: [Circular *1]
|
|
78
|
+
* }
|
|
79
|
+
* },
|
|
80
|
+
* hash: '0x9014ae6ef92464338355a79e5150e542ff9a83e2323318b21f40d6a3e65b4789',
|
|
81
|
+
* input: '0x83259f170000000000000000000000000000000000000000000000000000000000000080000000000000000000000000dfd9de5f6fa60bd70636c0900752e93a6144aed400000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000009e99ad11a214fd016b19dc3648678c5944859ae292b21c24ca94f857836c4596f1950c82dd0c23dd621af4763edc2f66466e63c5df9de0c1107b1cd16bf460fe93e43fd308e3444bc79c3d88a4cb961dc8367ab6ad048867afc76d193bca99cf3a068864ed4a7df1dbf1d4c52238eced3e5e05644b4040fc2b3ccb8557b0e99fff6131305a0ea2b8061b90bd418db5bbdd2e92129f52d93f90531465e309c4caec5b85285822b6196398d36f16f511811b61bbda6461e80e29210cd303118bdcee8df6fa0505ffbe8642094fd2ba4dd458496fe3b459ac880bbf71877c713e969ccf5ed7efab8a84ebc07e3939901371ca427e1192e455a8f35a6a1d7ad09e1475dd1758b36fa631dab5d70e99316b23c4c43094188d360cd9c3457355904e07c00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000162074a7047f',
|
|
82
|
+
* maxFeePerGas: Big {
|
|
83
|
+
* s: 1,
|
|
84
|
+
* e: 10,
|
|
85
|
+
* c: [
|
|
86
|
+
* 6, 7, 6, 8, 1,
|
|
87
|
+
* 2, 6, 1, 6, 1,
|
|
88
|
+
* 8
|
|
89
|
+
* ],
|
|
90
|
+
* constructor: <ref *1> [Function: Big] {
|
|
91
|
+
* DP: 20,
|
|
92
|
+
* RM: 1,
|
|
93
|
+
* NE: -7,
|
|
94
|
+
* PE: 21,
|
|
95
|
+
* strict: false,
|
|
96
|
+
* roundDown: 0,
|
|
97
|
+
* roundHalfUp: 1,
|
|
98
|
+
* roundHalfEven: 2,
|
|
99
|
+
* roundUp: 3,
|
|
100
|
+
* Big: [Circular *1],
|
|
101
|
+
* default: [Circular *1]
|
|
102
|
+
* }
|
|
103
|
+
* },
|
|
104
|
+
* maxPriorityFeePerGas: Big {
|
|
105
|
+
* s: 1,
|
|
106
|
+
* e: 9,
|
|
107
|
+
* c: [ 1, 5 ],
|
|
108
|
+
* constructor: <ref *1> [Function: Big] {
|
|
109
|
+
* DP: 20,
|
|
110
|
+
* RM: 1,
|
|
111
|
+
* NE: -7,
|
|
112
|
+
* PE: 21,
|
|
113
|
+
* strict: false,
|
|
114
|
+
* roundDown: 0,
|
|
115
|
+
* roundHalfUp: 1,
|
|
116
|
+
* roundHalfEven: 2,
|
|
117
|
+
* roundUp: 3,
|
|
118
|
+
* Big: [Circular *1],
|
|
119
|
+
* default: [Circular *1]
|
|
120
|
+
* }
|
|
121
|
+
* },
|
|
122
|
+
* nonce: 129,
|
|
123
|
+
* r: '0x59a7c15b12c18cd68d6c440963d959bff3e73831ffc938e75ecad07f7ee43fbc',
|
|
124
|
+
* s: '0x1ebaf05f0d9273b16c2a7748b150a79d22533a8cd74552611cbe620fee3dcf1c',
|
|
125
|
+
* to: '0x39B72d136ba3e4ceF35F48CD09587ffaB754DD8B',
|
|
126
|
+
* transactionIndex: 29,
|
|
127
|
+
* type: 2,
|
|
128
|
+
* v: 0,
|
|
129
|
+
* value: Big {
|
|
130
|
+
* s: 1,
|
|
131
|
+
* e: 0,
|
|
132
|
+
* c: [ 0 ],
|
|
133
|
+
* constructor: <ref *1> [Function: Big] {
|
|
134
|
+
* DP: 20,
|
|
135
|
+
* RM: 1,
|
|
136
|
+
* NE: -7,
|
|
137
|
+
* PE: 21,
|
|
138
|
+
* strict: false,
|
|
139
|
+
* roundDown: 0,
|
|
140
|
+
* roundHalfUp: 1,
|
|
141
|
+
* roundHalfEven: 2,
|
|
142
|
+
* roundUp: 3,
|
|
143
|
+
* Big: [Circular *1],
|
|
144
|
+
* default: [Circular *1]
|
|
145
|
+
* }
|
|
146
|
+
* },
|
|
147
|
+
* confirmations: 1210
|
|
148
|
+
* }
|
|
149
|
+
* ```
|
|
150
|
+
*/
|
|
151
|
+
getTransaction(transactionHash: string): Promise<TransactionResponse>;
|
|
152
|
+
/**
|
|
153
|
+
* Returns the transaction count from genesis up to specified blockTag
|
|
154
|
+
*
|
|
155
|
+
* * Same as `ethers.provider.getTransactionCount`
|
|
156
|
+
* * Same as `web3.eth.getTransactionCount`
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* ```js
|
|
160
|
+
* const address = '0x71660c4005ba85c37ccec55d0c4493e66fe775d3';
|
|
161
|
+
* await provider
|
|
162
|
+
* .getTransactionCount(address, 'latest')
|
|
163
|
+
* // 1060000
|
|
164
|
+
* ```
|
|
165
|
+
*
|
|
166
|
+
* @example
|
|
167
|
+
* ```js
|
|
168
|
+
* await provider
|
|
169
|
+
* .getTransactionCount(address)
|
|
170
|
+
* // 1053312
|
|
171
|
+
* ```
|
|
172
|
+
*
|
|
173
|
+
* @example
|
|
174
|
+
* ```js
|
|
175
|
+
* await provider
|
|
176
|
+
* .getTransactionCount(address, 14649390)
|
|
177
|
+
* // 1053312
|
|
178
|
+
* ```
|
|
179
|
+
*/
|
|
180
|
+
getTransactionCount(address: string, blockTag?: BlockTag): Promise<number>;
|
|
181
|
+
/**
|
|
182
|
+
* Gets information about a certain block.
|
|
183
|
+
* Same as `web3.eth.getBlock` and `ethers.providers.getBlock`
|
|
184
|
+
*
|
|
185
|
+
* @param timeFrame The number, hash, or text-based description ('latest', 'earliest', or 'pending') of the block to collect information on.
|
|
186
|
+
*
|
|
187
|
+
* @param returnTransactionObjects Whether to also return data about the transactions on the block.
|
|
188
|
+
*
|
|
189
|
+
* @returns A BlockResponse object with information about the specified block
|
|
190
|
+
*
|
|
191
|
+
* @example
|
|
192
|
+
* ```js
|
|
193
|
+
* await provider.getBlock(14645431);
|
|
194
|
+
* ```
|
|
195
|
+
*
|
|
196
|
+
* @example
|
|
197
|
+
* ```js
|
|
198
|
+
* await provider.getBlock('0x3e5cea9c2be7e0ab4b0aa04c24dafddc37571db2d2d345caf7f88b3366ece0cf');
|
|
199
|
+
* ```
|
|
200
|
+
*
|
|
201
|
+
* @example
|
|
202
|
+
* ```js
|
|
203
|
+
* await provider.getBlock('latest');
|
|
204
|
+
* {
|
|
205
|
+
* number: 4232826,
|
|
206
|
+
* hash: '0x93211a1cd17e154b183565ec685254a03f844a8e34824a46ce1bdd6753dcb669',
|
|
207
|
+
* parentHash: '0x1b32bfcba1bb2a57f56e166a3bb06875a1978992999dfc8828397b4c1526f472',
|
|
208
|
+
* sha3Uncles: '0x0fb399c67bb5a071ec8a22549223215ab76b7d4009941c9c37aa3c3936010463',
|
|
209
|
+
* logsBloom: '0x00000000000000000000101000000000020000000000000000000000000000000000400000010000000000000000000000000000010000000008800000000800000000200000000000000000000000000000000000000000000002000000000000000000000000000040000000000040000000000000000000000000000000000000000000000001000000000004000000000010000000000000000020000000000000000200100020000000000000000080000000000080001000000000000000000001040000000000000000008000000020010100000000200000100000000000000000000000002000000080000000020400000000002000200000000000',
|
|
210
|
+
* transactionsRoot: '0xc43b3f13e1fe810e34d3a26ffe465b72c7063a5c70a02de2c78e91e4d10bd9fb',
|
|
211
|
+
* stateRoot: '0x04d7bc816537ea7ef3a16e76c9879d29f34f99d4154273c2e98e012a31bad745',
|
|
212
|
+
* receiptsRoot: '0x89c6f781ceac0bd49c4d9aa9115df4a5d4dd0e0220ff7668012f15bc04222c6b',
|
|
213
|
+
* miner: '0x31fe561eb2c628cD32Ec52573D7c4b7E4C278Bfa',
|
|
214
|
+
* difficulty: '1300907486001755331049',
|
|
215
|
+
* totalDifficulty: '5989929395521171616186006183',
|
|
216
|
+
* extraData: '0xce018c495249532d62613031656132',
|
|
217
|
+
* size: 5416,
|
|
218
|
+
* gasLimit: 6800000,
|
|
219
|
+
* gasUsed: 202955,
|
|
220
|
+
* timestamp: 1649884910,
|
|
221
|
+
* transactions: [
|
|
222
|
+
* '0x6b34a59c7b9aead24fa6dad782f8a3ad84ed4a23ee09bcbf0bcf880840fbbe20',
|
|
223
|
+
* '0x9a3851ca24d5336c6a0d48aba2c4b4769d7a672c9b01729c5eb9924efd1b19a7',
|
|
224
|
+
* '0xc3ed3d198b62f2f3427ebfa3bbd0fcada4e3c0c189e4464e7eeceb403c75981e'
|
|
225
|
+
* ],
|
|
226
|
+
* uncles: [
|
|
227
|
+
* '0x0c567c054e98153f10d651fbbc018891c1dd9d62a9ffd998e87678803e95b6ed',
|
|
228
|
+
* '0xb7d69389dbfb057c6fcb4bc0582d46a2ba01170703f0dadf8cd1462b83e88753',
|
|
229
|
+
* '0xd5f74ccd0ad4c58b3161e8c2c507c264231e5f28925061b809c02e5e4bb6db28'
|
|
230
|
+
* ],
|
|
231
|
+
* minimumGasPrice: '0x387ee40',
|
|
232
|
+
* bitcoinMergedMiningHeader: '0x04000020e8567ed3d2480e15a1dd1b4335e4732ae343c037e4fd03000000000000000000ed10a8340d163d3e813bdd430f902f4e5a56828dc62313b2e23797c0be6b8516eb3e576297d8091735884f42',
|
|
233
|
+
* bitcoinMergedMiningCoinbaseTransaction: '0x0000000000000140e910128fda7bac502dc5e0573bbaf12de8e2524f70c22f7bd160dedcb19a2521002b6a2952534b424c4f434b3ae493303f597fa368c0ccc4f8aceabf1c315bb7c9a07605c073a89f260040967aace6a7d9',
|
|
234
|
+
* bitcoinMergedMiningMerkleProof: '0xdf63a3d7eb6fbcfb301311faa46e9a15b0408bb1a04e284daee86c273c1dfd65ede23f3170f806e9e0f4cef7ba6b56aa37470d9c23f96ec8e43d08b58645919c5e10bcb892897a731f8f9ce79c72dc0e390896bcd6c67bb38c0bdb72982b6cf05519968d76673572c3f3ef3a08b0ddb464863f1788f7cdbaad3fe44a8a8af576d430ac282fe28852c16df198ca96cc5f71a50695912efe1a836e8442be69e31b6d6f973da2818bce9a3a1c2d9be0671aee9a7776e398d6a03d1e178e20d84646004a3d03c0501334e629d9146aa6a01316dcbaa289df6e6c5e3090cadaddff22699cfc7ff09512fc0d65c5062f17c98561ce3c9510de210d9d654cf99f8d756ff37c9fa21e7122ee8cadb923341690845d572921425f2bd7e044558b7e07983ac4df28928028b0c13c3624dc7a965af8091b0cecc845bf7da5308c03b2c97d607f6706a599f802025894435f1d76ea4e67cc2fc4e1559f1206f559a24633de0f',
|
|
235
|
+
* hashForMergedMining: '0xe493303f597fa368c0ccc4f8aceabf1c315bb7c9a07605c073a89f260040967a',
|
|
236
|
+
* paidFees: '0xc0744dcb7a0',
|
|
237
|
+
* cumulativeDifficulty: '0x1190930db285269e582'
|
|
238
|
+
* }
|
|
239
|
+
*```
|
|
240
|
+
*/
|
|
241
|
+
getBlock(timeFrame?: BlockTag, returnTransactionObjects?: boolean): Promise<BlockResponse>;
|
|
242
|
+
/**
|
|
243
|
+
* Returns the current gas price in wei as TinyBig
|
|
244
|
+
* Same as `ethers.provider.getGasPrice`
|
|
245
|
+
*/
|
|
246
|
+
getGasPrice(): Promise<TinyBig>;
|
|
247
|
+
/**
|
|
248
|
+
* Returns the balance of the account in wei as TinyBig
|
|
249
|
+
* * Same as [`ethers.provider.getBalance`](https://docs.ethers.io/v5/api/providers/provider/#Provider-getBalance)
|
|
250
|
+
* * Same as `web3.eth.getBalance`
|
|
251
|
+
*
|
|
252
|
+
* @example
|
|
253
|
+
* ```js
|
|
254
|
+
* await provider
|
|
255
|
+
* .getBalance('0x7cB57B5A97eAbe94205C07890BE4c1aD31E486A8')
|
|
256
|
+
* .then((balance) => console.log(balance.toString()));
|
|
257
|
+
* // "28798127851528138"
|
|
258
|
+
* ```
|
|
259
|
+
*/
|
|
260
|
+
getBalance(address: string, blockTag?: BlockTag): Promise<TinyBig>;
|
|
261
|
+
}
|