koilib 6.0.0 → 7.0.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.
Files changed (45) hide show
  1. package/README.md +39 -40
  2. package/dist/koinos.js +1649 -83
  3. package/dist/koinos.min.js +1 -1
  4. package/lib/Contract.d.ts +12 -24
  5. package/lib/Contract.js +11 -23
  6. package/lib/Contract.js.map +1 -1
  7. package/lib/Provider.d.ts +257 -12
  8. package/lib/Provider.js +262 -9
  9. package/lib/Provider.js.map +1 -1
  10. package/lib/Signer.d.ts +75 -6
  11. package/lib/Signer.js +87 -6
  12. package/lib/Signer.js.map +1 -1
  13. package/lib/Transaction.d.ts +4 -3
  14. package/lib/Transaction.js +13 -10
  15. package/lib/Transaction.js.map +1 -1
  16. package/lib/browser/Contract.d.ts +12 -24
  17. package/lib/browser/Contract.js +11 -23
  18. package/lib/browser/Contract.js.map +1 -1
  19. package/lib/browser/Provider.d.ts +257 -12
  20. package/lib/browser/Provider.js +262 -9
  21. package/lib/browser/Provider.js.map +1 -1
  22. package/lib/browser/Signer.d.ts +75 -6
  23. package/lib/browser/Signer.js +87 -6
  24. package/lib/browser/Signer.js.map +1 -1
  25. package/lib/browser/Transaction.d.ts +4 -3
  26. package/lib/browser/Transaction.js +13 -10
  27. package/lib/browser/Transaction.js.map +1 -1
  28. package/lib/browser/interface.d.ts +33 -0
  29. package/lib/browser/utils.d.ts +39 -0
  30. package/lib/browser/utils.js +1276 -27
  31. package/lib/browser/utils.js.map +1 -1
  32. package/lib/interface.d.ts +33 -0
  33. package/lib/utils.d.ts +39 -0
  34. package/lib/utils.js +1276 -27
  35. package/lib/utils.js.map +1 -1
  36. package/package.json +1 -1
  37. package/src/Contract.ts +12 -24
  38. package/src/Provider.ts +271 -20
  39. package/src/Signer.ts +126 -7
  40. package/src/Transaction.ts +17 -16
  41. package/src/interface.ts +38 -0
  42. package/src/utils.ts +1283 -23
  43. package/lib/browser/jsonDescriptors/token-proto.json +0 -234
  44. package/lib/jsonDescriptors/token-proto.json +0 -234
  45. package/src/jsonDescriptors/token-proto.json +0 -234
package/lib/Contract.d.ts CHANGED
@@ -11,46 +11,34 @@ import { TransactionJsonWait, Abi, CallContractOptions, DecodedOperationJson, Op
11
11
  *
12
12
  * ```ts
13
13
  * const { Contract, Provider, Signer, utils } = require("koilib");
14
- * const rpcNodes = ["http://api.koinos.io:8080"];
14
+ * const rpcNodes = ["http://api.koinos.io"];
15
15
  * const privateKey = "f186a5de49797bfd52dc42505c33d75a46822ed5b60046e09d7c336242e20200";
16
16
  * const provider = new Provider(rpcNodes);
17
17
  * const signer = new Signer({ privateKey, provider });
18
18
  * const koinContract = new Contract({
19
- * id: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
19
+ * id: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
20
20
  * abi: utils.tokenAbi,
21
21
  * provider,
22
22
  * signer,
23
23
  * });
24
24
  * const koin = koinContract.functions;
25
25
  *
26
- * // optional: preformat argument/return
27
- * koinContract.abi.methods.balanceOf.preformat_argument = (owner) =>
28
- * ({ owner });
29
- * koinContract.abi.methods.balanceOf.preformat_return = (res) =>
30
- * utils.formatUnits(res.value, 8);
31
- * koinContract.abi.methods.transfer.preformat_argument = (arg) => ({
32
- * from: signer.getAddress(),
33
- * to: arg.to,
34
- * value: utils.parseUnits(arg.value, 8),
35
- * });
36
- *
37
26
  * async funtion main() {
38
27
  * // Get balance
39
- * const { result } = await koin.balanceOf("12fN2CQnuJM8cMnWZ1hPtM4knjLME8E4PD");
28
+ * const { result } = await koin.balanceOf({
29
+ * owner: "12fN2CQnuJM8cMnWZ1hPtM4knjLME8E4PD",
30
+ * });
40
31
  * console.log(result)
41
32
  *
42
33
  * // Transfer
43
34
  * const { transaction, receipt } = await koin.transfer({
35
+ * from: signer.getAddress(),
44
36
  * to: "172AB1FgCsYrRAW5cwQ8KjadgxofvgPFd6",
45
- * value: "10.0001",
37
+ * value: "1000010000", // 10.00010000
46
38
  * });
47
39
  * console.log(`Transaction id ${transaction.id} submitted. Receipt:`);
48
40
  * console.log(receipt);
49
41
  *
50
- * if (receipt.logs) {
51
- * console.log(`Transfer failed. Logs: ${receipt.logs.join(",")}`);
52
- * }
53
- *
54
42
  * // wait to be mined
55
43
  * const blockNumber = await transaction.wait();
56
44
  * console.log(`Transaction mined. Block number: ${blockNumber}`);
@@ -79,7 +67,7 @@ export declare class Contract {
79
67
  * ```ts
80
68
  * await koinContract.functions.transfer({
81
69
  * from: "1Gvqdo9if6v6tFomEuTuMWP1D7H7U9yksb",
82
- * to: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
70
+ * to: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
83
71
  * value: "1",
84
72
  * },{
85
73
  * chainId: "EiB-hw5ABo-EXy6fGDd1Iq3gbAenxQ4Qe60pRbEVMVrR9A==",
@@ -171,7 +159,7 @@ export declare class Contract {
171
159
  * @example
172
160
  * ```ts
173
161
  * const privateKey = "f186a5de49797bfd52dc42505c33d75a46822ed5b60046e09d7c336242e20200";
174
- * const provider = new Provider(["http://api.koinos.io:8080"]);
162
+ * const provider = new Provider(["http://api.koinos.io"]);
175
163
  * const signer = new Signer({ privateKey, provider });
176
164
  * const bytecode = new Uint8Array([1, 2, 3, 4]);
177
165
  * const contract = new Contract({ signer, provider, bytecode });
@@ -270,12 +258,12 @@ export declare class Contract {
270
258
  * @example
271
259
  * ```ts
272
260
  * const contract = new Contract({
273
- * id: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
261
+ * id: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
274
262
  * abi: utils.tokenAbi,
275
263
  * });
276
264
  * const event = {
277
265
  * sequence: 1,
278
- * source: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
266
+ * source: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
279
267
  * name: "koinos.contracts.token.mint_event",
280
268
  * data: "ChkAxjdqxuwS-B50lPQ-lqhRBA3bf2b2ooAHENrw3Ek=",
281
269
  * impacted: ["1K55BRw87nd64a7aiRarp6DLGRzYvoJo8J"],
@@ -284,7 +272,7 @@ export declare class Contract {
284
272
  * console.log(eventDecoded);
285
273
  * // {
286
274
  * // sequence: 1,
287
- * // source: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
275
+ * // source: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
288
276
  * // name: "koinos.contracts.token.mint_event",
289
277
  * // data: "ChkAxjdqxuwS-B50lPQ-lqhRBA3bf2b2ooAHENrw3Ek=",
290
278
  * // impacted: ["1K55BRw87nd64a7aiRarp6DLGRzYvoJo8J"],
package/lib/Contract.js CHANGED
@@ -13,46 +13,34 @@ const Transaction_1 = require("./Transaction");
13
13
  *
14
14
  * ```ts
15
15
  * const { Contract, Provider, Signer, utils } = require("koilib");
16
- * const rpcNodes = ["http://api.koinos.io:8080"];
16
+ * const rpcNodes = ["http://api.koinos.io"];
17
17
  * const privateKey = "f186a5de49797bfd52dc42505c33d75a46822ed5b60046e09d7c336242e20200";
18
18
  * const provider = new Provider(rpcNodes);
19
19
  * const signer = new Signer({ privateKey, provider });
20
20
  * const koinContract = new Contract({
21
- * id: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
21
+ * id: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
22
22
  * abi: utils.tokenAbi,
23
23
  * provider,
24
24
  * signer,
25
25
  * });
26
26
  * const koin = koinContract.functions;
27
27
  *
28
- * // optional: preformat argument/return
29
- * koinContract.abi.methods.balanceOf.preformat_argument = (owner) =>
30
- * ({ owner });
31
- * koinContract.abi.methods.balanceOf.preformat_return = (res) =>
32
- * utils.formatUnits(res.value, 8);
33
- * koinContract.abi.methods.transfer.preformat_argument = (arg) => ({
34
- * from: signer.getAddress(),
35
- * to: arg.to,
36
- * value: utils.parseUnits(arg.value, 8),
37
- * });
38
- *
39
28
  * async funtion main() {
40
29
  * // Get balance
41
- * const { result } = await koin.balanceOf("12fN2CQnuJM8cMnWZ1hPtM4knjLME8E4PD");
30
+ * const { result } = await koin.balanceOf({
31
+ * owner: "12fN2CQnuJM8cMnWZ1hPtM4knjLME8E4PD",
32
+ * });
42
33
  * console.log(result)
43
34
  *
44
35
  * // Transfer
45
36
  * const { transaction, receipt } = await koin.transfer({
37
+ * from: signer.getAddress(),
46
38
  * to: "172AB1FgCsYrRAW5cwQ8KjadgxofvgPFd6",
47
- * value: "10.0001",
39
+ * value: "1000010000", // 10.00010000
48
40
  * });
49
41
  * console.log(`Transaction id ${transaction.id} submitted. Receipt:`);
50
42
  * console.log(receipt);
51
43
  *
52
- * if (receipt.logs) {
53
- * console.log(`Transfer failed. Logs: ${receipt.logs.join(",")}`);
54
- * }
55
- *
56
44
  * // wait to be mined
57
45
  * const blockNumber = await transaction.wait();
58
46
  * console.log(`Transaction mined. Block number: ${blockNumber}`);
@@ -222,7 +210,7 @@ class Contract {
222
210
  * @example
223
211
  * ```ts
224
212
  * const privateKey = "f186a5de49797bfd52dc42505c33d75a46822ed5b60046e09d7c336242e20200";
225
- * const provider = new Provider(["http://api.koinos.io:8080"]);
213
+ * const provider = new Provider(["http://api.koinos.io"]);
226
214
  * const signer = new Signer({ privateKey, provider });
227
215
  * const bytecode = new Uint8Array([1, 2, 3, 4]);
228
216
  * const contract = new Contract({ signer, provider, bytecode });
@@ -413,12 +401,12 @@ class Contract {
413
401
  * @example
414
402
  * ```ts
415
403
  * const contract = new Contract({
416
- * id: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
404
+ * id: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
417
405
  * abi: utils.tokenAbi,
418
406
  * });
419
407
  * const event = {
420
408
  * sequence: 1,
421
- * source: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
409
+ * source: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
422
410
  * name: "koinos.contracts.token.mint_event",
423
411
  * data: "ChkAxjdqxuwS-B50lPQ-lqhRBA3bf2b2ooAHENrw3Ek=",
424
412
  * impacted: ["1K55BRw87nd64a7aiRarp6DLGRzYvoJo8J"],
@@ -427,7 +415,7 @@ class Contract {
427
415
  * console.log(eventDecoded);
428
416
  * // {
429
417
  * // sequence: 1,
430
- * // source: "19JntSm8pSNETT9aHTwAUHC5RMoaSmgZPJ",
418
+ * // source: "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
431
419
  * // name: "koinos.contracts.token.mint_event",
432
420
  * // data: "ChkAxjdqxuwS-B50lPQ-lqhRBA3bf2b2ooAHENrw3Ek=",
433
421
  * // impacted: ["1K55BRw87nd64a7aiRarp6DLGRzYvoJo8J"],
@@ -1 +1 @@
1
- {"version":3,"file":"Contract.js","sourceRoot":"","sources":["../src/Contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Contract.js","sourceRoot":"","sources":["../src/Contract.ts"],"names":[],"mappings":"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"}
package/lib/Provider.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { BlockJson, TransactionJson, CallContractOperationJson, TransactionReceipt, TransactionJsonWait, BlockTopology } from "./interface";
1
+ import { BlockJson, TransactionJson, CallContractOperationJson, TransactionReceipt, TransactionJsonWait, BlockTopology, GetBlockOptions } from "./interface";
2
2
  import { Serializer } from "./Serializer";
3
3
  /**
4
4
  * Class to connect with the RPC node
@@ -40,8 +40,8 @@ export declare class Provider {
40
40
  * @example
41
41
  * ```ts
42
42
  * const provider = new Provider([
43
- * "http://45.56.104.152:8080",
44
- * "http://159.203.119.0:8080"
43
+ * "https://api.koinos.io",
44
+ * "https://api.koinosblocks.com"
45
45
  * ]);
46
46
  * ```
47
47
  */
@@ -51,6 +51,151 @@ export declare class Provider {
51
51
  * @param method - jsonrpc method
52
52
  * @param params - jsonrpc params
53
53
  * @returns Result of jsonrpc response
54
+ *
55
+ * To know the full list of possible calls check the services
56
+ * listed in the [rpc folder of koinos-proto](https://github.com/koinos/koinos-proto/tree/master/koinos/rpc)
57
+ * and the corresponding proto files.
58
+ *
59
+ * @example
60
+ * Let's take "account_history" as an example. Go to [account_history_rpc.proto](https://github.com/koinos/koinos-proto/blob/master/koinos/rpc/account_history/account_history_rpc.proto).
61
+ * The `account_history_request` message has 1 single method: `get_account_history`.
62
+ *
63
+ * Now search the message `get_account_history_request`. This message is telling us
64
+ * the expected fields in the body of the call:
65
+ *
66
+ * ```ts
67
+ * message get_account_history_request {
68
+ * bytes address = 1 [(btype) = ADDRESS];
69
+ * optional uint64 seq_num = 2 [jstype = JS_STRING];
70
+ * uint64 limit = 3 [jstype = JS_STRING];
71
+ * bool ascending = 4;
72
+ * bool irreversible = 5;
73
+ * }
74
+ * ```
75
+ *
76
+ * And search the message `get_account_history_response` to see the format of the response:
77
+ * ```ts
78
+ * message get_account_history_response {
79
+ * repeated account_history_entry values = 1;
80
+ * }
81
+ * ```
82
+ *
83
+ * With this information we can now call the RPC node. It should be done in this way:
84
+ * ```ts
85
+ * const provider = new Provider(["https://api.koinos.io"]);
86
+ * const result = await provider.call(
87
+ * "account_history.get_account_history",
88
+ * {
89
+ * address: "1z629tURV9KAK6Q5yqFDozwSHeWshxXQe",
90
+ * limit: 2,
91
+ * ascending: true,
92
+ * irreversible: true,
93
+ * }
94
+ * );
95
+ * console.log(result);
96
+ *
97
+ * // {
98
+ * // "values": [
99
+ * // {
100
+ * // "trx": {
101
+ * // "transaction": {
102
+ * // "id": "0x12205b566701d6afcf1f5e45b5e9f5443def75728c219f7c1e897ed0ce1ef491223c",
103
+ * // "header": {
104
+ * // "chain_id": "EiBZK_GGVP0H_fXVAM3j6EAuz3-B-l3ejxRSewi7qIBfSA==",
105
+ * // "rc_limit": "961224079493",
106
+ * // "nonce": "KAE=",
107
+ * // "operation_merkle_root": "EiA32K_GrZ2VsvWSrM4QZhyEmvm8ID1P6aE4vP00RnY9hg==",
108
+ * // "payer": "1HyzBsd7nmyUp8dyCJqJZoQRUnzifVzP18"
109
+ * // },
110
+ * // "operations": [
111
+ * // {
112
+ * // "call_contract": {
113
+ * // "contract_id": "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
114
+ * // "entry_point": 670398154,
115
+ * // "args": "ChkAukkLSXtxbRNRTBtDrdAwDI7I6Ot9GxFHEhkACsvmdCIUj89udQ1R5iLPLXzqJoHdliWrGIDC1y8="
116
+ * // }
117
+ * // }
118
+ * // ],
119
+ * // "signatures": [
120
+ * // "ICBdTcH6jzhDpl9ZB0ZqNcvSy8wiOokHFtkQ66Lc04K1LhXd77tqaQdMhJOAfYotg5npVmfSgyO9CwgLJmtMIjg="
121
+ * // ]
122
+ * // },
123
+ * // "receipt": {
124
+ * // "id": "0x12205b566701d6afcf1f5e45b5e9f5443def75728c219f7c1e897ed0ce1ef491223c",
125
+ * // "payer": "1HyzBsd7nmyUp8dyCJqJZoQRUnzifVzP18",
126
+ * // "max_payer_rc": "961224079493",
127
+ * // "rc_limit": "961224079493",
128
+ * // "rc_used": "3009833",
129
+ * // "disk_storage_used": "112",
130
+ * // "network_bandwidth_used": "313",
131
+ * // "compute_bandwidth_used": "561439",
132
+ * // "events": [
133
+ * // {
134
+ * // "sequence": 2,
135
+ * // "source": "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
136
+ * // "name": "koinos.contracts.token.transfer_event",
137
+ * // "data": "ChkAukkLSXtxbRNRTBtDrdAwDI7I6Ot9GxFHEhkACsvmdCIUj89udQ1R5iLPLXzqJoHdliWrGIDC1y8=",
138
+ * // "impacted": [
139
+ * // "1z629tURV9KAK6Q5yqFDozwSHeWshxXQe",
140
+ * // "1HyzBsd7nmyUp8dyCJqJZoQRUnzifVzP18"
141
+ * // ]
142
+ * // }
143
+ * // ]
144
+ * // }
145
+ * // }
146
+ * // },
147
+ * // {
148
+ * // "seq_num": "1",
149
+ * // "trx": {
150
+ * // "transaction": {
151
+ * // "id": "0x1220a08183a5237e57a08e1ae539017c4253ddfbc23f9b7b6f5e263669aacd3fed47",
152
+ * // "header": {
153
+ * // "chain_id": "EiBZK_GGVP0H_fXVAM3j6EAuz3-B-l3ejxRSewi7qIBfSA==",
154
+ * // "rc_limit": "100000000",
155
+ * // "nonce": "KAE=",
156
+ * // "operation_merkle_root": "EiBAmutXQlPyAGctNBNhKEUUEUtwj2KQeNrdFBqpN9RWDg==",
157
+ * // "payer": "1z629tURV9KAK6Q5yqFDozwSHeWshxXQe"
158
+ * // },
159
+ * // "operations": [
160
+ * // {
161
+ * // "call_contract": {
162
+ * // "contract_id": "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
163
+ * // "entry_point": 670398154,
164
+ * // "args": "ChkACsvmdCIUj89udQ1R5iLPLXzqJoHdliWrEhkAukkLSXtxbRNRTBtDrdAwDI7I6Ot9GxFHGJBO"
165
+ * // }
166
+ * // }
167
+ * // ],
168
+ * // "signatures": [
169
+ * // "IF5FBloKjEfnqlGJRL_aPy4L36On-Q8XXzpAQagK_X-xZ6DgioBhZOhKEnhKyhaoROAgGwRuy6BsdRqya8fCHU8="
170
+ * // ]
171
+ * // },
172
+ * // "receipt": {
173
+ * // "id": "0x1220a08183a5237e57a08e1ae539017c4253ddfbc23f9b7b6f5e263669aacd3fed47",
174
+ * // "payer": "1z629tURV9KAK6Q5yqFDozwSHeWshxXQe",
175
+ * // "max_payer_rc": "100000000",
176
+ * // "rc_limit": "100000000",
177
+ * // "rc_used": "2657385",
178
+ * // "disk_storage_used": "35",
179
+ * // "network_bandwidth_used": "309",
180
+ * // "compute_bandwidth_used": "566375",
181
+ * // "events": [
182
+ * // {
183
+ * // "sequence": 2,
184
+ * // "source": "15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL",
185
+ * // "name": "koinos.contracts.token.transfer_event",
186
+ * // "data": "ChkACsvmdCIUj89udQ1R5iLPLXzqJoHdliWrEhkAukkLSXtxbRNRTBtDrdAwDI7I6Ot9GxFHGJBO",
187
+ * // "impacted": [
188
+ * // "1HyzBsd7nmyUp8dyCJqJZoQRUnzifVzP18",
189
+ * // "1z629tURV9KAK6Q5yqFDozwSHeWshxXQe"
190
+ * // ]
191
+ * // }
192
+ * // ]
193
+ * // }
194
+ * // }
195
+ * // }
196
+ * // ]
197
+ * // }
198
+ * ```
54
199
  */
55
200
  call<T = unknown>(method: string, params: unknown): Promise<T>;
56
201
  /**
@@ -83,10 +228,7 @@ export declare class Provider {
83
228
  containing_blocks: string[];
84
229
  }[];
85
230
  }>;
86
- getBlocksById(blockIds: string[], opts?: {
87
- returnBlock: boolean;
88
- returnReceipt: boolean;
89
- }): Promise<{
231
+ getBlocksById(blockIds: string[], opts?: GetBlockOptions): Promise<{
90
232
  block_items: {
91
233
  block_id: string;
92
234
  block_height: string;
@@ -95,6 +237,24 @@ export declare class Provider {
95
237
  }>;
96
238
  /**
97
239
  * Function to get info from the head block in the blockchain
240
+ *
241
+ * @example
242
+ * ```ts
243
+ * const provider = new Provider("https://api.koinos.io");
244
+ * const headInfo = await provider.getHeadInfo();
245
+ * console.log(headInfo);
246
+ *
247
+ * // {
248
+ * // head_topology: {
249
+ * // id: '0x12209f7c9b4d695eefd6f87465d490654e495fe25a3d7d2e1eb80658acdc49bad962',
250
+ * // height: '14957951',
251
+ * // previous: '0x1220bc3b94e3a2adc3ca09d61a4418df1f4acfa78a69686f592877c194ea50642cd2'
252
+ * // },
253
+ * // last_irreversible_block: '14957891',
254
+ * // head_state_merkle_root: 'EiCriqXooNUXBG23EUKLz2qq3h9ZAC8w1W7w185YQ9MzIA==',
255
+ * // head_block_time: '1713874497290'
256
+ * // }
257
+ * ```
98
258
  */
99
259
  getHeadInfo(): Promise<{
100
260
  head_block_time: string;
@@ -114,10 +274,7 @@ export declare class Provider {
114
274
  * This ID must be from a greater block height. By default it
115
275
  * gets the ID from the block head.
116
276
  */
117
- getBlocks(height: number, numBlocks?: number, idRef?: string, opts?: {
118
- returnBlock: boolean;
119
- returnReceipt: boolean;
120
- }): Promise<{
277
+ getBlocks(height: number, numBlocks?: number, idRef?: string, opts?: GetBlockOptions): Promise<{
121
278
  block_id: string;
122
279
  block_height: string;
123
280
  block: BlockJson;
@@ -127,8 +284,74 @@ export declare class Provider {
127
284
  }[]>;
128
285
  /**
129
286
  * Function to get a block by its height
287
+ *
288
+ * @example
289
+ * ```ts
290
+ * const provider = new Provider("https://api.koinos.io");
291
+ * const block = await provider.getBlock(14951433);
292
+ * console.log(block);
293
+ *
294
+ * // {
295
+ * // block_id: '0x1220d5e848eb0f69c590c24cbea4391f89a1055f540bc265c60f6b13c4cc0055ec36',
296
+ * // block_height: '14951433',
297
+ * // block: {
298
+ * // id: '0x1220d5e848eb0f69c590c24cbea4391f89a1055f540bc265c60f6b13c4cc0055ec36',
299
+ * // header: {
300
+ * // previous: '0x1220a3c4cbc57ccee4d02b4a1849a9e504122ee93b904deff711d926def2ea2cc878',
301
+ * // height: '14951433',
302
+ * // timestamp: '1713854518430',
303
+ * // previous_state_merkle_root: 'EiCPcnYosMvEBYeCcJrdIJJG0mp4TJ796UGxa0NY6EvzbQ==',
304
+ * // transaction_merkle_root: 'EiBGPKwttckB7c_BafwnHHmHTBa9S1vKBKauj_yLVNb0tg==',
305
+ * // signer: '1EPZaqve43k9Jq5mNeT2ydCjUiytTTU4U',
306
+ * // approved_proposals: [Array]
307
+ * // },
308
+ * // transactions: [ [Object] ],
309
+ * // signature: 'ClEDnHKX1F-pQVbFhmz2qnrwGfP-RbEfTdRFUrvmhmqMeoejtmm2Q0yIPbD5kN5xpIEb
310
+ * // 8vVwsIJ3lTrgFz2E8w0Paxkgv1E_gMaYNq5UUqtHnl0SIhIgAAbuPHmfMKh9R0Yi5y1D
311
+ * // TpjjdN0DYKaIUseXzLiLg_QaQR9jRinZf0g_qo2_4wOx9gDBunIij0r5CycHrNMsuT_V
312
+ * // _UvrJOYuwj7aUCA-qnF2tCBQoNQZ3ww7WvKHrMdChxxy'
313
+ * // },
314
+ * // receipt: {
315
+ * // id: '0x1220d5e848eb0f69c590c24cbea4391f89a1055f540bc265c60f6b13c4cc0055ec36',
316
+ * // height: '14951433',
317
+ * // disk_storage_used: '35',
318
+ * // network_bandwidth_used: '760',
319
+ * // compute_bandwidth_used: '5253506',
320
+ * // events: [ [Object], [Object] ],
321
+ * // transaction_receipts: [ [Object] ],
322
+ * // disk_storage_charged: '35',
323
+ * // network_bandwidth_charged: '760',
324
+ * // compute_bandwidth_charged: '5180427',
325
+ * // state_delta_entries: [
326
+ * // [Object], [Object],
327
+ * // [Object], [Object],
328
+ * // [Object], [Object],
329
+ * // [Object], [Object],
330
+ * // [Object], [Object]
331
+ * // ]
332
+ * // }
333
+ * // }
334
+ * ```
335
+ *
336
+ * Use the options to get less information. This helps to reduce
337
+ * the bandwidth of the call.
338
+ *
339
+ * @example
340
+ * ```ts
341
+ * const provider = new Provider("https://api.koinos.io");
342
+ * const block = await provider.getBlock(14951433, {
343
+ * returnReceipt: false,
344
+ * returnBlock: false
345
+ * });
346
+ * console.log(block);
347
+ *
348
+ * // {
349
+ * // block_id: '0x1220d5e848eb0f69c590c24cbea4391f89a1055f540bc265c60f6b13c4cc0055ec36',
350
+ * // block_height: '14951433'
351
+ * // }
352
+ * ```
130
353
  */
131
- getBlock(height: number): Promise<{
354
+ getBlock(height: number, opts?: GetBlockOptions): Promise<{
132
355
  block_id: string;
133
356
  block_height: string;
134
357
  block: BlockJson;
@@ -224,6 +447,28 @@ export declare class Provider {
224
447
  caller: string;
225
448
  caller_privilege: number;
226
449
  }): Promise<T>;
450
+ /**
451
+ * Function to get the contract metadata of a specific contract.
452
+ * @param contractId contract ID
453
+ *
454
+ * @example
455
+ * ```ts
456
+ * const provider = new Provider("https://api.koinos.io");
457
+ * const result = await provider.invokeGetContractMetadata("15DJN4a8SgrbGhhGksSBASiSYjGnMU8dGL");
458
+ * console.log(result);
459
+ *
460
+ * // {
461
+ * // value: {
462
+ * // hash: '0x1220c57e3573189868970a3a1662a667c366b15015d9b7900ffed415c5e944036e88',
463
+ * // system: true,
464
+ * // authorizes_call_contract: true,
465
+ * // authorizes_transaction_application: true,
466
+ * // authorizes_upload_contract: true
467
+ * // }
468
+ * // }
469
+ *
470
+ * ```
471
+ */
227
472
  invokeGetContractMetadata(contractId: string): Promise<Record<string, unknown>>;
228
473
  }
229
474
  export default Provider;