algosdk 1.11.1 → 1.13.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 (148) hide show
  1. package/README.md +17 -6
  2. package/dist/browser/algosdk.min.js +1 -1
  3. package/dist/browser/algosdk.min.js.map +1 -1
  4. package/dist/cjs/src/abi/abi_type.js +693 -0
  5. package/dist/cjs/src/abi/abi_type.js.map +1 -0
  6. package/dist/cjs/src/abi/contract.js +27 -0
  7. package/dist/cjs/src/abi/contract.js.map +1 -0
  8. package/dist/cjs/src/abi/index.js +19 -0
  9. package/dist/cjs/src/abi/index.js.map +1 -0
  10. package/dist/cjs/src/abi/interface.js +23 -0
  11. package/dist/cjs/src/abi/interface.js.map +1 -0
  12. package/dist/cjs/src/abi/method.js +114 -0
  13. package/dist/cjs/src/abi/method.js.map +1 -0
  14. package/dist/cjs/src/abi/reference.js +25 -0
  15. package/dist/cjs/src/abi/reference.js.map +1 -0
  16. package/dist/cjs/src/abi/transaction.js +52 -0
  17. package/dist/cjs/src/abi/transaction.js.map +1 -0
  18. package/dist/cjs/src/client/baseHTTPClient.js +3 -0
  19. package/dist/cjs/src/client/baseHTTPClient.js.map +1 -0
  20. package/dist/cjs/src/client/client.js +165 -104
  21. package/dist/cjs/src/client/client.js.map +1 -1
  22. package/dist/cjs/src/client/urlTokenBaseHTTPClient.js +138 -0
  23. package/dist/cjs/src/client/urlTokenBaseHTTPClient.js.map +1 -0
  24. package/dist/cjs/src/client/v2/algod/algod.js +262 -9
  25. package/dist/cjs/src/client/v2/algod/algod.js.map +1 -1
  26. package/dist/cjs/src/client/v2/algod/models/types.js +13 -33
  27. package/dist/cjs/src/client/v2/algod/models/types.js.map +1 -1
  28. package/dist/cjs/src/client/v2/indexer/indexer.js +168 -3
  29. package/dist/cjs/src/client/v2/indexer/indexer.js.map +1 -1
  30. package/dist/cjs/src/client/v2/indexer/lookupApplicationLogs.js +48 -0
  31. package/dist/cjs/src/client/v2/indexer/lookupApplicationLogs.js.map +1 -0
  32. package/dist/cjs/src/client/v2/indexer/lookupAssetBalances.js +98 -6
  33. package/dist/cjs/src/client/v2/indexer/lookupAssetBalances.js.map +1 -1
  34. package/dist/cjs/src/client/v2/serviceClient.js +17 -8
  35. package/dist/cjs/src/client/v2/serviceClient.js.map +1 -1
  36. package/dist/cjs/src/composer.js +439 -0
  37. package/dist/cjs/src/composer.js.map +1 -0
  38. package/dist/cjs/src/dryrun.js +103 -0
  39. package/dist/cjs/src/dryrun.js.map +1 -0
  40. package/dist/cjs/src/encoding/address.js +14 -1
  41. package/dist/cjs/src/encoding/address.js.map +1 -1
  42. package/dist/cjs/src/encoding/bigint.js +38 -0
  43. package/dist/cjs/src/encoding/bigint.js.map +1 -0
  44. package/dist/cjs/src/logic/langspec.json +392 -77
  45. package/dist/cjs/src/logicsig.js +2 -2
  46. package/dist/cjs/src/logicsig.js.map +1 -1
  47. package/dist/cjs/src/main.js +18 -91
  48. package/dist/cjs/src/main.js.map +1 -1
  49. package/dist/cjs/src/makeTxn.js +29 -1
  50. package/dist/cjs/src/makeTxn.js.map +1 -1
  51. package/dist/cjs/src/multisig.js +77 -2
  52. package/dist/cjs/src/multisig.js.map +1 -1
  53. package/dist/cjs/src/signer.js +66 -0
  54. package/dist/cjs/src/signer.js.map +1 -0
  55. package/dist/cjs/src/transaction.js +50 -10
  56. package/dist/cjs/src/transaction.js.map +1 -1
  57. package/dist/cjs/src/types/intDecoding.js +0 -2
  58. package/dist/cjs/src/types/intDecoding.js.map +1 -1
  59. package/dist/cjs/src/types/transactions/base.js +0 -1
  60. package/dist/cjs/src/types/transactions/base.js.map +1 -1
  61. package/dist/cjs/src/wait.js +53 -0
  62. package/dist/cjs/src/wait.js.map +1 -0
  63. package/dist/esm/src/abi/abi_type.js +680 -0
  64. package/dist/esm/src/abi/abi_type.js.map +1 -0
  65. package/dist/esm/src/abi/contract.js +23 -0
  66. package/dist/esm/src/abi/contract.js.map +1 -0
  67. package/dist/esm/src/abi/index.js +7 -0
  68. package/dist/esm/src/abi/index.js.map +1 -0
  69. package/dist/esm/src/abi/interface.js +19 -0
  70. package/dist/esm/src/abi/interface.js.map +1 -0
  71. package/dist/esm/src/abi/method.js +110 -0
  72. package/dist/esm/src/abi/method.js.map +1 -0
  73. package/dist/esm/src/abi/reference.js +21 -0
  74. package/dist/esm/src/abi/reference.js.map +1 -0
  75. package/dist/esm/src/abi/transaction.js +47 -0
  76. package/dist/esm/src/abi/transaction.js.map +1 -0
  77. package/dist/esm/src/client/baseHTTPClient.js +2 -0
  78. package/dist/esm/src/client/baseHTTPClient.js.map +1 -0
  79. package/dist/esm/src/client/client.js +165 -101
  80. package/dist/esm/src/client/client.js.map +1 -1
  81. package/dist/esm/src/client/urlTokenBaseHTTPClient.js +112 -0
  82. package/dist/esm/src/client/urlTokenBaseHTTPClient.js.map +1 -0
  83. package/dist/esm/src/client/v2/algod/algod.js +262 -9
  84. package/dist/esm/src/client/v2/algod/algod.js.map +1 -1
  85. package/dist/esm/src/client/v2/algod/models/types.js +12 -31
  86. package/dist/esm/src/client/v2/algod/models/types.js.map +1 -1
  87. package/dist/esm/src/client/v2/indexer/indexer.js +168 -3
  88. package/dist/esm/src/client/v2/indexer/indexer.js.map +1 -1
  89. package/dist/esm/src/client/v2/indexer/lookupApplicationLogs.js +42 -0
  90. package/dist/esm/src/client/v2/indexer/lookupApplicationLogs.js.map +1 -0
  91. package/dist/esm/src/client/v2/indexer/lookupAssetBalances.js +98 -6
  92. package/dist/esm/src/client/v2/indexer/lookupAssetBalances.js.map +1 -1
  93. package/dist/esm/src/client/v2/serviceClient.js +17 -8
  94. package/dist/esm/src/client/v2/serviceClient.js.map +1 -1
  95. package/dist/esm/src/composer.js +435 -0
  96. package/dist/esm/src/composer.js.map +1 -0
  97. package/dist/esm/src/dryrun.js +99 -0
  98. package/dist/esm/src/dryrun.js.map +1 -0
  99. package/dist/esm/src/encoding/address.js +12 -0
  100. package/dist/esm/src/encoding/address.js.map +1 -1
  101. package/dist/esm/src/encoding/bigint.js +33 -0
  102. package/dist/esm/src/encoding/bigint.js.map +1 -0
  103. package/dist/esm/src/logic/langspec.json +392 -77
  104. package/dist/esm/src/logicsig.js +2 -2
  105. package/dist/esm/src/logicsig.js.map +1 -1
  106. package/dist/esm/src/main.js +8 -85
  107. package/dist/esm/src/main.js.map +1 -1
  108. package/dist/esm/src/makeTxn.js +27 -0
  109. package/dist/esm/src/makeTxn.js.map +1 -1
  110. package/dist/esm/src/multisig.js +73 -1
  111. package/dist/esm/src/multisig.js.map +1 -1
  112. package/dist/esm/src/signer.js +59 -0
  113. package/dist/esm/src/signer.js.map +1 -0
  114. package/dist/esm/src/transaction.js +50 -10
  115. package/dist/esm/src/transaction.js.map +1 -1
  116. package/dist/esm/src/types/intDecoding.js +0 -2
  117. package/dist/esm/src/types/intDecoding.js.map +1 -1
  118. package/dist/esm/src/types/transactions/base.js +0 -1
  119. package/dist/esm/src/types/transactions/base.js.map +1 -1
  120. package/dist/esm/src/wait.js +49 -0
  121. package/dist/esm/src/wait.js.map +1 -0
  122. package/dist/types/src/abi/abi_type.d.ts +102 -0
  123. package/dist/types/src/abi/contract.d.ts +21 -0
  124. package/dist/types/src/abi/index.d.ts +6 -0
  125. package/dist/types/src/abi/interface.d.ts +13 -0
  126. package/dist/types/src/abi/method.d.ts +39 -0
  127. package/dist/types/src/abi/reference.d.ts +15 -0
  128. package/dist/types/src/abi/transaction.d.ts +33 -0
  129. package/dist/types/src/client/baseHTTPClient.d.ts +41 -0
  130. package/dist/types/src/client/client.d.ts +67 -31
  131. package/dist/types/src/client/kmd.d.ts +1 -1
  132. package/dist/types/src/client/urlTokenBaseHTTPClient.d.ts +44 -0
  133. package/dist/types/src/client/v2/algod/algod.d.ts +263 -9
  134. package/dist/types/src/client/v2/algod/models/types.d.ts +24 -37
  135. package/dist/types/src/client/v2/indexer/indexer.d.ts +167 -3
  136. package/dist/types/src/client/v2/indexer/lookupApplicationLogs.d.ts +20 -0
  137. package/dist/types/src/client/v2/indexer/lookupAssetBalances.d.ts +98 -0
  138. package/dist/types/src/client/v2/serviceClient.d.ts +6 -2
  139. package/dist/types/src/composer.d.ts +160 -0
  140. package/dist/types/src/dryrun.d.ts +20 -0
  141. package/dist/types/src/encoding/address.d.ts +6 -0
  142. package/dist/types/src/encoding/bigint.d.ts +14 -0
  143. package/dist/types/src/main.d.ts +9 -48
  144. package/dist/types/src/makeTxn.d.ts +18 -1
  145. package/dist/types/src/multisig.d.ts +39 -1
  146. package/dist/types/src/signer.d.ts +40 -0
  147. package/dist/types/src/wait.d.ts +11 -0
  148. package/package.json +6 -4
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/client/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/client/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ import Url from 'url-parse';
2
+ import path from 'path';
3
+ import * as request from 'superagent';
4
+ /**
5
+ * Implementation of BaseHTTPClient that uses a URL and a token
6
+ * and make the REST queries using superagent.
7
+ * This is the default implementation of BaseHTTPClient.
8
+ */
9
+ export class URLTokenBaseHTTPClient {
10
+ constructor(tokenHeader, baseServer, port, defaultHeaders = {}) {
11
+ this.defaultHeaders = defaultHeaders;
12
+ const baseServerURL = new Url(baseServer, {});
13
+ if (typeof port !== 'undefined') {
14
+ baseServerURL.set('port', port.toString());
15
+ }
16
+ if (baseServerURL.protocol.length === 0) {
17
+ throw new Error('Invalid base server URL, protocol must be defined.');
18
+ }
19
+ this.baseURL = baseServerURL;
20
+ this.tokenHeader = tokenHeader;
21
+ }
22
+ /**
23
+ * Compute the URL for a path relative to the instance's address
24
+ * @param relativePath - A path string
25
+ * @returns A URL string
26
+ */
27
+ addressWithPath(relativePath) {
28
+ const address = new Url(path.posix.join(this.baseURL.pathname, relativePath), this.baseURL);
29
+ return address.toString();
30
+ }
31
+ /**
32
+ * Convert a superagent response to a valid BaseHTTPClientResponse
33
+ * Modify the superagent response
34
+ * @private
35
+ */
36
+ static superagentToHTTPClientResponse(res) {
37
+ if (res.body instanceof ArrayBuffer) {
38
+ // Handle the case where the body is an arraybuffer which happens in the browser
39
+ res.body = new Uint8Array(res.body);
40
+ }
41
+ return res;
42
+ }
43
+ /**
44
+ * Make a superagent error more readable. For more info, see https://github.com/visionmedia/superagent/issues/1074
45
+ */
46
+ static formatSuperagentError(err) {
47
+ if (err.response) {
48
+ try {
49
+ const decoded = JSON.parse(Buffer.from(err.response.body).toString());
50
+ // eslint-disable-next-line no-param-reassign
51
+ err.message = `Network request error. Received status ${err.response.status}: ${decoded.message}`;
52
+ }
53
+ catch (err2) {
54
+ // ignore any error that happened while we are formatting the original error
55
+ }
56
+ }
57
+ return err;
58
+ }
59
+ async get(relativePath, query, requestHeaders = {}) {
60
+ const r = request
61
+ .get(this.addressWithPath(relativePath))
62
+ .set(this.tokenHeader)
63
+ .set(this.defaultHeaders)
64
+ .set(requestHeaders)
65
+ .responseType('arraybuffer')
66
+ .query(query);
67
+ try {
68
+ const res = await r;
69
+ return URLTokenBaseHTTPClient.superagentToHTTPClientResponse(res);
70
+ }
71
+ catch (err) {
72
+ throw URLTokenBaseHTTPClient.formatSuperagentError(err);
73
+ }
74
+ }
75
+ async post(relativePath, data, query, requestHeaders = {}) {
76
+ const r = request
77
+ .post(this.addressWithPath(relativePath))
78
+ .set(this.tokenHeader)
79
+ .set(this.defaultHeaders)
80
+ .set(requestHeaders)
81
+ .query(query)
82
+ .serialize((o) => o) // disable serialization from superagent
83
+ .responseType('arraybuffer')
84
+ .send(Buffer.from(data)); // Buffer.from necessary for superagent
85
+ try {
86
+ const res = await r;
87
+ return URLTokenBaseHTTPClient.superagentToHTTPClientResponse(res);
88
+ }
89
+ catch (err) {
90
+ throw URLTokenBaseHTTPClient.formatSuperagentError(err);
91
+ }
92
+ }
93
+ async delete(relativePath, data, query, requestHeaders = {}) {
94
+ const r = request
95
+ .delete(this.addressWithPath(relativePath))
96
+ .set(this.tokenHeader)
97
+ .set(this.defaultHeaders)
98
+ .set(requestHeaders)
99
+ .query(query)
100
+ .serialize((o) => o) // disable serialization from superagent
101
+ .responseType('arraybuffer')
102
+ .send(Buffer.from(data)); // Buffer.from necessary for superagent
103
+ try {
104
+ const res = await r;
105
+ return URLTokenBaseHTTPClient.superagentToHTTPClientResponse(res);
106
+ }
107
+ catch (err) {
108
+ throw URLTokenBaseHTTPClient.formatSuperagentError(err);
109
+ }
110
+ }
111
+ }
112
+ //# sourceMappingURL=urlTokenBaseHTTPClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urlTokenBaseHTTPClient.js","sourceRoot":"","sources":["../../../../src/client/urlTokenBaseHTTPClient.ts"],"names":[],"mappings":"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"}
@@ -17,110 +17,363 @@ import Supply from './supply';
17
17
  import Versions from './versions';
18
18
  import Genesis from './genesis';
19
19
  import Proof from './proof';
20
+ /**
21
+ * Algod client connects an application to the Algorand blockchain. The algod client requires a valid algod REST endpoint IP address and algod token from an Algorand node that is connected to the network you plan to interact with.
22
+ *
23
+ * Algod is the main Algorand process for handling the blockchain. Messages between nodes are processed, the protocol steps are executed, and the blocks are written to disk. The algod process also exposes a REST API server that developers can use to communicate with the node and the network. Algod uses the data directory for storage and configuration information.
24
+ *
25
+ * #### Relevant Information
26
+ * [How do I obtain an algod address and token?](https://developer.algorand.org/docs/archive/build-apps/setup/?from_query=algod#how-do-i-obtain-an-algod-address-and-token)
27
+ *
28
+ * [Run Algod in Postman OAS3](https://developer.algorand.org/docs/rest-apis/restendpoints/?from_query=algod#algod-indexer-and-kmd-rest-endpoints)
29
+ */
20
30
  export default class AlgodClient extends ServiceClient {
21
- constructor(token, baseServer = 'http://r2.algorand.network', port = 4180, headers = {}) {
22
- super('X-Algo-API-Token', token, baseServer, port, headers);
31
+ /**
32
+ * Create an AlgodClient from
33
+ * * either a token, baseServer, port, and optional headers
34
+ * * or a base client server for interoperability with external dApp wallets
35
+ *
36
+ * #### Example
37
+ * ```typescript
38
+ * const token = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
39
+ * const server = "http://localhost";
40
+ * const port = 4001;
41
+ * const algodClient = new algosdk.Algodv2(token, server, port);
42
+ * ```
43
+ * @remarks
44
+ * The above configuration is for a sandbox private network.
45
+ * For applications on production, you are encouraged to run your own node, or use an Algorand REST API provider with a dedicated API key.
46
+ *
47
+ * @param tokenOrBaseClient - The algod token from the Algorand node you are interacting with
48
+ * @param baseServer - REST endpoint
49
+ * @param port - Port number if specifically configured by the server
50
+ * @param headers - Optional headers
51
+ */
52
+ constructor(tokenOrBaseClient, baseServer = 'http://r2.algorand.network', port = 4180, headers = {}) {
53
+ super('X-Algo-API-Token', tokenOrBaseClient, baseServer, port, headers);
23
54
  }
55
+ /**
56
+ * Returns OK if healthy.
57
+ *
58
+ * #### Example
59
+ * ```typescript
60
+ * const health = await algodClient.healthCheck().do();
61
+ * ```
62
+ *
63
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-health)
64
+ * @category GET
65
+ */
24
66
  healthCheck() {
25
67
  return new HealthCheck(this.c);
26
68
  }
69
+ /**
70
+ * Retrieves the supported API versions, binary build versions, and genesis information.
71
+ *
72
+ * #### Example
73
+ * ```typescript
74
+ * const versionsDetails = await algodClient.versionsCheck().do();
75
+ * ```
76
+ *
77
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-versions)
78
+ * @category GET
79
+ */
27
80
  versionsCheck() {
28
81
  return new Versions(this.c);
29
82
  }
83
+ /**
84
+ * Broadcasts a raw transaction to the network.
85
+ *
86
+ * #### Example
87
+ * ```typescript
88
+ * const { txId } = await algodClient.sendRawTransaction(signedTxns).do();
89
+ * const result = await waitForConfirmation(algodClient, txid, 3);
90
+ * ```
91
+ *
92
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#post-v2transactions)
93
+ *
94
+ * @remarks
95
+ * Often used with {@linkcode waitForConfirmation}
96
+ * @param stxOrStxs - Signed transactions
97
+ * @category POST
98
+ */
30
99
  sendRawTransaction(stxOrStxs) {
31
100
  return new SendRawTransaction(this.c, stxOrStxs);
32
101
  }
33
102
  /**
34
- * Returns the given account's information.
103
+ * Returns the given account's status, balance and spendable amounts.
104
+ *
105
+ * #### Example
106
+ * ```typescript
107
+ * const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
108
+ * const accountInfo = await algodClient.accountInformation(address).do();
109
+ * ```
110
+ *
111
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2accountsaddress)
35
112
  * @param account - The address of the account to look up.
113
+ * @category GET
36
114
  */
37
115
  accountInformation(account) {
38
116
  return new AccountInformation(this.c, this.intDecoding, account);
39
117
  }
40
118
  /**
41
119
  * Gets the block info for the given round.
120
+ *
121
+ * #### Example
122
+ * ```typescript
123
+ * const roundNumber = 18038133;
124
+ * const block = await algodClient.block(roundNumber).do();
125
+ * ```
126
+ *
127
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2blocksround)
42
128
  * @param roundNumber - The round number of the block to get.
129
+ * @category GET
43
130
  */
44
131
  block(roundNumber) {
45
132
  return new Block(this.c, roundNumber);
46
133
  }
47
134
  /**
48
135
  * Returns the transaction information for a specific pending transaction.
136
+ *
137
+ * #### Example
138
+ * ```typescript
139
+ * const txId = "DRJS6R745A7GFVMXEXWP4TGVDGKW7VILFTA7HC2BR2GRLHNY5CTA";
140
+ * const pending = await algodClient.pendingTransactionInformation(txId).do();
141
+ * ```
142
+ *
143
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2transactionspendingtxid)
144
+ *
145
+ * @remarks
146
+ * <br><br>
147
+ * There are several cases when this might succeed:
148
+ * - transaction committed (committed round > 0)
149
+ * - transaction still in the pool (committed round = 0, pool error = "")
150
+ * - transaction removed from pool due to error (committed round = 0, pool error != "")
151
+ *
152
+ * Or the transaction may have happened sufficiently long ago that the node no longer remembers it, and this will return an error.
153
+ *
49
154
  * @param txid - The TxID string of the pending transaction to look up.
155
+ * @category GET
50
156
  */
51
157
  pendingTransactionInformation(txid) {
52
158
  return new PendingTransactionInformation(this.c, txid);
53
159
  }
54
160
  /**
55
- * Returns transactions that are pending in the pool.
161
+ * Returns the list of pending transactions in the pool, sorted by priority, in decreasing order, truncated at the end at MAX.
162
+ * If MAX = 0, returns all pending transactions.
163
+ *
164
+ * #### Example 1
165
+ * ```typescript
166
+ * const pendingTxns = await algodClient.pendingTransactionsInformation().do();
167
+ * ```
168
+ *
169
+ * #### Example 2
170
+ * ```typescript
171
+ * const maxTxns = 5;
172
+ * const pendingTxns = await algodClient
173
+ * .pendingTransactionsInformation()
174
+ * .max(maxTxns)
175
+ * .do();
176
+ * ```
177
+ *
178
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2transactionspending)
179
+ * @category GET
56
180
  */
57
181
  pendingTransactionsInformation() {
58
182
  return new PendingTransactions(this.c);
59
183
  }
60
184
  /**
61
- * Returns transactions that are pending in the pool sent by a specific sender.
185
+ * Returns the list of pending transactions sent by the address, sorted by priority, in decreasing order, truncated at the end at MAX.
186
+ * If MAX = 0, returns all pending transactions.
187
+ *
188
+ * #### Example 1
189
+ * ```typescript
190
+ * const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
191
+ * const pendingTxnsByAddr = await algodClient.pendingTransactionByAddress(address).do();
192
+ * ```
193
+ *
194
+ * #### Example 2
195
+ * ```typescript
196
+ * const maxTxns = 5;
197
+ * const address = "XBYLS2E6YI6XXL5BWCAMOA4GTWHXWENZMX5UHXMRNWWUQ7BXCY5WC5TEPA";
198
+ * const pendingTxns = await algodClient
199
+ * .pendingTransactionByAddress(address)
200
+ * .max(maxTxns)
201
+ * .do();
202
+ * ```
203
+ *
204
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2accountsaddresstransactionspending)
62
205
  * @param address - The address of the sender.
206
+ * @category GET
63
207
  */
64
208
  pendingTransactionByAddress(address) {
65
209
  return new PendingTransactionsByAddress(this.c, address);
66
210
  }
67
211
  /**
68
212
  * Retrieves the StatusResponse from the running node.
213
+ *
214
+ * #### Example
215
+ * ```typescript
216
+ * const status = await algodClient.status().do();
217
+ * ```
218
+ *
219
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2status)
220
+ * @category GET
69
221
  */
70
222
  status() {
71
223
  return new Status(this.c, this.intDecoding);
72
224
  }
73
225
  /**
74
- * Waits for a specific round to occur then returns the StatusResponse for that round.
226
+ * Waits for a specific round to occur then returns the `StatusResponse` for that round.
227
+ *
228
+ * #### Example
229
+ * ```typescript
230
+ * const round = 18038133;
231
+ * const statusAfterBlock = await algodClient.statusAfterBlock(round).do();
232
+ * ```
233
+ *
234
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2statuswait-for-block-afterround)
75
235
  * @param round - The number of the round to wait for.
236
+ * @category GET
76
237
  */
77
238
  statusAfterBlock(round) {
78
239
  return new StatusAfterBlock(this.c, this.intDecoding, round);
79
240
  }
80
241
  /**
81
242
  * Returns the common needed parameters for a new transaction.
243
+ *
244
+ * #### Example
245
+ * ```typescript
246
+ * const suggestedParams = await algodClient.getTransactionParams().do();
247
+ * const amountInMicroAlgos = algosdk.algosToMicroalgos(2); // 2 Algos
248
+ * const unsignedTxn = algosdk.makePaymentTxnWithSuggestedParamsFromObject({
249
+ * from: senderAddress,
250
+ * to: receiverAddress,
251
+ * amount: amountInMicroAlgos,
252
+ * suggestedParams: suggestedParams,
253
+ * });
254
+ * ```
255
+ *
256
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2transactionsparams)
257
+ *
258
+ * @remarks
259
+ * Often used with
260
+ * {@linkcode makePaymentTxnWithSuggestedParamsFromObject}, {@linkcode algosToMicroalgos}
261
+ * @category GET
82
262
  */
83
263
  getTransactionParams() {
84
264
  return new SuggestedParams(this.c);
85
265
  }
86
266
  /**
87
- * Gets the supply details for the specified node's ledger.
267
+ * Returns the supply details for the specified node's ledger.
268
+ *
269
+ * #### Example
270
+ * ```typescript
271
+ * const supplyDetails = await algodClient.supply().do();
272
+ * ```
273
+ *
274
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2ledgersupply)
275
+ * @category GET
88
276
  */
89
277
  supply() {
90
278
  return new Supply(this.c, this.intDecoding);
91
279
  }
280
+ /**
281
+ * Compiles TEAL source code to binary, returns base64 encoded program bytes and base32 SHA512_256 hash of program bytes (Address style).
282
+ *
283
+ * #### Example
284
+ * ```typescript
285
+ * const source = "TEAL SOURCE CODE";
286
+ * const compiledSmartContract = await algodClient.compile(source).do();
287
+ * ```
288
+ *
289
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#post-v2tealcompile)
290
+ * @remarks
291
+ * This endpoint is only enabled when a node's configuration file sets `EnableDeveloperAPI` to true.
292
+ * @param source
293
+ * @category POST
294
+ */
92
295
  compile(source) {
93
296
  return new Compile(this.c, source);
94
297
  }
298
+ /**
299
+ * Provides debugging information for a transaction (or group).
300
+ *
301
+ * Executes TEAL program(s) in context and returns debugging information about the execution. This endpoint is only enabled when a node's configureation file sets `EnableDeveloperAPI` to true.
302
+ *
303
+ * #### Example
304
+ * ```typescript
305
+ * const dryRunResult = await algodClient.dryrun(dr).do();
306
+ * ```
307
+ *
308
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#post-v2tealdryrun)
309
+ * @param dr
310
+ * @category POST
311
+ */
95
312
  dryrun(dr) {
96
313
  return new Dryrun(this.c, dr);
97
314
  }
98
315
  /**
99
316
  * Given an asset ID, return asset information including creator, name, total supply and
100
317
  * special addresses.
318
+ *
319
+ * #### Example
320
+ * ```typescript
321
+ * const asset_id = 163650;
322
+ * const asset = await algodClient.getAssetByID(asset_id).do();
323
+ * ```
324
+ *
325
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2assetsasset-id)
101
326
  * @param index - The asset ID to look up.
327
+ * @category GET
102
328
  */
103
329
  getAssetByID(index) {
104
330
  return new GetAssetByID(this.c, this.intDecoding, index);
105
331
  }
106
332
  /**
107
- * Given an application ID, it returns application information including creator, approval
333
+ * Given an application ID, return the application information including creator, approval
108
334
  * and clear programs, global and local schemas, and global state.
335
+ *
336
+ * #### Example
337
+ * ```typescript
338
+ * const index = 60553466;
339
+ * const app = await algodClient.getApplicationByID(index).do();
340
+ * ```
341
+ *
342
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2applicationsapplication-id)
109
343
  * @param index - The application ID to look up.
344
+ * @category GET
110
345
  */
111
346
  getApplicationByID(index) {
112
347
  return new GetApplicationByID(this.c, this.intDecoding, index);
113
348
  }
114
349
  /**
115
350
  * Returns the entire genesis file.
351
+ *
352
+ * #### Example
353
+ * ```typescript
354
+ * const genesis = await algodClient.genesis().do();
355
+ * ```
356
+ *
357
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-genesis)
358
+ * @category GET
116
359
  */
117
360
  genesis() {
118
361
  return new Genesis(this.c, this.intDecoding);
119
362
  }
120
363
  /**
121
- * Get the proof for a given transaction in a round.
364
+ * Returns a Merkle proof for a given transaction in a block.
365
+ *
366
+ * #### Example
367
+ * ```typescript
368
+ * const round = 18038133;
369
+ * const txId = "MEUOC4RQJB23CQZRFRKYEI6WBO73VTTPST5A7B3S5OKBUY6LFUDA";
370
+ * const proof = await algodClient.getProof(round, txId).do();
371
+ * ```
372
+ *
373
+ * [Response data schema details](https://developer.algorand.org/docs/rest-apis/algod/v2/#get-v2blocksroundtransactionstxidproof)
122
374
  * @param round - The round in which the transaction appears.
123
375
  * @param txID - The transaction ID for which to generate a proof.
376
+ * @category GET
124
377
  */
125
378
  getProof(round, txID) {
126
379
  return new Proof(this.c, this.intDecoding, round, txID);
@@ -1 +1 @@
1
- {"version":3,"file":"algod.js","sourceRoot":"","sources":["../../../../../../src/client/v2/algod/algod.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"algod.js","sourceRoot":"","sources":["../../../../../../src/client/v2/algod/algod.ts"],"names":[],"mappings":"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"}