@lagoon-protocol/lagoon-mcp 0.6.0 → 0.7.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/README.md +72 -54
- package/dist/cache/index.d.ts +4 -1
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js +4 -1
- package/dist/cache/index.js.map +1 -1
- package/dist/graphql/fragments/apr-breakdown.fragment.d.ts +4 -1
- package/dist/graphql/fragments/apr-breakdown.fragment.d.ts.map +1 -1
- package/dist/graphql/fragments/apr-breakdown.fragment.js +3 -0
- package/dist/graphql/fragments/apr-breakdown.fragment.js.map +1 -1
- package/dist/graphql/fragments/composition.fragment.d.ts +23 -134
- package/dist/graphql/fragments/composition.fragment.d.ts.map +1 -1
- package/dist/graphql/fragments/composition.fragment.js +9 -7
- package/dist/graphql/fragments/composition.fragment.js.map +1 -1
- package/dist/graphql/fragments/index.d.ts +1 -1
- package/dist/graphql/fragments/index.d.ts.map +1 -1
- package/dist/graphql/fragments/index.js +5 -4
- package/dist/graphql/fragments/index.js.map +1 -1
- package/dist/graphql/fragments/vault.fragment.d.ts +28 -1
- package/dist/graphql/fragments/vault.fragment.d.ts.map +1 -1
- package/dist/graphql/fragments/vault.fragment.js +28 -0
- package/dist/graphql/fragments/vault.fragment.js.map +1 -1
- package/dist/graphql/queries/composition.queries.d.ts +10 -28
- package/dist/graphql/queries/composition.queries.d.ts.map +1 -1
- package/dist/graphql/queries/composition.queries.js +17 -28
- package/dist/graphql/queries/composition.queries.js.map +1 -1
- package/dist/graphql/queries/discovery.queries.d.ts +50 -0
- package/dist/graphql/queries/discovery.queries.d.ts.map +1 -0
- package/dist/graphql/queries/discovery.queries.js +188 -0
- package/dist/graphql/queries/discovery.queries.js.map +1 -0
- package/dist/graphql/queries/export.queries.d.ts +1 -1
- package/dist/graphql/queries/export.queries.d.ts.map +1 -1
- package/dist/graphql/queries/index.d.ts +1 -0
- package/dist/graphql/queries/index.d.ts.map +1 -1
- package/dist/graphql/queries/index.js +2 -0
- package/dist/graphql/queries/index.js.map +1 -1
- package/dist/graphql/queries/portfolio.queries.d.ts +2 -2
- package/dist/graphql/queries/portfolio.queries.d.ts.map +1 -1
- package/dist/graphql/queries/portfolio.queries.js +9 -3
- package/dist/graphql/queries/portfolio.queries.js.map +1 -1
- package/dist/graphql/queries/risk.queries.d.ts +3 -3
- package/dist/graphql/queries/risk.queries.d.ts.map +1 -1
- package/dist/graphql/queries/vault.queries.d.ts +3 -3
- package/dist/graphql/queries/vault.queries.d.ts.map +1 -1
- package/dist/index.js +0 -0
- package/dist/services/analytics/risk.service.d.ts +43 -21
- package/dist/services/analytics/risk.service.d.ts.map +1 -1
- package/dist/services/analytics/risk.service.js +141 -129
- package/dist/services/analytics/risk.service.js.map +1 -1
- package/dist/tools/compare-vaults.d.ts.map +1 -1
- package/dist/tools/compare-vaults.js +44 -74
- package/dist/tools/compare-vaults.js.map +1 -1
- package/dist/tools/get-asset.d.ts +17 -0
- package/dist/tools/get-asset.d.ts.map +1 -0
- package/dist/tools/get-asset.js +44 -0
- package/dist/tools/get-asset.js.map +1 -0
- package/dist/tools/get-curator.d.ts +13 -0
- package/dist/tools/get-curator.d.ts.map +1 -0
- package/dist/tools/get-curator.js +81 -0
- package/dist/tools/get-curator.js.map +1 -0
- package/dist/tools/get-global-tvl.d.ts +20 -0
- package/dist/tools/get-global-tvl.d.ts.map +1 -0
- package/dist/tools/get-global-tvl.js +38 -0
- package/dist/tools/get-global-tvl.js.map +1 -0
- package/dist/tools/get-historical-state.d.ts +22 -0
- package/dist/tools/get-historical-state.d.ts.map +1 -0
- package/dist/tools/get-historical-state.js +65 -0
- package/dist/tools/get-historical-state.js.map +1 -0
- package/dist/tools/get-indexing-status.d.ts +20 -0
- package/dist/tools/get-indexing-status.d.ts.map +1 -0
- package/dist/tools/get-indexing-status.js +38 -0
- package/dist/tools/get-indexing-status.js.map +1 -0
- package/dist/tools/list-chains.d.ts +16 -0
- package/dist/tools/list-chains.d.ts.map +1 -0
- package/dist/tools/list-chains.js +46 -0
- package/dist/tools/list-chains.js.map +1 -0
- package/dist/tools/list-curators.d.ts +18 -0
- package/dist/tools/list-curators.d.ts.map +1 -0
- package/dist/tools/list-curators.js +49 -0
- package/dist/tools/list-curators.js.map +1 -0
- package/dist/tools/predict-yield.d.ts.map +1 -1
- package/dist/tools/predict-yield.js +77 -6
- package/dist/tools/predict-yield.js.map +1 -1
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +83 -11
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/simulate-vault.d.ts +1 -1
- package/dist/tools/user-portfolio.d.ts.map +1 -1
- package/dist/tools/user-portfolio.js +30 -51
- package/dist/tools/user-portfolio.js.map +1 -1
- package/dist/tools/vault-composition.d.ts +18 -15
- package/dist/tools/vault-composition.d.ts.map +1 -1
- package/dist/tools/vault-composition.js +71 -155
- package/dist/tools/vault-composition.js.map +1 -1
- package/dist/types/generated.d.ts +393 -15
- package/dist/types/generated.d.ts.map +1 -1
- package/dist/utils/comparison-metrics.d.ts +13 -1
- package/dist/utils/comparison-metrics.d.ts.map +1 -1
- package/dist/utils/comparison-metrics.js +29 -4
- package/dist/utils/comparison-metrics.js.map +1 -1
- package/dist/utils/composition-metrics.d.ts +42 -0
- package/dist/utils/composition-metrics.d.ts.map +1 -0
- package/dist/utils/composition-metrics.js +50 -0
- package/dist/utils/composition-metrics.js.map +1 -0
- package/dist/utils/fee-formatting.d.ts +41 -0
- package/dist/utils/fee-formatting.d.ts.map +1 -0
- package/dist/utils/fee-formatting.js +57 -0
- package/dist/utils/fee-formatting.js.map +1 -0
- package/dist/utils/operational-signals.d.ts +55 -0
- package/dist/utils/operational-signals.d.ts.map +1 -0
- package/dist/utils/operational-signals.js +105 -0
- package/dist/utils/operational-signals.js.map +1 -0
- package/dist/utils/validators.d.ts +103 -0
- package/dist/utils/validators.d.ts.map +1 -1
- package/dist/utils/validators.js +59 -1
- package/dist/utils/validators.js.map +1 -1
- package/package.json +2 -2
- package/dist/graphql/fragments.d.ts +0 -183
- package/dist/graphql/fragments.d.ts.map +0 -1
- package/dist/graphql/fragments.js +0 -297
- package/dist/graphql/fragments.js.map +0 -1
- package/dist/graphql/queries/period-summaries.d.ts +0 -15
- package/dist/graphql/queries/period-summaries.d.ts.map +0 -1
- package/dist/graphql/queries/period-summaries.js +0 -24
- package/dist/graphql/queries/period-summaries.js.map +0 -1
- package/dist/services/analytics/protocol-overview.service.d.ts +0 -61
- package/dist/services/analytics/protocol-overview.service.d.ts.map +0 -1
- package/dist/services/analytics/protocol-overview.service.js +0 -182
- package/dist/services/analytics/protocol-overview.service.js.map +0 -1
- package/dist/tools/index.d.ts +0 -26
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -32
- package/dist/tools/index.js.map +0 -1
|
@@ -71,6 +71,12 @@ export type ApRs = {
|
|
|
71
71
|
linearNetAprWithoutExtraYields?: Maybe<Scalars['Float']['output']>;
|
|
72
72
|
/** List of native yields with their respective APR contributions for the corresponding period */
|
|
73
73
|
nativeYields: Array<NativeYield>;
|
|
74
|
+
/** Time-weighted gross APR before fees and excluding airdrops, computed from per-period total assets/supply (uses pre-fee gross supply) */
|
|
75
|
+
twrrGrossAprWithoutExtraYields?: Maybe<Scalars['Float']['output']>;
|
|
76
|
+
/** Time-weighted net APR including all rewards and after fees, computed from per-period total assets/supply */
|
|
77
|
+
twrrNetApr?: Maybe<Scalars['Float']['output']>;
|
|
78
|
+
/** Time-weighted net APR excluding airdrops after fees, computed from per-period total assets/supply */
|
|
79
|
+
twrrNetAprWithoutExtraYields?: Maybe<Scalars['Float']['output']>;
|
|
74
80
|
};
|
|
75
81
|
/** Determines whether the vault enforces a whitelist (deny-by-default) or a blacklist (allow-by-default). */
|
|
76
82
|
export type AccessMode =
|
|
@@ -132,6 +138,18 @@ export type AirdropWithApr = {
|
|
|
132
138
|
/** Start timestamp of the yield */
|
|
133
139
|
startTimestamp: Scalars['Float']['output'];
|
|
134
140
|
};
|
|
141
|
+
/** ERC-20 Approval event on the vault share token. */
|
|
142
|
+
export type Approval = {
|
|
143
|
+
__typename?: 'Approval';
|
|
144
|
+
/** Address that owns the shares and authorizes the allowance. */
|
|
145
|
+
owner: Scalars['Address']['output'];
|
|
146
|
+
/** Address authorized to spend the owner shares. */
|
|
147
|
+
spender: Scalars['Address']['output'];
|
|
148
|
+
/** Allowance amount, in share units. */
|
|
149
|
+
value: Scalars['BigInt']['output'];
|
|
150
|
+
/** The vault whose share token allowance was updated. */
|
|
151
|
+
vault: Vault;
|
|
152
|
+
};
|
|
135
153
|
/** A vault asset */
|
|
136
154
|
export type Asset = {
|
|
137
155
|
__typename?: 'Asset';
|
|
@@ -207,6 +225,18 @@ export type Balances = {
|
|
|
207
225
|
/** USD amount of shares */
|
|
208
226
|
sharesUsd?: Maybe<Scalars['Float']['output']>;
|
|
209
227
|
};
|
|
228
|
+
/** Emitted when a factory deploys a new beacon proxy vault. */
|
|
229
|
+
export type BeaconProxyDeployed = {
|
|
230
|
+
__typename?: 'BeaconProxyDeployed';
|
|
231
|
+
/** Address that triggered the deployment. */
|
|
232
|
+
deployer: Scalars['Address']['output'];
|
|
233
|
+
/** Address of the factory contract that emitted the event. */
|
|
234
|
+
factoryAddress: Scalars['Address']['output'];
|
|
235
|
+
/** Address of the newly deployed beacon proxy vault. */
|
|
236
|
+
proxy: Scalars['Address']['output'];
|
|
237
|
+
/** The newly deployed vault. */
|
|
238
|
+
vault: Vault;
|
|
239
|
+
};
|
|
210
240
|
/** A timestamped BigInt value. */
|
|
211
241
|
export type BigIntDataPoint = {
|
|
212
242
|
__typename?: 'BigIntDataPoint';
|
|
@@ -331,6 +361,38 @@ export type CuratorPage = {
|
|
|
331
361
|
/** Pagination information */
|
|
332
362
|
pageInfo: PageInfo;
|
|
333
363
|
};
|
|
364
|
+
/** Emitted by the FeeRegistry when a per-vault protocol-rate override is set or activated. */
|
|
365
|
+
export type CustomRateUpdated = {
|
|
366
|
+
__typename?: 'CustomRateUpdated';
|
|
367
|
+
/** Whether the custom rate is currently activated for the target vault. When false, the registry default rate applies instead. */
|
|
368
|
+
isActivated: Scalars['Boolean']['output'];
|
|
369
|
+
/** The protocol registry that emitted this override. */
|
|
370
|
+
protocolRegistry: ProtocolRegistry;
|
|
371
|
+
/** Custom protocol rate applied to the target vault, in basis points (1 BPS = 0.01%). */
|
|
372
|
+
rate: Scalars['Int']['output'];
|
|
373
|
+
/** The target vault whose protocol rate is being overridden. */
|
|
374
|
+
targetVault: Vault;
|
|
375
|
+
};
|
|
376
|
+
/** Emitted when the FeeRegistry default implementation contract is changed. */
|
|
377
|
+
export type DefaultLogicUpdated = {
|
|
378
|
+
__typename?: 'DefaultLogicUpdated';
|
|
379
|
+
/** New default logic implementation address. */
|
|
380
|
+
newLogic: Scalars['Address']['output'];
|
|
381
|
+
/** Previous default logic implementation address. */
|
|
382
|
+
previousLogic: Scalars['Address']['output'];
|
|
383
|
+
/** The protocol registry whose default logic was updated. */
|
|
384
|
+
protocolRegistry: ProtocolRegistry;
|
|
385
|
+
};
|
|
386
|
+
/** Emitted when the FeeRegistry default protocol rate is changed. */
|
|
387
|
+
export type DefaultRateUpdated = {
|
|
388
|
+
__typename?: 'DefaultRateUpdated';
|
|
389
|
+
/** New default protocol rate, in basis points (1 BPS = 0.01%). */
|
|
390
|
+
newRate: Scalars['BigInt']['output'];
|
|
391
|
+
/** Previous default protocol rate, in basis points (1 BPS = 0.01%). */
|
|
392
|
+
oldRate: Scalars['BigInt']['output'];
|
|
393
|
+
/** The protocol registry whose default rate changed. */
|
|
394
|
+
protocolRegistry: ProtocolRegistry;
|
|
395
|
+
};
|
|
334
396
|
/** Defi integration */
|
|
335
397
|
export type DefiIntegration = {
|
|
336
398
|
__typename?: 'DefiIntegration';
|
|
@@ -415,6 +477,41 @@ export type DepositSync = {
|
|
|
415
477
|
/** The vault associated with the deposit sync */
|
|
416
478
|
vault: Vault;
|
|
417
479
|
};
|
|
480
|
+
/** A registered external sanctions list contract that vaults can opt into. The list contract gates access on-chain alongside any per-vault whitelist or blacklist. */
|
|
481
|
+
export type ExternalSanctionsList = {
|
|
482
|
+
__typename?: 'ExternalSanctionsList';
|
|
483
|
+
/** Address of the external sanctions list contract */
|
|
484
|
+
address: Scalars['Address']['output'];
|
|
485
|
+
/** EVM chain ID where the sanctions list contract is deployed */
|
|
486
|
+
chainId: Scalars['Int']['output'];
|
|
487
|
+
/** Whether the entry is shown to end users in the frontend selector. Public queries always filter to true; non-visible rows are not exposed. */
|
|
488
|
+
isVisible: Scalars['Boolean']['output'];
|
|
489
|
+
/** Human-readable name of the provider (e.g., "Chainalysis") */
|
|
490
|
+
name: Scalars['String']['output'];
|
|
491
|
+
};
|
|
492
|
+
/** Filter input for ExternalSanctionsList */
|
|
493
|
+
export type ExternalSanctionsListFilterInput = {
|
|
494
|
+
/** Filter by chainId equal to value */
|
|
495
|
+
chainId_eq?: InputMaybe<Scalars['Int']['input']>;
|
|
496
|
+
/** Filter by chainId in array of values */
|
|
497
|
+
chainId_in?: InputMaybe<Array<Scalars['Int']['input']>>;
|
|
498
|
+
};
|
|
499
|
+
/** Available fields to order ExternalSanctionsList by */
|
|
500
|
+
export type ExternalSanctionsListOrderBy =
|
|
501
|
+
/** Order by chainId */
|
|
502
|
+
'chainId'
|
|
503
|
+
/** Order by id */
|
|
504
|
+
| 'id'
|
|
505
|
+
/** Order by name */
|
|
506
|
+
| 'name';
|
|
507
|
+
/** The ExternalSanctionsList paginated response */
|
|
508
|
+
export type ExternalSanctionsListPage = {
|
|
509
|
+
__typename?: 'ExternalSanctionsListPage';
|
|
510
|
+
/** The list of items for the current page */
|
|
511
|
+
items: Array<ExternalSanctionsList>;
|
|
512
|
+
/** Pagination information */
|
|
513
|
+
pageInfo: PageInfo;
|
|
514
|
+
};
|
|
418
515
|
/** Emitted when the whitelist manager updates the external sanctions list oracle. The zero address means no external check is performed. */
|
|
419
516
|
export type ExternalSanctionsListUpdated = {
|
|
420
517
|
__typename?: 'ExternalSanctionsListUpdated';
|
|
@@ -425,6 +522,16 @@ export type ExternalSanctionsListUpdated = {
|
|
|
425
522
|
/** The vault whose sanctions list was updated. */
|
|
426
523
|
vault: Vault;
|
|
427
524
|
};
|
|
525
|
+
/** Emitted when the owner rotates the fee-receiver address. */
|
|
526
|
+
export type FeeReceiverUpdated = {
|
|
527
|
+
__typename?: 'FeeReceiverUpdated';
|
|
528
|
+
/** New fee-receiver address. */
|
|
529
|
+
newReceiver: Scalars['Address']['output'];
|
|
530
|
+
/** Previous fee-receiver address. */
|
|
531
|
+
oldReceiver: Scalars['Address']['output'];
|
|
532
|
+
/** The vault whose fee receiver was updated. */
|
|
533
|
+
vault: Vault;
|
|
534
|
+
};
|
|
428
535
|
/** Emitted every time the vault takes a fee. Carries the fee category, the total shares minted to cover the fee, the rate (BPS) that produced the amount, and the split between manager and protocol recipients. Starting with v0.6.0. */
|
|
429
536
|
export type FeeTaken = {
|
|
430
537
|
__typename?: 'FeeTaken';
|
|
@@ -498,21 +605,33 @@ export type HaircutTaken = {
|
|
|
498
605
|
__typename?: 'HaircutTaken';
|
|
499
606
|
/** Address whose shares were haircut. */
|
|
500
607
|
owner: Scalars['Address']['output'];
|
|
501
|
-
/** Haircut rate applied, expressed in basis points (1 BPS = 0.01
|
|
608
|
+
/** Haircut rate applied, expressed in basis points (1 BPS = 0.01%). Capped at 2000 BPS (20%). */
|
|
502
609
|
rate: Scalars['Int']['output'];
|
|
503
610
|
/** Amount of shares burned as haircut. */
|
|
504
611
|
shares: Scalars['BigInt']['output'];
|
|
505
612
|
/** The vault associated with this haircut. */
|
|
506
613
|
vault: Vault;
|
|
507
614
|
};
|
|
615
|
+
/** Emitted when the high-water mark (used for performance fee accounting) is updated. */
|
|
616
|
+
export type HighWaterMarkUpdated = {
|
|
617
|
+
__typename?: 'HighWaterMarkUpdated';
|
|
618
|
+
/** New high-water mark value. */
|
|
619
|
+
newHighWaterMark: Scalars['BigInt']['output'];
|
|
620
|
+
/** Previous high-water mark value. */
|
|
621
|
+
oldHighWaterMark: Scalars['BigInt']['output'];
|
|
622
|
+
/** The vault whose high-water mark changed. */
|
|
623
|
+
vault: Vault;
|
|
624
|
+
};
|
|
508
625
|
/** Point-in-time reconstruction of a vault from onchain history. State metrics (totalAssets, pricing, USD values) are nullable when the underlying history row has a null column. Config fields (fees, roles, access mode, guardrails) are always populated from the nearest config-history row at or before `asOfTimestamp`. `maxCap: null` when the vault has no cap configured (MAX_UINT_256 sentinel). Some fields (curators, pending balances, safe balance, live APR) are not available on this type yet. */
|
|
509
626
|
export type HistoricalVaultState = {
|
|
510
627
|
__typename?: 'HistoricalVaultState';
|
|
511
628
|
/** Access control mode at `asOfTimestamp` (Whitelist / Blacklist). Pre-v0.6.0 history rows report Blacklist (contract default) as there is no reliable signal in the config row to distinguish legacy from explicitly-configured Blacklist. */
|
|
512
629
|
accessMode?: Maybe<AccessMode>;
|
|
513
|
-
/**
|
|
630
|
+
/** Whether the vault allows resetting the high water mark. Immutable, set at deploy time. Defaults to false for vaults deployed before the on-chain flag existed. */
|
|
631
|
+
allowHighWaterMarkReset: Scalars['Boolean']['output'];
|
|
632
|
+
/** Entry fee rate in basis points at `asOfTimestamp`. Capped at 200 BPS (2%). Applied on deposits — immediately on syncDeposit, at claim time for async. Paid to the fee receiver. */
|
|
514
633
|
entryRate: Scalars['Float']['output'];
|
|
515
|
-
/** Exit fee rate in basis points at `asOfTimestamp
|
|
634
|
+
/** Exit fee rate in basis points at `asOfTimestamp`. Capped at 200 BPS (2%). Applied on redeems — immediately on syncRedeem, at claim time for async, at withdraw time for closed vaults. Paid to the fee receiver. */
|
|
516
635
|
exitRate: Scalars['Float']['output'];
|
|
517
636
|
/** Address of the external sanctions list oracle configured at `asOfTimestamp`. Defaults to the zero address when unset. */
|
|
518
637
|
externalSanctionsList: Scalars['String']['output'];
|
|
@@ -520,7 +639,7 @@ export type HistoricalVaultState = {
|
|
|
520
639
|
feeRatesCooldown?: Maybe<Scalars['BigInt']['output']>;
|
|
521
640
|
/** Price-per-share guardrails configuration and activation at `asOfTimestamp`. */
|
|
522
641
|
guardrails: Guardrails;
|
|
523
|
-
/** Haircut fee rate in basis points at `asOfTimestamp
|
|
642
|
+
/** Haircut fee rate in basis points at `asOfTimestamp`. Capped at 2000 BPS (20%). Applied on syncRedeem after the exit fee, on the shares remaining after exit-fee deduction. Unlike entry/exit fees, the haircut is not paid to the fee receiver — the corresponding asset value is retained by the vault. Price-per-share is unchanged at the moment of the redeem, and the retained value accrues to remaining shareholders at the next valuation update. */
|
|
524
643
|
haircutRate: Scalars['Float']['output'];
|
|
525
644
|
/** Highest price per share ever reached as of `asOfTimestamp`. */
|
|
526
645
|
highWaterMark?: Maybe<Scalars['BigInt']['output']>;
|
|
@@ -552,8 +671,12 @@ export type HistoricalVaultState = {
|
|
|
552
671
|
protocolFee?: Maybe<Scalars['Float']['output']>;
|
|
553
672
|
/** Vault access control roles at `asOfTimestamp`. */
|
|
554
673
|
roles: Roles;
|
|
674
|
+
/** Whether updates to the safe address had been irreversibly locked at `asOfTimestamp`. Once true, the safe address can no longer be changed. Pre-v0.6.0 vaults had no mechanism to change the safe address either, so they are reported as locked (true). */
|
|
675
|
+
safeLocked: Scalars['Boolean']['output'];
|
|
555
676
|
/** Vault lifecycle state (Open/Closing/Closed) at `asOfTimestamp`. */
|
|
556
677
|
state?: Maybe<State>;
|
|
678
|
+
/** Whether updates to the super operator role had been irreversibly locked at `asOfTimestamp`. Null when not applicable — the super operator role did not exist on pre-v0.6.0 vaults. Once true, the super operator can no longer be changed. */
|
|
679
|
+
superOperatorLocked?: Maybe<Scalars['Boolean']['output']>;
|
|
557
680
|
/** Which synchronous operations were allowed at `asOfTimestamp` (Both, SyncDeposit, SyncRedeem, None). */
|
|
558
681
|
syncMode: SyncMode;
|
|
559
682
|
/** Total assets under management in the vault at `asOfTimestamp`. */
|
|
@@ -623,6 +746,14 @@ export type IndexedBlock = {
|
|
|
623
746
|
/** Parent block hash */
|
|
624
747
|
parentHash: Scalars['HexString']['output'];
|
|
625
748
|
};
|
|
749
|
+
/** Emitted on proxy initialization. Carries the contract version number used at initialization time — useful for audit and to correlate with implementation upgrades. */
|
|
750
|
+
export type Initialized = {
|
|
751
|
+
__typename?: 'Initialized';
|
|
752
|
+
/** The vault that was initialized. */
|
|
753
|
+
vault: Vault;
|
|
754
|
+
/** Contract version number at the moment of initialization. */
|
|
755
|
+
version: Scalars['BigInt']['output'];
|
|
756
|
+
};
|
|
626
757
|
/** A integrator entity that manages vault assets */
|
|
627
758
|
export type Integrator = {
|
|
628
759
|
__typename?: 'Integrator';
|
|
@@ -682,6 +813,22 @@ export type Logic = {
|
|
|
682
813
|
/** Lagoon version of this logic implementation (e.g. "v0.5.0"). Derived from the SDK address catalog. Null if the address does not match a known release. */
|
|
683
814
|
version?: Maybe<Scalars['String']['output']>;
|
|
684
815
|
};
|
|
816
|
+
/** Emitted when a new implementation contract is whitelisted in the FeeRegistry. */
|
|
817
|
+
export type LogicAdded = {
|
|
818
|
+
__typename?: 'LogicAdded';
|
|
819
|
+
/** Address of the logic implementation that was whitelisted. */
|
|
820
|
+
logic: Scalars['Address']['output'];
|
|
821
|
+
/** The protocol registry that emitted the event. */
|
|
822
|
+
protocolRegistry: ProtocolRegistry;
|
|
823
|
+
};
|
|
824
|
+
/** Emitted when an implementation contract is removed from the FeeRegistry whitelist. */
|
|
825
|
+
export type LogicRemoved = {
|
|
826
|
+
__typename?: 'LogicRemoved';
|
|
827
|
+
/** Address of the logic implementation removed from the registry whitelist. */
|
|
828
|
+
logic: Scalars['Address']['output'];
|
|
829
|
+
/** The protocol registry that emitted the event. */
|
|
830
|
+
protocolRegistry: ProtocolRegistry;
|
|
831
|
+
};
|
|
685
832
|
/** Emitted when the safe updates the maximum total assets the vault can hold. Enforced on syncDeposit and requestDeposit. */
|
|
686
833
|
export type MaxCapUpdated = {
|
|
687
834
|
__typename?: 'MaxCapUpdated';
|
|
@@ -752,6 +899,18 @@ export type NewTotalAssetsUpdated = {
|
|
|
752
899
|
/** The vault associated with the new total assets updated */
|
|
753
900
|
vault: Vault;
|
|
754
901
|
};
|
|
902
|
+
/** ERC-7540 event: a controller authorizes or revokes an operator to act on its behalf. */
|
|
903
|
+
export type OperatorSet = {
|
|
904
|
+
__typename?: 'OperatorSet';
|
|
905
|
+
/** Whether the operator is approved (true) or revoked (false) by the controller. */
|
|
906
|
+
approved: Scalars['Boolean']['output'];
|
|
907
|
+
/** The controller delegating execution authority (i.e. the principal granting or revoking the operator). */
|
|
908
|
+
controller: Scalars['Address']['output'];
|
|
909
|
+
/** The operator address being granted or revoked authorization to act on behalf of the controller. */
|
|
910
|
+
operator: Scalars['Address']['output'];
|
|
911
|
+
/** The vault on which the operator authorization was set. */
|
|
912
|
+
vault: Vault;
|
|
913
|
+
};
|
|
755
914
|
/** Vault Proxy */
|
|
756
915
|
export type OptinProxy = {
|
|
757
916
|
__typename?: 'OptinProxy';
|
|
@@ -794,6 +953,26 @@ export type Owner = {
|
|
|
794
953
|
/** Website URL of the owner */
|
|
795
954
|
url?: Maybe<Scalars['String']['output']>;
|
|
796
955
|
};
|
|
956
|
+
/** Emitted when ownership transfer is initiated (pending acceptance — 2-step Ownable2Step pattern). */
|
|
957
|
+
export type OwnershipTransferStarted = {
|
|
958
|
+
__typename?: 'OwnershipTransferStarted';
|
|
959
|
+
/** New owner address pending acceptance of ownership. */
|
|
960
|
+
newOwner: Scalars['Address']['output'];
|
|
961
|
+
/** Previous owner address (current owner initiating the transfer). */
|
|
962
|
+
previousOwner: Scalars['Address']['output'];
|
|
963
|
+
/** The vault whose ownership transfer was started. */
|
|
964
|
+
vault: Vault;
|
|
965
|
+
};
|
|
966
|
+
/** Emitted when ownership transfer is finalized (the pending owner has accepted). */
|
|
967
|
+
export type OwnershipTransferred = {
|
|
968
|
+
__typename?: 'OwnershipTransferred';
|
|
969
|
+
/** New vault owner address. */
|
|
970
|
+
newOwner: Scalars['Address']['output'];
|
|
971
|
+
/** Previous vault owner address. */
|
|
972
|
+
previousOwner: Scalars['Address']['output'];
|
|
973
|
+
/** The vault whose ownership was transferred. */
|
|
974
|
+
vault: Vault;
|
|
975
|
+
};
|
|
797
976
|
/** Pagination information for paginated query results */
|
|
798
977
|
export type PageInfo = {
|
|
799
978
|
__typename?: 'PageInfo';
|
|
@@ -810,6 +989,24 @@ export type PageInfo = {
|
|
|
810
989
|
/** Total number of items matching the filters (across all pages) */
|
|
811
990
|
totalCount: Scalars['Int']['output'];
|
|
812
991
|
};
|
|
992
|
+
/** Emitted when the vault is paused (no deposits/redemptions allowed). */
|
|
993
|
+
export type Paused = {
|
|
994
|
+
__typename?: 'Paused';
|
|
995
|
+
/** Account that triggered the pause. */
|
|
996
|
+
account: Scalars['Address']['output'];
|
|
997
|
+
/** The vault that was paused. */
|
|
998
|
+
vault: Vault;
|
|
999
|
+
};
|
|
1000
|
+
/** A user's pending redeem request awaiting settlement, with whether the user can still cancel it */
|
|
1001
|
+
export type PendingRedeemRequest = {
|
|
1002
|
+
__typename?: 'PendingRedeemRequest';
|
|
1003
|
+
/** Amount denominated in assets */
|
|
1004
|
+
assets: Scalars['BigInt']['output'];
|
|
1005
|
+
/** True when the user can still cancel this redeem request. Always false on pre-v0.6.0 vaults (cancelRedeemRequest entrypoint did not exist). The frontend should not re-derive this rule. */
|
|
1006
|
+
isCancelable: Scalars['Boolean']['output'];
|
|
1007
|
+
/** Amount denominated in shares */
|
|
1008
|
+
shares: Scalars['BigInt']['output'];
|
|
1009
|
+
};
|
|
813
1010
|
/** Period summaries are not events but are piece of data that summaries key vault metrics evolution. A period being a portion of time between two updates of TotalAssets. */
|
|
814
1011
|
export type PeriodSummary = {
|
|
815
1012
|
__typename?: 'PeriodSummary';
|
|
@@ -855,6 +1052,8 @@ export type ProtocolComposition = {
|
|
|
855
1052
|
__typename?: 'ProtocolComposition';
|
|
856
1053
|
/** Detail breakdown for grouped items (e.g., "Other" category contains small allocations) */
|
|
857
1054
|
details?: Maybe<Array<ProtocolComposition>>;
|
|
1055
|
+
/** Protocol logo URL (from Octav) */
|
|
1056
|
+
logoUrl?: Maybe<Scalars['String']['output']>;
|
|
858
1057
|
/** Name of the protocol (e.g., "Aave", "Compound", "Morpho") */
|
|
859
1058
|
protocol: Scalars['String']['output'];
|
|
860
1059
|
/** Percentage of total vault value (0-100) */
|
|
@@ -862,6 +1061,16 @@ export type ProtocolComposition = {
|
|
|
862
1061
|
/** Value deployed to this protocol in USD */
|
|
863
1062
|
valueInUsd: Scalars['Float']['output'];
|
|
864
1063
|
};
|
|
1064
|
+
/** Emitted when the FeeRegistry protocol-fee receiver is rotated. */
|
|
1065
|
+
export type ProtocolFeeReceiverUpdated = {
|
|
1066
|
+
__typename?: 'ProtocolFeeReceiverUpdated';
|
|
1067
|
+
/** New protocol-fee receiver address. */
|
|
1068
|
+
newReceiver: Scalars['Address']['output'];
|
|
1069
|
+
/** Previous protocol-fee receiver address. */
|
|
1070
|
+
oldReceiver: Scalars['Address']['output'];
|
|
1071
|
+
/** The protocol registry whose fee receiver was rotated. */
|
|
1072
|
+
protocolRegistry: ProtocolRegistry;
|
|
1073
|
+
};
|
|
865
1074
|
/** A Lagoon protocol registry. Exposes the current onchain state derived from registry events (default logic, available logics, default rate, protocol fee receiver). */
|
|
866
1075
|
export type ProtocolRegistry = {
|
|
867
1076
|
__typename?: 'ProtocolRegistry';
|
|
@@ -906,6 +1115,8 @@ export type Query = {
|
|
|
906
1115
|
curator: Curator;
|
|
907
1116
|
/** Retrieve paginated list of Curator entities with optional filtering and sorting */
|
|
908
1117
|
curators: CuratorPage;
|
|
1118
|
+
/** Retrieve paginated list of ExternalSanctionsList entities with optional filtering and sorting */
|
|
1119
|
+
externalSanctionsLists: ExternalSanctionsListPage;
|
|
909
1120
|
/** Get the global TVL for all Lagoon vaults from DeFiLlama */
|
|
910
1121
|
getGlobalTVL: Scalars['Float']['output'];
|
|
911
1122
|
/** Find a single Integrator entity by its unique identifier */
|
|
@@ -966,6 +1177,13 @@ export type QueryCuratorsArgs = {
|
|
|
966
1177
|
skip?: Scalars['Int']['input'];
|
|
967
1178
|
where?: InputMaybe<CuratorFilterInput>;
|
|
968
1179
|
};
|
|
1180
|
+
export type QueryExternalSanctionsListsArgs = {
|
|
1181
|
+
first?: Scalars['Int']['input'];
|
|
1182
|
+
orderBy?: ExternalSanctionsListOrderBy;
|
|
1183
|
+
orderDirection?: InputMaybe<OrderDirection>;
|
|
1184
|
+
skip?: Scalars['Int']['input'];
|
|
1185
|
+
where?: InputMaybe<ExternalSanctionsListFilterInput>;
|
|
1186
|
+
};
|
|
969
1187
|
export type QueryIntegratorArgs = {
|
|
970
1188
|
id: Scalars['ID']['input'];
|
|
971
1189
|
};
|
|
@@ -1019,11 +1237,11 @@ export type QueryVaultsArgs = {
|
|
|
1019
1237
|
/** Fee rates for the vault, all expressed in basis points (1 BPS = 0.01%). Management and performance rates are staged via newRatesTimestamp/feeRatesCooldown; entry, exit, and haircut rates are applied immediately with no cooldown. */
|
|
1020
1238
|
export type Rates = {
|
|
1021
1239
|
__typename?: 'Rates';
|
|
1022
|
-
/** Entry fee rate in basis points
|
|
1240
|
+
/** Entry fee rate in basis points. Capped at 200 BPS (2%). Applied to shares on deposit — immediately on syncDeposit, at claim time for async deposits. Can only decrease after first initialization. */
|
|
1023
1241
|
entryRate: Scalars['Float']['output'];
|
|
1024
|
-
/** Exit fee rate in basis points
|
|
1242
|
+
/** Exit fee rate in basis points. Capped at 200 BPS (2%). Applied to shares on redeem — immediately on syncRedeem, at claim time for async redeems, at withdraw time for closed vaults. Can only decrease after first initialization. */
|
|
1025
1243
|
exitRate: Scalars['Float']['output'];
|
|
1026
|
-
/** Haircut fee rate in basis points
|
|
1244
|
+
/** Haircut fee rate in basis points. Capped at 2000 BPS (20%). Applied only on syncRedeem, after the exit fee. Haircut shares are burned (not sent to the fee receiver), redistributing value to remaining shareholders. */
|
|
1027
1245
|
haircutRate: Scalars['Float']['output'];
|
|
1028
1246
|
/** Management fee rate in basis points. */
|
|
1029
1247
|
managementRate: Scalars['Float']['output'];
|
|
@@ -1084,6 +1302,20 @@ export type Referral = {
|
|
|
1084
1302
|
/** Whether the referral program is visible and active */
|
|
1085
1303
|
visible: Scalars['Boolean']['output'];
|
|
1086
1304
|
};
|
|
1305
|
+
/** Emitted when a deposit request is tagged with a referrer address. */
|
|
1306
|
+
export type ReferralEvent = {
|
|
1307
|
+
__typename?: 'ReferralEvent';
|
|
1308
|
+
/** The amount of assets associated with the referred deposit request. */
|
|
1309
|
+
assets: Scalars['BigInt']['output'];
|
|
1310
|
+
/** The owner of the deposit request that is being referred. */
|
|
1311
|
+
owner: Scalars['Address']['output'];
|
|
1312
|
+
/** The referrer address credited for the deposit request. */
|
|
1313
|
+
referral: Scalars['Address']['output'];
|
|
1314
|
+
/** The id of the deposit request that the referral is attached to. */
|
|
1315
|
+
requestId: Scalars['BigInt']['output'];
|
|
1316
|
+
/** The vault associated with this referral event. */
|
|
1317
|
+
vault: Vault;
|
|
1318
|
+
};
|
|
1087
1319
|
/** Vault Roles */
|
|
1088
1320
|
export type Roles = {
|
|
1089
1321
|
__typename?: 'Roles';
|
|
@@ -1102,6 +1334,14 @@ export type Roles = {
|
|
|
1102
1334
|
/** The address responsible for managing the whitelist of permissioned vaults */
|
|
1103
1335
|
whitelistManager: Scalars['String']['output'];
|
|
1104
1336
|
};
|
|
1337
|
+
/** Emitted when the safe address is irreversibly locked — it can never be rotated again. */
|
|
1338
|
+
export type SafeLocked = {
|
|
1339
|
+
__typename?: 'SafeLocked';
|
|
1340
|
+
/** The safe address that is now permanently locked. */
|
|
1341
|
+
safe: Scalars['Address']['output'];
|
|
1342
|
+
/** The vault whose safe was locked. */
|
|
1343
|
+
vault: Vault;
|
|
1344
|
+
};
|
|
1105
1345
|
/** Emitted when the safe (fund custody address) is rotated. */
|
|
1106
1346
|
export type SafeUpdated = {
|
|
1107
1347
|
__typename?: 'SafeUpdated';
|
|
@@ -1194,6 +1434,14 @@ export type StateUpdated = {
|
|
|
1194
1434
|
/** The vault associated with this state update. */
|
|
1195
1435
|
vault: Vault;
|
|
1196
1436
|
};
|
|
1437
|
+
/** Emitted when the super operator address is irreversibly locked. */
|
|
1438
|
+
export type SuperOperatorLocked = {
|
|
1439
|
+
__typename?: 'SuperOperatorLocked';
|
|
1440
|
+
/** The super operator address that was irreversibly locked. */
|
|
1441
|
+
superOperator: Scalars['Address']['output'];
|
|
1442
|
+
/** The vault whose super operator was locked. */
|
|
1443
|
+
vault: Vault;
|
|
1444
|
+
};
|
|
1197
1445
|
/** Emitted when the owner assigns or rotates the super operator. The zero address means no super operator is configured. */
|
|
1198
1446
|
export type SuperOperatorUpdated = {
|
|
1199
1447
|
__typename?: 'SuperOperatorUpdated';
|
|
@@ -1250,6 +1498,8 @@ export type TokenComposition = {
|
|
|
1250
1498
|
contract: Scalars['String']['output'];
|
|
1251
1499
|
/** Detail breakdown for grouped items (e.g., "Wallet" or "Other" categories) */
|
|
1252
1500
|
details?: Maybe<Array<TokenComposition>>;
|
|
1501
|
+
/** Logo URL. For positions this is the protocol logo; for wallet tokens this is the token logo. */
|
|
1502
|
+
logoUrl?: Maybe<Scalars['String']['output']>;
|
|
1253
1503
|
/** Full name of the token or position */
|
|
1254
1504
|
name: Scalars['String']['output'];
|
|
1255
1505
|
/** Percentage of total vault value (0-100) */
|
|
@@ -1269,6 +1519,16 @@ export type TotalAssetsExpirationUpdated = {
|
|
|
1269
1519
|
/** The vault whose totalAssets expiration changed. */
|
|
1270
1520
|
vault: Vault;
|
|
1271
1521
|
};
|
|
1522
|
+
/** Legacy pre-v0.6.0 event for the totalAssets lifespan parameter (superseded by TotalAssetsExpirationUpdated). */
|
|
1523
|
+
export type TotalAssetsLifespanUpdated = {
|
|
1524
|
+
__typename?: 'TotalAssetsLifespanUpdated';
|
|
1525
|
+
/** New totalAssets lifespan (in seconds). */
|
|
1526
|
+
newLifespan: Scalars['BigInt']['output'];
|
|
1527
|
+
/** Previous totalAssets lifespan (in seconds). */
|
|
1528
|
+
oldLifespan: Scalars['BigInt']['output'];
|
|
1529
|
+
/** The vault whose totalAssets lifespan changed. */
|
|
1530
|
+
vault: Vault;
|
|
1531
|
+
};
|
|
1272
1532
|
/** Emitted before fees are taken, SettleDeposit and SettleRedeem when there is a new vault valuation settled. */
|
|
1273
1533
|
export type TotalAssetsUpdated = {
|
|
1274
1534
|
__typename?: 'TotalAssetsUpdated';
|
|
@@ -1300,7 +1560,7 @@ export type Transaction = {
|
|
|
1300
1560
|
type: TransactionType;
|
|
1301
1561
|
};
|
|
1302
1562
|
/** Union type representing different types of transaction that can occur, including real on-chain events and virtual ones like PeriodSummaries */
|
|
1303
|
-
export type TransactionData = AccessModeUpdated | AsyncOnlyActivated | BlacklistUpdated | Deposit | DepositRequest | DepositRequestCanceled | DepositSync | ExternalSanctionsListUpdated | FeeTaken | GuardrailsStatusUpdated | GuardrailsUpdated | HaircutTaken | MaxCapUpdated | NameUpdated | NewTotalAssetsUpdated | PeriodSummary | PreMint | ProxyDeployed | RatesUpdated | RedeemRequest | RedeemRequestCanceled | SafeUpdated | SecurityCouncilUpdated | SettleDeposit | SettleRedeem | StateUpdated | SuperOperatorUpdated | SymbolUpdated | SyncModeUpdated | TotalAssetsExpirationUpdated | TotalAssetsUpdated | WhitelistUpdated | Withdraw | WithdrawSync;
|
|
1563
|
+
export type TransactionData = AccessModeUpdated | Approval | AsyncOnlyActivated | BeaconProxyDeployed | BlacklistUpdated | CustomRateUpdated | DefaultLogicUpdated | DefaultRateUpdated | Deposit | DepositRequest | DepositRequestCanceled | DepositSync | ExternalSanctionsListUpdated | FeeReceiverUpdated | FeeTaken | GuardrailsStatusUpdated | GuardrailsUpdated | HaircutTaken | HighWaterMarkUpdated | Initialized | LogicAdded | LogicRemoved | MaxCapUpdated | NameUpdated | NewTotalAssetsUpdated | OperatorSet | OwnershipTransferStarted | OwnershipTransferred | Paused | PeriodSummary | PreMint | ProtocolFeeReceiverUpdated | ProxyDeployed | RatesUpdated | RedeemRequest | RedeemRequestCanceled | ReferralEvent | SafeLocked | SafeUpdated | SecurityCouncilUpdated | SettleDeposit | SettleRedeem | StateUpdated | SuperOperatorLocked | SuperOperatorUpdated | SymbolUpdated | SyncModeUpdated | TotalAssetsExpirationUpdated | TotalAssetsLifespanUpdated | TotalAssetsUpdated | Transfer | Unpaused | Upgraded | ValuationManagerUpdated | WhitelistDisabled | WhitelistManagerUpdated | WhitelistUpdated | Withdraw | WithdrawSync;
|
|
1304
1564
|
/** Filter input for Transaction */
|
|
1305
1565
|
export type TransactionFilterInput = {
|
|
1306
1566
|
/** Filter by chainId equal to value */
|
|
@@ -1360,10 +1620,20 @@ export type TransactionPage = {
|
|
|
1360
1620
|
export type TransactionType =
|
|
1361
1621
|
/** Emitted when the owner switches the vault between whitelist and blacklist access modes. */
|
|
1362
1622
|
'AccessModeUpdated'
|
|
1623
|
+
/** ERC-20 Approval event on the vault share token. */
|
|
1624
|
+
| 'Approval'
|
|
1363
1625
|
/** Marker emitted once when the owner irreversibly switches the vault to async-only mode. */
|
|
1364
1626
|
| 'AsyncOnlyActivated'
|
|
1627
|
+
/** Emitted when a factory deploys a new beacon proxy vault. */
|
|
1628
|
+
| 'BeaconProxyDeployed'
|
|
1365
1629
|
/** Emitted when the whitelist manager adds or removes an address from the blacklist. */
|
|
1366
1630
|
| 'BlacklistUpdated'
|
|
1631
|
+
/** Emitted by the FeeRegistry when a per-vault protocol-rate override is set or activated. */
|
|
1632
|
+
| 'CustomRateUpdated'
|
|
1633
|
+
/** Emitted when the FeeRegistry default implementation contract is changed. */
|
|
1634
|
+
| 'DefaultLogicUpdated'
|
|
1635
|
+
/** Emitted when the FeeRegistry default protocol rate is changed. */
|
|
1636
|
+
| 'DefaultRateUpdated'
|
|
1367
1637
|
/** Emitted when a user claims a previously requested and settled deposit in the ERC7540 async flow — the pending assets are converted at the settled rate and shares are minted to the owner. */
|
|
1368
1638
|
| 'Deposit'
|
|
1369
1639
|
/** Emitted when a deposit request happens. */
|
|
@@ -1374,6 +1644,8 @@ export type TransactionType =
|
|
|
1374
1644
|
| 'DepositSync'
|
|
1375
1645
|
/** Emitted when the whitelist manager updates the external sanctions list oracle. */
|
|
1376
1646
|
| 'ExternalSanctionsListUpdated'
|
|
1647
|
+
/** Emitted when the owner rotates the fee-receiver address. */
|
|
1648
|
+
| 'FeeReceiverUpdated'
|
|
1377
1649
|
/** Emitted every time the vault takes a fee (management, performance, entry, or exit). */
|
|
1378
1650
|
| 'FeeTaken'
|
|
1379
1651
|
/** Emitted when the security council enables or disables guardrails enforcement. */
|
|
@@ -1382,16 +1654,34 @@ export type TransactionType =
|
|
|
1382
1654
|
| 'GuardrailsUpdated'
|
|
1383
1655
|
/** Emitted on syncRedeem when a haircut is applied and burned to protect remaining shareholders. */
|
|
1384
1656
|
| 'HaircutTaken'
|
|
1657
|
+
/** Emitted when the high-water mark (used for performance fee accounting) is updated. */
|
|
1658
|
+
| 'HighWaterMarkUpdated'
|
|
1659
|
+
/** Emitted on proxy initialization. Carries the contract version number used at initialization time. */
|
|
1660
|
+
| 'Initialized'
|
|
1661
|
+
/** Emitted when a new implementation contract is whitelisted in the FeeRegistry. */
|
|
1662
|
+
| 'LogicAdded'
|
|
1663
|
+
/** Emitted when an implementation contract is removed from the FeeRegistry whitelist. */
|
|
1664
|
+
| 'LogicRemoved'
|
|
1385
1665
|
/** Emitted when the safe updates the maximum total assets the vault can hold. */
|
|
1386
1666
|
| 'MaxCapUpdated'
|
|
1387
1667
|
/** Emitted when the owner updates the ERC-20 token name. */
|
|
1388
1668
|
| 'NameUpdated'
|
|
1389
1669
|
/** Emitted when the newTotalAssets variable is updated. */
|
|
1390
1670
|
| 'NewTotalAssetsUpdated'
|
|
1671
|
+
/** ERC-7540 event: a controller authorizes or revokes an operator to act on its behalf. */
|
|
1672
|
+
| 'OperatorSet'
|
|
1673
|
+
/** Emitted when ownership transfer is initiated (pending acceptance — 2-step Ownable2Step pattern). */
|
|
1674
|
+
| 'OwnershipTransferStarted'
|
|
1675
|
+
/** Emitted when ownership transfer is finalized (the pending owner has accepted). */
|
|
1676
|
+
| 'OwnershipTransferred'
|
|
1677
|
+
/** Emitted when the vault is paused (no deposits/redemptions allowed). */
|
|
1678
|
+
| 'Paused'
|
|
1391
1679
|
/** Period summaries are not events but are piece of data that summaries key vault metrics evolution. A period being a portion of time between two updates of TotalAssets. */
|
|
1392
1680
|
| 'PeriodSummary'
|
|
1393
1681
|
/** Emitted at vault initialization when pre-minted shares are sent to the safe in exchange for seed assets. */
|
|
1394
1682
|
| 'PreMint'
|
|
1683
|
+
/** Emitted when the FeeRegistry protocol-fee receiver is rotated. */
|
|
1684
|
+
| 'ProtocolFeeReceiverUpdated'
|
|
1395
1685
|
/** Emitted when a factory deploys a new vault proxy. */
|
|
1396
1686
|
| 'ProxyDeployed'
|
|
1397
1687
|
/** Emitted when vault fee rates get updated */
|
|
@@ -1400,6 +1690,10 @@ export type TransactionType =
|
|
|
1400
1690
|
| 'RedeemRequest'
|
|
1401
1691
|
/** Emitted when a redemption request is canceled. */
|
|
1402
1692
|
| 'RedeemRequestCanceled'
|
|
1693
|
+
/** Emitted when a deposit request is tagged with a referrer address. */
|
|
1694
|
+
| 'ReferralEvent'
|
|
1695
|
+
/** Emitted when the safe address is irreversibly locked — it can never be rotated again. */
|
|
1696
|
+
| 'SafeLocked'
|
|
1403
1697
|
/** Emitted when the safe (fund custody address) is rotated. */
|
|
1404
1698
|
| 'SafeUpdated'
|
|
1405
1699
|
/** Emitted when the owner assigns or rotates the security council. */
|
|
@@ -1410,6 +1704,8 @@ export type TransactionType =
|
|
|
1410
1704
|
| 'SettleRedeem'
|
|
1411
1705
|
/** Emitted when vault state changes from Open -> Closing -> Close */
|
|
1412
1706
|
| 'StateUpdated'
|
|
1707
|
+
/** Emitted when the super operator address is irreversibly locked. */
|
|
1708
|
+
| 'SuperOperatorLocked'
|
|
1413
1709
|
/** Emitted when the owner assigns or rotates the super operator. */
|
|
1414
1710
|
| 'SuperOperatorUpdated'
|
|
1415
1711
|
/** Emitted when the owner updates the ERC-20 token symbol. */
|
|
@@ -1418,16 +1714,50 @@ export type TransactionType =
|
|
|
1418
1714
|
| 'SyncModeUpdated'
|
|
1419
1715
|
/** Emitted when the timestamp after which totalAssets is considered stale changes. */
|
|
1420
1716
|
| 'TotalAssetsExpirationUpdated'
|
|
1717
|
+
/** Legacy pre-v0.6.0 event for the totalAssets lifespan parameter (superseded by TotalAssetsExpirationUpdated). */
|
|
1718
|
+
| 'TotalAssetsLifespanUpdated'
|
|
1421
1719
|
/** Emitted when the totalAssets variable is updated. */
|
|
1422
1720
|
| 'TotalAssetsUpdated'
|
|
1721
|
+
/** ERC-20 Transfer event on the vault share token. Emitted on every share movement (mint, burn, P2P transfer). */
|
|
1722
|
+
| 'Transfer'
|
|
1723
|
+
/** Emitted when the vault is resumed from a paused state. */
|
|
1724
|
+
| 'Unpaused'
|
|
1725
|
+
/** EIP-1967 proxy upgrade event — the implementation contract has been swapped. */
|
|
1726
|
+
| 'Upgraded'
|
|
1727
|
+
/** Emitted when the owner rotates the valuation manager. */
|
|
1728
|
+
| 'ValuationManagerUpdated'
|
|
1423
1729
|
/** Vault states are not events but it maintains key event states. */
|
|
1424
1730
|
| 'VaultState'
|
|
1731
|
+
/** Legacy pre-v0.6.0 event marking the disabling of whitelist enforcement (superseded by AccessMode). */
|
|
1732
|
+
| 'WhitelistDisabled'
|
|
1733
|
+
/** Emitted when the owner rotates the whitelist manager. */
|
|
1734
|
+
| 'WhitelistManagerUpdated'
|
|
1425
1735
|
/** Emitted when a whitelist entry is updated */
|
|
1426
1736
|
| 'WhitelistUpdated'
|
|
1427
1737
|
/** Emitted when a user claims a previously requested and settled redemption in the ERC7540 async flow — pending shares are burned at the settled rate and the corresponding assets are transferred to the receiver. */
|
|
1428
1738
|
| 'Withdraw'
|
|
1429
1739
|
/** ERC-4626 Withdraw mirror emitted on syncRedeem (after exit fee and haircut deduction). */
|
|
1430
1740
|
| 'WithdrawSync';
|
|
1741
|
+
/** ERC-20 Transfer event on the vault share token. Emitted on every share movement (mint, burn, P2P transfer). */
|
|
1742
|
+
export type Transfer = {
|
|
1743
|
+
__typename?: 'Transfer';
|
|
1744
|
+
/** Address shares are transferred from. The zero address indicates a mint. */
|
|
1745
|
+
from: Scalars['Address']['output'];
|
|
1746
|
+
/** Address shares are transferred to. The zero address indicates a burn. */
|
|
1747
|
+
to: Scalars['Address']['output'];
|
|
1748
|
+
/** Amount of shares transferred, in share units. */
|
|
1749
|
+
value: Scalars['BigInt']['output'];
|
|
1750
|
+
/** The vault whose share token was transferred. */
|
|
1751
|
+
vault: Vault;
|
|
1752
|
+
};
|
|
1753
|
+
/** Emitted when the vault is resumed from a paused state. */
|
|
1754
|
+
export type Unpaused = {
|
|
1755
|
+
__typename?: 'Unpaused';
|
|
1756
|
+
/** Account that triggered the unpause. */
|
|
1757
|
+
account: Scalars['Address']['output'];
|
|
1758
|
+
/** The vault that was unpaused. */
|
|
1759
|
+
vault: Vault;
|
|
1760
|
+
};
|
|
1431
1761
|
/** Input for updating off-chain vault metadata */
|
|
1432
1762
|
export type UpdateVaultMetadataInput = {
|
|
1433
1763
|
/** Average settlement time in hours */
|
|
@@ -1441,6 +1771,14 @@ export type UpdateVaultMetadataInput = {
|
|
|
1441
1771
|
/** URL to transparency report or dashboard */
|
|
1442
1772
|
transparencyUrl?: InputMaybe<Scalars['String']['input']>;
|
|
1443
1773
|
};
|
|
1774
|
+
/** EIP-1967 proxy upgrade event — the implementation contract has been swapped. */
|
|
1775
|
+
export type Upgraded = {
|
|
1776
|
+
__typename?: 'Upgraded';
|
|
1777
|
+
/** Address of the new implementation contract. */
|
|
1778
|
+
implementation: Scalars['Address']['output'];
|
|
1779
|
+
/** The vault whose proxy was upgraded. */
|
|
1780
|
+
vault: Vault;
|
|
1781
|
+
};
|
|
1444
1782
|
/** User entity representing a vault user */
|
|
1445
1783
|
export type User = {
|
|
1446
1784
|
__typename?: 'User';
|
|
@@ -1488,6 +1826,16 @@ export type UserState = {
|
|
|
1488
1826
|
/** The total values of all user's vault shares */
|
|
1489
1827
|
totalSharesUsd: Scalars['Float']['output'];
|
|
1490
1828
|
};
|
|
1829
|
+
/** Emitted when the owner rotates the valuation manager. */
|
|
1830
|
+
export type ValuationManagerUpdated = {
|
|
1831
|
+
__typename?: 'ValuationManagerUpdated';
|
|
1832
|
+
/** New valuation manager address. */
|
|
1833
|
+
newManager: Scalars['Address']['output'];
|
|
1834
|
+
/** Previous valuation manager address. */
|
|
1835
|
+
oldManager: Scalars['Address']['output'];
|
|
1836
|
+
/** The vault whose valuation manager was rotated. */
|
|
1837
|
+
vault: Vault;
|
|
1838
|
+
};
|
|
1491
1839
|
/** A vault entity that represents a Lagoon vault contract */
|
|
1492
1840
|
export type Vault = {
|
|
1493
1841
|
__typename?: 'Vault';
|
|
@@ -1648,6 +1996,8 @@ export type VaultPosition = {
|
|
|
1648
1996
|
__typename?: 'VaultPosition';
|
|
1649
1997
|
/** Vault position id */
|
|
1650
1998
|
id: Scalars['ID']['output'];
|
|
1999
|
+
/** Unix timestamp (seconds) of the earliest indexed onchain event involving the user in this vault — deposit requests, redeem requests, sync deposits, share transfers (in or out), or withdrawals. Null when no indexed history exists for the pair. */
|
|
2000
|
+
since?: Maybe<Scalars['Float']['output']>;
|
|
1651
2001
|
/** Current operational state and metrics of the vault position */
|
|
1652
2002
|
state: VaultPositionState;
|
|
1653
2003
|
/** Vault associated with this user */
|
|
@@ -1666,8 +2016,8 @@ export type VaultPositionState = {
|
|
|
1666
2016
|
claimableRedeem: VaultRequest;
|
|
1667
2017
|
/** Pending deposit request awaiting settlement, in both asset and share units */
|
|
1668
2018
|
pendingDeposit: VaultRequest;
|
|
1669
|
-
/** Pending redeem request awaiting settlement
|
|
1670
|
-
pendingRedeem:
|
|
2019
|
+
/** Pending redeem request awaiting settlement. Carries `isCancelable` so the frontend can render the Cancel button without re-deriving the rule. */
|
|
2020
|
+
pendingRedeem: PendingRedeemRequest;
|
|
1671
2021
|
/** The user's position in shares. Takes into account the user's balance, pending and claimable deposit requests, and pending and claimable redeem requests. */
|
|
1672
2022
|
shares: Scalars['BigInt']['output'];
|
|
1673
2023
|
/**
|
|
@@ -1691,11 +2041,15 @@ export type VaultState = {
|
|
|
1691
2041
|
__typename?: 'VaultState';
|
|
1692
2042
|
/** Access control mode. Determines whether the vault enforces a whitelist (deny-by-default) or a blacklist (allow-by-default). Null when not applicable. */
|
|
1693
2043
|
accessMode?: Maybe<AccessMode>;
|
|
2044
|
+
/** Whether the vault allows resetting the high water mark. Immutable, set at deploy time. Defaults to false for vaults deployed before the on-chain flag existed. */
|
|
2045
|
+
allowHighWaterMarkReset: Scalars['Boolean']['output'];
|
|
2046
|
+
/** Blacklisted addresses. Null for pre-v0.6 vaults (no blacklist concept). v0.6+: always returns the indexed blacklist regardless of accessMode. */
|
|
2047
|
+
blacklist?: Maybe<Array<Scalars['Address']['output']>>;
|
|
1694
2048
|
/** List of curators associated with this vault */
|
|
1695
2049
|
curators?: Maybe<Array<Curator>>;
|
|
1696
|
-
/** Entry fee rate in basis points
|
|
2050
|
+
/** Entry fee rate in basis points. Capped at 200 BPS (2%). Applied on deposits — immediately on syncDeposit, at claim time for async. */
|
|
1697
2051
|
entryRate: Scalars['Float']['output'];
|
|
1698
|
-
/** Exit fee rate in basis points
|
|
2052
|
+
/** Exit fee rate in basis points. Capped at 200 BPS (2%). Applied on redeems — immediately on syncRedeem, at claim time for async, at withdraw time for closed vaults. */
|
|
1699
2053
|
exitRate: Scalars['Float']['output'];
|
|
1700
2054
|
/** Address of an optional external sanctions list oracle consulted by the access control check. Defaults to the zero address when unset. */
|
|
1701
2055
|
externalSanctionsList: Scalars['String']['output'];
|
|
@@ -1703,7 +2057,7 @@ export type VaultState = {
|
|
|
1703
2057
|
feeRatesCooldown: Scalars['BigInt']['output'];
|
|
1704
2058
|
/** Price-per-share evolution limits and their activation state. */
|
|
1705
2059
|
guardrails: Guardrails;
|
|
1706
|
-
/** Haircut fee rate in basis points
|
|
2060
|
+
/** Haircut fee rate in basis points. Capped at 2000 BPS (20%). Applied only on syncRedeem, after the exit fee. Haircut shares are burned, redistributing value to remaining shareholders. */
|
|
1707
2061
|
haircutRate: Scalars['Float']['output'];
|
|
1708
2062
|
/** The highest price per share ever reached, performance fees are taken when the price per share is above this value */
|
|
1709
2063
|
highWaterMark: Scalars['BigInt']['output'];
|
|
@@ -1711,7 +2065,9 @@ export type VaultState = {
|
|
|
1711
2065
|
inceptionApr: ApRs;
|
|
1712
2066
|
/** Whether the vault has been irreversibly switched to async-only mode. When true, SyncMode is forced to None and cannot be re-enabled. */
|
|
1713
2067
|
isAsyncOnly: Scalars['Boolean']['output'];
|
|
1714
|
-
/**
|
|
2068
|
+
/** Whether the vault is currently paused. Defaults to false when no pause history exists. */
|
|
2069
|
+
isPaused: Scalars['Boolean']['output'];
|
|
2070
|
+
/** Whether the whitelist is activated or not */
|
|
1715
2071
|
isWhitelistActivated: Scalars['Boolean']['output'];
|
|
1716
2072
|
/** The timestamp of the last fee calculation, used to compute management fees */
|
|
1717
2073
|
lastFeeTime: Scalars['BigInt']['output'];
|
|
@@ -1745,14 +2101,20 @@ export type VaultState = {
|
|
|
1745
2101
|
safeAssetBalance: Scalars['BigInt']['output'];
|
|
1746
2102
|
/** The USD asset amounts currently in the vault custody */
|
|
1747
2103
|
safeAssetBalanceUsd?: Maybe<Scalars['Float']['output']>;
|
|
2104
|
+
/** Whether updates to the safe address have been irreversibly locked. Once true, the safe address can no longer be changed. Pre-v0.6.0 vaults had no mechanism to change the safe address either, so they are reported as locked (true). */
|
|
2105
|
+
safeLocked: Scalars['Boolean']['output'];
|
|
1748
2106
|
/** The status of the vault, open, closed, or closing */
|
|
1749
2107
|
state: State;
|
|
2108
|
+
/** Whether updates to the super operator role have been irreversibly locked. Null when not applicable — the super operator role did not exist on pre-v0.6.0 vaults. Once true, the super operator can no longer be changed. */
|
|
2109
|
+
superOperatorLocked?: Maybe<Scalars['Boolean']['output']>;
|
|
1750
2110
|
/** Which synchronous operations are currently allowed (Both, SyncDeposit, SyncRedeem, None). Orthogonal to async. */
|
|
1751
2111
|
syncMode: SyncMode;
|
|
1752
2112
|
/** Total assets under management in the vault */
|
|
1753
2113
|
totalAssets: Scalars['BigInt']['output'];
|
|
1754
2114
|
/** Unix timestamp after which totalAssets is considered stale and synchronous operations are disabled until the next valuation update. */
|
|
1755
2115
|
totalAssetsExpiration: Scalars['BigInt']['output'];
|
|
2116
|
+
/** Duration in seconds that a totalAssets valuation stays valid before expiring (how long the vault stays in synchronous mode). Derived from the latest TotalAssetsLifespanUpdated event; null when never configured. */
|
|
2117
|
+
totalAssetsLifespan?: Maybe<Scalars['BigInt']['output']>;
|
|
1756
2118
|
/** Total assets value in USD */
|
|
1757
2119
|
totalAssetsUsd?: Maybe<Scalars['Float']['output']>;
|
|
1758
2120
|
/** Total supply of vault shares */
|
|
@@ -1765,7 +2127,7 @@ export type VaultState = {
|
|
|
1765
2127
|
version: Scalars['String']['output'];
|
|
1766
2128
|
/** Weekly annualized percentage returns */
|
|
1767
2129
|
weeklyApr: ApRs;
|
|
1768
|
-
/** Whitelisted addresses
|
|
2130
|
+
/** Whitelisted addresses. Pre-v0.6: null when isWhitelistActivated is false. v0.6+: always returns the indexed whitelist regardless of accessMode (mode only gates deposits). */
|
|
1769
2131
|
whitelist?: Maybe<Array<Scalars['Address']['output']>>;
|
|
1770
2132
|
/** Yearly annualized percentage returns */
|
|
1771
2133
|
yearlyApr: ApRs;
|
|
@@ -1864,6 +2226,22 @@ export type VaultStateHistoryUpcomingManagementFeeArgs = {
|
|
|
1864
2226
|
export type VaultStateHistoryUpcomingPerformanceFeeArgs = {
|
|
1865
2227
|
options?: InputMaybe<TimeRangeOptions>;
|
|
1866
2228
|
};
|
|
2229
|
+
/** Legacy pre-v0.6.0 event marking the disabling of whitelist enforcement (superseded by AccessMode). */
|
|
2230
|
+
export type WhitelistDisabled = {
|
|
2231
|
+
__typename?: 'WhitelistDisabled';
|
|
2232
|
+
/** The vault whose whitelist enforcement was disabled. */
|
|
2233
|
+
vault: Vault;
|
|
2234
|
+
};
|
|
2235
|
+
/** Emitted when the owner rotates the whitelist manager. */
|
|
2236
|
+
export type WhitelistManagerUpdated = {
|
|
2237
|
+
__typename?: 'WhitelistManagerUpdated';
|
|
2238
|
+
/** New whitelist manager address. */
|
|
2239
|
+
newManager: Scalars['Address']['output'];
|
|
2240
|
+
/** Previous whitelist manager address. */
|
|
2241
|
+
oldManager: Scalars['Address']['output'];
|
|
2242
|
+
/** The vault whose whitelist manager was rotated. */
|
|
2243
|
+
vault: Vault;
|
|
2244
|
+
};
|
|
1867
2245
|
/** Emitted when a whitelist entry is updated. */
|
|
1868
2246
|
export type WhitelistUpdated = {
|
|
1869
2247
|
__typename?: 'WhitelistUpdated';
|