@agoric/inter-protocol 0.18.0-u23.0 → 0.18.0-u23.1
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.
- package/package.json +13 -13
- package/src/auction/util.d.ts +33 -0
- package/src/auction/util.d.ts.map +1 -0
- package/src/clientSupport.d.ts +124 -0
- package/src/clientSupport.d.ts.map +1 -0
- package/src/collectFees.d.ts +6 -0
- package/src/collectFees.d.ts.map +1 -0
- package/src/contractSupport.d.ts +36 -0
- package/src/contractSupport.d.ts.map +1 -0
- package/src/econCommitteeCharter.d.ts +54 -0
- package/src/econCommitteeCharter.d.ts.map +1 -0
- package/src/feeDistributor.d.ts +228 -0
- package/src/feeDistributor.d.ts.map +1 -0
- package/src/index.d.ts +2 -0
- package/src/index.d.ts.map +1 -0
- package/src/interest-math.d.ts +5 -0
- package/src/interest-math.d.ts.map +1 -0
- package/src/interest.d.ts +42 -0
- package/src/interest.d.ts.map +1 -0
- package/src/price/fluxAggregatorContract.d.ts +95 -0
- package/src/price/fluxAggregatorContract.d.ts.map +1 -0
- package/src/price/fluxAggregatorKit.d.ts +114 -0
- package/src/price/fluxAggregatorKit.d.ts.map +1 -0
- package/src/price/priceOracleKit.d.ts +41 -0
- package/src/price/priceOracleKit.d.ts.map +1 -0
- package/src/price/roundsManager.d.ts +211 -0
- package/src/price/roundsManager.d.ts.map +1 -0
- package/src/proposals/utils.d.ts +27 -0
- package/src/proposals/utils.d.ts.map +1 -0
- package/src/provisionPool.d.ts +87 -0
- package/src/provisionPool.d.ts.map +1 -0
- package/src/provisionPoolKit.d.ts +81 -0
- package/src/provisionPoolKit.d.ts.map +1 -0
- package/src/psm/psm.d.ts +145 -0
- package/src/psm/psm.d.ts.map +1 -0
- package/src/reserve/assetReserve.d.ts +68 -0
- package/src/reserve/assetReserve.d.ts.map +1 -0
- package/src/reserve/assetReserveKit.d.ts +106 -0
- package/src/reserve/assetReserveKit.d.ts.map +1 -0
- package/src/reserve/params.d.ts +16 -0
- package/src/reserve/params.d.ts.map +1 -0
- package/src/tokens.d.ts +3 -0
- package/src/tokens.d.ts.map +1 -0
- package/src/vaultFactory/burn.d.ts +5 -0
- package/src/vaultFactory/burn.d.ts.map +1 -0
- package/src/vaultFactory/math.d.ts +13 -0
- package/src/vaultFactory/math.d.ts.map +1 -0
- package/src/vaultFactory/orderedVaultStore.d.ts +94 -0
- package/src/vaultFactory/orderedVaultStore.d.ts.map +1 -0
- package/src/vaultFactory/params.d.ts +170 -0
- package/src/vaultFactory/params.d.ts.map +1 -0
- package/src/vaultFactory/prioritizedVaults.d.ts +283 -0
- package/src/vaultFactory/prioritizedVaults.d.ts.map +1 -0
- package/src/vaultFactory/storeUtils.d.ts +30 -0
- package/src/vaultFactory/storeUtils.d.ts.map +1 -0
- package/src/vaultFactory/types.d.ts +137 -0
- package/src/vaultFactory/types.d.ts.map +1 -0
- package/src/vaultFactory/vault.d.ts +360 -0
- package/src/vaultFactory/vault.d.ts.map +1 -0
- package/src/vaultFactory/vaultDirector.d.ts +337 -0
- package/src/vaultFactory/vaultDirector.d.ts.map +1 -0
- package/src/vaultFactory/vaultFactory.d.ts +202 -0
- package/src/vaultFactory/vaultFactory.d.ts.map +1 -0
- package/src/vaultFactory/vaultHolder.d.ts +177 -0
- package/src/vaultFactory/vaultHolder.d.ts.map +1 -0
- package/src/vaultFactory/vaultKit.d.ts +38 -0
- package/src/vaultFactory/vaultKit.d.ts.map +1 -0
- package/src/vaultFactory/vaultManager.d.ts +526 -0
- package/src/vaultFactory/vaultManager.d.ts.map +1 -0
- package/src/c.log +0 -1
|
@@ -0,0 +1,360 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constants for vault phase.
|
|
3
|
+
*
|
|
4
|
+
* - ACTIVE - vault is in use and can be changed
|
|
5
|
+
* - LIQUIDATING - vault is being liquidated by the vault manager, and cannot be
|
|
6
|
+
* changed by the user. If liquidation fails, vaults may remain in this state.
|
|
7
|
+
* An upgrade to the contract might be able to recover them.
|
|
8
|
+
* - TRANSFER - vault is able to be transferred (payments and debits frozen until
|
|
9
|
+
* it has a new owner)
|
|
10
|
+
* - CLOSED - vault was closed by the user and all assets have been paid out
|
|
11
|
+
* - LIQUIDATED - vault was closed by the manager, with remaining assets paid to
|
|
12
|
+
* owner
|
|
13
|
+
*/
|
|
14
|
+
export type Phase = (typeof Phase)[keyof typeof Phase];
|
|
15
|
+
export namespace Phase {
|
|
16
|
+
let ACTIVE: "active";
|
|
17
|
+
let LIQUIDATING: "liquidating";
|
|
18
|
+
let CLOSED: "closed";
|
|
19
|
+
let LIQUIDATED: "liquidated";
|
|
20
|
+
let TRANSFER: "transfer";
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* @typedef {object} VaultNotification
|
|
24
|
+
* @property {Amount<'nat'>} locked Amount of Collateral locked
|
|
25
|
+
* @property {{
|
|
26
|
+
* debt: Amount<'nat'>;
|
|
27
|
+
* interest: Ratio;
|
|
28
|
+
* }} debtSnapshot
|
|
29
|
+
* 'debt' at the point the compounded interest was 'interest'
|
|
30
|
+
* @property {Phase} vaultState
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* @typedef {object} VaultManager
|
|
34
|
+
* @property {() => Subscriber<AssetState>} getAssetSubscriber
|
|
35
|
+
* @property {(collateralAmount: Amount) => Amount<'nat'>} maxDebtFor
|
|
36
|
+
* @property {() => Brand<'nat'>} getCollateralBrand
|
|
37
|
+
* @property {(base: string) => string} scopeDescription
|
|
38
|
+
* @property {() => Brand<'nat'>} getDebtBrand
|
|
39
|
+
* @property {MintAndTransfer} mintAndTransfer
|
|
40
|
+
* @property {(amount: Amount, seat: ZCFSeat) => void} burn
|
|
41
|
+
* @property {() => Ratio} getCompoundedInterest
|
|
42
|
+
* @property {(
|
|
43
|
+
* oldDebt: NormalizedDebt,
|
|
44
|
+
* oldCollateral: Amount<'nat'>,
|
|
45
|
+
* vaultId: VaultId,
|
|
46
|
+
* vaultPhase: VaultPhase,
|
|
47
|
+
* vault: Vault,
|
|
48
|
+
* ) => void} handleBalanceChange
|
|
49
|
+
* @property {() => GovernedParamGetters} getGovernedParams
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* @typedef {Readonly<{
|
|
53
|
+
* idInManager: VaultId;
|
|
54
|
+
* manager: VaultManager;
|
|
55
|
+
* storageNode: Remote<StorageNode>;
|
|
56
|
+
* vaultSeat: ZCFSeat;
|
|
57
|
+
* }>} ImmutableState
|
|
58
|
+
*/
|
|
59
|
+
/**
|
|
60
|
+
* Snapshot is of the debt and compounded interest when the principal was last
|
|
61
|
+
* changed.
|
|
62
|
+
*
|
|
63
|
+
* @typedef {{
|
|
64
|
+
* interestSnapshot: Ratio;
|
|
65
|
+
* phase: VaultPhase;
|
|
66
|
+
* debtSnapshot: Amount<'nat'>;
|
|
67
|
+
* outerUpdater: Recorder<VaultNotification> | null;
|
|
68
|
+
* }} MutableState
|
|
69
|
+
*/
|
|
70
|
+
export const VaultI: import("@endo/patterns").InterfaceGuard<{
|
|
71
|
+
getCollateralAmount: import("@endo/patterns").MethodGuard;
|
|
72
|
+
getCurrentDebt: import("@endo/patterns").MethodGuard;
|
|
73
|
+
getNormalizedDebt: import("@endo/patterns").MethodGuard;
|
|
74
|
+
getVaultSeat: import("@endo/patterns").MethodGuard;
|
|
75
|
+
initVaultKit: import("@endo/patterns").MethodGuard;
|
|
76
|
+
liquidated: import("@endo/patterns").MethodGuard;
|
|
77
|
+
liquidating: import("@endo/patterns").MethodGuard;
|
|
78
|
+
makeAdjustBalancesInvitation: import("@endo/patterns").MethodGuard;
|
|
79
|
+
makeCloseInvitation: import("@endo/patterns").MethodGuard;
|
|
80
|
+
makeTransferInvitation: import("@endo/patterns").MethodGuard;
|
|
81
|
+
abortLiquidation: import("@endo/patterns").MethodGuard;
|
|
82
|
+
}>;
|
|
83
|
+
export function prepareVault(baggage: Baggage, makeRecorderKit: MakeRecorderKit, zcf: ZCF): (manager: VaultManager, idInManager: string, storageNode: Remote<StorageNode>) => import("@endo/exo").GuardedKit<{
|
|
84
|
+
helper: {
|
|
85
|
+
collateralBrand(): Brand<"nat">;
|
|
86
|
+
debtBrand(): Brand<"nat">;
|
|
87
|
+
emptyCollateral(): import("@agoric/ertp").NatAmount;
|
|
88
|
+
emptyDebt(): import("@agoric/ertp").NatAmount;
|
|
89
|
+
/**
|
|
90
|
+
* @typedef {{
|
|
91
|
+
* give: { Collateral: Amount<'nat'>; Minted: Amount<'nat'> };
|
|
92
|
+
* want: { Collateral: Amount<'nat'>; Minted: Amount<'nat'> };
|
|
93
|
+
* }} FullProposal
|
|
94
|
+
*/
|
|
95
|
+
/**
|
|
96
|
+
* @param {ProposalRecord} partial
|
|
97
|
+
* @returns {FullProposal}
|
|
98
|
+
*/
|
|
99
|
+
fullProposal(partial: ProposalRecord): {
|
|
100
|
+
give: {
|
|
101
|
+
Collateral: Amount<"nat">;
|
|
102
|
+
Minted: Amount<"nat">;
|
|
103
|
+
};
|
|
104
|
+
want: {
|
|
105
|
+
Collateral: Amount<"nat">;
|
|
106
|
+
Minted: Amount<"nat">;
|
|
107
|
+
};
|
|
108
|
+
};
|
|
109
|
+
/** @param {VaultPhase} newPhase */
|
|
110
|
+
assignPhase(newPhase: VaultPhase): void;
|
|
111
|
+
assertActive(): void;
|
|
112
|
+
assertCloseable(): void;
|
|
113
|
+
/**
|
|
114
|
+
* Called whenever the debt is paid or created through a transaction,
|
|
115
|
+
* but not for interest accrual.
|
|
116
|
+
*
|
|
117
|
+
* @param {Amount<'nat'>} newDebt - principal and all accrued interest
|
|
118
|
+
*/
|
|
119
|
+
updateDebtSnapshot(newDebt: Amount<"nat">): void;
|
|
120
|
+
/**
|
|
121
|
+
* Update the debt balance and propagate upwards to maintain aggregate
|
|
122
|
+
* debt and liquidation order.
|
|
123
|
+
*
|
|
124
|
+
* @param {NormalizedDebt} oldDebtNormalized - prior principal and all
|
|
125
|
+
* accrued interest, normalized to the launch of the vaultManager
|
|
126
|
+
* @param {Amount<'nat'>} oldCollateral - actual collateral
|
|
127
|
+
* @param {Amount<'nat'>} newDebtActual - actual principal and all
|
|
128
|
+
* accrued interest
|
|
129
|
+
*/
|
|
130
|
+
updateDebtAccounting(oldDebtNormalized: NormalizedDebt, oldCollateral: Amount<"nat">, newDebtActual: Amount<"nat">): void;
|
|
131
|
+
/**
|
|
132
|
+
* @param {ZCFSeat} seat
|
|
133
|
+
* @returns {Amount<'nat'>}
|
|
134
|
+
*/
|
|
135
|
+
getCollateralAllocated(seat: ZCFSeat): Amount<"nat">;
|
|
136
|
+
/**
|
|
137
|
+
* @param {ZCFSeat} seat
|
|
138
|
+
* @returns {Amount<'nat'>}
|
|
139
|
+
*/
|
|
140
|
+
getMintedAllocated(seat: ZCFSeat): Amount<"nat">;
|
|
141
|
+
assertVaultHoldsNoMinted(): void;
|
|
142
|
+
/**
|
|
143
|
+
* @param {Amount<'nat'>} collateralAmount
|
|
144
|
+
* @param {Amount<'nat'>} proposedDebt
|
|
145
|
+
*/
|
|
146
|
+
assertSufficientCollateral(collateralAmount: Amount<"nat">, proposedDebt: Amount<"nat">): void;
|
|
147
|
+
/** @param {Phase} newPhase */
|
|
148
|
+
getStateSnapshot(newPhase: Phase): {
|
|
149
|
+
debtSnapshot: {
|
|
150
|
+
debt: import("@agoric/ertp").NatAmount;
|
|
151
|
+
interest: Ratio;
|
|
152
|
+
};
|
|
153
|
+
locked: import("@agoric/ertp").NatAmount;
|
|
154
|
+
vaultState: Phase;
|
|
155
|
+
};
|
|
156
|
+
/** call this whenever anything changes! */
|
|
157
|
+
updateUiState(): void;
|
|
158
|
+
/** @param {ZCFSeat} seat */
|
|
159
|
+
closeHook(seat: ZCFSeat): Promise<string>;
|
|
160
|
+
/**
|
|
161
|
+
* Calculate the fee, the amount to mint and the resulting debt. The
|
|
162
|
+
* give and the want together reflect a delta, where typically one is
|
|
163
|
+
* zero because they come from the gave/want of an offer proposal. If
|
|
164
|
+
* the `want` is zero, the `fee` will also be zero, so the simple math
|
|
165
|
+
* works.
|
|
166
|
+
*
|
|
167
|
+
* @param {Amount<'nat'>} currentDebt
|
|
168
|
+
* @param {Amount<'nat'>} giveAmount
|
|
169
|
+
* @param {Amount<'nat'>} wantAmount
|
|
170
|
+
*/
|
|
171
|
+
debtFee(currentDebt: Amount<"nat">, giveAmount: Amount<"nat">, wantAmount: Amount<"nat">): {
|
|
172
|
+
newDebt: import("@agoric/ertp").NatAmount;
|
|
173
|
+
toMint: import("@agoric/ertp").NatAmount;
|
|
174
|
+
fee: import("@agoric/ertp").NatAmount;
|
|
175
|
+
surplus: import("@agoric/ertp").NatAmount;
|
|
176
|
+
};
|
|
177
|
+
/**
|
|
178
|
+
* Adjust principal and collateral (atomically for offer safety)
|
|
179
|
+
*
|
|
180
|
+
* @param {ZCFSeat} clientSeat
|
|
181
|
+
* @returns {string} success message
|
|
182
|
+
*/
|
|
183
|
+
adjustBalancesHook(clientSeat: ZCFSeat): string;
|
|
184
|
+
/**
|
|
185
|
+
* @param {ZCFSeat} clientSeat
|
|
186
|
+
* @param {FullProposal} fp
|
|
187
|
+
* @param {ReturnType<typeof calculateDebtCosts>} costs
|
|
188
|
+
* @param {object} accounting
|
|
189
|
+
* @param {NormalizedDebt} accounting.normalizedDebtPre
|
|
190
|
+
* @param {Amount<'nat'>} accounting.collateralPre
|
|
191
|
+
* @returns {string} success message
|
|
192
|
+
*/
|
|
193
|
+
commitBalanceAdjustment(clientSeat: ZCFSeat, fp: {
|
|
194
|
+
give: {
|
|
195
|
+
Collateral: Amount<"nat">;
|
|
196
|
+
Minted: Amount<"nat">;
|
|
197
|
+
};
|
|
198
|
+
want: {
|
|
199
|
+
Collateral: Amount<"nat">;
|
|
200
|
+
Minted: Amount<"nat">;
|
|
201
|
+
};
|
|
202
|
+
}, { newDebt, fee, surplus, toMint }: ReturnType<typeof calculateDebtCosts>, { normalizedDebtPre, collateralPre }: {
|
|
203
|
+
normalizedDebtPre: NormalizedDebt;
|
|
204
|
+
collateralPre: Amount<"nat">;
|
|
205
|
+
}): string;
|
|
206
|
+
/**
|
|
207
|
+
* @param {ZCFSeat} seat
|
|
208
|
+
* @returns {VaultKit}
|
|
209
|
+
*/
|
|
210
|
+
makeTransferInvitationHook(seat: ZCFSeat): VaultKit;
|
|
211
|
+
};
|
|
212
|
+
self: {
|
|
213
|
+
getVaultSeat(): ZCFSeat;
|
|
214
|
+
/**
|
|
215
|
+
* @param {ZCFSeat} seat
|
|
216
|
+
* @param {Remote<StorageNode>} storageNode
|
|
217
|
+
*/
|
|
218
|
+
initVaultKit(seat: ZCFSeat, storageNode: Remote<StorageNode>): Promise<{
|
|
219
|
+
publicSubscribers: {
|
|
220
|
+
vault: {
|
|
221
|
+
description: string;
|
|
222
|
+
subscriber: Subscriber<VaultNotification>;
|
|
223
|
+
storagePath: Promise<string>;
|
|
224
|
+
};
|
|
225
|
+
};
|
|
226
|
+
invitationMakers: import("@endo/exo").Guarded<{
|
|
227
|
+
AdjustBalances(): Promise<Invitation<string, undefined>>;
|
|
228
|
+
CloseVault(): Promise<Invitation<string, undefined>>;
|
|
229
|
+
TransferVault(): Promise<Invitation</*elided*/ any>>;
|
|
230
|
+
}>;
|
|
231
|
+
vault: import("@endo/exo").Guarded<{
|
|
232
|
+
getPublicTopics(): {
|
|
233
|
+
vault: {
|
|
234
|
+
description: string;
|
|
235
|
+
subscriber: Subscriber<VaultNotification>;
|
|
236
|
+
storagePath: Promise<string>;
|
|
237
|
+
};
|
|
238
|
+
};
|
|
239
|
+
makeAdjustBalancesInvitation(): Promise<Invitation<string, undefined>>;
|
|
240
|
+
makeCloseInvitation(): Promise<Invitation<string, undefined>>;
|
|
241
|
+
makeTransferInvitation(): Promise<Invitation</*elided*/ any>>;
|
|
242
|
+
getCollateralAmount(): import("@agoric/ertp").NatAmount;
|
|
243
|
+
getCurrentDebt(): import("@agoric/ertp").NatAmount;
|
|
244
|
+
getNormalizedDebt(): NormalizedDebt;
|
|
245
|
+
}>;
|
|
246
|
+
vaultUpdater: Recorder<VaultNotification>;
|
|
247
|
+
}>;
|
|
248
|
+
/** Called by manager at start of liquidation. */
|
|
249
|
+
liquidating(): void;
|
|
250
|
+
/**
|
|
251
|
+
* Called by manager at end of liquidation, at which point all debts
|
|
252
|
+
* have been covered.
|
|
253
|
+
*/
|
|
254
|
+
liquidated(): void;
|
|
255
|
+
/**
|
|
256
|
+
* Called by vaultManager when the auction wasn't able to sell the
|
|
257
|
+
* collateral. The liquidation fee was charged against the collateral,
|
|
258
|
+
* but the debt will be restored and the vault will be active again.
|
|
259
|
+
* Liquidation.md has details on the liquidation approach.
|
|
260
|
+
*/
|
|
261
|
+
abortLiquidation(): string;
|
|
262
|
+
makeAdjustBalancesInvitation(): Promise<Invitation<string, undefined>>;
|
|
263
|
+
makeCloseInvitation(): Promise<Invitation<string, undefined>>;
|
|
264
|
+
/** @returns {Promise<Invitation<VaultKit>>} */
|
|
265
|
+
makeTransferInvitation(): Promise<Invitation<VaultKit>>;
|
|
266
|
+
/** @returns {Amount<'nat'>} */
|
|
267
|
+
getCollateralAmount(): Amount<"nat">;
|
|
268
|
+
/**
|
|
269
|
+
* The actual current debt, including accrued interest.
|
|
270
|
+
*
|
|
271
|
+
* This looks like a simple getter but it does a lot of the heavy
|
|
272
|
+
* lifting for interest accrual. Rather than updating all records when
|
|
273
|
+
* interest accrues, the vault manager updates just its rolling
|
|
274
|
+
* compounded interest. Here we calculate what the current debt is given
|
|
275
|
+
* what's recorded in this vault and what interest has compounded since
|
|
276
|
+
* this vault record was written.
|
|
277
|
+
*
|
|
278
|
+
* @returns {Amount<'nat'>}
|
|
279
|
+
* @see getNormalizedDebt
|
|
280
|
+
*/
|
|
281
|
+
getCurrentDebt(): Amount<"nat">;
|
|
282
|
+
/**
|
|
283
|
+
* The normalization puts all debts on a common time-independent scale
|
|
284
|
+
* since the launch of this vault manager. This allows the manager to
|
|
285
|
+
* order vaults by their debt-to-collateral ratios without having to
|
|
286
|
+
* mutate the debts as the interest accrues.
|
|
287
|
+
*
|
|
288
|
+
* @returns {NormalizedDebt} as if the vault was open at the launch of
|
|
289
|
+
* this manager, before any interest accrued
|
|
290
|
+
* @see getActualDebAmount
|
|
291
|
+
*/
|
|
292
|
+
getNormalizedDebt(): NormalizedDebt;
|
|
293
|
+
};
|
|
294
|
+
}>;
|
|
295
|
+
export type VaultPhase = Exclude<Phase, "transfer">;
|
|
296
|
+
export type VaultNotification = {
|
|
297
|
+
/**
|
|
298
|
+
* Amount of Collateral locked
|
|
299
|
+
*/
|
|
300
|
+
locked: Amount<"nat">;
|
|
301
|
+
/**
|
|
302
|
+
* 'debt' at the point the compounded interest was 'interest'
|
|
303
|
+
*/
|
|
304
|
+
debtSnapshot: {
|
|
305
|
+
debt: Amount<"nat">;
|
|
306
|
+
interest: Ratio;
|
|
307
|
+
};
|
|
308
|
+
vaultState: Phase;
|
|
309
|
+
};
|
|
310
|
+
export type VaultManager = {
|
|
311
|
+
getAssetSubscriber: () => Subscriber<AssetState>;
|
|
312
|
+
maxDebtFor: (collateralAmount: Amount) => Amount<"nat">;
|
|
313
|
+
getCollateralBrand: () => Brand<"nat">;
|
|
314
|
+
scopeDescription: (base: string) => string;
|
|
315
|
+
getDebtBrand: () => Brand<"nat">;
|
|
316
|
+
mintAndTransfer: MintAndTransfer;
|
|
317
|
+
burn: (amount: Amount, seat: ZCFSeat) => void;
|
|
318
|
+
getCompoundedInterest: () => Ratio;
|
|
319
|
+
handleBalanceChange: (oldDebt: NormalizedDebt, oldCollateral: Amount<"nat">, vaultId: VaultId, vaultPhase: VaultPhase, vault: Vault) => void;
|
|
320
|
+
getGovernedParams: () => GovernedParamGetters;
|
|
321
|
+
};
|
|
322
|
+
export type ImmutableState = Readonly<{
|
|
323
|
+
idInManager: VaultId;
|
|
324
|
+
manager: VaultManager;
|
|
325
|
+
storageNode: Remote<StorageNode>;
|
|
326
|
+
vaultSeat: ZCFSeat;
|
|
327
|
+
}>;
|
|
328
|
+
/**
|
|
329
|
+
* Snapshot is of the debt and compounded interest when the principal was last
|
|
330
|
+
* changed.
|
|
331
|
+
*/
|
|
332
|
+
export type MutableState = {
|
|
333
|
+
interestSnapshot: Ratio;
|
|
334
|
+
phase: VaultPhase;
|
|
335
|
+
debtSnapshot: Amount<"nat">;
|
|
336
|
+
outerUpdater: Recorder<VaultNotification> | null;
|
|
337
|
+
};
|
|
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';
|
|
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';
|
|
347
|
+
import type { NormalizedDebt } from './storeUtils.js';
|
|
348
|
+
import type { ZCFSeat } from '@agoric/zoe';
|
|
349
|
+
import type { Ratio } from '@agoric/ertp/src/ratio.js';
|
|
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';
|
|
359
|
+
import type { EReturn } from '@endo/far';
|
|
360
|
+
//# sourceMappingURL=vault.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["vault.js"],"names":[],"mappings":"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"}
|