@agoric/inter-protocol 0.17.0 → 0.17.1-upgrade-23-dev-bd79330.0.bd79330

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/package.json +23 -27
  2. package/source-spec-registry.js +67 -0
  3. package/src/auction/util.d.ts +3 -1
  4. package/src/auction/util.d.ts.map +1 -1
  5. package/src/auction/util.js +1 -2
  6. package/src/clientSupport.d.ts +29 -73
  7. package/src/clientSupport.d.ts.map +1 -1
  8. package/src/clientSupport.js +25 -129
  9. package/src/collectFees.d.ts +4 -0
  10. package/src/collectFees.d.ts.map +1 -1
  11. package/src/collectFees.js +5 -2
  12. package/src/contractSupport.d.ts +10 -2
  13. package/src/contractSupport.d.ts.map +1 -1
  14. package/src/contractSupport.js +8 -3
  15. package/src/econCommitteeCharter.d.ts +19 -8
  16. package/src/econCommitteeCharter.d.ts.map +1 -1
  17. package/src/econCommitteeCharter.js +12 -12
  18. package/src/feeDistributor.d.ts +56 -52
  19. package/src/feeDistributor.d.ts.map +1 -1
  20. package/src/feeDistributor.js +5 -3
  21. package/src/index.js +0 -3
  22. package/src/interest-math.d.ts +1 -0
  23. package/src/interest-math.d.ts.map +1 -1
  24. package/src/interest-math.js +1 -2
  25. package/src/interest.d.ts +13 -1
  26. package/src/interest.d.ts.map +1 -1
  27. package/src/interest.js +6 -3
  28. package/src/price/fluxAggregatorContract.d.ts +38 -14
  29. package/src/price/fluxAggregatorContract.d.ts.map +1 -1
  30. package/src/price/fluxAggregatorContract.js +26 -12
  31. package/src/price/fluxAggregatorKit.d.ts +18 -8
  32. package/src/price/fluxAggregatorKit.d.ts.map +1 -1
  33. package/src/price/fluxAggregatorKit.js +22 -8
  34. package/src/price/priceOracleKit.d.ts +3 -1
  35. package/src/price/priceOracleKit.d.ts.map +1 -1
  36. package/src/price/priceOracleKit.js +3 -1
  37. package/src/price/roundsManager.d.ts +15 -8
  38. package/src/price/roundsManager.d.ts.map +1 -1
  39. package/src/price/roundsManager.js +9 -2
  40. package/src/proposals/addAssetToVault.js +17 -105
  41. package/src/proposals/committee-proposal.js +14 -14
  42. package/src/proposals/core-proposal.js +12 -37
  43. package/src/proposals/deploy-price-feeds.js +12 -5
  44. package/src/proposals/econ-behaviors.js +23 -154
  45. package/src/proposals/price-feed-proposal.js +14 -4
  46. package/src/proposals/replace-fee-distributor.js +8 -4
  47. package/src/proposals/replace-scaledPriceAuthorities.js +8 -2
  48. package/src/proposals/replaceElectorate.js +7 -1
  49. package/src/proposals/startEconCommittee.js +5 -1
  50. package/src/proposals/startPSM.js +15 -6
  51. package/src/proposals/upgrade-scaledPriceAuthorities.js +5 -0
  52. package/src/proposals/utils.d.ts +10 -4
  53. package/src/proposals/utils.d.ts.map +1 -1
  54. package/src/proposals/utils.js +16 -8
  55. package/src/proposals/withdraw-reserve-proposal.js +6 -1
  56. package/src/provisionPool.d.ts +36 -18
  57. package/src/provisionPool.d.ts.map +1 -1
  58. package/src/provisionPool.js +19 -12
  59. package/src/provisionPoolKit.d.ts +29 -77
  60. package/src/provisionPoolKit.d.ts.map +1 -1
  61. package/src/provisionPoolKit.js +33 -23
  62. package/src/psm/psm.d.ts +36 -24
  63. package/src/psm/psm.d.ts.map +1 -1
  64. package/src/psm/psm.js +19 -15
  65. package/src/reserve/assetReserve.d.ts +16 -6
  66. package/src/reserve/assetReserve.d.ts.map +1 -1
  67. package/src/reserve/assetReserve.js +17 -9
  68. package/src/reserve/assetReserveKit.d.ts +13 -10
  69. package/src/reserve/assetReserveKit.d.ts.map +1 -1
  70. package/src/reserve/assetReserveKit.js +7 -5
  71. package/src/reserve/params.d.ts +1 -1
  72. package/src/reserve/params.d.ts.map +1 -1
  73. package/src/reserve/params.js +1 -3
  74. package/src/vaultFactory/burn.d.ts +4 -1
  75. package/src/vaultFactory/burn.d.ts.map +1 -1
  76. package/src/vaultFactory/burn.js +5 -4
  77. package/src/vaultFactory/math.d.ts +2 -0
  78. package/src/vaultFactory/math.d.ts.map +1 -1
  79. package/src/vaultFactory/math.js +5 -3
  80. package/src/vaultFactory/orderedVaultStore.d.ts +36 -36
  81. package/src/vaultFactory/params.d.ts +37 -10
  82. package/src/vaultFactory/params.d.ts.map +1 -1
  83. package/src/vaultFactory/params.js +34 -13
  84. package/src/vaultFactory/prioritizedVaults.d.ts +98 -95
  85. package/src/vaultFactory/prioritizedVaults.d.ts.map +1 -1
  86. package/src/vaultFactory/prioritizedVaults.js +3 -2
  87. package/src/vaultFactory/storeUtils.d.ts +8 -3
  88. package/src/vaultFactory/storeUtils.d.ts.map +1 -1
  89. package/src/vaultFactory/storeUtils.js +8 -4
  90. package/src/vaultFactory/{types-ambient.d.ts → types.d.ts} +40 -40
  91. package/src/vaultFactory/types.d.ts.map +1 -0
  92. package/src/vaultFactory/{types-ambient.js → types.js} +26 -25
  93. package/src/vaultFactory/vault.d.ts +51 -35
  94. package/src/vaultFactory/vault.d.ts.map +1 -1
  95. package/src/vaultFactory/vault.js +29 -17
  96. package/src/vaultFactory/vaultDirector.d.ts +102 -112
  97. package/src/vaultFactory/vaultDirector.d.ts.map +1 -1
  98. package/src/vaultFactory/vaultDirector.js +40 -82
  99. package/src/vaultFactory/vaultFactory.d.ts +47 -95
  100. package/src/vaultFactory/vaultFactory.d.ts.map +1 -1
  101. package/src/vaultFactory/vaultFactory.js +27 -27
  102. package/src/vaultFactory/vaultHolder.d.ts +62 -55
  103. package/src/vaultFactory/vaultHolder.d.ts.map +1 -1
  104. package/src/vaultFactory/vaultHolder.js +10 -4
  105. package/src/vaultFactory/vaultKit.d.ts +15 -10
  106. package/src/vaultFactory/vaultKit.d.ts.map +1 -1
  107. package/src/vaultFactory/vaultKit.js +8 -7
  108. package/src/vaultFactory/vaultManager.d.ts +112 -262
  109. package/src/vaultFactory/vaultManager.d.ts.map +1 -1
  110. package/src/vaultFactory/vaultManager.js +42 -319
  111. package/NEWS.md +0 -0
  112. package/scripts/build-bundles.js +0 -22
  113. package/src/auction/auctionBook.d.ts +0 -147
  114. package/src/auction/auctionBook.d.ts.map +0 -1
  115. package/src/auction/auctionBook.js +0 -794
  116. package/src/auction/auctionMath.d.ts +0 -17
  117. package/src/auction/auctionMath.d.ts.map +0 -1
  118. package/src/auction/auctionMath.js +0 -81
  119. package/src/auction/auctioneer.d.ts +0 -70
  120. package/src/auction/auctioneer.d.ts.map +0 -1
  121. package/src/auction/auctioneer.js +0 -733
  122. package/src/auction/offerBook.d.ts +0 -46
  123. package/src/auction/offerBook.d.ts.map +0 -1
  124. package/src/auction/offerBook.js +0 -226
  125. package/src/auction/params.d.ts +0 -145
  126. package/src/auction/params.d.ts.map +0 -1
  127. package/src/auction/params.js +0 -176
  128. package/src/auction/scheduleMath.d.ts +0 -5
  129. package/src/auction/scheduleMath.d.ts.map +0 -1
  130. package/src/auction/scheduleMath.js +0 -169
  131. package/src/auction/scheduler.d.ts +0 -50
  132. package/src/auction/scheduler.d.ts.map +0 -1
  133. package/src/auction/scheduler.js +0 -376
  134. package/src/auction/sortedOffers.d.ts +0 -8
  135. package/src/auction/sortedOffers.d.ts.map +0 -1
  136. package/src/auction/sortedOffers.js +0 -137
  137. package/src/proposals/add-auction.js +0 -285
  138. package/src/proposals/upgrade-vaults.js +0 -207
  139. package/src/psm/types-ambient.d.ts +0 -2
  140. package/src/psm/types-ambient.d.ts.map +0 -1
  141. package/src/psm/types-ambient.js +0 -3
  142. package/src/vaultFactory/liquidation.d.ts +0 -25
  143. package/src/vaultFactory/liquidation.d.ts.map +0 -1
  144. package/src/vaultFactory/liquidation.js +0 -309
  145. package/src/vaultFactory/proceeds.d.ts +0 -35
  146. package/src/vaultFactory/proceeds.d.ts.map +0 -1
  147. package/src/vaultFactory/proceeds.js +0 -282
  148. package/src/vaultFactory/types-ambient.d.ts.map +0 -1
@@ -1,5 +1,3 @@
1
- // @jessie-check
2
-
3
1
  import { makeTracer } from '@agoric/internal';
4
2
  import { makeRatioFromAmounts } from '@agoric/zoe/src/contractSupport/index.js';
5
3
  import { AmountMath } from '@agoric/ertp';
@@ -17,6 +15,9 @@ import {
17
15
  * @import {MapStore} from '@agoric/store';
18
16
  * @import {Vault} from './vault.js';
19
17
  * @import {NormalizedDebt} from './storeUtils.js';
18
+ * @import {Ratio} from '@agoric/ertp';
19
+ * @import {VaultId} from './types.js';
20
+ * @import {Amount} from '@agoric/ertp';
20
21
  */
21
22
 
22
23
  const trace = makeTracer('PVaults', true);
@@ -1,15 +1,17 @@
1
1
  /** @import {PureData} from '@endo/marshal' */
2
- /** @typedef {[normalizedCollateralization: number, vaultId: VaultId]} CompositeKey */
2
+ /**
3
+ * @typedef {[normalizedCollateralization: number, vaultId: VaultId]} CompositeKey
4
+ */
3
5
  /**
4
6
  * @param {PureData} key
5
7
  * @returns {string}
6
8
  */
7
- export const encodeData: (p: Passable) => string;
9
+ export const encodeData: (p: import("@endo/marshal").Passable) => string;
8
10
  /**
9
11
  * @param {string} encoded
10
12
  * @returns {PureData}
11
13
  */
12
- export const decodeData: (encoded: string, skip?: number) => Passable;
14
+ export const decodeData: (encoded: string, skip?: number) => import("@endo/marshal").Passable;
13
15
  export function toVaultKey(normalizedDebt: NormalizedDebt, collateral: Amount<"nat">, vaultId: VaultId): string;
14
16
  export function fromVaultKey(key: string): [normalizedCollateralization: number, vaultId: VaultId];
15
17
  export function normalizedCollRatio(quote: PriceQuote, compoundedInterest: Ratio, margin: Ratio): number;
@@ -21,5 +23,8 @@ export type NormalizedDebt = Amount<"nat"> & {
21
23
  export type ActualDebt = Amount<"nat"> & {
22
24
  normalized: false;
23
25
  };
26
+ import type { Amount } from '@agoric/ertp';
27
+ import type { VaultId } from './types.js';
24
28
  import type { PriceQuote } from '@agoric/zoe/tools/types.js';
29
+ import type { Ratio } from '@agoric/ertp';
25
30
  //# sourceMappingURL=storeUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storeUtils.d.ts","sourceRoot":"","sources":["storeUtils.js"],"names":[],"mappings":"AAuBA,8CAA8C;AAE9C,sFAAsF;AAOtF;;;GAGG;AACH,iDAA+C;AAO/C;;;GAGG;AACH,sEAA+C;AAkDxC,2CANI,cAAc,cACd,MAAM,CAAC,KAAK,CAAC,WACb,OAAO,GACL,MAAM,CAelB;AAOM,kCAHI,MAAM,GACJ,CAAC,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAKnE;AAgBM,2CALI,UAAU,sBACV,KAAK,UACL,KAAK,GACH,MAAM,CAiBlB;AAcM,8CANI,UAAU,sBACV,KAAK,UACL,KAAK,GACH,MAAM,CAMlB;2BA9Ia,CAAC,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;6BA4CvD,MAAM,CAAC,KAAK,CAAC,GAAG;IAAE,UAAU,EAAE,IAAI,CAAA;CAAE;yBACpC,MAAM,CAAC,KAAK,CAAC,GAAG;IAAE,UAAU,EAAE,KAAK,CAAA;CAAE;gCA/D2C,4BAA4B"}
1
+ {"version":3,"file":"storeUtils.d.ts","sourceRoot":"","sources":["storeUtils.js"],"names":[],"mappings":"AAyBA,8CAA8C;AAE9C;;GAEG;AAOH;;;GAGG;AACH,yEAA+C;AAO/C;;;GAGG;AACH,8FAA+C;AAkDxC,2CANI,cAAc,cACd,OAAO,KAAK,CAAC,WACb,OAAO,GACL,MAAM,CAelB;AAOM,kCAHI,MAAM,GACJ,CAAC,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAKnE;AAgBM,2CALI,UAAU,sBACV,KAAK,UACL,KAAK,GACH,MAAM,CAiBlB;AAcM,8CANI,UAAU,sBACV,KAAK,UACL,KAAK,GACH,MAAM,CAMlB;2BA/IY,CAAC,2BAA2B,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;6BA6CtD,OAAO,KAAK,CAAC,GAAG;IAAE,UAAU,EAAE,IAAI,CAAA;CAAE;yBACpC,OAAO,KAAK,CAAC,GAAG;IAAE,UAAU,EAAE,KAAK,CAAA;CAAE;4BAnEnB,cAAc;6BACpB,YAAY;gCAFuD,4BAA4B;2BACzF,cAAc"}
@@ -1,11 +1,13 @@
1
- // @jessie-check
2
-
3
1
  /**
4
2
  * Module to improvise composite keys for orderedVaultStore until Collections
5
3
  * API supports them.
6
4
  */
7
5
 
8
- /** @import {PriceAuthority, PriceDescription, PriceQuote, PriceQuoteValue, PriceQuery,} from '@agoric/zoe/tools/types.js'; */
6
+ /**
7
+ * @import {PriceAuthority, PriceDescription, PriceQuote, PriceQuoteValue, PriceQuery,} from '@agoric/zoe/tools/types.js';
8
+ * @import {Amount, Ratio} from '@agoric/ertp';
9
+ * @import {VaultId} from './types.js';
10
+ */
9
11
 
10
12
  // XXX importing these that are declared to be used only for testing
11
13
  // until @agoric/store supports composite keys
@@ -23,7 +25,9 @@ const trace = makeTracer('Store', true);
23
25
 
24
26
  /** @import {PureData} from '@endo/marshal' */
25
27
 
26
- /** @typedef {[normalizedCollateralization: number, vaultId: VaultId]} CompositeKey */
28
+ /**
29
+ * @typedef {[normalizedCollateralization: number, vaultId: VaultId]} CompositeKey
30
+ */
27
31
 
28
32
  // `makeEncodePassable` has three named options:
29
33
  // `encodeRemotable`, `encodeError`, and `encodePromise`.
@@ -1,43 +1,41 @@
1
- type VaultFactoryPublicFacet = import("./vaultFactory.js").VaultFactoryContract["publicFacet"];
2
- type AutoswapLocal = {
1
+ export type VaultFactoryPublicFacet = import("./vaultFactory.js").VaultFactoryContract["publicFacet"];
2
+ export type AutoswapLocal = {
3
3
  getInputPrice: (amount: Amount, brand: Brand) => Amount;
4
4
  makeSwapInvitation: () => Invitation;
5
5
  };
6
- type VaultManagerParamValues = {
6
+ export type VaultManagerParamValues = {
7
7
  /**
8
- * - margin below which collateral will be
9
- * liquidated to satisfy the debt.
8
+ * - margin below
9
+ * which collateral will be liquidated to satisfy the debt.
10
10
  */
11
11
  liquidationMargin: Ratio;
12
12
  /**
13
- * - penalty charged upon liquidation as
14
- * proportion of debt
13
+ * - penalty charged
14
+ * upon liquidation as proportion of debt
15
15
  */
16
16
  liquidationPenalty: Ratio;
17
17
  /**
18
- * - annual interest rate charged on debt
19
- * positions
18
+ * - annual interest rate
19
+ * charged on debt positions
20
20
  */
21
21
  interestRate: Ratio;
22
22
  /**
23
- * - The fee (in BasisPoints) charged when creating or
24
- * increasing a debt position.
23
+ * - The fee (in BasisPoints)
24
+ * charged when creating or increasing a debt position.
25
25
  */
26
26
  mintFee: Ratio;
27
27
  debtLimit: Amount<"nat">;
28
28
  /**
29
- * - vault must maintain this in order to
30
- * remove collateral or add debt
29
+ * - vault must
30
+ * maintain this in order to remove collateral or add debt
31
31
  */
32
32
  liquidationPadding?: Ratio | undefined;
33
33
  };
34
- type AddVaultType = (collateralIssuer: Issuer, collateralKeyword: Keyword, params: VaultManagerParamValues) => Promise<VaultManager>;
35
- type VaultFactoryCreatorFacet = {
34
+ export type AddVaultType = (collateralIssuer: Issuer, collateralKeyword: Keyword, params: VaultManagerParamValues) => Promise<VaultManager>;
35
+ export type VaultFactoryCreatorFacet = {
36
36
  addVaultType: AddVaultType;
37
37
  getRewardAllocation: () => import("@agoric/zoe").Allocation;
38
38
  makeCollectFeesInvitation: () => Promise<Invitation<string, never>>;
39
- makeLiquidationWaker: () => import("@agoric/time").TimerWaker;
40
- makePriceLockWaker: () => import("@agoric/time").TimerWaker;
41
39
  };
42
40
  /**
43
41
  * Mint new debt `toMint` and transfer the `fee`
@@ -45,19 +43,19 @@ type VaultFactoryCreatorFacet = {
45
43
  * seat arguments and the rewardPoolSeat. Update the `totalDebt` if the
46
44
  * reallocate succeeds.
47
45
  */
48
- type MintAndTransfer = (mintReceiver: ZCFSeat, toMint: Amount<"nat">, fee: Amount<"nat">, transfers: TransferPart[]) => void;
46
+ export type MintAndTransfer = (mintReceiver: ZCFSeat, toMint: Amount<"nat">, fee: Amount<"nat">, transfers: TransferPart[]) => void;
49
47
  /**
50
48
  * Burn debt tokens off a seat and update the `totalDebt` if
51
49
  * the reallocate succeeds.
52
50
  */
53
- type BurnDebt = (toBurn: Amount, fromSeat: ZCFSeat) => void;
54
- type GetVaultParams = {
51
+ export type BurnDebt = (toBurn: Amount, fromSeat: ZCFSeat) => void;
52
+ export type GetVaultParams = {
55
53
  getLiquidationMargin: () => Ratio;
56
54
  getMintFee: () => Ratio;
57
55
  getCollateralQuote: () => Promise<import("@agoric/zoe/tools/types.js").PriceQuote>;
58
56
  /**
59
- * - The annual interest rate on a debt
60
- * position
57
+ * - The annual
58
+ * interest rate on a debt position
61
59
  */
62
60
  getInterestRate: () => Ratio;
63
61
  /**
@@ -71,8 +69,8 @@ type GetVaultParams = {
71
69
  */
72
70
  getRecordingPeriod: () => RelativeTime;
73
71
  };
74
- type VaultId = string;
75
- type InterestTiming = {
72
+ export type VaultId = string;
73
+ export type InterestTiming = {
76
74
  /**
77
75
  * in seconds
78
76
  */
@@ -82,18 +80,18 @@ type InterestTiming = {
82
80
  */
83
81
  recordingPeriod: RelativeTime;
84
82
  };
85
- type LiquidationStrategy = {
86
- keywordMapping: () => KeywordKeywordRecord;
83
+ export type LiquidationStrategy = {
84
+ keywordMapping: () => import("@agoric/zoe/src/contractSupport/types.js").KeywordKeywordRecord;
87
85
  makeProposal: (collateral: Amount, run: Amount) => import("@agoric/zoe").Proposal;
88
86
  makeInvitation: (debt: Amount) => Promise<Invitation>;
89
87
  };
90
- type Liquidator = {
88
+ export type Liquidator = {
91
89
  makeLiquidateInvitation: () => Promise<Invitation<void, {
92
90
  debt: Amount<"nat">;
93
91
  penaltyRate: Ratio;
94
92
  }>>;
95
93
  };
96
- type DebtStatus = {
94
+ export type DebtStatus = {
97
95
  latestInterestUpdate: Timestamp;
98
96
  /**
99
97
  * interest accrued since latestInterestUpdate
@@ -104,8 +102,8 @@ type DebtStatus = {
104
102
  */
105
103
  newDebt: NatValue;
106
104
  };
107
- type Calculate = (debtStatus: DebtStatus, currentTime: Timestamp) => DebtStatus;
108
- type CalculatorKit = {
105
+ export type Calculate = (debtStatus: DebtStatus, currentTime: Timestamp) => DebtStatus;
106
+ export type CalculatorKit = {
109
107
  /**
110
108
  * calculate new debt for charging periods up to
111
109
  * the present.
@@ -119,19 +117,21 @@ type CalculatorKit = {
119
117
  */
120
118
  calculateReportingPeriod: Calculate;
121
119
  };
122
- type VaultFactoryParamPath = {
120
+ export type VaultFactoryParamPath = {
123
121
  key: "governedParams" | {
124
122
  collateralBrand: Brand;
125
123
  };
126
124
  };
127
- import type { VaultNotification } from './vault.js';
128
- import type { Vault } from './vault.js';
129
- import type { VaultKit } from './vaultKit.js';
125
+ import type { Amount } from '@agoric/ertp';
126
+ import type { Brand } from '@agoric/ertp';
127
+ import type { Invitation } from '@agoric/zoe';
128
+ import type { Ratio } from '@agoric/ertp';
129
+ import type { Issuer } from '@agoric/ertp';
130
+ import type { Keyword } from '@agoric/zoe';
130
131
  import type { VaultManager } from './vaultManager.js';
131
- import type { CollateralManager } from './vaultManager.js';
132
- import type { AssetReserveLimitedCreatorFacet } from '../reserve/assetReserve.js';
133
- import type { AssetReservePublicFacet } from '../reserve/assetReserve.js';
134
- import type { AuctioneerPublicFacet } from '../auction/auctioneer.js';
135
- import type { Timestamp } from '@agoric/time';
132
+ import type { ZCFSeat } from '@agoric/zoe';
133
+ import type { TransferPart } from '@agoric/zoe';
136
134
  import type { RelativeTime } from '@agoric/time';
137
- //# sourceMappingURL=types-ambient.d.ts.map
135
+ import type { Timestamp } from '@agoric/time';
136
+ import type { NatValue } from '@agoric/ertp';
137
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.js"],"names":[],"mappings":"sCAMa,OAAO,mBAAmB,EAAE,oBAAoB,CAAC,aAAa,CAAC;;mBAY9D,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,KAAK,MAAM;wBACxC,MAAM,UAAU;;;;;;;uBAKhB,KAAK;;;;;wBAEL,KAAK;;;;;kBAEL,KAAK;;;;;aAEL,KAAK;eAEL,OAAO,KAAK,CAAC;;;;;;;8CAOhB,MAAM,qBACN,OAAO,UACP,uBAAuB,KACrB,OAAO,CAAC,YAAY,CAAC;;kBAKpB,YAAY;yBACZ,MAAM,OAAO,aAAa,EAAE,UAAU;+BACtC,MAAM,OAAO,CAAC,WAAW,MAAM,EAAE,KAAK,CAAC,CAAC;;;;;;;;6CAQ3C,OAAO,UACP,OAAO,KAAK,CAAC,OACb,OAAO,KAAK,CAAC,aACb,YAAY,EAAE,KACZ,IAAI;;;;;gCAMN,MAAM,YACN,OAAO,KACL,IAAI;;0BAKH,MAAM,KAAK;gBACX,MAAM,KAAK;wBACX,MAAM,OAAO,CAAC,OAAO,4BAA4B,EAAE,UAAU,CAAC;;;;;qBAC9D,MAAM,KAAK;;;;;uBAEX,MAAM,YAAY;;;;;wBAElB,MAAM,YAAY;;sBAIlB,MAAM;;;;;oBAIN,YAAY;;;;qBACZ,YAAY;;;oBAKZ,MAAM,OAAO,0CAA0C,EAAE,oBAAoB;kBAC7E,CACT,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,KACR,OAAO,aAAa,EAAE,QAAQ;oBACxB,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC;;;6BAKrC,MAAM,OAAO,CAC1B,WACA,IAAU,EACV;QAAQ,IAAI,EAAE,OAAO,KAAK,CAAC,CAAC;QAAC,WAAW,EAAE,KAAK,CAAA;KAAE,CAC5C,CACF;;;0BAKU,SAAS;;;;cACT,QAAQ;;;;aACR,QAAQ;;qCAKX,UAAU,eACV,SAAS,KACP,UAAU;;;;;;eAKT,SAAS;;;;;;;8BAET,SAAS;;oCAMT;IAAE,GAAG,EAAE,gBAAgB,GAAG;QAAE,eAAe,EAAE,KAAK,CAAA;KAAE,CAAA;CAAE;4BA7HX,cAAc;2BAAd,cAAc;gCACV,aAAa;2BADjB,cAAc;4BAAd,cAAc;6BACV,aAAa;kCAJ3C,mBAAmB;6BAIW,aAAa;kCAAb,aAAa;kCAF3C,cAAc;+BADjB,cAAc;8BAEe,cAAc"}
@@ -1,17 +1,17 @@
1
- // @jessie-check
1
+ /* eslint-disable @agoric/group-jsdoc-imports */
2
+
3
+ // Make this a module
4
+ export {};
2
5
 
3
6
  /**
4
7
  * @typedef {import('./vaultFactory.js').VaultFactoryContract['publicFacet']} VaultFactoryPublicFacet
5
- * @import {VaultNotification} from './vault.js'
6
- * @import {Vault} from './vault.js'
7
- * @import {VaultKit} from './vaultKit.js'
8
- * @import {VaultManager} from './vaultManager.js'
9
- * @import {CollateralManager} from './vaultManager.js'
10
- * @import {AssetReserveLimitedCreatorFacet} from '../reserve/assetReserve.js'
11
- * @import {AssetReservePublicFacet} from '../reserve/assetReserve.js'
12
- * @import {AuctioneerPublicFacet} from '../auction/auctioneer.js'
8
+ */
9
+ /**
10
+ * @import {VaultManager} from './vaultManager.js';
13
11
  * @import {Timestamp} from '@agoric/time'
14
12
  * @import {RelativeTime} from '@agoric/time'
13
+ * @import {Amount, Brand, Issuer, NatValue, Ratio} from '@agoric/ertp'
14
+ * @import {Invitation, Keyword, TransferPart, ZCFSeat} from '@agoric/zoe'
15
15
  */
16
16
 
17
17
  /**
@@ -22,17 +22,17 @@
22
22
 
23
23
  /**
24
24
  * @typedef {object} VaultManagerParamValues
25
- * @property {Ratio} liquidationMargin - margin below which collateral will be
26
- * liquidated to satisfy the debt.
27
- * @property {Ratio} liquidationPenalty - penalty charged upon liquidation as
28
- * proportion of debt
29
- * @property {Ratio} interestRate - annual interest rate charged on debt
30
- * positions
31
- * @property {Ratio} mintFee - The fee (in BasisPoints) charged when creating or
32
- * increasing a debt position.
25
+ * @property {Ratio} liquidationMargin - margin below
26
+ * which collateral will be liquidated to satisfy the debt.
27
+ * @property {Ratio} liquidationPenalty - penalty charged
28
+ * upon liquidation as proportion of debt
29
+ * @property {Ratio} interestRate - annual interest rate
30
+ * charged on debt positions
31
+ * @property {Ratio} mintFee - The fee (in BasisPoints)
32
+ * charged when creating or increasing a debt position.
33
33
  * @property {Amount<'nat'>} debtLimit
34
- * @property {Ratio} [liquidationPadding] - vault must maintain this in order to
35
- * remove collateral or add debt
34
+ * @property {Ratio} [liquidationPadding] - vault must
35
+ * maintain this in order to remove collateral or add debt
36
36
  */
37
37
 
38
38
  /**
@@ -48,8 +48,6 @@
48
48
  * @property {AddVaultType} addVaultType
49
49
  * @property {() => import('@agoric/zoe').Allocation} getRewardAllocation
50
50
  * @property {() => Promise<Invitation<string, never>>} makeCollectFeesInvitation
51
- * @property {() => import('@agoric/time').TimerWaker} makeLiquidationWaker
52
- * @property {() => import('@agoric/time').TimerWaker} makePriceLockWaker
53
51
  */
54
52
 
55
53
  /**
@@ -77,8 +75,8 @@
77
75
  * @property {() => Ratio} getLiquidationMargin
78
76
  * @property {() => Ratio} getMintFee
79
77
  * @property {() => Promise<import('@agoric/zoe/tools/types.js').PriceQuote>} getCollateralQuote
80
- * @property {() => Ratio} getInterestRate - The annual interest rate on a debt
81
- * position
78
+ * @property {() => Ratio} getInterestRate - The annual
79
+ * interest rate on a debt position
82
80
  * @property {() => RelativeTime} getChargingPeriod - The period (in seconds) at
83
81
  * which interest is charged to the debt position.
84
82
  * @property {() => RelativeTime} getRecordingPeriod - The period (in seconds)
@@ -95,7 +93,7 @@
95
93
 
96
94
  /**
97
95
  * @typedef {object} LiquidationStrategy
98
- * @property {() => KeywordKeywordRecord} keywordMapping
96
+ * @property {() => import('@agoric/zoe/src/contractSupport/types.js').KeywordKeywordRecord} keywordMapping
99
97
  * @property {(
100
98
  * collateral: Amount,
101
99
  * run: Amount,
@@ -106,7 +104,10 @@
106
104
  /**
107
105
  * @typedef {object} Liquidator
108
106
  * @property {() => Promise<
109
- * Invitation<void, { debt: Amount<'nat'>; penaltyRate: Ratio }>
107
+ * Invitation<
108
+ * void,
109
+ * { debt: Amount<'nat'>; penaltyRate: Ratio }
110
+ * >
110
111
  * >} makeLiquidateInvitation
111
112
  */
112
113
 
@@ -22,13 +22,16 @@ export namespace Phase {
22
22
  /**
23
23
  * @typedef {object} VaultNotification
24
24
  * @property {Amount<'nat'>} locked Amount of Collateral locked
25
- * @property {{ debt: Amount<'nat'>; interest: Ratio }} debtSnapshot 'debt' at
26
- * the point the compounded interest was 'interest'
25
+ * @property {{
26
+ * debt: Amount<'nat'>;
27
+ * interest: Ratio;
28
+ * }} debtSnapshot
29
+ * 'debt' at the point the compounded interest was 'interest'
27
30
  * @property {Phase} vaultState
28
31
  */
29
32
  /**
30
33
  * @typedef {object} VaultManager
31
- * @property {() => Subscriber<import('./vaultManager.js').AssetState>} getAssetSubscriber
34
+ * @property {() => Subscriber<AssetState>} getAssetSubscriber
32
35
  * @property {(collateralAmount: Amount) => Amount<'nat'>} maxDebtFor
33
36
  * @property {() => Brand<'nat'>} getCollateralBrand
34
37
  * @property {(base: string) => string} scopeDescription
@@ -37,19 +40,19 @@ export namespace Phase {
37
40
  * @property {(amount: Amount, seat: ZCFSeat) => void} burn
38
41
  * @property {() => Ratio} getCompoundedInterest
39
42
  * @property {(
40
- * oldDebt: import('./storeUtils.js').NormalizedDebt,
43
+ * oldDebt: NormalizedDebt,
41
44
  * oldCollateral: Amount<'nat'>,
42
45
  * vaultId: VaultId,
43
46
  * vaultPhase: VaultPhase,
44
47
  * vault: Vault,
45
48
  * ) => void} handleBalanceChange
46
- * @property {() => import('./vaultManager.js').GovernedParamGetters} getGovernedParams
49
+ * @property {() => GovernedParamGetters} getGovernedParams
47
50
  */
48
51
  /**
49
52
  * @typedef {Readonly<{
50
53
  * idInManager: VaultId;
51
54
  * manager: VaultManager;
52
- * storageNode: StorageNode;
55
+ * storageNode: Remote<StorageNode>;
53
56
  * vaultSeat: ZCFSeat;
54
57
  * }>} ImmutableState
55
58
  */
@@ -61,9 +64,7 @@ export namespace Phase {
61
64
  * interestSnapshot: Ratio;
62
65
  * phase: VaultPhase;
63
66
  * debtSnapshot: Amount<'nat'>;
64
- * outerUpdater:
65
- * | import('@agoric/zoe/src/contractSupport/recorder.js').Recorder<VaultNotification>
66
- * | null;
67
+ * outerUpdater: Recorder<VaultNotification> | null;
67
68
  * }} MutableState
68
69
  */
69
70
  export const VaultI: import("@endo/patterns").InterfaceGuard<{
@@ -79,7 +80,7 @@ export const VaultI: import("@endo/patterns").InterfaceGuard<{
79
80
  makeTransferInvitation: import("@endo/patterns").MethodGuard;
80
81
  abortLiquidation: import("@endo/patterns").MethodGuard;
81
82
  }>;
82
- export function prepareVault(baggage: import("@agoric/swingset-liveslots").Baggage, makeRecorderKit: import("@agoric/zoe/src/contractSupport/recorder.js").MakeRecorderKit, zcf: ZCF): (manager: VaultManager, idInManager: string, storageNode: globalThis.StorageNode) => import("@endo/exo").GuardedKit<{
83
+ export function prepareVault(baggage: Baggage, makeRecorderKit: MakeRecorderKit, zcf: ZCF): (manager: VaultManager, idInManager: string, storageNode: Remote<StorageNode>) => import("@endo/exo").GuardedKit<{
83
84
  helper: {
84
85
  collateralBrand(): Brand<"nat">;
85
86
  debtBrand(): Brand<"nat">;
@@ -209,40 +210,40 @@ export function prepareVault(baggage: import("@agoric/swingset-liveslots").Bagga
209
210
  makeTransferInvitationHook(seat: ZCFSeat): VaultKit;
210
211
  };
211
212
  self: {
212
- getVaultSeat(): globalThis.ZCFSeat;
213
+ getVaultSeat(): ZCFSeat;
213
214
  /**
214
215
  * @param {ZCFSeat} seat
215
- * @param {StorageNode} storageNode
216
+ * @param {Remote<StorageNode>} storageNode
216
217
  */
217
- initVaultKit(seat: ZCFSeat, storageNode: StorageNode): Promise<{
218
+ initVaultKit(seat: ZCFSeat, storageNode: Remote<StorageNode>): Promise<{
218
219
  publicSubscribers: {
219
220
  vault: {
220
221
  description: string;
221
- subscriber: globalThis.Subscriber<VaultNotification>;
222
+ subscriber: Subscriber<VaultNotification>;
222
223
  storagePath: Promise<string>;
223
224
  };
224
225
  };
225
226
  invitationMakers: import("@endo/exo").Guarded<{
226
- AdjustBalances(): Promise<globalThis.Invitation<string, undefined>>;
227
- CloseVault(): Promise<globalThis.Invitation<string, undefined>>;
228
- TransferVault(): Promise<globalThis.Invitation</*elided*/ any>>;
227
+ AdjustBalances(): Promise<Invitation<string, undefined>>;
228
+ CloseVault(): Promise<Invitation<string, undefined>>;
229
+ TransferVault(): Promise<Invitation</*elided*/ any>>;
229
230
  }>;
230
231
  vault: import("@endo/exo").Guarded<{
231
232
  getPublicTopics(): {
232
233
  vault: {
233
234
  description: string;
234
- subscriber: globalThis.Subscriber<VaultNotification>;
235
+ subscriber: Subscriber<VaultNotification>;
235
236
  storagePath: Promise<string>;
236
237
  };
237
238
  };
238
- makeAdjustBalancesInvitation(): Promise<globalThis.Invitation<string, undefined>>;
239
- makeCloseInvitation(): Promise<globalThis.Invitation<string, undefined>>;
240
- makeTransferInvitation(): Promise<globalThis.Invitation</*elided*/ any>>;
239
+ makeAdjustBalancesInvitation(): Promise<Invitation<string, undefined>>;
240
+ makeCloseInvitation(): Promise<Invitation<string, undefined>>;
241
+ makeTransferInvitation(): Promise<Invitation</*elided*/ any>>;
241
242
  getCollateralAmount(): import("@agoric/ertp").NatAmount;
242
243
  getCurrentDebt(): import("@agoric/ertp").NatAmount;
243
244
  getNormalizedDebt(): NormalizedDebt;
244
245
  }>;
245
- vaultUpdater: import("@agoric/zoe/src/contractSupport/recorder.js").Recorder<VaultNotification>;
246
+ vaultUpdater: Recorder<VaultNotification>;
246
247
  }>;
247
248
  /** Called by manager at start of liquidation. */
248
249
  liquidating(): void;
@@ -258,8 +259,8 @@ export function prepareVault(baggage: import("@agoric/swingset-liveslots").Bagga
258
259
  * Liquidation.md has details on the liquidation approach.
259
260
  */
260
261
  abortLiquidation(): string;
261
- makeAdjustBalancesInvitation(): Promise<globalThis.Invitation<string, undefined>>;
262
- makeCloseInvitation(): Promise<globalThis.Invitation<string, undefined>>;
262
+ makeAdjustBalancesInvitation(): Promise<Invitation<string, undefined>>;
263
+ makeCloseInvitation(): Promise<Invitation<string, undefined>>;
263
264
  /** @returns {Promise<Invitation<VaultKit>>} */
264
265
  makeTransferInvitation(): Promise<Invitation<VaultKit>>;
265
266
  /** @returns {Amount<'nat'>} */
@@ -284,12 +285,11 @@ export function prepareVault(baggage: import("@agoric/swingset-liveslots").Bagga
284
285
  * order vaults by their debt-to-collateral ratios without having to
285
286
  * mutate the debts as the interest accrues.
286
287
  *
287
- * @returns {import('./storeUtils.js').NormalizedDebt} as if the vault
288
- * was open at the launch of this manager, before any interest
289
- * accrued
288
+ * @returns {NormalizedDebt} as if the vault was open at the launch of
289
+ * this manager, before any interest accrued
290
290
  * @see getActualDebAmount
291
291
  */
292
- getNormalizedDebt(): import("./storeUtils.js").NormalizedDebt;
292
+ getNormalizedDebt(): NormalizedDebt;
293
293
  };
294
294
  }>;
295
295
  export type VaultPhase = Exclude<Phase, "transfer">;
@@ -299,8 +299,7 @@ export type VaultNotification = {
299
299
  */
300
300
  locked: Amount<"nat">;
301
301
  /**
302
- * 'debt' at
303
- * the point the compounded interest was 'interest'
302
+ * 'debt' at the point the compounded interest was 'interest'
304
303
  */
305
304
  debtSnapshot: {
306
305
  debt: Amount<"nat">;
@@ -309,7 +308,7 @@ export type VaultNotification = {
309
308
  vaultState: Phase;
310
309
  };
311
310
  export type VaultManager = {
312
- getAssetSubscriber: () => Subscriber<import("./vaultManager.js").AssetState>;
311
+ getAssetSubscriber: () => Subscriber<AssetState>;
313
312
  maxDebtFor: (collateralAmount: Amount) => Amount<"nat">;
314
313
  getCollateralBrand: () => Brand<"nat">;
315
314
  scopeDescription: (base: string) => string;
@@ -317,13 +316,13 @@ export type VaultManager = {
317
316
  mintAndTransfer: MintAndTransfer;
318
317
  burn: (amount: Amount, seat: ZCFSeat) => void;
319
318
  getCompoundedInterest: () => Ratio;
320
- handleBalanceChange: (oldDebt: import("./storeUtils.js").NormalizedDebt, oldCollateral: Amount<"nat">, vaultId: VaultId, vaultPhase: VaultPhase, vault: Vault) => void;
321
- getGovernedParams: () => import("./vaultManager.js").GovernedParamGetters;
319
+ handleBalanceChange: (oldDebt: NormalizedDebt, oldCollateral: Amount<"nat">, vaultId: VaultId, vaultPhase: VaultPhase, vault: Vault) => void;
320
+ getGovernedParams: () => GovernedParamGetters;
322
321
  };
323
322
  export type ImmutableState = Readonly<{
324
323
  idInManager: VaultId;
325
324
  manager: VaultManager;
326
- storageNode: StorageNode;
325
+ storageNode: Remote<StorageNode>;
327
326
  vaultSeat: ZCFSeat;
328
327
  }>;
329
328
  /**
@@ -334,11 +333,28 @@ export type MutableState = {
334
333
  interestSnapshot: Ratio;
335
334
  phase: VaultPhase;
336
335
  debtSnapshot: Amount<"nat">;
337
- outerUpdater: import("@agoric/zoe/src/contractSupport/recorder.js").Recorder<VaultNotification> | null;
336
+ outerUpdater: Recorder<VaultNotification> | null;
338
337
  };
339
338
  export type Vault = EReturn<EReturn<typeof prepareVault>>["self"];
339
+ import type { Baggage } from '@agoric/swingset-liveslots';
340
+ import type { MakeRecorderKit } from '@agoric/zoe/src/contractSupport/recorder.js';
341
+ import type { ZCF } from '@agoric/zoe';
342
+ import type { StorageNode } from '@agoric/internal/src/lib-chainStorage.js';
343
+ import type { Remote } from '@agoric/internal';
340
344
  import type { Brand } from '@agoric/ertp/src/types.js';
345
+ import type { ProposalRecord } from '@agoric/zoe';
346
+ import type { Amount } from '@agoric/ertp/src/types.js';
341
347
  import type { NormalizedDebt } from './storeUtils.js';
348
+ import type { ZCFSeat } from '@agoric/zoe';
349
+ import type { Ratio } from '@agoric/ertp/src/ratio.js';
342
350
  import { calculateDebtCosts } from './math.js';
351
+ import type { VaultKit } from './vaultKit.js';
352
+ import type { Subscriber } from '@agoric/notifier';
353
+ import type { Invitation } from '@agoric/zoe';
354
+ import type { Recorder } from '@agoric/zoe/src/contractSupport/recorder.js';
355
+ import type { AssetState } from './vaultManager.js';
356
+ import type { MintAndTransfer } from './types.js';
357
+ import type { VaultId } from './types.js';
358
+ import type { GovernedParamGetters } from './vaultManager.js';
343
359
  import type { EReturn } from '@endo/far';
344
360
  //# sourceMappingURL=vault.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["vault.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["vault.js"],"names":[],"mappings":"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"}