@reserve-protocol/dtf-sdk 0.1.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 (234) hide show
  1. package/README.md +134 -0
  2. package/dist/abi/deployer.d.ts +281 -0
  3. package/dist/abi/deployer.d.ts.map +1 -0
  4. package/dist/abi/deployer.js +178 -0
  5. package/dist/abi/deployer.js.map +1 -0
  6. package/dist/abi/erc20.d.ts +73 -0
  7. package/dist/abi/erc20.d.ts.map +1 -0
  8. package/dist/abi/erc20.js +58 -0
  9. package/dist/abi/erc20.js.map +1 -0
  10. package/dist/abi/folio.d.ts +1950 -0
  11. package/dist/abi/folio.d.ts.map +1 -0
  12. package/dist/abi/folio.js +1430 -0
  13. package/dist/abi/folio.js.map +1 -0
  14. package/dist/abi/governance-deployer.d.ts +130 -0
  15. package/dist/abi/governance-deployer.d.ts.map +1 -0
  16. package/dist/abi/governance-deployer.js +77 -0
  17. package/dist/abi/governance-deployer.js.map +1 -0
  18. package/dist/abi/governor.d.ts +1276 -0
  19. package/dist/abi/governor.d.ts.map +1 -0
  20. package/dist/abi/governor.js +1661 -0
  21. package/dist/abi/governor.js.map +1 -0
  22. package/dist/abi/proxy-admin.d.ts +49 -0
  23. package/dist/abi/proxy-admin.d.ts.map +1 -0
  24. package/dist/abi/proxy-admin.js +42 -0
  25. package/dist/abi/proxy-admin.js.map +1 -0
  26. package/dist/abi/spells.d.ts +67 -0
  27. package/dist/abi/spells.d.ts.map +1 -0
  28. package/dist/abi/spells.js +61 -0
  29. package/dist/abi/spells.js.map +1 -0
  30. package/dist/abi/timelock.d.ts +673 -0
  31. package/dist/abi/timelock.d.ts.map +1 -0
  32. package/dist/abi/timelock.js +469 -0
  33. package/dist/abi/timelock.js.map +1 -0
  34. package/dist/abi/vote-lock.d.ts +164 -0
  35. package/dist/abi/vote-lock.d.ts.map +1 -0
  36. package/dist/abi/vote-lock.js +116 -0
  37. package/dist/abi/vote-lock.js.map +1 -0
  38. package/dist/clients/chains.d.ts +5 -0
  39. package/dist/clients/chains.d.ts.map +1 -0
  40. package/dist/clients/chains.js +23 -0
  41. package/dist/clients/chains.js.map +1 -0
  42. package/dist/clients/create-clients.d.ts +14 -0
  43. package/dist/clients/create-clients.d.ts.map +1 -0
  44. package/dist/clients/create-clients.js +32 -0
  45. package/dist/clients/create-clients.js.map +1 -0
  46. package/dist/clients/create-price-client.d.ts +7 -0
  47. package/dist/clients/create-price-client.d.ts.map +1 -0
  48. package/dist/clients/create-price-client.js +15 -0
  49. package/dist/clients/create-price-client.js.map +1 -0
  50. package/dist/constants.d.ts +35 -0
  51. package/dist/constants.d.ts.map +1 -0
  52. package/dist/constants.js +100 -0
  53. package/dist/constants.js.map +1 -0
  54. package/dist/deploy/build-deploy.d.ts +7 -0
  55. package/dist/deploy/build-deploy.d.ts.map +1 -0
  56. package/dist/deploy/build-deploy.js +84 -0
  57. package/dist/deploy/build-deploy.js.map +1 -0
  58. package/dist/deploy/extract-deployed-address.d.ts +8 -0
  59. package/dist/deploy/extract-deployed-address.d.ts.map +1 -0
  60. package/dist/deploy/extract-deployed-address.js +36 -0
  61. package/dist/deploy/extract-deployed-address.js.map +1 -0
  62. package/dist/deploy/permissionless-defaults.d.ts +35 -0
  63. package/dist/deploy/permissionless-defaults.d.ts.map +1 -0
  64. package/dist/deploy/permissionless-defaults.js +76 -0
  65. package/dist/deploy/permissionless-defaults.js.map +1 -0
  66. package/dist/deploy/token-registry.d.ts +9 -0
  67. package/dist/deploy/token-registry.d.ts.map +1 -0
  68. package/dist/deploy/token-registry.js +68 -0
  69. package/dist/deploy/token-registry.js.map +1 -0
  70. package/dist/deploy/zap-deploy.d.ts +4 -0
  71. package/dist/deploy/zap-deploy.d.ts.map +1 -0
  72. package/dist/deploy/zap-deploy.js +50 -0
  73. package/dist/deploy/zap-deploy.js.map +1 -0
  74. package/dist/dtf/fees.d.ts +10 -0
  75. package/dist/dtf/fees.d.ts.map +1 -0
  76. package/dist/dtf/fees.js +103 -0
  77. package/dist/dtf/fees.js.map +1 -0
  78. package/dist/dtf/fetch-analytics.d.ts +27 -0
  79. package/dist/dtf/fetch-analytics.d.ts.map +1 -0
  80. package/dist/dtf/fetch-analytics.js +63 -0
  81. package/dist/dtf/fetch-analytics.js.map +1 -0
  82. package/dist/dtf/fetch-basket.d.ts +16 -0
  83. package/dist/dtf/fetch-basket.d.ts.map +1 -0
  84. package/dist/dtf/fetch-basket.js +32 -0
  85. package/dist/dtf/fetch-basket.js.map +1 -0
  86. package/dist/dtf/fetch-discover.d.ts +10 -0
  87. package/dist/dtf/fetch-discover.d.ts.map +1 -0
  88. package/dist/dtf/fetch-discover.js +17 -0
  89. package/dist/dtf/fetch-discover.js.map +1 -0
  90. package/dist/dtf/fetch-dtf.d.ts +25 -0
  91. package/dist/dtf/fetch-dtf.d.ts.map +1 -0
  92. package/dist/dtf/fetch-dtf.js +39 -0
  93. package/dist/dtf/fetch-dtf.js.map +1 -0
  94. package/dist/dtf/mint.d.ts +9 -0
  95. package/dist/dtf/mint.d.ts.map +1 -0
  96. package/dist/dtf/mint.js +82 -0
  97. package/dist/dtf/mint.js.map +1 -0
  98. package/dist/dtf/read-basket.d.ts +4 -0
  99. package/dist/dtf/read-basket.d.ts.map +1 -0
  100. package/dist/dtf/read-basket.js +20 -0
  101. package/dist/dtf/read-basket.js.map +1 -0
  102. package/dist/dtf/read-config.d.ts +4 -0
  103. package/dist/dtf/read-config.d.ts.map +1 -0
  104. package/dist/dtf/read-config.js +80 -0
  105. package/dist/dtf/read-config.js.map +1 -0
  106. package/dist/dtf/read-dtf.d.ts +6 -0
  107. package/dist/dtf/read-dtf.d.ts.map +1 -0
  108. package/dist/dtf/read-dtf.js +32 -0
  109. package/dist/dtf/read-dtf.js.map +1 -0
  110. package/dist/dtf/read-rebalance-control.d.ts +4 -0
  111. package/dist/dtf/read-rebalance-control.d.ts.map +1 -0
  112. package/dist/dtf/read-rebalance-control.js +14 -0
  113. package/dist/dtf/read-rebalance-control.js.map +1 -0
  114. package/dist/dtf/read-roles.d.ts +4 -0
  115. package/dist/dtf/read-roles.d.ts.map +1 -0
  116. package/dist/dtf/read-roles.js +29 -0
  117. package/dist/dtf/read-roles.js.map +1 -0
  118. package/dist/dtf/read-version.d.ts +3 -0
  119. package/dist/dtf/read-version.d.ts.map +1 -0
  120. package/dist/dtf/read-version.js +9 -0
  121. package/dist/dtf/read-version.js.map +1 -0
  122. package/dist/dtf/redeem.d.ts +5 -0
  123. package/dist/dtf/redeem.d.ts.map +1 -0
  124. package/dist/dtf/redeem.js +27 -0
  125. package/dist/dtf/redeem.js.map +1 -0
  126. package/dist/governance/build-proposal.d.ts +11 -0
  127. package/dist/governance/build-proposal.d.ts.map +1 -0
  128. package/dist/governance/build-proposal.js +78 -0
  129. package/dist/governance/build-proposal.js.map +1 -0
  130. package/dist/governance/build-settings-calldata.d.ts +39 -0
  131. package/dist/governance/build-settings-calldata.d.ts.map +1 -0
  132. package/dist/governance/build-settings-calldata.js +145 -0
  133. package/dist/governance/build-settings-calldata.js.map +1 -0
  134. package/dist/governance/compute-proposal-state.d.ts +18 -0
  135. package/dist/governance/compute-proposal-state.d.ts.map +1 -0
  136. package/dist/governance/compute-proposal-state.js +87 -0
  137. package/dist/governance/compute-proposal-state.js.map +1 -0
  138. package/dist/governance/decode-proposal.d.ts +22 -0
  139. package/dist/governance/decode-proposal.d.ts.map +1 -0
  140. package/dist/governance/decode-proposal.js +164 -0
  141. package/dist/governance/decode-proposal.js.map +1 -0
  142. package/dist/governance/fetch-proposals.d.ts +41 -0
  143. package/dist/governance/fetch-proposals.d.ts.map +1 -0
  144. package/dist/governance/fetch-proposals.js +173 -0
  145. package/dist/governance/fetch-proposals.js.map +1 -0
  146. package/dist/governance/read-governance.d.ts +7 -0
  147. package/dist/governance/read-governance.d.ts.map +1 -0
  148. package/dist/governance/read-governance.js +97 -0
  149. package/dist/governance/read-governance.js.map +1 -0
  150. package/dist/governance/read-proposals.d.ts +11 -0
  151. package/dist/governance/read-proposals.d.ts.map +1 -0
  152. package/dist/governance/read-proposals.js +104 -0
  153. package/dist/governance/read-proposals.js.map +1 -0
  154. package/dist/governance/read-voting-power.d.ts +8 -0
  155. package/dist/governance/read-voting-power.d.ts.map +1 -0
  156. package/dist/governance/read-voting-power.js +25 -0
  157. package/dist/governance/read-voting-power.js.map +1 -0
  158. package/dist/index.d.ts +57 -0
  159. package/dist/index.d.ts.map +1 -0
  160. package/dist/index.js +73 -0
  161. package/dist/index.js.map +1 -0
  162. package/dist/prices/chainlink.d.ts +8 -0
  163. package/dist/prices/chainlink.d.ts.map +1 -0
  164. package/dist/prices/chainlink.js +116 -0
  165. package/dist/prices/chainlink.js.map +1 -0
  166. package/dist/prices/reserve-api.d.ts +7 -0
  167. package/dist/prices/reserve-api.d.ts.map +1 -0
  168. package/dist/prices/reserve-api.js +47 -0
  169. package/dist/prices/reserve-api.js.map +1 -0
  170. package/dist/rebalance/build-auction.d.ts +25 -0
  171. package/dist/rebalance/build-auction.d.ts.map +1 -0
  172. package/dist/rebalance/build-auction.js +73 -0
  173. package/dist/rebalance/build-auction.js.map +1 -0
  174. package/dist/rebalance/build-rebalance.d.ts +22 -0
  175. package/dist/rebalance/build-rebalance.d.ts.map +1 -0
  176. package/dist/rebalance/build-rebalance.js +30 -0
  177. package/dist/rebalance/build-rebalance.js.map +1 -0
  178. package/dist/rebalance/read-auction.d.ts +4 -0
  179. package/dist/rebalance/read-auction.d.ts.map +1 -0
  180. package/dist/rebalance/read-auction.js +31 -0
  181. package/dist/rebalance/read-auction.js.map +1 -0
  182. package/dist/rebalance/read-rebalance.d.ts +4 -0
  183. package/dist/rebalance/read-rebalance.d.ts.map +1 -0
  184. package/dist/rebalance/read-rebalance.js +50 -0
  185. package/dist/rebalance/read-rebalance.js.map +1 -0
  186. package/dist/rebalance/transform.d.ts +22 -0
  187. package/dist/rebalance/transform.d.ts.map +1 -0
  188. package/dist/rebalance/transform.js +47 -0
  189. package/dist/rebalance/transform.js.map +1 -0
  190. package/dist/revenue/compute-revenue.d.ts +45 -0
  191. package/dist/revenue/compute-revenue.d.ts.map +1 -0
  192. package/dist/revenue/compute-revenue.js +216 -0
  193. package/dist/revenue/compute-revenue.js.map +1 -0
  194. package/dist/revenue/fetch-revenue.d.ts +8 -0
  195. package/dist/revenue/fetch-revenue.d.ts.map +1 -0
  196. package/dist/revenue/fetch-revenue.js +182 -0
  197. package/dist/revenue/fetch-revenue.js.map +1 -0
  198. package/dist/revenue/fetch-rsr-burns.d.ts +9 -0
  199. package/dist/revenue/fetch-rsr-burns.d.ts.map +1 -0
  200. package/dist/revenue/fetch-rsr-burns.js +106 -0
  201. package/dist/revenue/fetch-rsr-burns.js.map +1 -0
  202. package/dist/types.d.ts +546 -0
  203. package/dist/types.d.ts.map +1 -0
  204. package/dist/types.js +2 -0
  205. package/dist/types.js.map +1 -0
  206. package/dist/utils/assert.d.ts +2 -0
  207. package/dist/utils/assert.d.ts.map +1 -0
  208. package/dist/utils/assert.js +5 -0
  209. package/dist/utils/assert.js.map +1 -0
  210. package/dist/utils/fetch-token-metadata.d.ts +7 -0
  211. package/dist/utils/fetch-token-metadata.d.ts.map +1 -0
  212. package/dist/utils/fetch-token-metadata.js +29 -0
  213. package/dist/utils/fetch-token-metadata.js.map +1 -0
  214. package/dist/utils/fetch-with-retry.d.ts +7 -0
  215. package/dist/utils/fetch-with-retry.d.ts.map +1 -0
  216. package/dist/utils/fetch-with-retry.js +38 -0
  217. package/dist/utils/fetch-with-retry.js.map +1 -0
  218. package/dist/utils/query-subgraph.d.ts +7 -0
  219. package/dist/utils/query-subgraph.d.ts.map +1 -0
  220. package/dist/utils/query-subgraph.js +25 -0
  221. package/dist/utils/query-subgraph.js.map +1 -0
  222. package/dist/utils/validate-price-control.d.ts +3 -0
  223. package/dist/utils/validate-price-control.d.ts.map +1 -0
  224. package/dist/utils/validate-price-control.js +6 -0
  225. package/dist/utils/validate-price-control.js.map +1 -0
  226. package/dist/vote-lock/build-vote-lock.d.ts +10 -0
  227. package/dist/vote-lock/build-vote-lock.d.ts.map +1 -0
  228. package/dist/vote-lock/build-vote-lock.js +73 -0
  229. package/dist/vote-lock/build-vote-lock.js.map +1 -0
  230. package/dist/vote-lock/read-vote-lock.d.ts +7 -0
  231. package/dist/vote-lock/read-vote-lock.d.ts.map +1 -0
  232. package/dist/vote-lock/read-vote-lock.js +64 -0
  233. package/dist/vote-lock/read-vote-lock.js.map +1 -0
  234. package/package.json +28 -0
package/README.md ADDED
@@ -0,0 +1,134 @@
1
+ # @reserve-protocol/dtf-sdk
2
+
3
+ Stateless TypeScript SDK for [Reserve Protocol](https://reserve.org) Index DTFs. Read basket state, compute mint/redeem quotes, build rebalance transactions, manage governance — all from TypeScript.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ bun add @reserve-protocol/dtf-sdk
9
+ ```
10
+
11
+ Peer dependency: `viem >= 2.0.0`
12
+
13
+ ## Quick Start
14
+
15
+ ```typescript
16
+ import {
17
+ createDtfClients,
18
+ readBasket,
19
+ readMintQuote,
20
+ buildMintCalldata,
21
+ fetchDtfBasket,
22
+ fetchTokenPrices,
23
+ fetchDtfRevenue,
24
+ } from '@reserve-protocol/dtf-sdk'
25
+
26
+ const DTF = '0x...' as const
27
+
28
+ // Create a client for Base
29
+ const { publicClient } = createDtfClients({ chainId: 8453 })
30
+
31
+ // On-chain basket (bigint precision)
32
+ const basket = await readBasket(publicClient, DTF)
33
+
34
+ // Mint quote — how many tokens needed for N shares
35
+ const quote = await readMintQuote(publicClient, DTF, 1000000000000000000n)
36
+
37
+ // Build mint transaction
38
+ const tx = buildMintCalldata(DTF, quote.amounts, quote.minSharesOut)
39
+
40
+ // API basket with prices (convenience)
41
+ const apiBasket = await fetchDtfBasket(8453, DTF)
42
+
43
+ // Token prices + volatility
44
+ const prices = await fetchTokenPrices(
45
+ basket.tokens.map((t) => t.address),
46
+ 8453
47
+ )
48
+
49
+ // Revenue breakdown
50
+ const revenue = await fetchDtfRevenue(DTF, 8453)
51
+ ```
52
+
53
+ ## Module Reference
54
+
55
+ All exports are in [`src/index.ts`](./src/index.ts). Key modules:
56
+
57
+ | Module | What it does | Key exports |
58
+ |--------|-------------|-------------|
59
+ | [clients/](./src/clients/) | PublicClient + PriceClient factories | `createDtfClients`, `createPriceClient` |
60
+ | [dtf/](./src/dtf/) | Config, basket, discovery, roles | `fetchDtfConfig`, `readBasket`, `fetchDtfBasket`, `fetchDtfDiscover`, `readDtfRoles` |
61
+ | [dtf/mint](./src/dtf/mint.ts) | Mint quotes + calldata | `readMintQuote`, `buildMintCalldata`, `buildApproveCalldata`, `applySlippage` |
62
+ | [dtf/redeem](./src/dtf/redeem.ts) | Redeem quotes + calldata | `readRedeemQuote`, `buildRedeemCalldata` |
63
+ | [dtf/fees](./src/dtf/fees.ts) | Fee reads + builders | `readPendingFees`, `readFeeRecipients`, `buildDistributeFeesCalldata` |
64
+ | [dtf/fetch-analytics](./src/dtf/fetch-analytics.ts) | Historical data from API | `fetchRebalanceHistory`, `fetchRebalanceDetail`, `fetchHistoricalDtf` |
65
+ | [governance/](./src/governance/) | Proposals, voting, settings | `readProposalState`, `fetchProposals`, `buildProposeCalldata`, `computeProposalState` |
66
+ | [governance/build-settings-calldata](./src/governance/build-settings-calldata.ts) | Encode governance actions | `encodeMintFee`, `encodeTvlFee`, `encodeStartRebalance`, `encodeAuctionLength` |
67
+ | [governance/decode-proposal](./src/governance/decode-proposal.ts) | Decode proposal calldata | `decodeProposalActions`, `labelAddress`, `formatRoleName` |
68
+ | [rebalance/](./src/rebalance/) | Rebalance state + auction builders | `readRebalanceState`, `readActiveAuction`, `computeOpenAuctionParams`, `buildBidCalldata` |
69
+ | [deploy/](./src/deploy/) | DTF deployment | `buildDeployDtfCalldata`, `submitZapDeploy`, `resolveToken`, `getTokenRegistry` |
70
+ | [vote-lock/](./src/vote-lock/) | Stake, delegate, unlock | `readVoteLockInfo`, `buildVoteLockCalldata`, `buildDelegateCalldata`, `buildClaimRewardsCalldata` |
71
+ | [prices/](./src/prices/) | Reserve API + Chainlink | `fetchTokenPrices`, `fetchTokenVolatility`, `readChainlinkPrice`, `backfillChainlinkPrices` |
72
+ | [revenue/](./src/revenue/) | Revenue analytics + RSR burns | `fetchDtfRevenue`, `fetchEcosystemRevenue`, `fetchRsrBurns`, `computeRsrBurnProjection` |
73
+ | [utils/](./src/utils/) | Shared helpers | `fetchWithRetry`, `fetchTokenMetadata`, `querySubgraph`, `assert` |
74
+
75
+ ## Types
76
+
77
+ See [`src/types.ts`](./src/types.ts) for all type definitions. Most important:
78
+
79
+ | Type | Description |
80
+ |------|-------------|
81
+ | `DtfOnchainConfig` | Full DTF configuration from subgraph + RPC |
82
+ | `BasketInfo` | On-chain basket: tokens, balances, totalSupply |
83
+ | `MintQuote` / `RedeemQuote` | Quote results with token amounts |
84
+ | `RebalanceInfo` | Active rebalance: weights, prices, time windows |
85
+ | `DtfRevenueRaw` / `DtfRevenueUsd` | Revenue breakdown per DTF |
86
+ | `ZapDeployParams` | Full deploy parameters for Zap API |
87
+ | `ProposalInfo` / `ProposalActions` | Governance proposal data |
88
+ | `VoteLockInfo` | Staking vault state |
89
+
90
+ ## Error Handling
91
+
92
+ Functions either throw or return null depending on the scenario:
93
+
94
+ | Function | Throws | Returns null |
95
+ |----------|--------|-------------|
96
+ | `fetchDtfConfig` | No subgraph for chain, DTF not found | Never |
97
+ | `readBasket` | Network error, invalid address | Never |
98
+ | `readRebalanceState` | Network error | No rebalance (contract revert) |
99
+ | `readActiveAuction` | Network error | No auctions (nextAuctionId = 0) |
100
+ | `readMintQuote` | Network error, invalid inputs | Never |
101
+ | `readChainlinkPrice` | Network error | Invalid price (answer <= 0) |
102
+ | `fetchTokenPrices` | Non-200 response, timeout | Never |
103
+
104
+ **Retry behavior:** All HTTP calls use `fetchWithRetry` (2 retries, 15s timeout, exponential backoff). RPC uses viem's built-in retry (2 retries, 20s timeout).
105
+
106
+ ## Data Sources
107
+
108
+ | Source | Used for | Functions |
109
+ |--------|---------|-----------|
110
+ | **RPC** | Basket balances, mint/redeem quotes, rebalance state, governance reads | `readBasket`, `readMintQuote`, `readRebalanceState`, `readVotingPower` |
111
+ | **Reserve API** | Token prices, DTF discovery, historical data, revenue, zap deploy | `fetchTokenPrices`, `fetchDtfDiscover`, `fetchDtfBasket`, `fetchDtfRevenue`, `submitZapDeploy` |
112
+ | **Subgraph** | DTF config, governance metadata, roles, proposals | `fetchDtfConfig`, `fetchProposals` |
113
+
114
+ ## Chain Support
115
+
116
+ | Chain | ID | RPC | API | Subgraph | Notes |
117
+ |-------|----|-----|-----|----------|-------|
118
+ | Ethereum | 1 | Yes | Yes | Yes | |
119
+ | Base | 8453 | Yes | Yes | Yes | Default chain |
120
+ | BSC | 56 | Yes | Yes | **No** | `fetchDtfConfig` throws; use RPC reads |
121
+
122
+ ## Constants & ABIs
123
+
124
+ All contract ABIs are exported: `folioAbi`, `governorAbi`, `timelockAbi`, `voteLockAbi`, `deployerAbi`, etc.
125
+
126
+ Key constants: `SUPPORTED_CHAINS`, `SUBGRAPH_URLS`, `FOLIO_ROLES`, `PRICE_CONTROL`, `D18`.
127
+
128
+ See [`src/constants.ts`](./src/constants.ts) for the full list.
129
+
130
+ ## Further Reading
131
+
132
+ - [Protocol concepts & data routing](../../docs/KNOWLEDGE.md)
133
+ - [CLI reference](../cli/README.md)
134
+ - [Dev conventions](../../CLAUDE.md)
@@ -0,0 +1,281 @@
1
+ declare const _default: readonly [{
2
+ readonly type: "function";
3
+ readonly name: "deployFolio";
4
+ readonly inputs: readonly [{
5
+ readonly name: "basicDetails";
6
+ readonly type: "tuple";
7
+ readonly components: readonly [{
8
+ readonly name: "name";
9
+ readonly type: "string";
10
+ }, {
11
+ readonly name: "symbol";
12
+ readonly type: "string";
13
+ }, {
14
+ readonly name: "assets";
15
+ readonly type: "address[]";
16
+ }, {
17
+ readonly name: "amounts";
18
+ readonly type: "uint256[]";
19
+ }, {
20
+ readonly name: "initialShares";
21
+ readonly type: "uint256";
22
+ }];
23
+ }, {
24
+ readonly name: "additionalDetails";
25
+ readonly type: "tuple";
26
+ readonly components: readonly [{
27
+ readonly name: "auctionLength";
28
+ readonly type: "uint256";
29
+ }, {
30
+ readonly name: "feeRecipients";
31
+ readonly type: "tuple[]";
32
+ readonly components: readonly [{
33
+ readonly name: "recipient";
34
+ readonly type: "address";
35
+ }, {
36
+ readonly name: "portion";
37
+ readonly type: "uint96";
38
+ }];
39
+ }, {
40
+ readonly name: "tvlFee";
41
+ readonly type: "uint256";
42
+ }, {
43
+ readonly name: "mintFee";
44
+ readonly type: "uint256";
45
+ }, {
46
+ readonly name: "mandate";
47
+ readonly type: "string";
48
+ }];
49
+ }, {
50
+ readonly name: "folioFlags";
51
+ readonly type: "tuple";
52
+ readonly components: readonly [{
53
+ readonly name: "trustedFillerEnabled";
54
+ readonly type: "bool";
55
+ }, {
56
+ readonly name: "rebalanceControl";
57
+ readonly type: "tuple";
58
+ readonly components: readonly [{
59
+ readonly name: "weightControl";
60
+ readonly type: "bool";
61
+ }, {
62
+ readonly name: "priceControl";
63
+ readonly type: "uint8";
64
+ }];
65
+ }, {
66
+ readonly name: "bidsEnabled";
67
+ readonly type: "bool";
68
+ }];
69
+ }, {
70
+ readonly name: "owner";
71
+ readonly type: "address";
72
+ }, {
73
+ readonly name: "basketManagers";
74
+ readonly type: "address[]";
75
+ }, {
76
+ readonly name: "auctionLaunchers";
77
+ readonly type: "address[]";
78
+ }, {
79
+ readonly name: "brandManagers";
80
+ readonly type: "address[]";
81
+ }, {
82
+ readonly name: "deploymentNonce";
83
+ readonly type: "bytes32";
84
+ }];
85
+ readonly outputs: readonly [{
86
+ readonly name: "folio";
87
+ readonly type: "address";
88
+ }, {
89
+ readonly name: "proxyAdmin";
90
+ readonly type: "address";
91
+ }];
92
+ readonly stateMutability: "nonpayable";
93
+ }, {
94
+ readonly type: "function";
95
+ readonly name: "deployGovernedFolio";
96
+ readonly inputs: readonly [{
97
+ readonly name: "stToken";
98
+ readonly type: "address";
99
+ }, {
100
+ readonly name: "basicDetails";
101
+ readonly type: "tuple";
102
+ readonly components: readonly [{
103
+ readonly name: "name";
104
+ readonly type: "string";
105
+ }, {
106
+ readonly name: "symbol";
107
+ readonly type: "string";
108
+ }, {
109
+ readonly name: "assets";
110
+ readonly type: "address[]";
111
+ }, {
112
+ readonly name: "amounts";
113
+ readonly type: "uint256[]";
114
+ }, {
115
+ readonly name: "initialShares";
116
+ readonly type: "uint256";
117
+ }];
118
+ }, {
119
+ readonly name: "additionalDetails";
120
+ readonly type: "tuple";
121
+ readonly components: readonly [{
122
+ readonly name: "auctionLength";
123
+ readonly type: "uint256";
124
+ }, {
125
+ readonly name: "feeRecipients";
126
+ readonly type: "tuple[]";
127
+ readonly components: readonly [{
128
+ readonly name: "recipient";
129
+ readonly type: "address";
130
+ }, {
131
+ readonly name: "portion";
132
+ readonly type: "uint96";
133
+ }];
134
+ }, {
135
+ readonly name: "tvlFee";
136
+ readonly type: "uint256";
137
+ }, {
138
+ readonly name: "mintFee";
139
+ readonly type: "uint256";
140
+ }, {
141
+ readonly name: "mandate";
142
+ readonly type: "string";
143
+ }];
144
+ }, {
145
+ readonly name: "folioFlags";
146
+ readonly type: "tuple";
147
+ readonly components: readonly [{
148
+ readonly name: "trustedFillerEnabled";
149
+ readonly type: "bool";
150
+ }, {
151
+ readonly name: "rebalanceControl";
152
+ readonly type: "tuple";
153
+ readonly components: readonly [{
154
+ readonly name: "weightControl";
155
+ readonly type: "bool";
156
+ }, {
157
+ readonly name: "priceControl";
158
+ readonly type: "uint8";
159
+ }];
160
+ }, {
161
+ readonly name: "bidsEnabled";
162
+ readonly type: "bool";
163
+ }];
164
+ }, {
165
+ readonly name: "ownerGovParams";
166
+ readonly type: "tuple";
167
+ readonly components: readonly [{
168
+ readonly name: "votingDelay";
169
+ readonly type: "uint48";
170
+ }, {
171
+ readonly name: "votingPeriod";
172
+ readonly type: "uint32";
173
+ }, {
174
+ readonly name: "proposalThreshold";
175
+ readonly type: "uint256";
176
+ }, {
177
+ readonly name: "quorumThreshold";
178
+ readonly type: "uint256";
179
+ }, {
180
+ readonly name: "timelockDelay";
181
+ readonly type: "uint256";
182
+ }, {
183
+ readonly name: "guardians";
184
+ readonly type: "address[]";
185
+ }];
186
+ }, {
187
+ readonly name: "tradingGovParams";
188
+ readonly type: "tuple";
189
+ readonly components: readonly [{
190
+ readonly name: "votingDelay";
191
+ readonly type: "uint48";
192
+ }, {
193
+ readonly name: "votingPeriod";
194
+ readonly type: "uint32";
195
+ }, {
196
+ readonly name: "proposalThreshold";
197
+ readonly type: "uint256";
198
+ }, {
199
+ readonly name: "quorumThreshold";
200
+ readonly type: "uint256";
201
+ }, {
202
+ readonly name: "timelockDelay";
203
+ readonly type: "uint256";
204
+ }, {
205
+ readonly name: "guardians";
206
+ readonly type: "address[]";
207
+ }];
208
+ }, {
209
+ readonly name: "govRoles";
210
+ readonly type: "tuple";
211
+ readonly components: readonly [{
212
+ readonly name: "existingBasketManagers";
213
+ readonly type: "address[]";
214
+ }, {
215
+ readonly name: "auctionLaunchers";
216
+ readonly type: "address[]";
217
+ }, {
218
+ readonly name: "brandManagers";
219
+ readonly type: "address[]";
220
+ }];
221
+ }, {
222
+ readonly name: "deploymentNonce";
223
+ readonly type: "bytes32";
224
+ }];
225
+ readonly outputs: readonly [{
226
+ readonly name: "folio";
227
+ readonly type: "address";
228
+ }, {
229
+ readonly name: "proxyAdmin";
230
+ readonly type: "address";
231
+ }];
232
+ readonly stateMutability: "nonpayable";
233
+ }, {
234
+ readonly type: "event";
235
+ readonly name: "FolioDeployed";
236
+ readonly inputs: readonly [{
237
+ readonly name: "folioOwner";
238
+ readonly type: "address";
239
+ readonly indexed: true;
240
+ }, {
241
+ readonly name: "folio";
242
+ readonly type: "address";
243
+ readonly indexed: true;
244
+ }, {
245
+ readonly name: "folioAdmin";
246
+ readonly type: "address";
247
+ readonly indexed: false;
248
+ }];
249
+ readonly anonymous: false;
250
+ }, {
251
+ readonly type: "event";
252
+ readonly name: "GovernedFolioDeployed";
253
+ readonly inputs: readonly [{
254
+ readonly name: "stToken";
255
+ readonly type: "address";
256
+ readonly indexed: true;
257
+ }, {
258
+ readonly name: "folio";
259
+ readonly type: "address";
260
+ readonly indexed: true;
261
+ }, {
262
+ readonly name: "ownerGovernor";
263
+ readonly type: "address";
264
+ readonly indexed: false;
265
+ }, {
266
+ readonly name: "ownerTimelock";
267
+ readonly type: "address";
268
+ readonly indexed: false;
269
+ }, {
270
+ readonly name: "tradingGovernor";
271
+ readonly type: "address";
272
+ readonly indexed: false;
273
+ }, {
274
+ readonly name: "tradingTimelock";
275
+ readonly type: "address";
276
+ readonly indexed: false;
277
+ }];
278
+ readonly anonymous: false;
279
+ }];
280
+ export default _default;
281
+ //# sourceMappingURL=deployer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployer.d.ts","sourceRoot":"","sources":["../../src/abi/deployer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBAgLU"}
@@ -0,0 +1,178 @@
1
+ export default [
2
+ {
3
+ type: 'function',
4
+ name: 'deployFolio',
5
+ inputs: [
6
+ {
7
+ name: 'basicDetails',
8
+ type: 'tuple',
9
+ components: [
10
+ { name: 'name', type: 'string' },
11
+ { name: 'symbol', type: 'string' },
12
+ { name: 'assets', type: 'address[]' },
13
+ { name: 'amounts', type: 'uint256[]' },
14
+ { name: 'initialShares', type: 'uint256' },
15
+ ],
16
+ },
17
+ {
18
+ name: 'additionalDetails',
19
+ type: 'tuple',
20
+ components: [
21
+ { name: 'auctionLength', type: 'uint256' },
22
+ {
23
+ name: 'feeRecipients',
24
+ type: 'tuple[]',
25
+ components: [
26
+ { name: 'recipient', type: 'address' },
27
+ { name: 'portion', type: 'uint96' },
28
+ ],
29
+ },
30
+ { name: 'tvlFee', type: 'uint256' },
31
+ { name: 'mintFee', type: 'uint256' },
32
+ { name: 'mandate', type: 'string' },
33
+ ],
34
+ },
35
+ {
36
+ name: 'folioFlags',
37
+ type: 'tuple',
38
+ components: [
39
+ { name: 'trustedFillerEnabled', type: 'bool' },
40
+ {
41
+ name: 'rebalanceControl',
42
+ type: 'tuple',
43
+ components: [
44
+ { name: 'weightControl', type: 'bool' },
45
+ { name: 'priceControl', type: 'uint8' },
46
+ ],
47
+ },
48
+ { name: 'bidsEnabled', type: 'bool' },
49
+ ],
50
+ },
51
+ { name: 'owner', type: 'address' },
52
+ { name: 'basketManagers', type: 'address[]' },
53
+ { name: 'auctionLaunchers', type: 'address[]' },
54
+ { name: 'brandManagers', type: 'address[]' },
55
+ { name: 'deploymentNonce', type: 'bytes32' },
56
+ ],
57
+ outputs: [
58
+ { name: 'folio', type: 'address' },
59
+ { name: 'proxyAdmin', type: 'address' },
60
+ ],
61
+ stateMutability: 'nonpayable',
62
+ },
63
+ {
64
+ type: 'function',
65
+ name: 'deployGovernedFolio',
66
+ inputs: [
67
+ { name: 'stToken', type: 'address' },
68
+ {
69
+ name: 'basicDetails',
70
+ type: 'tuple',
71
+ components: [
72
+ { name: 'name', type: 'string' },
73
+ { name: 'symbol', type: 'string' },
74
+ { name: 'assets', type: 'address[]' },
75
+ { name: 'amounts', type: 'uint256[]' },
76
+ { name: 'initialShares', type: 'uint256' },
77
+ ],
78
+ },
79
+ {
80
+ name: 'additionalDetails',
81
+ type: 'tuple',
82
+ components: [
83
+ { name: 'auctionLength', type: 'uint256' },
84
+ {
85
+ name: 'feeRecipients',
86
+ type: 'tuple[]',
87
+ components: [
88
+ { name: 'recipient', type: 'address' },
89
+ { name: 'portion', type: 'uint96' },
90
+ ],
91
+ },
92
+ { name: 'tvlFee', type: 'uint256' },
93
+ { name: 'mintFee', type: 'uint256' },
94
+ { name: 'mandate', type: 'string' },
95
+ ],
96
+ },
97
+ {
98
+ name: 'folioFlags',
99
+ type: 'tuple',
100
+ components: [
101
+ { name: 'trustedFillerEnabled', type: 'bool' },
102
+ {
103
+ name: 'rebalanceControl',
104
+ type: 'tuple',
105
+ components: [
106
+ { name: 'weightControl', type: 'bool' },
107
+ { name: 'priceControl', type: 'uint8' },
108
+ ],
109
+ },
110
+ { name: 'bidsEnabled', type: 'bool' },
111
+ ],
112
+ },
113
+ {
114
+ name: 'ownerGovParams',
115
+ type: 'tuple',
116
+ components: [
117
+ { name: 'votingDelay', type: 'uint48' },
118
+ { name: 'votingPeriod', type: 'uint32' },
119
+ { name: 'proposalThreshold', type: 'uint256' },
120
+ { name: 'quorumThreshold', type: 'uint256' },
121
+ { name: 'timelockDelay', type: 'uint256' },
122
+ { name: 'guardians', type: 'address[]' },
123
+ ],
124
+ },
125
+ {
126
+ name: 'tradingGovParams',
127
+ type: 'tuple',
128
+ components: [
129
+ { name: 'votingDelay', type: 'uint48' },
130
+ { name: 'votingPeriod', type: 'uint32' },
131
+ { name: 'proposalThreshold', type: 'uint256' },
132
+ { name: 'quorumThreshold', type: 'uint256' },
133
+ { name: 'timelockDelay', type: 'uint256' },
134
+ { name: 'guardians', type: 'address[]' },
135
+ ],
136
+ },
137
+ {
138
+ name: 'govRoles',
139
+ type: 'tuple',
140
+ components: [
141
+ { name: 'existingBasketManagers', type: 'address[]' },
142
+ { name: 'auctionLaunchers', type: 'address[]' },
143
+ { name: 'brandManagers', type: 'address[]' },
144
+ ],
145
+ },
146
+ { name: 'deploymentNonce', type: 'bytes32' },
147
+ ],
148
+ outputs: [
149
+ { name: 'folio', type: 'address' },
150
+ { name: 'proxyAdmin', type: 'address' },
151
+ ],
152
+ stateMutability: 'nonpayable',
153
+ },
154
+ {
155
+ type: 'event',
156
+ name: 'FolioDeployed',
157
+ inputs: [
158
+ { name: 'folioOwner', type: 'address', indexed: true },
159
+ { name: 'folio', type: 'address', indexed: true },
160
+ { name: 'folioAdmin', type: 'address', indexed: false },
161
+ ],
162
+ anonymous: false,
163
+ },
164
+ {
165
+ type: 'event',
166
+ name: 'GovernedFolioDeployed',
167
+ inputs: [
168
+ { name: 'stToken', type: 'address', indexed: true },
169
+ { name: 'folio', type: 'address', indexed: true },
170
+ { name: 'ownerGovernor', type: 'address', indexed: false },
171
+ { name: 'ownerTimelock', type: 'address', indexed: false },
172
+ { name: 'tradingGovernor', type: 'address', indexed: false },
173
+ { name: 'tradingTimelock', type: 'address', indexed: false },
174
+ ],
175
+ anonymous: false,
176
+ },
177
+ ];
178
+ //# sourceMappingURL=deployer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployer.js","sourceRoot":"","sources":["../../src/abi/deployer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ export declare const ERC20_META_ABI: readonly [{
2
+ readonly name: "symbol";
3
+ readonly type: "function";
4
+ readonly inputs: readonly [];
5
+ readonly outputs: readonly [{
6
+ readonly type: "string";
7
+ }];
8
+ readonly stateMutability: "view";
9
+ }, {
10
+ readonly name: "decimals";
11
+ readonly type: "function";
12
+ readonly inputs: readonly [];
13
+ readonly outputs: readonly [{
14
+ readonly type: "uint8";
15
+ }];
16
+ readonly stateMutability: "view";
17
+ }, {
18
+ readonly name: "approve";
19
+ readonly type: "function";
20
+ readonly inputs: readonly [{
21
+ readonly name: "spender";
22
+ readonly type: "address";
23
+ }, {
24
+ readonly name: "amount";
25
+ readonly type: "uint256";
26
+ }];
27
+ readonly outputs: readonly [{
28
+ readonly type: "bool";
29
+ }];
30
+ readonly stateMutability: "nonpayable";
31
+ }, {
32
+ readonly name: "allowance";
33
+ readonly type: "function";
34
+ readonly inputs: readonly [{
35
+ readonly name: "owner";
36
+ readonly type: "address";
37
+ }, {
38
+ readonly name: "spender";
39
+ readonly type: "address";
40
+ }];
41
+ readonly outputs: readonly [{
42
+ readonly type: "uint256";
43
+ }];
44
+ readonly stateMutability: "view";
45
+ }, {
46
+ readonly name: "totalSupply";
47
+ readonly type: "function";
48
+ readonly inputs: readonly [];
49
+ readonly outputs: readonly [{
50
+ readonly type: "uint256";
51
+ }];
52
+ readonly stateMutability: "view";
53
+ }, {
54
+ readonly name: "balanceOf";
55
+ readonly type: "function";
56
+ readonly inputs: readonly [{
57
+ readonly name: "account";
58
+ readonly type: "address";
59
+ }];
60
+ readonly outputs: readonly [{
61
+ readonly type: "uint256";
62
+ }];
63
+ readonly stateMutability: "view";
64
+ }, {
65
+ readonly name: "name";
66
+ readonly type: "function";
67
+ readonly inputs: readonly [];
68
+ readonly outputs: readonly [{
69
+ readonly type: "string";
70
+ }];
71
+ readonly stateMutability: "view";
72
+ }];
73
+ //# sourceMappingURL=erc20.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"erc20.d.ts","sourceRoot":"","sources":["../../src/abi/erc20.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwDjB,CAAA"}