@ottochain/sdk 2.3.0 → 2.5.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/dist/cjs/apps/compute/index.js +33 -0
- package/dist/cjs/apps/compute/state-machines/compute-rule110.js +164 -0
- package/dist/cjs/apps/compute/state-machines/index.js +9 -0
- package/dist/cjs/apps/contracts/index.js +16 -9
- package/dist/cjs/apps/contracts/state-machines/contract-agreement.js +134 -161
- package/dist/cjs/apps/contracts/state-machines/contract-escrow.js +192 -170
- package/dist/cjs/apps/contracts/state-machines/contract-universal.js +46 -58
- package/dist/cjs/apps/corporate/index.js +2 -2
- package/dist/cjs/apps/corporate/state-machines/corp-board.js +500 -456
- package/dist/cjs/apps/corporate/state-machines/corp-entity.js +487 -361
- package/dist/cjs/apps/corporate/state-machines/corp-securities.js +769 -576
- package/dist/cjs/apps/corporate/state-machines/corp-shareholders.js +567 -557
- package/dist/cjs/apps/governance/index.js +21 -21
- package/dist/cjs/apps/governance/state-machines/dao-multisig.js +188 -209
- package/dist/cjs/apps/governance/state-machines/dao-reputation.js +181 -228
- package/dist/cjs/apps/governance/state-machines/dao-single.js +105 -88
- package/dist/cjs/apps/governance/state-machines/dao-token.js +199 -227
- package/dist/cjs/apps/governance/state-machines/governance-simple.js +231 -231
- package/dist/cjs/apps/governance/state-machines/governance-universal.js +64 -64
- package/dist/cjs/apps/identity/constants.js +55 -22
- package/dist/cjs/apps/identity/index.js +28 -12
- package/dist/cjs/apps/identity/state-machines/identity-agent.js +124 -158
- package/dist/cjs/apps/identity/state-machines/identity-oracle.js +158 -173
- package/dist/cjs/apps/identity/state-machines/identity-registry.js +262 -0
- package/dist/cjs/apps/identity/state-machines/identity-universal.js +51 -57
- package/dist/cjs/apps/identity/state-machines/index.js +3 -1
- package/dist/cjs/apps/index.js +22 -8
- package/dist/cjs/apps/lending/assets.js +247 -0
- package/dist/cjs/apps/lending/credit-scoring.js +87 -0
- package/dist/cjs/apps/lending/eligibility.js +105 -0
- package/dist/cjs/apps/lending/index.js +91 -0
- package/dist/cjs/apps/lending/state-machines/index.js +9 -0
- package/dist/cjs/apps/lending/state-machines/lending-zk-loan.js +433 -0
- package/dist/cjs/apps/markets/index.js +22 -12
- package/dist/cjs/apps/markets/state-machines/market-auction.js +116 -134
- package/dist/cjs/apps/markets/state-machines/market-crowdfund.js +131 -141
- package/dist/cjs/apps/markets/state-machines/market-group-buy.js +163 -184
- package/dist/cjs/apps/markets/state-machines/market-prediction.js +226 -233
- package/dist/cjs/apps/markets/state-machines/market-universal.js +65 -80
- package/dist/cjs/apps/oracles/index.js +3 -3
- package/dist/cjs/apps/privacy/index.js +67 -0
- package/dist/cjs/apps/privacy/state-machines/index.js +17 -0
- package/dist/cjs/apps/privacy/state-machines/mixer-ddhRing.js +286 -0
- package/dist/cjs/apps/privacy/state-machines/note-pool.js +476 -0
- package/dist/cjs/apps/staked-pool/assets.js +103 -0
- package/dist/cjs/apps/staked-pool/base.js +498 -0
- package/dist/cjs/apps/staked-pool/consumer.js +55 -0
- package/dist/cjs/apps/staked-pool/index.js +83 -0
- package/dist/cjs/apps/staked-pool/state-machines/index.js +12 -0
- package/dist/cjs/apps/staked-pool/state-machines/staked-pool-base.js +49 -0
- package/dist/cjs/apps/staked-pool/state-machines/staked-pool-oracle.js +131 -0
- package/dist/cjs/errors.js +3 -3
- package/dist/cjs/generated/google/protobuf/struct.js +5 -5
- package/dist/cjs/generated/google/protobuf/timestamp.js +1 -1
- package/dist/cjs/generated/index.js +11 -7
- package/dist/cjs/generated/openapi.js +6 -0
- package/dist/cjs/generated/ottochain/apps/contracts/v1/contract.js +51 -51
- package/dist/cjs/generated/ottochain/apps/corporate/v1/corporate.js +20 -21
- package/dist/cjs/generated/ottochain/apps/governance/v1/governance.js +14 -14
- package/dist/cjs/generated/ottochain/apps/identity/v1/attestation.js +5 -5
- package/dist/cjs/generated/ottochain/apps/identity/v1/identity.js +125 -131
- package/dist/cjs/generated/ottochain/apps/markets/v1/market.js +108 -108
- package/dist/cjs/generated/ottochain/v1/common.js +5 -5
- package/dist/cjs/generated/ottochain/v1/fiber.js +44 -6
- package/dist/cjs/generated/ottochain/v1/messages.js +1 -1
- package/dist/cjs/generated/ottochain/v1/records.js +1 -1
- package/dist/cjs/index.js +58 -7
- package/dist/cjs/openapi.js +2 -0
- package/dist/cjs/ottochain/drop-nulls.js +1 -2
- package/dist/cjs/ottochain/genesis-manifest.js +17 -11
- package/dist/cjs/ottochain/index.js +23 -13
- package/dist/cjs/ottochain/metagraph-client.js +81 -16
- package/dist/cjs/ottochain/snapshot.js +13 -16
- package/dist/cjs/ottochain/transaction.js +67 -14
- package/dist/cjs/ottochain/types.js +16 -2
- package/dist/cjs/privacy/index.js +14 -0
- package/dist/cjs/privacy/sealed-bid.js +213 -0
- package/dist/cjs/privacy/shield-app.js +131 -0
- package/dist/cjs/schema/effects.js +156 -0
- package/dist/cjs/schema/fiber-app.js +150 -15
- package/dist/cjs/schema/guard-lint.js +343 -0
- package/dist/cjs/schema/guards.js +246 -0
- package/dist/cjs/signing.js +80 -0
- package/dist/cjs/templates/asset-policy.js +190 -0
- package/dist/cjs/templates/index.js +86 -0
- package/dist/cjs/templates/machine.js +130 -0
- package/dist/cjs/templates/migration.js +39 -0
- package/dist/cjs/templates/state-shape.js +38 -0
- package/dist/cjs/types.js +2 -3
- package/dist/cjs/validation.js +9 -11
- package/dist/cjs/verify.js +9 -4
- package/dist/cjs/zk/commit.js +53 -0
- package/dist/cjs/zk/guard.js +107 -0
- package/dist/cjs/zk/index.js +48 -0
- package/dist/cjs/zk/preimage.js +37 -0
- package/dist/cjs/zk/prover.js +87 -0
- package/dist/cjs/zk/registry.js +62 -0
- package/dist/cjs/zk/types.js +28 -0
- package/dist/cjs/zk/witness.js +19 -0
- package/dist/esm/apps/compute/index.js +29 -0
- package/dist/esm/apps/compute/state-machines/compute-rule110.js +161 -0
- package/dist/esm/apps/compute/state-machines/index.js +5 -0
- package/dist/esm/apps/contracts/index.js +9 -5
- package/dist/esm/apps/contracts/state-machines/contract-agreement.js +135 -162
- package/dist/esm/apps/contracts/state-machines/contract-escrow.js +193 -171
- package/dist/esm/apps/contracts/state-machines/contract-universal.js +47 -59
- package/dist/esm/apps/corporate/index.js +2 -2
- package/dist/esm/apps/corporate/state-machines/corp-board.js +501 -457
- package/dist/esm/apps/corporate/state-machines/corp-entity.js +488 -362
- package/dist/esm/apps/corporate/state-machines/corp-securities.js +770 -577
- package/dist/esm/apps/corporate/state-machines/corp-shareholders.js +568 -558
- package/dist/esm/apps/governance/index.js +10 -10
- package/dist/esm/apps/governance/state-machines/dao-multisig.js +189 -210
- package/dist/esm/apps/governance/state-machines/dao-reputation.js +182 -229
- package/dist/esm/apps/governance/state-machines/dao-single.js +106 -89
- package/dist/esm/apps/governance/state-machines/dao-token.js +200 -228
- package/dist/esm/apps/governance/state-machines/governance-simple.js +232 -232
- package/dist/esm/apps/governance/state-machines/governance-universal.js +65 -65
- package/dist/esm/apps/identity/constants.js +52 -21
- package/dist/esm/apps/identity/index.js +14 -9
- package/dist/esm/apps/identity/state-machines/identity-agent.js +125 -159
- package/dist/esm/apps/identity/state-machines/identity-oracle.js +159 -174
- package/dist/esm/apps/identity/state-machines/identity-registry.js +259 -0
- package/dist/esm/apps/identity/state-machines/identity-universal.js +52 -58
- package/dist/esm/apps/identity/state-machines/index.js +1 -0
- package/dist/esm/apps/index.js +9 -5
- package/dist/esm/apps/lending/assets.js +231 -0
- package/dist/esm/apps/lending/credit-scoring.js +81 -0
- package/dist/esm/apps/lending/eligibility.js +99 -0
- package/dist/esm/apps/lending/index.js +69 -0
- package/dist/esm/apps/lending/state-machines/index.js +5 -0
- package/dist/esm/apps/lending/state-machines/lending-zk-loan.js +430 -0
- package/dist/esm/apps/markets/index.js +11 -7
- package/dist/esm/apps/markets/state-machines/market-auction.js +117 -135
- package/dist/esm/apps/markets/state-machines/market-crowdfund.js +132 -142
- package/dist/esm/apps/markets/state-machines/market-group-buy.js +164 -185
- package/dist/esm/apps/markets/state-machines/market-prediction.js +227 -234
- package/dist/esm/apps/markets/state-machines/market-universal.js +66 -81
- package/dist/esm/apps/oracles/index.js +3 -3
- package/dist/esm/apps/privacy/index.js +56 -0
- package/dist/esm/apps/privacy/state-machines/index.js +6 -0
- package/dist/esm/apps/privacy/state-machines/mixer-ddhRing.js +282 -0
- package/dist/esm/apps/privacy/state-machines/note-pool.js +470 -0
- package/dist/esm/apps/staked-pool/assets.js +91 -0
- package/dist/esm/apps/staked-pool/base.js +493 -0
- package/dist/esm/apps/staked-pool/consumer.js +49 -0
- package/dist/esm/apps/staked-pool/index.js +60 -0
- package/dist/esm/apps/staked-pool/state-machines/index.js +6 -0
- package/dist/esm/apps/staked-pool/state-machines/staked-pool-base.js +46 -0
- package/dist/esm/apps/staked-pool/state-machines/staked-pool-oracle.js +127 -0
- package/dist/esm/generated/google/protobuf/struct.js +1 -1
- package/dist/esm/generated/google/protobuf/timestamp.js +1 -1
- package/dist/esm/generated/index.js +9 -5
- package/dist/esm/generated/openapi.js +5 -0
- package/dist/esm/generated/ottochain/apps/contracts/v1/contract.js +47 -47
- package/dist/esm/generated/ottochain/apps/corporate/v1/corporate.js +1 -1
- package/dist/esm/generated/ottochain/apps/governance/v1/governance.js +1 -1
- package/dist/esm/generated/ottochain/apps/identity/v1/attestation.js +1 -1
- package/dist/esm/generated/ottochain/apps/identity/v1/identity.js +115 -121
- package/dist/esm/generated/ottochain/apps/markets/v1/market.js +101 -101
- package/dist/esm/generated/ottochain/v1/common.js +1 -1
- package/dist/esm/generated/ottochain/v1/fiber.js +40 -2
- package/dist/esm/generated/ottochain/v1/messages.js +1 -1
- package/dist/esm/generated/ottochain/v1/records.js +1 -1
- package/dist/esm/index.js +28 -3
- package/dist/esm/openapi.js +1 -0
- package/dist/esm/ottochain/genesis-manifest.js +15 -9
- package/dist/esm/ottochain/index.js +2 -3
- package/dist/esm/ottochain/metagraph-client.js +81 -16
- package/dist/esm/ottochain/snapshot.js +6 -8
- package/dist/esm/ottochain/transaction.js +51 -3
- package/dist/esm/ottochain/types.js +15 -1
- package/dist/esm/privacy/index.js +6 -0
- package/dist/esm/privacy/sealed-bid.js +209 -0
- package/dist/esm/privacy/shield-app.js +127 -0
- package/dist/esm/schema/effects.js +145 -0
- package/dist/esm/schema/fiber-app.js +139 -8
- package/dist/esm/schema/guard-lint.js +337 -0
- package/dist/esm/schema/guards.js +228 -0
- package/dist/esm/signing.js +74 -0
- package/dist/esm/templates/asset-policy.js +182 -0
- package/dist/esm/templates/index.js +41 -0
- package/dist/esm/templates/machine.js +125 -0
- package/dist/esm/templates/migration.js +34 -0
- package/dist/esm/templates/state-shape.js +34 -0
- package/dist/esm/validation.js +1 -3
- package/dist/esm/verify.js +8 -2
- package/dist/esm/zk/commit.js +44 -0
- package/dist/esm/zk/guard.js +99 -0
- package/dist/esm/zk/index.js +19 -0
- package/dist/esm/zk/preimage.js +30 -0
- package/dist/esm/zk/prover.js +82 -0
- package/dist/esm/zk/registry.js +55 -0
- package/dist/esm/zk/types.js +25 -0
- package/dist/esm/zk/witness.js +15 -0
- package/dist/types/apps/compute/index.d.ts +176 -0
- package/dist/types/apps/compute/state-machines/compute-rule110.d.ts +157 -0
- package/dist/types/apps/compute/state-machines/index.d.ts +5 -0
- package/dist/types/apps/contracts/index.d.ts +81 -221
- package/dist/types/apps/contracts/state-machines/contract-agreement.d.ts +23 -98
- package/dist/types/apps/contracts/state-machines/contract-escrow.d.ts +49 -115
- package/dist/types/apps/contracts/state-machines/contract-universal.d.ts +4 -4
- package/dist/types/apps/corporate/index.d.ts +1176 -440
- package/dist/types/apps/corporate/state-machines/corp-board.d.ts +271 -135
- package/dist/types/apps/corporate/state-machines/corp-entity.d.ts +279 -74
- package/dist/types/apps/corporate/state-machines/corp-securities.d.ts +373 -149
- package/dist/types/apps/corporate/state-machines/corp-shareholders.d.ts +252 -80
- package/dist/types/apps/governance/index.d.ts +368 -470
- package/dist/types/apps/governance/state-machines/dao-multisig.d.ts +92 -107
- package/dist/types/apps/governance/state-machines/dao-reputation.d.ts +61 -85
- package/dist/types/apps/governance/state-machines/dao-single.d.ts +25 -47
- package/dist/types/apps/governance/state-machines/dao-token.d.ts +79 -68
- package/dist/types/apps/governance/state-machines/governance-simple.d.ts +95 -125
- package/dist/types/apps/governance/state-machines/governance-universal.d.ts +6 -6
- package/dist/types/apps/identity/constants.d.ts +33 -5
- package/dist/types/apps/identity/index.d.ts +415 -131
- package/dist/types/apps/identity/state-machines/identity-agent.d.ts +23 -23
- package/dist/types/apps/identity/state-machines/identity-oracle.d.ts +27 -98
- package/dist/types/apps/identity/state-machines/identity-registry.d.ts +379 -0
- package/dist/types/apps/identity/state-machines/identity-universal.d.ts +4 -4
- package/dist/types/apps/identity/state-machines/index.d.ts +1 -0
- package/dist/types/apps/index.d.ts +9 -5
- package/dist/types/apps/lending/assets.d.ts +258 -0
- package/dist/types/apps/lending/credit-scoring.d.ts +80 -0
- package/dist/types/apps/lending/eligibility.d.ts +83 -0
- package/dist/types/apps/lending/index.d.ts +556 -0
- package/dist/types/apps/lending/state-machines/index.d.ts +5 -0
- package/dist/types/apps/lending/state-machines/lending-zk-loan.d.ts +536 -0
- package/dist/types/apps/markets/index.d.ts +181 -276
- package/dist/types/apps/markets/state-machines/market-auction.d.ts +25 -49
- package/dist/types/apps/markets/state-machines/market-crowdfund.d.ts +35 -53
- package/dist/types/apps/markets/state-machines/market-group-buy.d.ts +35 -61
- package/dist/types/apps/markets/state-machines/market-prediction.d.ts +65 -86
- package/dist/types/apps/markets/state-machines/market-universal.d.ts +12 -12
- package/dist/types/apps/oracles/index.d.ts +1 -1
- package/dist/types/apps/privacy/index.d.ts +328 -0
- package/dist/types/apps/privacy/state-machines/index.d.ts +6 -0
- package/dist/types/apps/privacy/state-machines/mixer-ddhRing.d.ts +337 -0
- package/dist/types/apps/privacy/state-machines/note-pool.d.ts +196 -0
- package/dist/types/apps/staked-pool/assets.d.ts +53 -0
- package/dist/types/apps/staked-pool/base.d.ts +80 -0
- package/dist/types/apps/staked-pool/consumer.d.ts +29 -0
- package/dist/types/apps/staked-pool/index.d.ts +51 -0
- package/dist/types/apps/staked-pool/state-machines/index.d.ts +6 -0
- package/dist/types/apps/staked-pool/state-machines/staked-pool-base.d.ts +8 -0
- package/dist/types/apps/staked-pool/state-machines/staked-pool-oracle.d.ts +34 -0
- package/dist/types/generated/index.d.ts +5 -5
- package/dist/types/generated/openapi.d.ts +1270 -0
- package/dist/types/generated/ottochain/apps/contracts/v1/contract.d.ts +5 -5
- package/dist/types/generated/ottochain/apps/identity/v1/identity.d.ts +12 -12
- package/dist/types/generated/ottochain/apps/markets/v1/market.d.ts +11 -11
- package/dist/types/generated/ottochain/v1/fiber.d.ts +7 -0
- package/dist/types/index.d.ts +7 -3
- package/dist/types/openapi.d.ts +24 -0
- package/dist/types/ottochain/genesis-manifest.d.ts +11 -5
- package/dist/types/ottochain/index.d.ts +5 -6
- package/dist/types/ottochain/metagraph-client.d.ts +49 -7
- package/dist/types/ottochain/snapshot.d.ts +6 -6
- package/dist/types/ottochain/transaction.d.ts +41 -1
- package/dist/types/ottochain/types.d.ts +336 -31
- package/dist/types/privacy/index.d.ts +6 -0
- package/dist/types/privacy/sealed-bid.d.ts +348 -0
- package/dist/types/privacy/shield-app.d.ts +48 -0
- package/dist/types/schema/effects.d.ts +141 -0
- package/dist/types/schema/fiber-app.d.ts +282 -2
- package/dist/types/schema/guard-lint.d.ts +111 -0
- package/dist/types/schema/guards.d.ts +146 -0
- package/dist/types/signing.d.ts +45 -0
- package/dist/types/templates/asset-policy.d.ts +119 -0
- package/dist/types/templates/index.d.ts +26 -0
- package/dist/types/templates/machine.d.ts +139 -0
- package/dist/types/templates/migration.d.ts +34 -0
- package/dist/types/templates/state-shape.d.ts +30 -0
- package/dist/types/validation.d.ts +22 -217
- package/dist/types/verify.d.ts +4 -0
- package/dist/types/zk/commit.d.ts +28 -0
- package/dist/types/zk/guard.d.ts +46 -0
- package/dist/types/zk/index.d.ts +19 -0
- package/dist/types/zk/preimage.d.ts +10 -0
- package/dist/types/zk/prover.d.ts +34 -0
- package/dist/types/zk/registry.d.ts +34 -0
- package/dist/types/zk/types.d.ts +33 -0
- package/dist/types/zk/witness.d.ts +40 -0
- package/package.json +47 -15
- package/dist/cjs/ottochain/normalize.js +0 -186
- package/dist/esm/ottochain/normalize.js +0 -179
- package/dist/types/ottochain/normalize.d.ts +0 -79
|
@@ -0,0 +1,556 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lending Application — privacy-preserving credit & lending on OttoChain.
|
|
3
|
+
*
|
|
4
|
+
* The lending family hosts private-finance fibers whose financial state stays private while
|
|
5
|
+
* eligibility is proven in zero-knowledge. The collateral, principal, and repayment are
|
|
6
|
+
* asset-subsystem tokens driven by the fiber lifecycle.
|
|
7
|
+
*
|
|
8
|
+
* Variants:
|
|
9
|
+
* - `zkLoan` — a collateralized loan whose origination is gated by a zk eligibility proof
|
|
10
|
+
* (collateral coverage / credit-score floor) without revealing the borrower's financials.
|
|
11
|
+
*
|
|
12
|
+
* The name `lending` (vs. `loans`) deliberately generalizes for the future credit family —
|
|
13
|
+
* credit lines, BNPL, bonds, escrowed credit — mirroring how `markets` hosts prediction /
|
|
14
|
+
* auction / crowdfund variants under one app.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* import {
|
|
19
|
+
* getLendingDefinition,
|
|
20
|
+
* pinLendingRule,
|
|
21
|
+
* buildOriginationGuard,
|
|
22
|
+
* buildEligibilityWitness,
|
|
23
|
+
* debtPolicy,
|
|
24
|
+
* collateralPolicy,
|
|
25
|
+
* } from '@ottochain/sdk/apps/lending';
|
|
26
|
+
*
|
|
27
|
+
* const loanDef = getLendingDefinition('zkLoan');
|
|
28
|
+
*
|
|
29
|
+
* // Pin the public rule + build the proof-gated origination guard.
|
|
30
|
+
* const pinned = pinLendingRule({ collateralRatioPct: 150, loanAmount: 1000, minCreditScore: 680 }, vkey);
|
|
31
|
+
* const guard = buildOriginationGuard();
|
|
32
|
+
* const debt = debtPolicy(guard);
|
|
33
|
+
* ```
|
|
34
|
+
*
|
|
35
|
+
* @packageDocumentation
|
|
36
|
+
*/
|
|
37
|
+
import { lendingZkLoanDef } from './state-machines/index.js';
|
|
38
|
+
import type { FiberAppDefinition } from '../../schema/fiber-app.js';
|
|
39
|
+
export { lendingZkLoanDef };
|
|
40
|
+
/** All lending state machine definitions. */
|
|
41
|
+
export declare const LENDING_DEFINITIONS: {
|
|
42
|
+
readonly zkLoan: {
|
|
43
|
+
readonly metadata: {
|
|
44
|
+
readonly name: "LendingZkLoan";
|
|
45
|
+
readonly app: "lending";
|
|
46
|
+
readonly type: "zkLoan";
|
|
47
|
+
readonly version: "1.0.0";
|
|
48
|
+
readonly description: "Privacy-preserving collateralized loan: the borrower proves loan eligibility (collateral coverage / credit-score floor) in zero-knowledge without revealing the financials; collateral, principal and repayment are asset-subsystem tokens driven by the loan lifecycle.";
|
|
49
|
+
readonly crossReferences: {
|
|
50
|
+
readonly borrowerIdentityId: "Links to the borrower's IdentityAgent";
|
|
51
|
+
readonly lenderIdentityId: "Links to the lender's IdentityAgent (loan originator)";
|
|
52
|
+
readonly collateralAssetId: "Asset instance locked as collateral (held by the loan's escrow fiber)";
|
|
53
|
+
readonly debtAssetId: "Asset instance representing the outstanding loan principal/debt minted to the borrower";
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
readonly createSchema: {
|
|
57
|
+
readonly required: readonly ["borrower", "lender", "principalAmount", "collateralAssetId", "collateralPolicy", "debtPolicy", "lendingRuleVKey", "lendingRuleLogicHash", "keccakTrue"];
|
|
58
|
+
readonly properties: {
|
|
59
|
+
readonly borrower: {
|
|
60
|
+
readonly type: "address";
|
|
61
|
+
readonly description: "DAG address of the borrower";
|
|
62
|
+
readonly immutable: true;
|
|
63
|
+
};
|
|
64
|
+
readonly lender: {
|
|
65
|
+
readonly type: "address";
|
|
66
|
+
readonly description: "DAG address of the lender / loan originator";
|
|
67
|
+
readonly immutable: true;
|
|
68
|
+
};
|
|
69
|
+
readonly principalAmount: {
|
|
70
|
+
readonly type: "integer";
|
|
71
|
+
readonly description: "PUBLIC loan principal (asset minor-units). The financials backing eligibility stay private.";
|
|
72
|
+
readonly minimum: 1;
|
|
73
|
+
readonly immutable: true;
|
|
74
|
+
};
|
|
75
|
+
readonly collateralAssetId: {
|
|
76
|
+
readonly type: "uuid";
|
|
77
|
+
readonly description: "Asset instance id pledged as collateral (its private valuation is never revealed).";
|
|
78
|
+
readonly immutable: true;
|
|
79
|
+
};
|
|
80
|
+
readonly collateralPolicy: {
|
|
81
|
+
readonly type: "string";
|
|
82
|
+
readonly description: "Collateral asset policy name (e.g. 'collateral-vault-v1.asset').";
|
|
83
|
+
readonly immutable: true;
|
|
84
|
+
};
|
|
85
|
+
readonly debtPolicy: {
|
|
86
|
+
readonly type: "string";
|
|
87
|
+
readonly description: "Debt/loan-token asset policy name (e.g. 'loan-debt-v1.asset').";
|
|
88
|
+
readonly immutable: true;
|
|
89
|
+
};
|
|
90
|
+
readonly escrowFiberId: {
|
|
91
|
+
readonly type: "uuid";
|
|
92
|
+
readonly description: "Fiber that custodies the locked collateral (AssetHolder.Fiber). Defaults to this loan fiber.";
|
|
93
|
+
};
|
|
94
|
+
readonly lendingRuleVKey: {
|
|
95
|
+
readonly type: "hash";
|
|
96
|
+
readonly description: "PINNED SP1 program verifying key (bytes32, 0x-hex) for the eligibility circuit.";
|
|
97
|
+
readonly immutable: true;
|
|
98
|
+
};
|
|
99
|
+
readonly lendingRuleLogicHash: {
|
|
100
|
+
readonly type: "hash";
|
|
101
|
+
readonly description: "PINNED logicHash of the public lending rule = keccak256(canonicalize(rule)). The proof's committed exprHash must equal this.";
|
|
102
|
+
readonly immutable: true;
|
|
103
|
+
};
|
|
104
|
+
readonly keccakTrue: {
|
|
105
|
+
readonly type: "hash";
|
|
106
|
+
readonly description: "PINNED keccak256(canonicalize(true)) — the outputHash a 'rule returned true' proof must commit.";
|
|
107
|
+
readonly immutable: true;
|
|
108
|
+
};
|
|
109
|
+
readonly dueOrdinal: {
|
|
110
|
+
readonly type: "integer";
|
|
111
|
+
readonly description: "Optional snapshot ordinal by which repayment is due.";
|
|
112
|
+
readonly minimum: 0;
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
};
|
|
116
|
+
readonly stateSchema: {
|
|
117
|
+
readonly properties: {
|
|
118
|
+
readonly status: {
|
|
119
|
+
readonly type: "string";
|
|
120
|
+
readonly computed: true;
|
|
121
|
+
};
|
|
122
|
+
readonly borrower: {
|
|
123
|
+
readonly type: "address";
|
|
124
|
+
readonly immutable: true;
|
|
125
|
+
};
|
|
126
|
+
readonly lender: {
|
|
127
|
+
readonly type: "address";
|
|
128
|
+
readonly immutable: true;
|
|
129
|
+
};
|
|
130
|
+
readonly principalAmount: {
|
|
131
|
+
readonly type: "integer";
|
|
132
|
+
readonly immutable: true;
|
|
133
|
+
};
|
|
134
|
+
readonly collateralAssetId: {
|
|
135
|
+
readonly type: "uuid";
|
|
136
|
+
readonly immutable: true;
|
|
137
|
+
};
|
|
138
|
+
readonly collateralPolicy: {
|
|
139
|
+
readonly type: "string";
|
|
140
|
+
readonly immutable: true;
|
|
141
|
+
};
|
|
142
|
+
readonly debtPolicy: {
|
|
143
|
+
readonly type: "string";
|
|
144
|
+
readonly immutable: true;
|
|
145
|
+
};
|
|
146
|
+
readonly escrowFiberId: {
|
|
147
|
+
readonly type: "uuid";
|
|
148
|
+
};
|
|
149
|
+
readonly debtAssetId: {
|
|
150
|
+
readonly type: "uuid";
|
|
151
|
+
readonly computed: true;
|
|
152
|
+
};
|
|
153
|
+
readonly lendingRuleVKey: {
|
|
154
|
+
readonly type: "hash";
|
|
155
|
+
readonly immutable: true;
|
|
156
|
+
};
|
|
157
|
+
readonly lendingRuleLogicHash: {
|
|
158
|
+
readonly type: "hash";
|
|
159
|
+
readonly immutable: true;
|
|
160
|
+
};
|
|
161
|
+
readonly keccakTrue: {
|
|
162
|
+
readonly type: "hash";
|
|
163
|
+
readonly immutable: true;
|
|
164
|
+
};
|
|
165
|
+
readonly dueOrdinal: {
|
|
166
|
+
readonly type: "integer";
|
|
167
|
+
};
|
|
168
|
+
readonly lockedAt: {
|
|
169
|
+
readonly type: "integer";
|
|
170
|
+
readonly computed: true;
|
|
171
|
+
};
|
|
172
|
+
readonly originatedAt: {
|
|
173
|
+
readonly type: "integer";
|
|
174
|
+
readonly computed: true;
|
|
175
|
+
};
|
|
176
|
+
readonly repaidAt: {
|
|
177
|
+
readonly type: "integer";
|
|
178
|
+
readonly computed: true;
|
|
179
|
+
};
|
|
180
|
+
readonly defaultedAt: {
|
|
181
|
+
readonly type: "integer";
|
|
182
|
+
readonly computed: true;
|
|
183
|
+
};
|
|
184
|
+
readonly liquidatedAt: {
|
|
185
|
+
readonly type: "integer";
|
|
186
|
+
readonly computed: true;
|
|
187
|
+
};
|
|
188
|
+
};
|
|
189
|
+
};
|
|
190
|
+
readonly eventSchemas: {
|
|
191
|
+
readonly lock_collateral: {
|
|
192
|
+
readonly description: "Borrower locks the pledged collateral asset into the loan escrow fiber (drives an asset Transfer/Mint into AssetHolder.Fiber).";
|
|
193
|
+
};
|
|
194
|
+
readonly originate: {
|
|
195
|
+
readonly description: "Lender originates the loan after the borrower's zk eligibility proof verifies. The witness carries the SP1-Groth16 {publicValues, proof}; the guard binds them to the pinned public lending rule. The effect mints the debt/principal asset to the borrower.";
|
|
196
|
+
readonly required: readonly ["witness", "debtAssetId"];
|
|
197
|
+
readonly properties: {
|
|
198
|
+
readonly witness: {
|
|
199
|
+
readonly type: "object";
|
|
200
|
+
readonly description: "Eligibility-proof witness: { publicValues: 0x-hex, proof: 0x-hex }. Exposed to the guard under the reserved `witness` key.";
|
|
201
|
+
readonly properties: {
|
|
202
|
+
readonly publicValues: {
|
|
203
|
+
readonly type: "string";
|
|
204
|
+
readonly description: "abi_encode(JlvmPublicValues), 0x-hex.";
|
|
205
|
+
};
|
|
206
|
+
readonly proof: {
|
|
207
|
+
readonly type: "string";
|
|
208
|
+
readonly description: "SP1-Groth16 proof bytes, 0x-hex.";
|
|
209
|
+
};
|
|
210
|
+
};
|
|
211
|
+
readonly required: readonly ["publicValues", "proof"];
|
|
212
|
+
};
|
|
213
|
+
readonly debtAssetId: {
|
|
214
|
+
readonly type: "uuid";
|
|
215
|
+
readonly description: "Asset instance id for the debt/principal token minted to the borrower.";
|
|
216
|
+
};
|
|
217
|
+
};
|
|
218
|
+
};
|
|
219
|
+
readonly repay: {
|
|
220
|
+
readonly description: "Borrower repays the principal (drives a Burn of the debt token); on success the collateral is released back to the borrower via the escrow fiber.";
|
|
221
|
+
};
|
|
222
|
+
readonly default_loan: {
|
|
223
|
+
readonly description: "Mark the loan defaulted once past due (drives the collateral toward liquidation).";
|
|
224
|
+
};
|
|
225
|
+
readonly liquidate: {
|
|
226
|
+
readonly description: "Lender liquidates a defaulted loan: the locked collateral is transferred to the lender via the escrow fiber.";
|
|
227
|
+
};
|
|
228
|
+
readonly cancel: {
|
|
229
|
+
readonly description: "Cancel a loan request before collateral is locked.";
|
|
230
|
+
readonly properties: {
|
|
231
|
+
readonly reason: {
|
|
232
|
+
readonly type: "string";
|
|
233
|
+
};
|
|
234
|
+
};
|
|
235
|
+
};
|
|
236
|
+
};
|
|
237
|
+
readonly states: {
|
|
238
|
+
readonly REQUESTED: {
|
|
239
|
+
readonly id: "REQUESTED";
|
|
240
|
+
readonly isFinal: false;
|
|
241
|
+
readonly metadata: {
|
|
242
|
+
readonly label: "Requested";
|
|
243
|
+
readonly description: "Loan requested; collateral not yet locked, eligibility not yet proven.";
|
|
244
|
+
readonly category: "initial";
|
|
245
|
+
};
|
|
246
|
+
};
|
|
247
|
+
readonly COLLATERAL_LOCKED: {
|
|
248
|
+
readonly id: "COLLATERAL_LOCKED";
|
|
249
|
+
readonly isFinal: false;
|
|
250
|
+
readonly metadata: {
|
|
251
|
+
readonly label: "Collateral Locked";
|
|
252
|
+
readonly description: "Collateral asset escrowed in the loan fiber; awaiting the lender's zk-gated origination.";
|
|
253
|
+
readonly category: "pending";
|
|
254
|
+
};
|
|
255
|
+
};
|
|
256
|
+
readonly ACTIVE: {
|
|
257
|
+
readonly id: "ACTIVE";
|
|
258
|
+
readonly isFinal: false;
|
|
259
|
+
readonly metadata: {
|
|
260
|
+
readonly label: "Active";
|
|
261
|
+
readonly description: "Loan originated (eligibility proven in zk); principal minted to the borrower.";
|
|
262
|
+
readonly category: "active";
|
|
263
|
+
};
|
|
264
|
+
};
|
|
265
|
+
readonly DEFAULTED: {
|
|
266
|
+
readonly id: "DEFAULTED";
|
|
267
|
+
readonly isFinal: false;
|
|
268
|
+
readonly metadata: {
|
|
269
|
+
readonly label: "Defaulted";
|
|
270
|
+
readonly description: "Loan past due and unpaid; collateral pending liquidation.";
|
|
271
|
+
readonly category: "pending";
|
|
272
|
+
};
|
|
273
|
+
};
|
|
274
|
+
readonly REPAID: {
|
|
275
|
+
readonly id: "REPAID";
|
|
276
|
+
readonly isFinal: true;
|
|
277
|
+
readonly metadata: {
|
|
278
|
+
readonly label: "Repaid";
|
|
279
|
+
readonly description: "Principal repaid (debt burned) and collateral released to the borrower.";
|
|
280
|
+
readonly category: "terminal";
|
|
281
|
+
};
|
|
282
|
+
};
|
|
283
|
+
readonly LIQUIDATED: {
|
|
284
|
+
readonly id: "LIQUIDATED";
|
|
285
|
+
readonly isFinal: true;
|
|
286
|
+
readonly metadata: {
|
|
287
|
+
readonly label: "Liquidated";
|
|
288
|
+
readonly description: "Defaulted loan settled by transferring the collateral to the lender.";
|
|
289
|
+
readonly category: "terminal";
|
|
290
|
+
};
|
|
291
|
+
};
|
|
292
|
+
readonly CANCELLED: {
|
|
293
|
+
readonly id: "CANCELLED";
|
|
294
|
+
readonly isFinal: true;
|
|
295
|
+
readonly metadata: {
|
|
296
|
+
readonly label: "Cancelled";
|
|
297
|
+
readonly description: "Loan request cancelled before any collateral was locked.";
|
|
298
|
+
readonly category: "terminal";
|
|
299
|
+
};
|
|
300
|
+
};
|
|
301
|
+
};
|
|
302
|
+
readonly initialState: "REQUESTED";
|
|
303
|
+
readonly transitions: readonly [{
|
|
304
|
+
readonly from: "REQUESTED";
|
|
305
|
+
readonly to: "COLLATERAL_LOCKED";
|
|
306
|
+
readonly eventName: "lock_collateral";
|
|
307
|
+
readonly guard: {
|
|
308
|
+
readonly and: readonly [{
|
|
309
|
+
readonly in: readonly [{
|
|
310
|
+
readonly var: "state.borrower";
|
|
311
|
+
}, {
|
|
312
|
+
readonly map: readonly [{
|
|
313
|
+
readonly var: "proofs";
|
|
314
|
+
}, {
|
|
315
|
+
readonly var: "address";
|
|
316
|
+
}];
|
|
317
|
+
}];
|
|
318
|
+
}, {
|
|
319
|
+
readonly '===': readonly [{
|
|
320
|
+
readonly var: "event.assetId";
|
|
321
|
+
}, {
|
|
322
|
+
readonly var: "state.collateralAssetId";
|
|
323
|
+
}];
|
|
324
|
+
}];
|
|
325
|
+
};
|
|
326
|
+
readonly effect: {
|
|
327
|
+
readonly merge: readonly [{
|
|
328
|
+
readonly var: "state";
|
|
329
|
+
}, {
|
|
330
|
+
readonly status: "COLLATERAL_LOCKED";
|
|
331
|
+
readonly lockedAt: {
|
|
332
|
+
readonly var: "$ordinal";
|
|
333
|
+
};
|
|
334
|
+
}];
|
|
335
|
+
};
|
|
336
|
+
readonly dependencies: readonly [];
|
|
337
|
+
}, {
|
|
338
|
+
readonly from: "REQUESTED";
|
|
339
|
+
readonly to: "CANCELLED";
|
|
340
|
+
readonly eventName: "cancel";
|
|
341
|
+
readonly guard: {
|
|
342
|
+
readonly or: readonly [{
|
|
343
|
+
readonly in: readonly [{
|
|
344
|
+
readonly var: "state.borrower";
|
|
345
|
+
}, {
|
|
346
|
+
readonly map: readonly [{
|
|
347
|
+
readonly var: "proofs";
|
|
348
|
+
}, {
|
|
349
|
+
readonly var: "address";
|
|
350
|
+
}];
|
|
351
|
+
}];
|
|
352
|
+
}, {
|
|
353
|
+
readonly in: readonly [{
|
|
354
|
+
readonly var: "state.lender";
|
|
355
|
+
}, {
|
|
356
|
+
readonly map: readonly [{
|
|
357
|
+
readonly var: "proofs";
|
|
358
|
+
}, {
|
|
359
|
+
readonly var: "address";
|
|
360
|
+
}];
|
|
361
|
+
}];
|
|
362
|
+
}];
|
|
363
|
+
};
|
|
364
|
+
readonly effect: {
|
|
365
|
+
readonly merge: readonly [{
|
|
366
|
+
readonly var: "state";
|
|
367
|
+
}, {
|
|
368
|
+
readonly status: "CANCELLED";
|
|
369
|
+
readonly cancelledAt: {
|
|
370
|
+
readonly var: "$ordinal";
|
|
371
|
+
};
|
|
372
|
+
readonly reason: {
|
|
373
|
+
readonly var: "event.reason";
|
|
374
|
+
};
|
|
375
|
+
}];
|
|
376
|
+
};
|
|
377
|
+
readonly dependencies: readonly [];
|
|
378
|
+
}, {
|
|
379
|
+
readonly from: "COLLATERAL_LOCKED";
|
|
380
|
+
readonly to: "ACTIVE";
|
|
381
|
+
readonly eventName: "originate";
|
|
382
|
+
readonly guard: {
|
|
383
|
+
readonly and: readonly [{
|
|
384
|
+
readonly in: readonly [{
|
|
385
|
+
readonly var: "state.lender";
|
|
386
|
+
}, {
|
|
387
|
+
readonly map: readonly [{
|
|
388
|
+
readonly var: "proofs";
|
|
389
|
+
}, {
|
|
390
|
+
readonly var: "address";
|
|
391
|
+
}];
|
|
392
|
+
}];
|
|
393
|
+
}, {
|
|
394
|
+
readonly groth16_verify: readonly [{
|
|
395
|
+
readonly var: "state.lendingRuleVKey";
|
|
396
|
+
}, {
|
|
397
|
+
readonly var: "event.witness.publicValues";
|
|
398
|
+
}, {
|
|
399
|
+
readonly var: "event.witness.proof";
|
|
400
|
+
}];
|
|
401
|
+
}, {
|
|
402
|
+
readonly '===': readonly [{
|
|
403
|
+
readonly cat: readonly ["0x", {
|
|
404
|
+
readonly substr: readonly [{
|
|
405
|
+
readonly var: "event.witness.publicValues";
|
|
406
|
+
}, 2, 64];
|
|
407
|
+
}];
|
|
408
|
+
}, {
|
|
409
|
+
readonly var: "state.lendingRuleLogicHash";
|
|
410
|
+
}];
|
|
411
|
+
}, {
|
|
412
|
+
readonly '===': readonly [{
|
|
413
|
+
readonly cat: readonly ["0x", {
|
|
414
|
+
readonly substr: readonly [{
|
|
415
|
+
readonly var: "event.witness.publicValues";
|
|
416
|
+
}, 130, 64];
|
|
417
|
+
}];
|
|
418
|
+
}, {
|
|
419
|
+
readonly var: "state.keccakTrue";
|
|
420
|
+
}];
|
|
421
|
+
}, {
|
|
422
|
+
readonly '===': readonly [{
|
|
423
|
+
readonly substr: readonly [{
|
|
424
|
+
readonly var: "event.witness.publicValues";
|
|
425
|
+
}, 256, 2];
|
|
426
|
+
}, "01"];
|
|
427
|
+
}];
|
|
428
|
+
};
|
|
429
|
+
readonly effect: {
|
|
430
|
+
readonly merge: readonly [{
|
|
431
|
+
readonly var: "state";
|
|
432
|
+
}, {
|
|
433
|
+
readonly status: "ACTIVE";
|
|
434
|
+
readonly originatedAt: {
|
|
435
|
+
readonly var: "$ordinal";
|
|
436
|
+
};
|
|
437
|
+
readonly debtAssetId: {
|
|
438
|
+
readonly var: "event.debtAssetId";
|
|
439
|
+
};
|
|
440
|
+
}];
|
|
441
|
+
};
|
|
442
|
+
readonly dependencies: readonly [];
|
|
443
|
+
}, {
|
|
444
|
+
readonly from: "ACTIVE";
|
|
445
|
+
readonly to: "REPAID";
|
|
446
|
+
readonly eventName: "repay";
|
|
447
|
+
readonly guard: {
|
|
448
|
+
readonly in: readonly [{
|
|
449
|
+
readonly var: "state.borrower";
|
|
450
|
+
}, {
|
|
451
|
+
readonly map: readonly [{
|
|
452
|
+
readonly var: "proofs";
|
|
453
|
+
}, {
|
|
454
|
+
readonly var: "address";
|
|
455
|
+
}];
|
|
456
|
+
}];
|
|
457
|
+
};
|
|
458
|
+
readonly effect: {
|
|
459
|
+
readonly merge: readonly [{
|
|
460
|
+
readonly var: "state";
|
|
461
|
+
}, {
|
|
462
|
+
readonly status: "REPAID";
|
|
463
|
+
readonly repaidAt: {
|
|
464
|
+
readonly var: "$ordinal";
|
|
465
|
+
};
|
|
466
|
+
readonly _transferAsset: readonly [{
|
|
467
|
+
readonly assetId: {
|
|
468
|
+
readonly var: "state.collateralAssetId";
|
|
469
|
+
};
|
|
470
|
+
readonly recipient: {
|
|
471
|
+
readonly Wallet: {
|
|
472
|
+
readonly address: {
|
|
473
|
+
readonly var: "state.borrower";
|
|
474
|
+
};
|
|
475
|
+
};
|
|
476
|
+
};
|
|
477
|
+
}];
|
|
478
|
+
}];
|
|
479
|
+
};
|
|
480
|
+
readonly dependencies: readonly [];
|
|
481
|
+
}, {
|
|
482
|
+
readonly from: "ACTIVE";
|
|
483
|
+
readonly to: "DEFAULTED";
|
|
484
|
+
readonly eventName: "default_loan";
|
|
485
|
+
readonly guard: {
|
|
486
|
+
readonly and: readonly [{
|
|
487
|
+
readonly var: "state.dueOrdinal";
|
|
488
|
+
}, {
|
|
489
|
+
readonly '>=': readonly [{
|
|
490
|
+
readonly var: "$ordinal";
|
|
491
|
+
}, {
|
|
492
|
+
readonly var: "state.dueOrdinal";
|
|
493
|
+
}];
|
|
494
|
+
}];
|
|
495
|
+
};
|
|
496
|
+
readonly effect: {
|
|
497
|
+
readonly merge: readonly [{
|
|
498
|
+
readonly var: "state";
|
|
499
|
+
}, {
|
|
500
|
+
readonly status: "DEFAULTED";
|
|
501
|
+
readonly defaultedAt: {
|
|
502
|
+
readonly var: "$ordinal";
|
|
503
|
+
};
|
|
504
|
+
}];
|
|
505
|
+
};
|
|
506
|
+
readonly dependencies: readonly [];
|
|
507
|
+
}, {
|
|
508
|
+
readonly from: "DEFAULTED";
|
|
509
|
+
readonly to: "LIQUIDATED";
|
|
510
|
+
readonly eventName: "liquidate";
|
|
511
|
+
readonly guard: {
|
|
512
|
+
readonly in: readonly [{
|
|
513
|
+
readonly var: "state.lender";
|
|
514
|
+
}, {
|
|
515
|
+
readonly map: readonly [{
|
|
516
|
+
readonly var: "proofs";
|
|
517
|
+
}, {
|
|
518
|
+
readonly var: "address";
|
|
519
|
+
}];
|
|
520
|
+
}];
|
|
521
|
+
};
|
|
522
|
+
readonly effect: {
|
|
523
|
+
readonly merge: readonly [{
|
|
524
|
+
readonly var: "state";
|
|
525
|
+
}, {
|
|
526
|
+
readonly status: "LIQUIDATED";
|
|
527
|
+
readonly liquidatedAt: {
|
|
528
|
+
readonly var: "$ordinal";
|
|
529
|
+
};
|
|
530
|
+
readonly _transferAsset: readonly [{
|
|
531
|
+
readonly assetId: {
|
|
532
|
+
readonly var: "state.collateralAssetId";
|
|
533
|
+
};
|
|
534
|
+
readonly recipient: {
|
|
535
|
+
readonly Wallet: {
|
|
536
|
+
readonly address: {
|
|
537
|
+
readonly var: "state.lender";
|
|
538
|
+
};
|
|
539
|
+
};
|
|
540
|
+
};
|
|
541
|
+
}];
|
|
542
|
+
}];
|
|
543
|
+
};
|
|
544
|
+
readonly dependencies: readonly [];
|
|
545
|
+
}];
|
|
546
|
+
};
|
|
547
|
+
};
|
|
548
|
+
export type LendingType = keyof typeof LENDING_DEFINITIONS;
|
|
549
|
+
/**
|
|
550
|
+
* Get a lending state machine definition by type.
|
|
551
|
+
* @param type - 'zkLoan' (default: 'zkLoan')
|
|
552
|
+
*/
|
|
553
|
+
export declare function getLendingDefinition(type?: LendingType): FiberAppDefinition;
|
|
554
|
+
export { lendingRule, pinLendingRule, buildOriginationGuard, buildEligibilityWitness, type LendingRuleParams, type PinnedLendingRule, type OriginationGuardRefs, type JsonLogicRule, } from './eligibility.js';
|
|
555
|
+
export { reputationScore, reputationCreditRule, buildCreditDataContext, reputationAuthorityClause, type CreditScoreConfig, type ReputationCreditParams, type CreditDataContext, } from './credit-scoring.js';
|
|
556
|
+
export { walletHolder, fiberHolder, behaviorBits, TokenBehaviors, type AssetHolder, type TokenBehavior, type SupplyPolicy, type MorphismKind, type MorphismVisibility, type MorphismSpec, type VersionReq, type PolicyRef, createAssetPolicyPayload, createMintAssetPayload, createApplyMorphismPayload, createAuthorizeComposePayload, type CreateAssetPolicyParams, type CreateAssetPolicyMessage, type MintAssetParams, type MintAssetMessage, type ApplyMorphismParams, type ApplyMorphismMessage, type AuthorizeComposeParams, type AuthorizeComposeMessage, collateralPolicy, debtPolicy, lockCollateralOp, mintPrincipalOp, repayBurnOp, settleCollateralOp, } from './assets.js';
|