@agoric/zoe 0.26.3-dev-da3b8a8.0 → 0.26.3-dev-afcbcd7.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.
- package/bundles/bundle-contractFacet-js-meta.json +185 -195
- package/bundles/bundle-contractFacet.js +1 -1
- package/package.json +15 -12
- package/src/contractFacet/zcfZygote.js +3 -4
- package/src/contractSupport/ratio.js +1 -1
- package/src/contracts/callSpread/calculateShares.js +1 -1
- package/src/contracts/callSpread/fundedCallSpread.js +1 -1
- package/src/contracts/callSpread/payoffHandler.js +1 -1
- package/src/contracts/callSpread/pricedCallSpread.js +1 -1
- package/src/contracts/exported.js +1 -1
- package/src/contracts/loan/close.js +1 -1
- package/src/contracts/priceAggregator.js +1 -1
- package/src/zoeService/escrowStorage.js +1 -1
- package/src/zoeService/zoe.js +3 -4
- package/src/zoeService/zoeStorageManager.js +1 -1
- package/bundles/bundle-contractFacet.d.ts +0 -7
- package/bundles/bundle-contractFacet.d.ts.map +0 -1
- package/src/cleanProposal.d.ts +0 -9
- package/src/cleanProposal.d.ts.map +0 -1
- package/src/contractFacet/allocationMath.d.ts +0 -7
- package/src/contractFacet/allocationMath.d.ts.map +0 -1
- package/src/contractFacet/evalContractCode.d.ts +0 -2
- package/src/contractFacet/evalContractCode.d.ts.map +0 -1
- package/src/contractFacet/exit.d.ts +0 -2
- package/src/contractFacet/exit.d.ts.map +0 -1
- package/src/contractFacet/internal-types.d.ts +0 -8
- package/src/contractFacet/internal-types.d.ts.map +0 -1
- package/src/contractFacet/offerHandlerStorage.d.ts +0 -5
- package/src/contractFacet/offerHandlerStorage.d.ts.map +0 -1
- package/src/contractFacet/offerSafety.d.ts +0 -34
- package/src/contractFacet/offerSafety.d.ts.map +0 -1
- package/src/contractFacet/reallocate.d.ts +0 -3
- package/src/contractFacet/reallocate.d.ts.map +0 -1
- package/src/contractFacet/rightsConservation.d.ts +0 -12
- package/src/contractFacet/rightsConservation.d.ts.map +0 -1
- package/src/contractFacet/vatRoot.d.ts +0 -14
- package/src/contractFacet/vatRoot.d.ts.map +0 -1
- package/src/contractFacet/zcfMint.d.ts +0 -6
- package/src/contractFacet/zcfMint.d.ts.map +0 -1
- package/src/contractFacet/zcfSeat.d.ts +0 -3
- package/src/contractFacet/zcfSeat.d.ts.map +0 -1
- package/src/contractFacet/zcfZygote.d.ts +0 -3
- package/src/contractFacet/zcfZygote.d.ts.map +0 -1
- package/src/contractSupport/atomicTransfer.d.ts +0 -6
- package/src/contractSupport/atomicTransfer.d.ts.map +0 -1
- package/src/contractSupport/bondingCurves.d.ts +0 -6
- package/src/contractSupport/bondingCurves.d.ts.map +0 -1
- package/src/contractSupport/durability.d.ts +0 -5
- package/src/contractSupport/durability.d.ts.map +0 -1
- package/src/contractSupport/index.d.ts +0 -13
- package/src/contractSupport/index.d.ts.map +0 -1
- package/src/contractSupport/priceAuthority.d.ts +0 -37
- package/src/contractSupport/priceAuthority.d.ts.map +0 -1
- package/src/contractSupport/priceAuthorityInitial.d.ts +0 -3
- package/src/contractSupport/priceAuthorityInitial.d.ts.map +0 -1
- package/src/contractSupport/priceAuthorityQuoteMint.d.ts +0 -2
- package/src/contractSupport/priceAuthorityQuoteMint.d.ts.map +0 -1
- package/src/contractSupport/priceAuthorityTransform.d.ts +0 -15
- package/src/contractSupport/priceAuthorityTransform.d.ts.map +0 -1
- package/src/contractSupport/priceQuote.d.ts +0 -7
- package/src/contractSupport/priceQuote.d.ts.map +0 -1
- package/src/contractSupport/ratio.d.ts +0 -28
- package/src/contractSupport/ratio.d.ts.map +0 -1
- package/src/contractSupport/recorder.d.ts +0 -229
- package/src/contractSupport/recorder.d.ts.map +0 -1
- package/src/contractSupport/safeMath.d.ts +0 -11
- package/src/contractSupport/safeMath.d.ts.map +0 -1
- package/src/contractSupport/stateMachine.d.ts +0 -6
- package/src/contractSupport/stateMachine.d.ts.map +0 -1
- package/src/contractSupport/statistics.d.ts +0 -7
- package/src/contractSupport/statistics.d.ts.map +0 -1
- package/src/contractSupport/topics.d.ts +0 -22
- package/src/contractSupport/topics.d.ts.map +0 -1
- package/src/contractSupport/types.d.ts +0 -63
- package/src/contractSupport/types.d.ts.map +0 -1
- package/src/contractSupport/zoeHelpers.d.ts +0 -30
- package/src/contractSupport/zoeHelpers.d.ts.map +0 -1
- package/src/contracts/atomicSwap.d.ts +0 -16
- package/src/contracts/atomicSwap.d.ts.map +0 -1
- package/src/contracts/auction/assertBidSeat.d.ts +0 -2
- package/src/contracts/auction/assertBidSeat.d.ts.map +0 -1
- package/src/contracts/auction/firstPriceLogic.d.ts +0 -2
- package/src/contracts/auction/firstPriceLogic.d.ts.map +0 -1
- package/src/contracts/auction/index.d.ts +0 -56
- package/src/contracts/auction/index.d.ts.map +0 -1
- package/src/contracts/auction/secondPriceLogic.d.ts +0 -2
- package/src/contracts/auction/secondPriceLogic.d.ts.map +0 -1
- package/src/contracts/automaticRefund.d.ts +0 -25
- package/src/contracts/automaticRefund.d.ts.map +0 -1
- package/src/contracts/autoswap.d.ts +0 -43
- package/src/contracts/autoswap.d.ts.map +0 -1
- package/src/contracts/barterExchange.d.ts +0 -22
- package/src/contracts/barterExchange.d.ts.map +0 -1
- package/src/contracts/callSpread/calculateShares.d.ts +0 -2
- package/src/contracts/callSpread/calculateShares.d.ts.map +0 -1
- package/src/contracts/callSpread/fundedCallSpread.d.ts +0 -60
- package/src/contracts/callSpread/fundedCallSpread.d.ts.map +0 -1
- package/src/contracts/callSpread/payoffHandler.d.ts +0 -11
- package/src/contracts/callSpread/payoffHandler.d.ts.map +0 -1
- package/src/contracts/callSpread/percent.d.ts +0 -3
- package/src/contracts/callSpread/percent.d.ts.map +0 -1
- package/src/contracts/callSpread/position.d.ts +0 -10
- package/src/contracts/callSpread/position.d.ts.map +0 -1
- package/src/contracts/callSpread/pricedCallSpread.d.ts +0 -66
- package/src/contracts/callSpread/pricedCallSpread.d.ts.map +0 -1
- package/src/contracts/callSpread/types.d.ts +0 -30
- package/src/contracts/callSpread/types.d.ts.map +0 -1
- package/src/contracts/coveredCall-durable.d.ts +0 -23
- package/src/contracts/coveredCall-durable.d.ts.map +0 -1
- package/src/contracts/coveredCall.d.ts +0 -64
- package/src/contracts/coveredCall.d.ts.map +0 -1
- package/src/contracts/exported.d.ts +0 -2
- package/src/contracts/exported.d.ts.map +0 -1
- package/src/contracts/loan/addCollateral.d.ts +0 -3
- package/src/contracts/loan/addCollateral.d.ts.map +0 -1
- package/src/contracts/loan/borrow.d.ts +0 -3
- package/src/contracts/loan/borrow.d.ts.map +0 -1
- package/src/contracts/loan/close.d.ts +0 -3
- package/src/contracts/loan/close.d.ts.map +0 -1
- package/src/contracts/loan/index.d.ts +0 -64
- package/src/contracts/loan/index.d.ts.map +0 -1
- package/src/contracts/loan/lend.d.ts +0 -3
- package/src/contracts/loan/lend.d.ts.map +0 -1
- package/src/contracts/loan/liquidate.d.ts +0 -3
- package/src/contracts/loan/liquidate.d.ts.map +0 -1
- package/src/contracts/loan/scheduleLiquidation.d.ts +0 -3
- package/src/contracts/loan/scheduleLiquidation.d.ts.map +0 -1
- package/src/contracts/loan/types.d.ts +0 -161
- package/src/contracts/loan/types.d.ts.map +0 -1
- package/src/contracts/loan/updateDebt.d.ts +0 -11
- package/src/contracts/loan/updateDebt.d.ts.map +0 -1
- package/src/contracts/mintAndSellNFT.d.ts +0 -28
- package/src/contracts/mintAndSellNFT.d.ts.map +0 -1
- package/src/contracts/mintPayments.d.ts +0 -30
- package/src/contracts/mintPayments.d.ts.map +0 -1
- package/src/contracts/oracle.d.ts +0 -26
- package/src/contracts/oracle.d.ts.map +0 -1
- package/src/contracts/otcDesk.d.ts +0 -79
- package/src/contracts/otcDesk.d.ts.map +0 -1
- package/src/contracts/priceAggregator.d.ts +0 -91
- package/src/contracts/priceAggregator.d.ts.map +0 -1
- package/src/contracts/priceAggregatorTypes.d.ts +0 -77
- package/src/contracts/priceAggregatorTypes.d.ts.map +0 -1
- package/src/contracts/scaledPriceAuthority.d.ts +0 -23
- package/src/contracts/scaledPriceAuthority.d.ts.map +0 -1
- package/src/contracts/sellItems.d.ts +0 -30
- package/src/contracts/sellItems.d.ts.map +0 -1
- package/src/contracts/simpleExchange.d.ts +0 -37
- package/src/contracts/simpleExchange.d.ts.map +0 -1
- package/src/contracts/types.d.ts +0 -80
- package/src/contracts/types.d.ts.map +0 -1
- package/src/handleWarning.d.ts +0 -3
- package/src/handleWarning.d.ts.map +0 -1
- package/src/instanceRecordStorage.d.ts +0 -2
- package/src/instanceRecordStorage.d.ts.map +0 -1
- package/src/internal-types.d.ts +0 -177
- package/src/internal-types.d.ts.map +0 -1
- package/src/issuerRecord.d.ts +0 -3
- package/src/issuerRecord.d.ts.map +0 -1
- package/src/issuerStorage.d.ts +0 -14
- package/src/issuerStorage.d.ts.map +0 -1
- package/src/makeHandle.d.ts +0 -4
- package/src/makeHandle.d.ts.map +0 -1
- package/src/objArrayConversion.d.ts +0 -5
- package/src/objArrayConversion.d.ts.map +0 -1
- package/src/typeGuards.d.ts +0 -168
- package/src/typeGuards.d.ts.map +0 -1
- package/src/types.d.ts +0 -45
- package/src/types.d.ts.map +0 -1
- package/src/zoeService/createZCFVat.d.ts +0 -2
- package/src/zoeService/createZCFVat.d.ts.map +0 -1
- package/src/zoeService/escrowStorage.d.ts +0 -7
- package/src/zoeService/escrowStorage.d.ts.map +0 -1
- package/src/zoeService/feeMint.d.ts +0 -30
- package/src/zoeService/feeMint.d.ts.map +0 -1
- package/src/zoeService/installationStorage.d.ts +0 -35
- package/src/zoeService/installationStorage.d.ts.map +0 -1
- package/src/zoeService/instanceAdminStorage.d.ts +0 -123
- package/src/zoeService/instanceAdminStorage.d.ts.map +0 -1
- package/src/zoeService/internal-types.d.ts +0 -90
- package/src/zoeService/internal-types.d.ts.map +0 -1
- package/src/zoeService/invitationQueries.d.ts +0 -6
- package/src/zoeService/invitationQueries.d.ts.map +0 -1
- package/src/zoeService/makeInvitation.d.ts +0 -5
- package/src/zoeService/makeInvitation.d.ts.map +0 -1
- package/src/zoeService/offer/burnInvitation.d.ts +0 -5
- package/src/zoeService/offer/burnInvitation.d.ts.map +0 -1
- package/src/zoeService/offer/offer.d.ts +0 -2
- package/src/zoeService/offer/offer.d.ts.map +0 -1
- package/src/zoeService/startInstance.d.ts +0 -4
- package/src/zoeService/startInstance.d.ts.map +0 -1
- package/src/zoeService/types.d.ts +0 -226
- package/src/zoeService/types.d.ts.map +0 -1
- package/src/zoeService/zoe.d.ts +0 -61
- package/src/zoeService/zoe.d.ts.map +0 -1
- package/src/zoeService/zoeSeat.d.ts +0 -56
- package/src/zoeService/zoeSeat.d.ts.map +0 -1
- package/src/zoeService/zoeStorageManager.d.ts +0 -75
- package/src/zoeService/zoeStorageManager.d.ts.map +0 -1
- package/tools/fakePriceAuthority.d.ts +0 -30
- package/tools/fakePriceAuthority.d.ts.map +0 -1
- package/tools/fakeVatAdmin.d.ts +0 -103
- package/tools/fakeVatAdmin.d.ts.map +0 -1
- package/tools/internal-types.d.ts +0 -12
- package/tools/internal-types.d.ts.map +0 -1
- package/tools/manualPriceAuthority.d.ts +0 -20
- package/tools/manualPriceAuthority.d.ts.map +0 -1
- package/tools/manualTimer.d.ts +0 -44
- package/tools/manualTimer.d.ts.map +0 -1
- package/tools/prepare-test-env-ava.d.ts +0 -2
- package/tools/prepare-test-env-ava.d.ts.map +0 -1
- package/tools/prepare-test-env.d.ts +0 -2
- package/tools/prepare-test-env.d.ts.map +0 -1
- package/tools/priceAuthorityRegistry.d.ts +0 -20
- package/tools/priceAuthorityRegistry.d.ts.map +0 -1
- package/tools/scriptedOracle.d.ts +0 -27
- package/tools/scriptedOracle.d.ts.map +0 -1
- package/tools/scriptedPriceAuthority.d.ts +0 -2
- package/tools/scriptedPriceAuthority.d.ts.map +0 -1
- package/tools/setup-zoe.d.ts +0 -35
- package/tools/setup-zoe.d.ts.map +0 -1
- package/tools/types-ambient.d.ts +0 -142
- package/tools/types-ambient.d.ts.map +0 -1
- package/tools/types.d.ts +0 -142
- package/tools/types.d.ts.map +0 -1
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This contract implements a fully collateralized call spread. This is a
|
|
3
|
-
* combination of a call option bought at one strike price and a second call
|
|
4
|
-
* option sold at a higher price. The invitations are produced in pairs, and the
|
|
5
|
-
* instance creator escrows upfront all collateral that will be paid out. The
|
|
6
|
-
* individual options are ERTP invitations that are suitable for resale.
|
|
7
|
-
*
|
|
8
|
-
* This option contract is settled financially. There is no requirement that the
|
|
9
|
-
* creator have ownership of the underlying asset at the start, and
|
|
10
|
-
* the beneficiaries shouldn't expect to take delivery at closing.
|
|
11
|
-
*
|
|
12
|
-
* The issuerKeywordRecord specifies the issuers for three keywords: Underlying,
|
|
13
|
-
* Strike, and Collateral. The payout is in Collateral. Strike amounts are used
|
|
14
|
-
* for the price oracle's quotes as to the value of the Underlying, as well as
|
|
15
|
-
* the strike prices in the terms.
|
|
16
|
-
*
|
|
17
|
-
* The creatorInvitation has customDetails that include the amounts of the
|
|
18
|
-
* two options as longAmount and shortAmount. When the creatorInvitation is
|
|
19
|
-
* exercised, the payout includes the two option positions, which are themselves
|
|
20
|
-
* invitations which can be exercised for free, and provide the option payouts
|
|
21
|
-
* with the keyword Collateral.
|
|
22
|
-
*
|
|
23
|
-
* terms include:
|
|
24
|
-
* `timer` is a timer, and must be recognized by `priceAuthority`.
|
|
25
|
-
* `expiration` is a time recognized by the `timer`.
|
|
26
|
-
* `underlyingAmount` is passed to `priceAuthority`. It could be an NFT or a
|
|
27
|
-
* fungible amount.
|
|
28
|
-
* `strikePrice2` must be greater than `strikePrice1`.
|
|
29
|
-
* `settlementAmount` is the amount deposited by the funder and split between
|
|
30
|
-
* the holders of the options. It uses Collateral.
|
|
31
|
-
* `priceAuthority` is an oracle that has a timer so it can respond to requests
|
|
32
|
-
* for prices as of a stated time. After the deadline, it will issue a
|
|
33
|
-
* PriceQuote giving the value of the underlying asset in the strike currency.
|
|
34
|
-
*
|
|
35
|
-
* Future enhancements:
|
|
36
|
-
* + issue multiple option pairs with the same expiration from a single instance
|
|
37
|
-
* + increase the precision of the calculations. (use Ratios with
|
|
38
|
-
* denominator.value=10000)
|
|
39
|
-
*/
|
|
40
|
-
/**
|
|
41
|
-
* @param {ZCF<{
|
|
42
|
-
* strikePrice1: Amount,
|
|
43
|
-
* strikePrice2: Amount,
|
|
44
|
-
* settlementAmount: Amount,
|
|
45
|
-
* priceAuthority: PriceAuthority,
|
|
46
|
-
* expiration: bigint,
|
|
47
|
-
* underlyingAmount: Amount,
|
|
48
|
-
* }>} zcf
|
|
49
|
-
*/
|
|
50
|
-
export function start(zcf: ZCF<{
|
|
51
|
-
strikePrice1: Amount;
|
|
52
|
-
strikePrice2: Amount;
|
|
53
|
-
settlementAmount: Amount;
|
|
54
|
-
priceAuthority: PriceAuthority;
|
|
55
|
-
expiration: bigint;
|
|
56
|
-
underlyingAmount: Amount;
|
|
57
|
-
}>): Promise<{
|
|
58
|
-
creatorInvitation: Promise<Invitation<R, A>>;
|
|
59
|
-
}>;
|
|
60
|
-
//# sourceMappingURL=fundedCallSpread.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fundedCallSpread.d.ts","sourceRoot":"","sources":["fundedCallSpread.js"],"names":[],"mappings":"AAaA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH;;;;;;;;;GASG;AACH;kBARiB,MAAM;kBACN,MAAM;sBACF,MAAM;oBACR,cAAc;gBAClB,MAAM;sBACA,MAAM;;;GA8E1B"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* makePayoffHandler returns an object with methods that are useful for
|
|
3
|
-
* callSpread contracts.
|
|
4
|
-
*
|
|
5
|
-
* @param {ZCF<Record<string, any>>} zcf
|
|
6
|
-
* @param {Record<PositionKind,PromiseRecord<ZCFSeat>>} seatPromiseKits
|
|
7
|
-
* @param {ZCFSeat} collateralSeat
|
|
8
|
-
* @returns {PayoffHandler}
|
|
9
|
-
*/
|
|
10
|
-
export function makePayoffHandler(zcf: ZCF<Record<string, any>>, seatPromiseKits: Record<PositionKind, PromiseRecord<ZCFSeat>>, collateralSeat: ZCFSeat): PayoffHandler;
|
|
11
|
-
//# sourceMappingURL=payoffHandler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"payoffHandler.d.ts","sourceRoot":"","sources":["payoffHandler.js"],"names":[],"mappings":"AAaA;;;;;;;;GAQG;AACH,uCALW,IAAI,OAAO,MAAM,EAAE,GAAG,CAAC,CAAC,mBACxB,OAAO,YAAY,EAAC,cAAc,OAAO,CAAC,CAAC,kBAC3C,OAAO,GACL,aAAa,CAgEzB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"percent.d.ts","sourceRoot":"","sources":["percent.js"],"names":[],"mappings":"AAe+9B,+DAAsE;AAAW,6DAAoE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"position.d.ts","sourceRoot":"","sources":["position.js"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,uBAFU;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,CAKxC"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This contract implements a fully collateralized call spread. This is a
|
|
3
|
-
* combination of a call option bought at one strike price and a second call
|
|
4
|
-
* option sold at a higher price. The invitations are produced in pairs. The
|
|
5
|
-
* creatorFacet has a method makeInvitationPair(longCollateralShare) whose
|
|
6
|
-
* argument must be a number between 0 and 100. makeInvitationPair() returns two
|
|
7
|
-
* invitations which require depositing amounts summing to the settlement amount
|
|
8
|
-
* in the proportions longCollateralShare and (100 - longCollateralShare) to
|
|
9
|
-
* redeem the respective options/invitations. (They are returned under the
|
|
10
|
-
* Keyword 'Option'.) The options are ERTP invitations that are suitable for
|
|
11
|
-
* resale.
|
|
12
|
-
*
|
|
13
|
-
* This option contract is settled financially. There is no requirement that the
|
|
14
|
-
* creator have ownership of the underlying asset at the start, and
|
|
15
|
-
* the beneficiaries shouldn't expect to take delivery at closing.
|
|
16
|
-
*
|
|
17
|
-
* The issuerKeywordRecord specifies the issuers for three keywords: Underlying,
|
|
18
|
-
* Strike, and Collateral. The payout is in Collateral. Strike amounts are used
|
|
19
|
-
* for the price oracle's quotes as to the value of the Underlying, as well as
|
|
20
|
-
* the strike prices in the terms.
|
|
21
|
-
*
|
|
22
|
-
* terms include:
|
|
23
|
-
* `timer` is a timer, and must be recognized by `priceAuthority`.
|
|
24
|
-
* `expiration` is a time recognized by the `timer`.
|
|
25
|
-
* `underlyingAmount` is passed to `priceAuthority`. It could be an NFT or a
|
|
26
|
-
* fungible amount.
|
|
27
|
-
* `strikePrice2` must be greater than `strikePrice1`.
|
|
28
|
-
* `settlementAmount` is the amount deposited by the funder and split between
|
|
29
|
-
* the holders of the options. It uses Collateral.
|
|
30
|
-
* `priceAuthority` is an oracle that has a timer so it can respond to requests
|
|
31
|
-
* for prices as of a stated time. After the deadline, it will issue a
|
|
32
|
-
* PriceQuote giving the value of the underlying asset in the strike currency.
|
|
33
|
-
*
|
|
34
|
-
* Future enhancements:
|
|
35
|
-
* + issue multiple option pairs with the same expiration from a single instance
|
|
36
|
-
*
|
|
37
|
-
* @param {ZCF<{
|
|
38
|
-
* strikePrice1: Amount<'nat'>,
|
|
39
|
-
* strikePrice2: Amount<'nat'>,
|
|
40
|
-
* settlementAmount: Amount<'nat'>,
|
|
41
|
-
* priceAuthority: PriceAuthority,
|
|
42
|
-
* expiration: bigint,
|
|
43
|
-
* underlyingAmount: Amount<'nat'>,
|
|
44
|
-
* }>} zcf
|
|
45
|
-
*/
|
|
46
|
-
export function start(zcf: ZCF<{
|
|
47
|
-
strikePrice1: Amount<'nat'>;
|
|
48
|
-
strikePrice2: Amount<'nat'>;
|
|
49
|
-
settlementAmount: Amount<'nat'>;
|
|
50
|
-
priceAuthority: PriceAuthority;
|
|
51
|
-
expiration: bigint;
|
|
52
|
-
underlyingAmount: Amount<'nat'>;
|
|
53
|
-
}>): {
|
|
54
|
-
creatorFacet: {
|
|
55
|
-
makeInvitationPair: (longCollateralShare: any) => {
|
|
56
|
-
longInvitation: Promise<Invitation<R, A>>;
|
|
57
|
-
shortInvitation: Promise<Invitation<R, A>>;
|
|
58
|
-
};
|
|
59
|
-
} & import("@endo/eventual-send").RemotableBrand<{}, {
|
|
60
|
-
makeInvitationPair: (longCollateralShare: any) => {
|
|
61
|
-
longInvitation: Promise<Invitation<R, A>>;
|
|
62
|
-
shortInvitation: Promise<Invitation<R, A>>;
|
|
63
|
-
};
|
|
64
|
-
}>;
|
|
65
|
-
};
|
|
66
|
-
//# sourceMappingURL=pricedCallSpread.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pricedCallSpread.d.ts","sourceRoot":"","sources":["pricedCallSpread.js"],"names":[],"mappings":"AAsBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH;kBARiB,OAAO,KAAK,CAAC;kBACb,OAAO,KAAK,CAAC;sBACT,OAAO,KAAK,CAAC;oBACf,cAAc;gBAClB,MAAM;sBACA,OAAO,KAAK,CAAC;;;;;;;;;;;;;EA0GjC"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
type PositionKind = 'long' | 'short';
|
|
2
|
-
type MakeOptionInvitation = (positionKind: PositionKind) => Promise<Invitation>;
|
|
3
|
-
type PayoffHandler = {
|
|
4
|
-
schedulePayoffs: () => void;
|
|
5
|
-
makeOptionInvitation: MakeOptionInvitation;
|
|
6
|
-
};
|
|
7
|
-
/**
|
|
8
|
-
* Return value from calculateShares, which represents the portions assigned to
|
|
9
|
-
* the long and short side of a transaction. These will be two non-negative
|
|
10
|
-
* integers that sum to 100.
|
|
11
|
-
*/
|
|
12
|
-
type CalculateSharesReturn = {
|
|
13
|
-
longShare: Ratio;
|
|
14
|
-
shortShare: Ratio;
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* calculate the portion (as a percentage) of the collateral that should be
|
|
18
|
-
* allocated to the long side of a call spread contract. price gives the value
|
|
19
|
-
* of the underlying asset at closing that determines the payouts to the parties
|
|
20
|
-
*
|
|
21
|
-
* if price <= strikePrice1, return Ratio representing 0
|
|
22
|
-
* if price >= strikePrice2, return Ratio representing 1.
|
|
23
|
-
* Otherwise return longShare and shortShare representing ratios between 0% and
|
|
24
|
-
* 100% reflecting the position of the price in the range from strikePrice1 to
|
|
25
|
-
* strikePrice2.
|
|
26
|
-
*/
|
|
27
|
-
type CalculateShares = (collateralBrand: Brand, price: Amount<'nat'>, strikePrice1: Amount<'nat'>, strikePrice2: Amount<'nat'>) => CalculateSharesReturn;
|
|
28
|
-
type Make100Percent = (brand: Brand) => Ratio;
|
|
29
|
-
type Make0Percent = (brand: Brand) => Ratio;
|
|
30
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.js"],"names":[],"mappings":"oBACa,MAAM,GAAG,OAAO;2CAKlB,YAAY,KACV,QAAQ,UAAU,CAAC;;qBAKlB,MAAM,IAAI;0BACT,oBAAoB;;;;;;;;eAQrB,KAAK;gBACL,KAAK;;;;;;;;;;;;;yCAcR,KAAK,SACL,OAAO,KAAK,CAAC,gBACb,OAAO,KAAK,CAAC,gBACb,OAAO,KAAK,CAAC,KACX,qBAAqB;8BAKvB,KAAK,KACH,KAAK;4BAKP,KAAK,KACH,KAAK"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @see comment on functionality in ./coveredCall.js.
|
|
3
|
-
*
|
|
4
|
-
* This variant has been made durable and upgradeable. The exerciser survives
|
|
5
|
-
* upgrade so the exerciseOption invitation will continue to work after upgrade.
|
|
6
|
-
*
|
|
7
|
-
* The version in
|
|
8
|
-
* zoe/test/swingsetTests/upgradeCoveredCall/coveredCall-durable-V3.js
|
|
9
|
-
* has some minor changes so tests can verify that upgrading from this to that
|
|
10
|
-
* preserves usefulness of the invitation.
|
|
11
|
-
*
|
|
12
|
-
* @param {ZCF} zcf
|
|
13
|
-
* @param {unknown} _privateArgs
|
|
14
|
-
* @param {import('@agoric/vat-data').Baggage} instanceBaggage
|
|
15
|
-
*/
|
|
16
|
-
export function start(zcf: ZCF, _privateArgs: unknown, instanceBaggage: MapStore<string, any>): Promise<{
|
|
17
|
-
creatorFacet: {
|
|
18
|
-
makeInvitation(): Promise<Invitation<R, A>>;
|
|
19
|
-
} & import("@endo/eventual-send").RemotableBrand<{}, {
|
|
20
|
-
makeInvitation(): Promise<Invitation<R, A>>;
|
|
21
|
-
}>;
|
|
22
|
-
}>;
|
|
23
|
-
//# sourceMappingURL=coveredCall-durable.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"coveredCall-durable.d.ts","sourceRoot":"","sources":["coveredCall-durable.js"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;GAcG;AACH,2BAJW,GAAG,gBACH,OAAO;;;;;;GA8EjB"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A call option is the right (but not the obligation) to buy digital
|
|
3
|
-
* assets at a pre-determined price, called the strike price. This
|
|
4
|
-
* call option is "covered," meaning that the owner of the digital
|
|
5
|
-
* assets must put the assets in escrow. This guarantees that the
|
|
6
|
-
* assets can be transferred without relying on the owner of the
|
|
7
|
-
* digital assets to keep their promise.
|
|
8
|
-
*
|
|
9
|
-
* https://agoric.com/documentation/zoe/guide/contracts/covered-call.html
|
|
10
|
-
*
|
|
11
|
-
* The call option has an expiration date, when the opportunity is
|
|
12
|
-
* cancelled. The owner of the digital assets cannot remove the assets
|
|
13
|
-
* from escrow before the expiration date.
|
|
14
|
-
*
|
|
15
|
-
* The `creatorInvitation` of this contract is an invitation to escrow
|
|
16
|
-
* the underlying assets. The proposal to escrow assets can have any
|
|
17
|
-
* `give` and `want` with any keywords. Any number of assets of
|
|
18
|
-
* different brands can be escrowed under different keywords. The
|
|
19
|
-
* proposal must have an exit record with the key "afterDeadline":
|
|
20
|
-
* {
|
|
21
|
-
* give: { ... },
|
|
22
|
-
* want: { ... },
|
|
23
|
-
* exit: {
|
|
24
|
-
* afterDeadline: { deadline: time, timer: myTimer }
|
|
25
|
-
* },
|
|
26
|
-
* }
|
|
27
|
-
*
|
|
28
|
-
* This deadline serves as the expiration date for the covered call
|
|
29
|
-
* option. After this deadline, if the option has not been exercised,
|
|
30
|
-
* the underlying assets are automatically paid out to the creator of
|
|
31
|
-
* the contract as a refund.
|
|
32
|
-
*
|
|
33
|
-
* After the owner of the digital assets escrows the assets in the
|
|
34
|
-
* initial offer, they receive a seat. The payout for this seat will
|
|
35
|
-
* either be a refund of the underlying assets (as mentioned above) or
|
|
36
|
-
* payments in the amount of the strike price. Zoe's enforcement of
|
|
37
|
-
* offer safety guarantees that the payout is either a refund or
|
|
38
|
-
* payments in the amount of the strike price, regardless of whether
|
|
39
|
-
* this contract is buggy.
|
|
40
|
-
*
|
|
41
|
-
* The offerResult of this initial seat resolves to the call option
|
|
42
|
-
* itself: an inspectable invitation to buy the underlying assets. The
|
|
43
|
-
* call option invitation has this additional information in the
|
|
44
|
-
* value: {expirationDate, timeAuthority, underlyingAssets,
|
|
45
|
-
* strikePrice }
|
|
46
|
-
*
|
|
47
|
-
* The invitation itself can be traded as a valuable digital asset: a
|
|
48
|
-
* covered call option.
|
|
49
|
-
*
|
|
50
|
-
* The recipient of a covered call option (buying it on some other
|
|
51
|
-
* exchange or through some other trading contract) can exercise the
|
|
52
|
-
* option before the deadline by using the option as an invitation to
|
|
53
|
-
* this contract, paying the strike price and receiving the underlying
|
|
54
|
-
* assets. The recipient of a covered call option can use whatever
|
|
55
|
-
* keywords they wish, as long as they give the strike price as
|
|
56
|
-
* specified in the invitation value, and want the underlying assets
|
|
57
|
-
* exactly.
|
|
58
|
-
*
|
|
59
|
-
* @param {ZCF} zcf
|
|
60
|
-
*/
|
|
61
|
-
export function start(zcf: ZCF): {
|
|
62
|
-
creatorInvitation: Promise<Invitation<R, A>>;
|
|
63
|
-
};
|
|
64
|
-
//# sourceMappingURL=coveredCall.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"coveredCall.d.ts","sourceRoot":"","sources":["coveredCall.js"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AACH,2BAFW,GAAG;;EA6Cb"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"exported.d.ts","sourceRoot":"","sources":["exported.js"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addCollateral.d.ts","sourceRoot":"","sources":["addCollateral.js"],"names":[],"mappings":"AAUA,0CAA0C;AAC1C,0CADW,2BAA2B,CAwBpC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"borrow.d.ts","sourceRoot":"","sources":["borrow.js"],"names":[],"mappings":"AAkBA,mCAAmC;AACnC,mCADW,oBAAoB,CAiI7B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"close.d.ts","sourceRoot":"","sources":["close.js"],"names":[],"mappings":"AAYA,sCAAsC;AACtC,sCADW,uBAAuB,CAiDhC"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Add collateral of a particular brand and get a loan of another
|
|
3
|
-
* brand. Collateral (also known as margin) must be greater than the
|
|
4
|
-
* loan value, at an amount set by the Maintenance Margin Requirement
|
|
5
|
-
* (mmr) in the terms of the contract. The loan does not have a
|
|
6
|
-
* distinct end time. Rather, if the value of the collateral changes
|
|
7
|
-
* such that insufficient margin is provided, the collateral is
|
|
8
|
-
* liquidated, and the loan is closed. At any time, the borrower can
|
|
9
|
-
* add collateral or repay the loan with interest, closing the loan.
|
|
10
|
-
* The borrower can set up their own margin calls by getting the
|
|
11
|
-
* `priceAuthority` from the terms and calling
|
|
12
|
-
* `E(priceAuthority).quoteWhenLT(allCollateral, x)` where x is the
|
|
13
|
-
* value of the collateral in the Loan brand at which they want a
|
|
14
|
-
* reminder to addCollateral.
|
|
15
|
-
*
|
|
16
|
-
* Note that all collateral must be of the same brand and all of the
|
|
17
|
-
* loaned amount and interest must be of the same (separate) brand.
|
|
18
|
-
*
|
|
19
|
-
* Terms:
|
|
20
|
-
* * mmr (default = 150/100) - the Maintenance Margin Requirement, as a
|
|
21
|
-
* ratio. The default is 150/100, meaning that collateral should be
|
|
22
|
-
* worth at least 150% of the loan. If the value of the collateral
|
|
23
|
-
* drops below mmr, liquidation occurs.
|
|
24
|
-
* * priceAuthority - will be used for getting the current value of
|
|
25
|
-
* collateral and setting liquidation triggers.
|
|
26
|
-
* * autoswapInstance - The running contract instance for an Autoswap
|
|
27
|
-
* installation. The publicFacet of the
|
|
28
|
-
* instance is used for producing an invitation to sell the
|
|
29
|
-
* collateral on liquidation.
|
|
30
|
-
* * periodNotifier - the Notifier that provides notifications that
|
|
31
|
-
* periods have passed, on which compound interest will be
|
|
32
|
-
* calculated using the interestRate. Notifiers don't guarantee
|
|
33
|
-
* that clients will see all the changes, so the contract must
|
|
34
|
-
* track when interest last accrued.
|
|
35
|
-
* * interestRate - the rate in basis points that will be multiplied
|
|
36
|
-
* with the debt on every period to compound interest.
|
|
37
|
-
* * interestPeriod - the period at which interest compounds.
|
|
38
|
-
*
|
|
39
|
-
* IssuerKeywordRecord:
|
|
40
|
-
* * Keyword: 'Collateral' - The issuer for the digital assets to be
|
|
41
|
-
* escrowed as collateral.
|
|
42
|
-
* * Keyword: 'Loan' - The issuer for the digital assets to be loaned
|
|
43
|
-
* out.
|
|
44
|
-
*
|
|
45
|
-
* @param {ZCF<{
|
|
46
|
-
* mmr: Ratio,
|
|
47
|
-
* autoswapInstance: Instance,
|
|
48
|
-
* priceAuthority: PriceAuthority,
|
|
49
|
-
* periodNotifier: PeriodNotifier,
|
|
50
|
-
* interestRate: Ratio,
|
|
51
|
-
* interestPeriod: bigint,
|
|
52
|
-
* }>} zcf
|
|
53
|
-
*/
|
|
54
|
-
export function start(zcf: ZCF<{
|
|
55
|
-
mmr: Ratio;
|
|
56
|
-
autoswapInstance: Instance;
|
|
57
|
-
priceAuthority: PriceAuthority;
|
|
58
|
-
periodNotifier: PeriodNotifier;
|
|
59
|
-
interestRate: Ratio;
|
|
60
|
-
interestPeriod: bigint;
|
|
61
|
-
}>): Promise<{
|
|
62
|
-
creatorInvitation: Promise<Invitation<R, A>>;
|
|
63
|
-
}>;
|
|
64
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.js"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH;SARU,KAAK;sBACQ,QAAQ;oBACV,cAAc;oBACd,cAAc;kBAChB,KAAK;oBACH,MAAM;;;GAuC1B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lend.d.ts","sourceRoot":"","sources":["lend.js"],"names":[],"mappings":"AAaA,iCAAiC;AACjC,iCADW,kBAAkB,CA4B3B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"liquidate.d.ts","sourceRoot":"","sources":["liquidate.js"],"names":[],"mappings":"AAKO,wIA6CN;AAeM,+BAJI,GAAG,UACH,sBAAsB,GACpB,QAAQ,IAAI,CAAC,CAiBzB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scheduleLiquidation.d.ts","sourceRoot":"","sources":["scheduleLiquidation.js"],"names":[],"mappings":"AAWA,kCAAkC;AAClC,kCADW,mBAAmB,CAsD5B"}
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The Notifier that provides notifications that periods have passed.
|
|
3
|
-
* Since notifiers can't be relied on to produce an output every time
|
|
4
|
-
* they should, we'll track the time of last payment, and catch up if
|
|
5
|
-
* any times have been missed. Compound interest will be calculated
|
|
6
|
-
* using the interestRate.
|
|
7
|
-
*/
|
|
8
|
-
type PeriodNotifier = Notifier<import('@agoric/time/src/types').TimestampRecord>;
|
|
9
|
-
/**
|
|
10
|
-
* The running contract instance for an Autoswap installation. The
|
|
11
|
-
* publicFacet from the Autoswap
|
|
12
|
-
* instance is used for producing an invitation to sell the
|
|
13
|
-
* collateral on liquidation.
|
|
14
|
-
*/
|
|
15
|
-
type AutoswapInstance = Instance;
|
|
16
|
-
type LoanTerms = {
|
|
17
|
-
/**
|
|
18
|
-
* - Maintenance Margin Requirement, a Ratio record.
|
|
19
|
-
* Default is 150%
|
|
20
|
-
*/
|
|
21
|
-
mmr: Ratio;
|
|
22
|
-
autoswapInstance: AutoswapInstance;
|
|
23
|
-
/**
|
|
24
|
-
* Used for getting the current value of collateral and setting
|
|
25
|
-
* liquidation triggers.
|
|
26
|
-
*/
|
|
27
|
-
priceAuthority: PriceAuthority;
|
|
28
|
-
periodNotifier: PeriodNotifier;
|
|
29
|
-
/**
|
|
30
|
-
* The rate in basis points that will be multiplied with the debt on
|
|
31
|
-
* every period to compound interest.
|
|
32
|
-
*/
|
|
33
|
-
interestRate: Ratio;
|
|
34
|
-
interestPeriod: import('@agoric/time/src/types').RelativeTime;
|
|
35
|
-
loanBrand: Brand;
|
|
36
|
-
collateralBrand: Brand;
|
|
37
|
-
};
|
|
38
|
-
type LenderSeatProperty = {
|
|
39
|
-
/**
|
|
40
|
-
* The ZCFSeat representing the lender's position in the contract.
|
|
41
|
-
*/
|
|
42
|
-
lenderSeat: ZCFSeat;
|
|
43
|
-
};
|
|
44
|
-
/**
|
|
45
|
-
* The loan now has a lenderSeat, which is added to the config.
|
|
46
|
-
*/
|
|
47
|
-
type LoanConfigWithLender = LoanTerms & LenderSeatProperty;
|
|
48
|
-
type BorrowerConfigProperties = {
|
|
49
|
-
/**
|
|
50
|
-
* The ZCFSeat holding the collateral in escrow after the borrower
|
|
51
|
-
* escrows it
|
|
52
|
-
*/
|
|
53
|
-
collateralSeat: ZCFSeat;
|
|
54
|
-
/**
|
|
55
|
-
* A function to get the current debt
|
|
56
|
-
*/
|
|
57
|
-
getDebt: () => Amount<'nat'>;
|
|
58
|
-
/**
|
|
59
|
-
* PromiseKit that includes a promise that resolves to a PriceQuote
|
|
60
|
-
* when liquidation is triggered
|
|
61
|
-
*/
|
|
62
|
-
liquidationPromiseKit: PromiseRecord<PriceQuote>;
|
|
63
|
-
};
|
|
64
|
-
type BorrowerConfigPropertiesMinusDebt = {
|
|
65
|
-
/**
|
|
66
|
-
* The ZCFSeat holding the collateral in escrow after the borrower
|
|
67
|
-
* escrows it
|
|
68
|
-
*/
|
|
69
|
-
collateralSeat: ZCFSeat;
|
|
70
|
-
/**
|
|
71
|
-
* PromiseKit that includes a promise that resolves to a PriceQuote
|
|
72
|
-
* when liquidation is triggered
|
|
73
|
-
*/
|
|
74
|
-
liquidationPromiseKit: PromiseRecord<PriceQuote>;
|
|
75
|
-
};
|
|
76
|
-
/**
|
|
77
|
-
* The loan has a lender, a borrower, and collateral escrowed.
|
|
78
|
-
*/
|
|
79
|
-
type LoanConfigWithBorrower = LoanConfigWithLender & BorrowerConfigProperties;
|
|
80
|
-
type LoanConfigWithBorrowerMinusDebt = LoanConfigWithLender & BorrowerConfigPropertiesMinusDebt;
|
|
81
|
-
type ScheduleLiquidation = (zcf: ZCF, config: LoanConfigWithBorrower) => any;
|
|
82
|
-
type MakeLendInvitation = (zcf: ZCF, config: LoanTerms) => Promise<Invitation>;
|
|
83
|
-
type MakeBorrowInvitation = (zcf: ZCF, config: LoanConfigWithLender) => Promise<Invitation>;
|
|
84
|
-
type MakeCloseLoanInvitation = (zcf: ZCF, config: LoanConfigWithBorrower) => Promise<Invitation>;
|
|
85
|
-
/**
|
|
86
|
-
* Allows holder to add collateral to the contract. Exits the seat
|
|
87
|
-
* after adding.
|
|
88
|
-
*/
|
|
89
|
-
type MakeAddCollateralInvitation = (zcf: ZCF, config: LoanConfigWithBorrower) => Promise<Invitation>;
|
|
90
|
-
type MakeDebtCalculator = (debtCalculatorConfig: DebtCalculatorConfig) => any;
|
|
91
|
-
type CalcInterestFn = (oldDebt: Amount<'nat'>, interestRate: Ratio) => Amount<'nat'>;
|
|
92
|
-
type DebtCalculatorConfig = {
|
|
93
|
-
/**
|
|
94
|
-
* A function to calculate the interest, given the debt value and an
|
|
95
|
-
* interest rate in basis points.
|
|
96
|
-
*/
|
|
97
|
-
calcInterestFn: CalcInterestFn;
|
|
98
|
-
/**
|
|
99
|
-
* The debt at the start of the loan, in Loan brand
|
|
100
|
-
*/
|
|
101
|
-
originalDebt: Amount<'nat'>;
|
|
102
|
-
/**
|
|
103
|
-
* The AsyncIterable to notify when a period has occurred
|
|
104
|
-
*/
|
|
105
|
-
periodNotifier: PeriodNotifier;
|
|
106
|
-
interestRate: Ratio;
|
|
107
|
-
/**
|
|
108
|
-
* the period at which the outstanding debt increases by the interestRate
|
|
109
|
-
*/
|
|
110
|
-
interestPeriod: import('@agoric/time/src/types').RelativeTime;
|
|
111
|
-
zcf: ZCF;
|
|
112
|
-
configMinusGetDebt: LoanConfigWithBorrowerMinusDebt;
|
|
113
|
-
/**
|
|
114
|
-
* The starting point from which to calculate
|
|
115
|
-
* interest.
|
|
116
|
-
*/
|
|
117
|
-
basetime: import('@agoric/time/src/types').Timestamp;
|
|
118
|
-
};
|
|
119
|
-
type ConfigMinusGetDebt = {
|
|
120
|
-
collateralSeat: ZCFSeat;
|
|
121
|
-
liquidationPromiseKit: PromiseRecord<any>;
|
|
122
|
-
mmr?: bigint | undefined;
|
|
123
|
-
autoswapInstance: Handle<'Instance'>;
|
|
124
|
-
priceAuthority: PriceAuthority;
|
|
125
|
-
periodNotifier: PeriodNotifier;
|
|
126
|
-
interestRate: bigint;
|
|
127
|
-
interestPeriod: import('@agoric/time/src/types').RelativeTime;
|
|
128
|
-
lenderSeat: ZCFSeat;
|
|
129
|
-
};
|
|
130
|
-
type BorrowFacet = {
|
|
131
|
-
/**
|
|
132
|
-
* Make an invitation to close the loan by repaying the debt
|
|
133
|
-
* (including interest).
|
|
134
|
-
*/
|
|
135
|
-
makeCloseLoanInvitation: () => Promise<Invitation>;
|
|
136
|
-
/**
|
|
137
|
-
* Make an invitation to add collateral to protect against liquidation
|
|
138
|
-
*/
|
|
139
|
-
makeAddCollateralInvitation: () => Promise<Invitation>;
|
|
140
|
-
/**
|
|
141
|
-
* Get a promise for a priceQuote that will resolve if liquidation
|
|
142
|
-
* occurs. The priceQuote is for the value of the collateral that
|
|
143
|
-
* triggered the liquidation. This may be lower than expected if the
|
|
144
|
-
* price is moving quickly.
|
|
145
|
-
*/
|
|
146
|
-
getLiquidationPromise: () => Promise<PriceQuote>;
|
|
147
|
-
/**
|
|
148
|
-
* Get the timestamp at which the debt was most recently recalculated.
|
|
149
|
-
*/
|
|
150
|
-
getLastCalculationTimestamp: () => import('@agoric/time/src/types').Timestamp;
|
|
151
|
-
/**
|
|
152
|
-
* Get a Notifier that will be updated when the current debt (an Amount with the Loan
|
|
153
|
-
* Brand) changes. This will increase as interest is added.
|
|
154
|
-
*/
|
|
155
|
-
getDebtNotifier: () => Notifier<Amount>;
|
|
156
|
-
/**
|
|
157
|
-
* Get a recent report of the amount of collateral in the loan
|
|
158
|
-
*/
|
|
159
|
-
getRecentCollateralAmount: () => Amount;
|
|
160
|
-
};
|
|
161
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.js"],"names":[],"mappings":";;;;;;;sBACa,SAAS,OAAO,wBAAwB,EAAE,eAAe,CAAC;;;;;;;wBAU1D,QAAQ;;;;;;SAUP,KAAK;sBAGL,gBAAgB;;;;;oBAEhB,cAAc;oBAKd,cAAc;;;;;kBAEd,KAAK;oBAIL,OAAO,wBAAwB,EAAE,YAAY;eAE7C,KAAK;qBACL,KAAK;;;;;;gBAKL,OAAO;;;;;4BAMR,SAAS,GAAG,kBAAkB;;;;;;oBAQ7B,OAAO;;;;aAKP,MAAM,OAAO,KAAK,CAAC;;;;;2BAInB,cAAc,UAAU,CAAC;;;;;;;oBASzB,OAAO;;;;;2BAKP,cAAc,UAAU,CAAC;;;;;8BAO1B,oBAAoB,GAAG,wBAAwB;uCAM/C,oBAAoB,GAAG,iCAAiC;iCAM1D,GAAG,UACH,sBAAsB;gCAKtB,GAAG,UACH,SAAS,KACP,QAAQ,UAAU,CAAC;kCAKrB,GAAG,UACH,oBAAoB,KAClB,QAAQ,UAAU,CAAC;qCAKrB,GAAG,UACH,sBAAsB,KACpB,QAAQ,UAAU,CAAC;;;;;yCAQrB,GAAG,UACH,sBAAsB,KACpB,QAAQ,UAAU,CAAC;iDAKrB,oBAAoB;gCAKpB,OAAO,KAAK,CAAC,gBACb,KAAK,KACH,OAAO,KAAK,CAAC;;;;;;oBAKZ,cAAc;;;;kBAKd,OAAO,KAAK,CAAC;;;;oBAIb,cAAc;kBAId,KAAK;;;;oBACL,OAAO,wBAAwB,EAAE,YAAY;SAI7C,GAAG;wBAEH,+BAA+B;;;;;cAC/B,OAAO,wBAAwB,EAAE,SAAS;;;oBAM1C,OAAO;2BACP,cAAc,GAAG,CAAC;;sBAElB,OAAO,UAAU,CAAC;oBAClB,cAAc;oBACd,cAAc;kBACd,MAAM;oBACN,OAAO,wBAAwB,EAAE,YAAY;gBAC7C,OAAO;;;;;;;6BAMP,MAAM,QAAQ,UAAU,CAAC;;;;iCAKzB,MAAM,QAAQ,UAAU,CAAC;;;;;;;2BAIzB,MAAM,QAAQ,UAAU,CAAC;;;;iCAOzB,MAAM,OAAO,wBAAwB,EAAE,SAAS;;;;;qBAIhD,MAAM,SAAS,MAAM,CAAC;;;;+BAKtB,MAAM,MAAM"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @type {CalcInterestFn} Calculate the interest using an interest
|
|
3
|
-
* rate in basis points.
|
|
4
|
-
* i.e. oldDebtValue is 40,000
|
|
5
|
-
* interestRate (in basis points) is 5 = 5/10,000
|
|
6
|
-
* interest charged this period is 20 loan brand
|
|
7
|
-
*/
|
|
8
|
-
export const calculateInterest: CalcInterestFn;
|
|
9
|
-
/** @type {MakeDebtCalculator} */
|
|
10
|
-
export const makeDebtCalculator: MakeDebtCalculator;
|
|
11
|
-
//# sourceMappingURL=updateDebt.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"updateDebt.d.ts","sourceRoot":"","sources":["updateDebt.js"],"names":[],"mappings":"AAYA;;;;;;GAMG;AACH,gCANU,cAAc,CAOgB;AAExC,iCAAiC;AACjC,iCADW,kBAAkB,CAyE3B"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This contract mints non-fungible tokens and creates a selling contract
|
|
3
|
-
* instance to sell the tokens in exchange for some sort of money.
|
|
4
|
-
*
|
|
5
|
-
* startInstance() returns a creatorFacet which is a
|
|
6
|
-
* ticketMaker with a `.sellTokens()` method. `.sellTokens()` takes a
|
|
7
|
-
* specification of what is being sold, such as:
|
|
8
|
-
* {
|
|
9
|
-
* customValueProperties: { ...arbitrary },
|
|
10
|
-
* count: 3n,
|
|
11
|
-
* moneyIssuer: moolaIssuer,
|
|
12
|
-
* sellItemsInstallationHandle,
|
|
13
|
-
* pricePerItem: AmountMath.make(moolaBrand, 20n),
|
|
14
|
-
* }
|
|
15
|
-
* The payouts are returned as an offerResult in the `outcome`, and an API that
|
|
16
|
-
* allows selling the tickets that were produced. You can reuse the ticket maker
|
|
17
|
-
* to mint more tickets (e.g. for a separate show.)
|
|
18
|
-
*
|
|
19
|
-
* @param {ZCF<{
|
|
20
|
-
* tokenName: string,
|
|
21
|
-
* }>} zcf
|
|
22
|
-
*/
|
|
23
|
-
export function start(zcf: ZCF<{
|
|
24
|
-
tokenName: string;
|
|
25
|
-
}>): {
|
|
26
|
-
creatorFacet: MintAndSellNFTCreatorFacet;
|
|
27
|
-
};
|
|
28
|
-
//# sourceMappingURL=mintAndSellNFT.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mintAndSellNFT.d.ts","sourceRoot":"","sources":["mintAndSellNFT.js"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH;eAHc,MAAM;;;EA6FnB"}
|