@agoric/inter-protocol 0.16.2-other-dev-1f26562.0 → 0.16.2-other-dev-3eb1a1d.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 (191) hide show
  1. package/README.md +6 -6
  2. package/package.json +42 -36
  3. package/scripts/build-bundles.js +5 -21
  4. package/src/auction/auctionBook.d.ts +147 -0
  5. package/src/auction/auctionBook.d.ts.map +1 -0
  6. package/src/auction/auctionBook.js +156 -150
  7. package/src/auction/auctionMath.d.ts +17 -0
  8. package/src/auction/auctionMath.d.ts.map +1 -0
  9. package/src/auction/auctionMath.js +81 -0
  10. package/src/auction/auctioneer.d.ts +69 -0
  11. package/src/auction/auctioneer.d.ts.map +1 -0
  12. package/src/auction/auctioneer.js +70 -59
  13. package/src/auction/offerBook.d.ts +45 -0
  14. package/src/auction/offerBook.d.ts.map +1 -0
  15. package/src/auction/offerBook.js +13 -12
  16. package/src/auction/params.d.ts +144 -0
  17. package/src/auction/params.d.ts.map +1 -0
  18. package/src/auction/params.js +10 -9
  19. package/src/auction/scheduleMath.d.ts +5 -0
  20. package/src/auction/scheduleMath.d.ts.map +1 -0
  21. package/src/auction/scheduleMath.js +18 -16
  22. package/src/auction/scheduler.d.ts +50 -0
  23. package/src/auction/scheduler.d.ts.map +1 -0
  24. package/src/auction/scheduler.js +53 -47
  25. package/src/auction/sortedOffers.d.ts +8 -0
  26. package/src/auction/sortedOffers.d.ts.map +1 -0
  27. package/src/auction/sortedOffers.js +10 -9
  28. package/src/auction/util.d.ts +30 -0
  29. package/src/auction/util.d.ts.map +1 -0
  30. package/src/auction/util.js +9 -6
  31. package/src/clientSupport.d.ts +167 -0
  32. package/src/clientSupport.d.ts.map +1 -0
  33. package/src/clientSupport.js +155 -97
  34. package/src/collectFees.d.ts +2 -0
  35. package/src/collectFees.d.ts.map +1 -0
  36. package/src/contractSupport.d.ts +28 -0
  37. package/src/contractSupport.d.ts.map +1 -0
  38. package/src/contractSupport.js +19 -13
  39. package/src/econCommitteeCharter.d.ts +40 -0
  40. package/src/econCommitteeCharter.d.ts.map +1 -0
  41. package/src/econCommitteeCharter.js +21 -20
  42. package/src/feeDistributor.d.ts +224 -0
  43. package/src/feeDistributor.d.ts.map +1 -0
  44. package/src/feeDistributor.js +37 -33
  45. package/src/index.d.ts +2 -0
  46. package/src/index.d.ts.map +1 -0
  47. package/src/index.js +1 -0
  48. package/src/interest-math.d.ts +3 -0
  49. package/src/interest-math.d.ts.map +1 -0
  50. package/src/interest.d.ts +28 -0
  51. package/src/interest.d.ts.map +1 -0
  52. package/src/interest.js +23 -18
  53. package/src/price/README.md +13 -0
  54. package/src/price/fluxAggregatorContract.d.ts +71 -0
  55. package/src/price/fluxAggregatorContract.d.ts.map +1 -0
  56. package/src/price/fluxAggregatorContract.js +64 -55
  57. package/src/price/fluxAggregatorKit.d.ts +103 -0
  58. package/src/price/fluxAggregatorKit.d.ts.map +1 -0
  59. package/src/price/fluxAggregatorKit.js +52 -40
  60. package/src/price/priceOracleKit.d.ts +38 -0
  61. package/src/price/priceOracleKit.d.ts.map +1 -0
  62. package/src/price/priceOracleKit.js +12 -14
  63. package/src/price/roundsManager.d.ts +204 -0
  64. package/src/price/roundsManager.d.ts.map +1 -0
  65. package/src/price/roundsManager.js +131 -85
  66. package/src/proposals/README.md +2 -3
  67. package/src/proposals/add-auction.d.ts +109 -0
  68. package/src/proposals/add-auction.d.ts.map +1 -0
  69. package/src/proposals/add-auction.js +256 -0
  70. package/src/proposals/addAssetToVault.d.ts +173 -0
  71. package/src/proposals/addAssetToVault.d.ts.map +1 -0
  72. package/src/proposals/addAssetToVault.js +192 -40
  73. package/src/proposals/committee-proposal.d.ts +113 -0
  74. package/src/proposals/committee-proposal.d.ts.map +1 -0
  75. package/src/proposals/committee-proposal.js +25 -31
  76. package/src/proposals/core-proposal.d.ts +149 -0
  77. package/src/proposals/core-proposal.d.ts.map +1 -0
  78. package/src/proposals/core-proposal.js +9 -11
  79. package/src/proposals/deploy-price-feeds.d.ts +76 -0
  80. package/src/proposals/deploy-price-feeds.d.ts.map +1 -0
  81. package/src/proposals/deploy-price-feeds.js +316 -0
  82. package/src/proposals/econ-behaviors.d.ts +541 -0
  83. package/src/proposals/econ-behaviors.d.ts.map +1 -0
  84. package/src/proposals/econ-behaviors.js +64 -45
  85. package/src/proposals/price-feed-proposal.d.ts +84 -0
  86. package/src/proposals/price-feed-proposal.d.ts.map +1 -0
  87. package/src/proposals/price-feed-proposal.js +109 -51
  88. package/src/proposals/replace-fee-distributor.d.ts +48 -0
  89. package/src/proposals/replace-fee-distributor.d.ts.map +1 -0
  90. package/src/proposals/replace-fee-distributor.js +195 -0
  91. package/src/proposals/replace-scaledPriceAuthorities.d.ts +30 -0
  92. package/src/proposals/replace-scaledPriceAuthorities.d.ts.map +1 -0
  93. package/src/proposals/replace-scaledPriceAuthorities.js +124 -0
  94. package/src/proposals/replaceElectorate.d.ts +55 -0
  95. package/src/proposals/replaceElectorate.d.ts.map +1 -0
  96. package/src/proposals/replaceElectorate.js +521 -0
  97. package/src/proposals/startEconCommittee.d.ts +34 -0
  98. package/src/proposals/startEconCommittee.d.ts.map +1 -0
  99. package/src/proposals/startEconCommittee.js +2 -2
  100. package/src/proposals/startPSM.d.ts +59 -0
  101. package/src/proposals/startPSM.d.ts.map +1 -0
  102. package/src/proposals/startPSM.js +44 -29
  103. package/src/proposals/upgrade-scaledPriceAuthorities.d.ts +24 -0
  104. package/src/proposals/upgrade-scaledPriceAuthorities.d.ts.map +1 -0
  105. package/src/proposals/upgrade-scaledPriceAuthorities.js +78 -0
  106. package/src/proposals/upgrade-vaults.d.ts +41 -0
  107. package/src/proposals/upgrade-vaults.d.ts.map +1 -0
  108. package/src/proposals/upgrade-vaults.js +202 -0
  109. package/src/proposals/utils.d.ts +19 -0
  110. package/src/proposals/utils.d.ts.map +1 -0
  111. package/src/proposals/utils.js +43 -9
  112. package/src/provisionPool.d.ts +163 -0
  113. package/src/provisionPool.d.ts.map +1 -0
  114. package/src/provisionPool.js +122 -0
  115. package/src/provisionPoolKit.d.ts +359 -0
  116. package/src/provisionPoolKit.d.ts.map +1 -0
  117. package/src/provisionPoolKit.js +522 -0
  118. package/src/psm/psm.d.ts +125 -0
  119. package/src/psm/psm.d.ts.map +1 -0
  120. package/src/psm/psm.js +80 -79
  121. package/src/psm/types-ambient.d.ts +2 -0
  122. package/src/psm/types-ambient.d.ts.map +1 -0
  123. package/src/psm/types-ambient.js +3 -0
  124. package/src/reserve/assetReserve.d.ts +47 -0
  125. package/src/reserve/assetReserve.d.ts.map +1 -0
  126. package/src/reserve/assetReserve.js +28 -19
  127. package/src/reserve/assetReserveKit.d.ts +74 -0
  128. package/src/reserve/assetReserveKit.d.ts.map +1 -0
  129. package/src/reserve/assetReserveKit.js +24 -30
  130. package/src/reserve/params.d.ts +10 -0
  131. package/src/reserve/params.d.ts.map +1 -0
  132. package/src/tokens.d.ts +3 -0
  133. package/src/tokens.d.ts.map +1 -0
  134. package/src/tokens.js +5 -0
  135. package/src/vaultFactory/burn.d.ts +2 -0
  136. package/src/vaultFactory/burn.d.ts.map +1 -0
  137. package/src/vaultFactory/burn.js +1 -1
  138. package/src/vaultFactory/liquidation.d.ts +23 -0
  139. package/src/vaultFactory/liquidation.d.ts.map +1 -0
  140. package/src/vaultFactory/liquidation.js +37 -24
  141. package/src/vaultFactory/math.d.ts +11 -0
  142. package/src/vaultFactory/math.d.ts.map +1 -0
  143. package/src/vaultFactory/math.js +10 -9
  144. package/src/vaultFactory/orderedVaultStore.d.ts +93 -0
  145. package/src/vaultFactory/orderedVaultStore.d.ts.map +1 -0
  146. package/src/vaultFactory/orderedVaultStore.js +8 -11
  147. package/src/vaultFactory/params.d.ts +140 -0
  148. package/src/vaultFactory/params.d.ts.map +1 -0
  149. package/src/vaultFactory/params.js +52 -24
  150. package/src/vaultFactory/prioritizedVaults.d.ts +279 -0
  151. package/src/vaultFactory/prioritizedVaults.d.ts.map +1 -0
  152. package/src/vaultFactory/prioritizedVaults.js +4 -4
  153. package/src/vaultFactory/proceeds.d.ts +35 -0
  154. package/src/vaultFactory/proceeds.d.ts.map +1 -0
  155. package/src/vaultFactory/proceeds.js +26 -18
  156. package/src/vaultFactory/storeUtils.d.ts +25 -0
  157. package/src/vaultFactory/storeUtils.d.ts.map +1 -0
  158. package/src/vaultFactory/storeUtils.js +10 -12
  159. package/src/vaultFactory/types-ambient.d.ts +137 -0
  160. package/src/vaultFactory/types-ambient.d.ts.map +1 -0
  161. package/src/vaultFactory/{types.js → types-ambient.js} +42 -42
  162. package/src/vaultFactory/vault.d.ts +343 -0
  163. package/src/vaultFactory/vault.d.ts.map +1 -0
  164. package/src/vaultFactory/vault.js +105 -99
  165. package/src/vaultFactory/vaultDirector.d.ts +341 -0
  166. package/src/vaultFactory/vaultDirector.d.ts.map +1 -0
  167. package/src/vaultFactory/vaultDirector.js +86 -64
  168. package/src/vaultFactory/vaultFactory.d.ts +202 -0
  169. package/src/vaultFactory/vaultFactory.d.ts.map +1 -0
  170. package/src/vaultFactory/vaultFactory.js +52 -33
  171. package/src/vaultFactory/vaultHolder.d.ts +126 -0
  172. package/src/vaultFactory/vaultHolder.d.ts.map +1 -0
  173. package/src/vaultFactory/vaultHolder.js +11 -16
  174. package/src/vaultFactory/vaultKit.d.ts +32 -0
  175. package/src/vaultFactory/vaultKit.d.ts.map +1 -0
  176. package/src/vaultFactory/vaultKit.js +5 -4
  177. package/src/vaultFactory/vaultManager.d.ts +674 -0
  178. package/src/vaultFactory/vaultManager.d.ts.map +1 -0
  179. package/src/vaultFactory/vaultManager.js +257 -158
  180. package/CHANGELOG.md +0 -1041
  181. package/exported.js +0 -2
  182. package/scripts/add-collateral-core.js +0 -112
  183. package/scripts/deploy-contracts.js +0 -100
  184. package/scripts/init-core.js +0 -198
  185. package/scripts/invite-committee-core.js +0 -42
  186. package/scripts/manual-price-feed.js +0 -117
  187. package/scripts/price-feed-core.js +0 -104
  188. package/scripts/start-local-chain.sh +0 -84
  189. package/src/psm/types.js +0 -3
  190. package/src/typeGuards.js +0 -13
  191. package/src/vaultFactory/type-imports.js +0 -4
package/README.md CHANGED
@@ -42,7 +42,7 @@ import { makeFollower } from '@agoric/casting';
42
42
 
43
43
  The canonical keys (under `published`) are as follows. Non-terminal nodes could have data but don't yet. A `0` indicates the index of that child in added order. To get the actual key look it up in parent. High cardinality types get a parent key for enumeration (e.g. `vaults`.)
44
44
  - `published`
45
- - `vaultFactory` - [snapshot of details](./test/vaultFactory/snapshots/test-vaultFactory.js.md)
45
+ - `vaultFactory` - [snapshot of details](./test/vaultFactory/snapshots/vaultFactory.test.js.md)
46
46
  - `governance`
47
47
  - `metrics`
48
48
  - `managers`
@@ -51,22 +51,22 @@ The canonical keys (under `published`) are as follows. Non-terminal nodes could
51
51
  - `governance`
52
52
  - `vaults`
53
53
  - `vault0`
54
- - `auction` - [snapshot of details](./test/auction/snapshots/test-auctionContract.js.md)
54
+ - `auction` - [snapshot of details](./test/auction/snapshots/auctionContract.test.js.md)
55
55
  - `schedule`
56
56
  - `governance`
57
57
  - `book0`
58
- - `reserve` - [snapshot of details](./test/reserve/snapshots/test-reserve.js.md)
58
+ - `reserve` - [snapshot of details](./test/reserve/snapshots/reserve.test.js.md)
59
59
  - `governance`
60
60
  - `metrics`
61
- - `priceFeed` - [snapshot of details](./test/price/snapshots/test-fluxAggregatorKit.js.md)
61
+ - `priceFeed` - [snapshot of details](./test/price/snapshots/fluxAggregatorKit.test.js.md)
62
62
  - `${inputBrand}-${outputBrand}_price_feed`
63
63
  - `${inputBrand}-${outputBrand}_price_feed.latestRound`
64
- - `psm` - [snapshot of details](./test/psm/snapshots/test-psm.js.md)
64
+ - `psm` - [snapshot of details](./test/psm/snapshots/psm.test.js.md)
65
65
  - `<minted>`
66
66
  - `<anchor>`
67
67
  - `governance`
68
68
  - `metrics`
69
- - `committees` - [snapshot of details](../governance/test/unitTests/snapshots/test-committee.js.md)
69
+ - `committees` - [snapshot of details](../governance/test/unitTests/snapshots/committee.test.js.md)
70
70
  - `Economic_Committee`
71
71
  - `latestQuestion`
72
72
  - `latestOutcome`
package/package.json CHANGED
@@ -1,22 +1,24 @@
1
1
  {
2
2
  "name": "@agoric/inter-protocol",
3
- "version": "0.16.2-other-dev-1f26562.0+1f26562",
3
+ "version": "0.16.2-other-dev-3eb1a1d.0+3eb1a1d",
4
4
  "description": "Core cryptoeconomy contracts",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
7
7
  "engines": {
8
- "node": ">=14.15.0"
8
+ "node": "^18.12 || ^20.9"
9
9
  },
10
10
  "scripts": {
11
11
  "build": "yarn build:bundles",
12
12
  "build:bundles": "node ./scripts/build-bundles.js",
13
+ "prepack": "tsc --build tsconfig.build.json",
14
+ "postpack": "git clean -f '*.d.ts*' '*.tsbuildinfo'",
13
15
  "test": "ava",
14
- "test:c8": "c8 $C8_OPTIONS ava --config=ava-nesm.config.js",
16
+ "test:c8": "c8 --all $C8_OPTIONS ava",
15
17
  "test:xs": "exit 0",
16
18
  "lint-fix": "yarn lint:eslint --fix",
17
19
  "lint": "run-s --continue-on-error lint:*",
18
20
  "lint:eslint": "eslint .",
19
- "lint:types": "tsc -p jsconfig.json"
21
+ "lint:types": "tsc"
20
22
  },
21
23
  "repository": {
22
24
  "type": "git",
@@ -29,54 +31,58 @@
29
31
  },
30
32
  "homepage": "https://github.com/Agoric/agoric-sdk#readme",
31
33
  "dependencies": {
32
- "@agoric/assert": "0.6.1-other-dev-1f26562.0+1f26562",
33
- "@agoric/ertp": "0.16.3-other-dev-1f26562.0+1f26562",
34
- "@agoric/governance": "0.10.4-other-dev-1f26562.0+1f26562",
35
- "@agoric/internal": "0.3.3-other-dev-1f26562.0+1f26562",
36
- "@agoric/notifier": "0.6.3-other-dev-1f26562.0+1f26562",
37
- "@agoric/store": "0.9.3-other-dev-1f26562.0+1f26562",
38
- "@agoric/time": "0.3.3-other-dev-1f26562.0+1f26562",
39
- "@agoric/vat-data": "0.5.3-other-dev-1f26562.0+1f26562",
40
- "@agoric/vats": "0.15.2-other-dev-1f26562.0+1f26562",
41
- "@agoric/zoe": "0.26.3-other-dev-1f26562.0+1f26562",
42
- "@endo/captp": "3.1.1",
43
- "@endo/eventual-send": "0.17.2",
44
- "@endo/far": "0.2.18",
45
- "@endo/marshal": "0.8.5",
46
- "@endo/nat": "4.1.27",
47
- "agoric": "0.21.2-other-dev-1f26562.0+1f26562",
48
- "jessie.js": "^0.3.2"
34
+ "@agoric/ertp": "0.16.3-other-dev-3eb1a1d.0+3eb1a1d",
35
+ "@agoric/governance": "0.10.4-other-dev-3eb1a1d.0+3eb1a1d",
36
+ "@agoric/internal": "0.3.3-other-dev-3eb1a1d.0+3eb1a1d",
37
+ "@agoric/notifier": "0.6.3-other-dev-3eb1a1d.0+3eb1a1d",
38
+ "@agoric/store": "0.9.3-other-dev-3eb1a1d.0+3eb1a1d",
39
+ "@agoric/time": "0.3.3-other-dev-3eb1a1d.0+3eb1a1d",
40
+ "@agoric/vat-data": "0.5.3-other-dev-3eb1a1d.0+3eb1a1d",
41
+ "@agoric/vats": "0.15.2-other-dev-3eb1a1d.0+3eb1a1d",
42
+ "@agoric/zoe": "0.26.3-other-dev-3eb1a1d.0+3eb1a1d",
43
+ "@endo/captp": "^4.4.3",
44
+ "@endo/errors": "^1.2.8",
45
+ "@endo/eventual-send": "^1.2.8",
46
+ "@endo/far": "^1.1.9",
47
+ "@endo/marshal": "^1.6.2",
48
+ "@endo/nat": "^5.0.13",
49
+ "@endo/promise-kit": "^1.1.8",
50
+ "jessie.js": "^0.3.4"
49
51
  },
50
52
  "devDependencies": {
51
- "@agoric/deploy-script-support": "0.10.4-other-dev-1f26562.0+1f26562",
52
- "@agoric/smart-wallet": "0.5.4-other-dev-1f26562.0+1f26562",
53
- "@agoric/swingset-liveslots": "0.10.3-other-dev-1f26562.0+1f26562",
54
- "@agoric/swingset-vat": "0.32.3-other-dev-1f26562.0+1f26562",
55
- "@endo/bundle-source": "2.5.2-upstream-rollup",
56
- "@endo/init": "0.5.56",
57
- "@endo/promise-kit": "0.2.56",
58
- "@fast-check/ava": "^1.1.3",
59
- "ava": "^5.2.0",
60
- "c8": "^7.13.0",
53
+ "@agoric/smart-wallet": "0.5.4-other-dev-3eb1a1d.0+3eb1a1d",
54
+ "@agoric/swingset-liveslots": "0.10.3-other-dev-3eb1a1d.0+3eb1a1d",
55
+ "@agoric/swingset-vat": "0.32.3-other-dev-3eb1a1d.0+3eb1a1d",
56
+ "@agoric/zone": "0.2.3-other-dev-3eb1a1d.0+3eb1a1d",
57
+ "@endo/bundle-source": "^3.5.0",
58
+ "@endo/init": "^1.1.7",
59
+ "@endo/promise-kit": "^1.1.8",
60
+ "@fast-check/ava": "^1.1.5",
61
+ "ava": "^5.3.0",
62
+ "c8": "^10.1.2",
61
63
  "deep-object-diff": "^1.1.9",
62
64
  "import-meta-resolve": "^2.2.1"
63
65
  },
64
66
  "files": [
65
- "scripts/",
67
+ "scripts",
66
68
  "src/",
67
- "exported.js",
68
69
  "NEWS.md"
69
70
  ],
70
71
  "ava": {
71
72
  "files": [
72
- "test/**/test-*.js"
73
+ "test/**/*.test.*"
74
+ ],
75
+ "require": [
76
+ "@endo/init/debug.js"
73
77
  ],
74
- "concurrency": 2,
75
78
  "workerThreads": false,
76
79
  "timeout": "10m"
77
80
  },
78
81
  "publishConfig": {
79
82
  "access": "public"
80
83
  },
81
- "gitHead": "1f265627270d514ab48943f86c668eb58a280552"
84
+ "typeCoverage": {
85
+ "atLeast": 95.71
86
+ },
87
+ "gitHead": "3eb1a1d2d75b2b4a94807cd3bf759bc9fc531f05"
82
88
  }
@@ -1,36 +1,20 @@
1
1
  #! /usr/bin/env node
2
2
  import '@endo/init';
3
- import {
4
- createBundles,
5
- extractProposalBundles,
6
- } from '@agoric/internal/src/node/createBundles.js';
7
- import url from 'url';
8
- import process from 'process';
9
-
10
- import { defaultProposalBuilder } from './init-core.js';
11
- import { defaultProposalBuilder as collateralProposalBuilder } from './add-collateral-core.js';
12
3
 
13
- process.env.INTERCHAIN_ISSUER_BOARD_ID =
14
- 'arbitrary value to prevent build error';
4
+ import { createBundles } from '@agoric/internal/src/node/createBundles.js';
5
+ import url from 'url';
15
6
 
16
7
  const dirname = url.fileURLToPath(new URL('.', import.meta.url));
17
- await extractProposalBundles(
18
- [
19
- ['.', defaultProposalBuilder],
20
- ['.', collateralProposalBuilder],
21
- ],
22
- dirname,
23
- );
24
8
 
25
9
  await createBundles(
26
10
  [
27
- ['../src/psm/psm.js', '../bundles/bundle-psm.js'],
11
+ ['@agoric/inter-protocol/src/psm/psm.js', '../bundles/bundle-psm.js'],
28
12
  [
29
- '../src/econCommitteeCharter.js',
13
+ '@agoric/inter-protocol/src/econCommitteeCharter.js',
30
14
  '../bundles/bundle-econCommitteeCharter.js',
31
15
  ],
32
16
  [
33
- '../src/price/fluxAggregatorContract.js',
17
+ '@agoric/inter-protocol/src/price/fluxAggregatorContract.js',
34
18
  '../bundles/bundle-fluxAggregatorKit.js',
35
19
  ],
36
20
  ],
@@ -0,0 +1,147 @@
1
+ export function makeOfferSpecShape(bidBrand: Brand<"nat">, collateralBrand: Brand<"nat">): import("@endo/patterns").Matcher;
2
+ export function prepareAuctionBook(baggage: Baggage, zcf: ZCF, makeRecorderKit: import("@agoric/zoe/src/contractSupport/recorder.js").MakeRecorderKit): (bidBrand: globalThis.Brand<"nat">, collateralBrand: globalThis.Brand<"nat">, pAuthority: PriceAuthority, node: globalThis.StorageNode) => ReturnType<(bidBrand: globalThis.Brand<"nat">, collateralBrand: globalThis.Brand<"nat">, pAuthority: PriceAuthority, node: globalThis.StorageNode) => import("@endo/exo").GuardedKit<{
3
+ helper: {
4
+ /**
5
+ * remove the key from the appropriate book, indicated by whether the
6
+ * price is defined.
7
+ *
8
+ * @param {string} key
9
+ * @param {Ratio | undefined} price
10
+ */
11
+ removeFromItsBook(key: string, price: Ratio | undefined): void;
12
+ /**
13
+ * Update the entry in the appropriate book, indicated by whether the
14
+ * price is defined.
15
+ *
16
+ * @param {string} key
17
+ * @param {Amount} collateralSold
18
+ * @param {Ratio | undefined} price
19
+ */
20
+ updateItsBook(key: string, collateralSold: Amount, price: Ratio | undefined): void;
21
+ /**
22
+ * Settle with seat. The caller is responsible for updating the book, if
23
+ * any.
24
+ *
25
+ * @param {ZCFSeat} seat
26
+ * @param {Amount<'nat'>} collateralWanted
27
+ */
28
+ settle(seat: ZCFSeat, collateralWanted: Amount<"nat">): import("@agoric/ertp").NatAmount;
29
+ /**
30
+ * Accept an offer expressed as a price. If the auction is active,
31
+ * attempt to buy collateral. If any of the offer remains add it to the
32
+ * book.
33
+ *
34
+ * @param {ZCFSeat} seat
35
+ * @param {Ratio} price
36
+ * @param {Amount<'nat'>} maxBuy
37
+ * @param {object} opts
38
+ * @param {boolean} opts.trySettle
39
+ * @param {boolean} [opts.exitAfterBuy]
40
+ */
41
+ acceptPriceOffer(seat: ZCFSeat, price: Ratio, maxBuy: Amount<"nat">, { trySettle, exitAfterBuy }: {
42
+ trySettle: boolean;
43
+ exitAfterBuy?: boolean | undefined;
44
+ }): void;
45
+ /**
46
+ * Accept an offer expressed as a discount (or markup). If the auction
47
+ * is active, attempt to buy collateral. If any of the offer remains add
48
+ * it to the book.
49
+ *
50
+ * @param {ZCFSeat} seat
51
+ * @param {Ratio} bidScaling
52
+ * @param {Amount<'nat'>} maxBuy
53
+ * @param {object} opts
54
+ * @param {boolean} opts.trySettle
55
+ * @param {boolean} [opts.exitAfterBuy]
56
+ */
57
+ acceptScaledBidOffer(seat: ZCFSeat, bidScaling: Ratio, maxBuy: Amount<"nat">, { trySettle, exitAfterBuy }: {
58
+ trySettle: boolean;
59
+ exitAfterBuy?: boolean | undefined;
60
+ }): void;
61
+ publishBookData(): Promise<void>;
62
+ observeQuoteNotifier(): void;
63
+ };
64
+ self: {
65
+ /**
66
+ * @param {Amount<'nat'>} assetAmount
67
+ * @param {ZCFSeat} sourceSeat
68
+ * @param {Amount<'nat'>} [proceedsGoal] an amount that the depositor
69
+ * would like to raise. The auction is requested to not sell more
70
+ * collateral than required to raise that much. The auctioneer might
71
+ * sell more if there is more than one supplier of collateral, and
72
+ * they request inconsistent limits.
73
+ */
74
+ addAssets(assetAmount: Amount<"nat">, sourceSeat: ZCFSeat, proceedsGoal?: import("@agoric/ertp").NatAmount | undefined): void;
75
+ /** @type {(reduction: Ratio) => void} */
76
+ settleAtNewRate(reduction: Ratio): void;
77
+ getCurrentPrice(): Ratio | null;
78
+ hasOrders(): boolean;
79
+ captureOraclePriceForRound(): void;
80
+ setStartingRate(rate: any): void;
81
+ /**
82
+ * @param {OfferSpec} offerSpec
83
+ * @param {ZCFSeat} seat
84
+ * @param {boolean} trySettle
85
+ */
86
+ addOffer(offerSpec: OfferSpec, seat: ZCFSeat, trySettle: boolean): void;
87
+ getSeats(): {
88
+ collateralSeat: ZCFSeat;
89
+ bidHoldingSeat: ZCFSeat;
90
+ };
91
+ exitAllSeats(): void;
92
+ endAuction(): void;
93
+ getDataUpdates(): globalThis.Subscriber<BookDataNotification>;
94
+ getPublicTopics(): {
95
+ bookData: import("@agoric/zoe/src/contractSupport/topics.js").PublicTopic<BookDataNotification>;
96
+ };
97
+ };
98
+ }>>["self"];
99
+ export type OfferSpec = {
100
+ maxBuy: Amount<"nat">;
101
+ } & {
102
+ exitAfterBuy?: boolean;
103
+ } & ({
104
+ offerPrice: Ratio;
105
+ } | {
106
+ offerBidScaling: Ratio;
107
+ });
108
+ export type BookDataNotification = {
109
+ /**
110
+ * identifies the priceAuthority and price
111
+ */
112
+ startPrice: Ratio | null;
113
+ /**
114
+ * the price at the current auction
115
+ * tier
116
+ */
117
+ currentPriceLevel: Ratio | null;
118
+ /**
119
+ * The proceeds the sellers
120
+ * were targeting to raise
121
+ */
122
+ startProceedsGoal: Amount<"nat"> | null;
123
+ /**
124
+ * The remainder of the
125
+ * proceeds the sellers were targeting to raise
126
+ */
127
+ remainingProceedsGoal: Amount<"nat"> | null;
128
+ /**
129
+ * The proceeds raised so
130
+ * far in the auction
131
+ */
132
+ proceedsRaised: Amount<"nat"> | undefined;
133
+ /**
134
+ * How much collateral was available
135
+ * for sale at the start. (If more is deposited later, it'll be added in.)
136
+ */
137
+ startCollateral: Amount<"nat">;
138
+ /**
139
+ * The amount of collateral
140
+ * remaining
141
+ */
142
+ collateralAvailable: Amount<"nat"> | null;
143
+ };
144
+ export type AuctionBook = ReturnType<ReturnType<typeof prepareAuctionBook>>;
145
+ import type { Baggage } from '@agoric/vat-data';
146
+ import type { PriceAuthority } from '@agoric/zoe/tools/types.js';
147
+ //# sourceMappingURL=auctionBook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auctionBook.d.ts","sourceRoot":"","sources":["auctionBook.js"],"names":[],"mappings":"AA8EO,6CAHI,KAAK,CAAC,KAAK,CAAC,mBACZ,KAAK,CAAC,KAAK,CAAC,oCAiBtB;AAwBM,4CAJI,OAAO,OACP,GAAG,mBACH,OAAO,6CAA6C,EAAE,eAAe,8IAsoBtE,UAAU;;QA/gBZ;;;;;;WAMG;+BAFQ,MAAM,SACN,KAAK,GAAG,SAAS;QAW5B;;;;;;;WAOG;2BAHQ,MAAM,kBACN,MAAM,SACN,KAAK,GAAG,SAAS;QAW5B;;;;;;WAMG;qBAFQ,OAAO,oBACP,MAAM,CAAC,KAAK,CAAC;QA+DxB;;;;;;;;;;;WAWG;+BANQ,OAAO,SACP,KAAK,UACL,MAAM,CAAC,KAAK,CAAC,+BAErB;YAAsB,SAAS,EAAvB,OAAO;YACQ,YAAY;SAAC;QAsCvC;;;;;;;;;;;WAWG;mCANQ,OAAO,cACP,KAAK,UACL,MAAM,CAAC,KAAK,CAAC,+BAErB;YAAsB,SAAS,EAAvB,OAAO;YACQ,YAAY;SAAC;;;;;QAoGvC;;;;;;;;WAQG;+BAPQ,MAAM,CAAC,KAAK,CAAC,cACb,OAAO;QA4ElB,yCAAyC;mCAAlB,KAAK,GAAK,IAAI;;;;;QAsGrC;;;;WAIG;4BAHQ,SAAS,QACT,OAAO,aACP,OAAO;;;;;;;;;;;;GAqFqB,CAAC,MAAM,CAAC,CAItD;wBAhsBY;IACR,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;CACvB,GAAG;IACF,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,GAAG,CACE;IACE,UAAU,EAAE,KAAK,CAAC;CACnB,GACD;IACE,eAAe,EAAE,KAAK,CAAC;CACxB,CACJ;;;;;gBAyBQ,KAAK,GAAG,IAAI;;;;;uBACZ,KAAK,GAAG,IAAI;;;;;uBAEZ,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI;;;;;2BAEpB,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI;;;;;oBAEpB,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS;;;;;qBAEzB,MAAM,CAAC,KAAK,CAAC;;;;;yBAEb,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI;;0BAopBpB,UAAU,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;6BAluBrC,kBAAkB;oCACX,4BAA4B"}