@gearbox-protocol/sdk 16.0.0-next.34 → 16.0.0-next.36
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/model/delayed-intent.schema.js +35 -0
- package/dist/cjs/model/index.js +5 -0
- package/dist/cjs/model/withdrawals.js +1 -0
- package/dist/cjs/model/withdrawals.schema.js +39 -0
- package/dist/cjs/onchain/accounts/CreditAccountsServiceV310.js +0 -10
- package/dist/cjs/onchain/accounts/credit-account-compressor/CreditAccountCompressor.js +1 -1
- package/dist/cjs/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +3 -2
- package/dist/cjs/onchain/positions/MultichainPositionsService.js +14 -0
- package/dist/cjs/onchain/positions/PositionsService.js +60 -0
- package/dist/cjs/sdk/positions/PositionsNamespace.js +6 -0
- package/dist/cjs/sdk/prepare/PrepareApi.js +22 -1
- package/dist/esm/model/delayed-intent.schema.js +34 -0
- package/dist/esm/model/index.js +3 -1
- package/dist/esm/model/withdrawals.js +1 -0
- package/dist/esm/model/withdrawals.schema.js +36 -0
- package/dist/esm/onchain/accounts/CreditAccountsServiceV310.js +0 -10
- package/dist/esm/onchain/accounts/credit-account-compressor/CreditAccountCompressor.js +1 -1
- package/dist/esm/onchain/market/rwa/securitize/SecuritizeRWAFactory.js +3 -2
- package/dist/esm/onchain/positions/MultichainPositionsService.js +14 -0
- package/dist/esm/onchain/positions/PositionsService.js +60 -0
- package/dist/esm/sdk/positions/PositionsNamespace.js +6 -0
- package/dist/esm/sdk/prepare/PrepareApi.js +22 -1
- package/dist/types/model/delayed-intent.schema.d.ts +28 -0
- package/dist/types/model/index.d.ts +3 -1
- package/dist/types/model/withdrawals.d.ts +87 -0
- package/dist/types/model/withdrawals.schema.d.ts +243 -0
- package/dist/types/onchain/accounts/CreditAccountsServiceV310.d.ts +1 -5
- package/dist/types/onchain/accounts/index.d.ts +2 -2
- package/dist/types/onchain/accounts/intents/types.d.ts +2 -1
- package/dist/types/onchain/accounts/types.d.ts +2 -27
- package/dist/types/onchain/index.d.ts +4 -4
- package/dist/types/onchain/market/index.d.ts +2 -2
- package/dist/types/onchain/market/rwa/index.d.ts +2 -2
- package/dist/types/onchain/market/rwa/securitize/SecuritizeRWAFactory.d.ts +2 -2
- package/dist/types/onchain/market/rwa/types.d.ts +17 -5
- package/dist/types/onchain/positions/MultichainPositionsService.d.ts +7 -1
- package/dist/types/onchain/positions/PositionsService.d.ts +9 -1
- package/dist/types/onchain/positions/index.d.ts +2 -2
- package/dist/types/onchain/positions/types.d.ts +31 -2
- package/dist/types/sdk/positions/PositionsNamespace.d.ts +8 -2
- package/dist/types/sdk/positions/types.d.ts +11 -3
- package/dist/types/sdk/prepare/types.d.ts +6 -5
- package/package.json +1 -1
|
@@ -3,9 +3,9 @@ import { MidasLiquidatorContract } from "./midas/MidasLiquidatorContract.js";
|
|
|
3
3
|
import "./midas/index.js";
|
|
4
4
|
import { PHANTOM_TOKEN_SECURITIZE_REDEMPTION, RWA_FACTORY_SECURITIZE, RWA_LIQUIDATOR_SECURITIZE } from "./securitize/constants.js";
|
|
5
5
|
import { SecuritizeLiquidatorContract } from "./securitize/SecuritizeLiquidatorContract.js";
|
|
6
|
-
import { GetOpenAccountRequirementsProps, IRWAFactory, RWACompressorCall, RWACompressorInvestorData, RWACompressorResponse, RWAFactoryData, RWAFactoryStateHuman, RWAFactoryType, RWAInvestorData, RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements, RWAOperationArgs, RWAState, RWAStateHuman, RWAUnderlyingData, RWA_FACTORY_TYPES, isRWAFactory } from "./types.js";
|
|
6
|
+
import { GetInvestorOptions, GetOpenAccountRequirementsProps, IRWAFactory, RWACompressorCall, RWACompressorInvestorData, RWACompressorResponse, RWAFactoryData, RWAFactoryStateHuman, RWAFactoryType, RWAInvestorData, RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements, RWAOperationArgs, RWAState, RWAStateHuman, RWAUnderlyingData, RWA_FACTORY_TYPES, isRWAFactory } from "./types.js";
|
|
7
7
|
import { DStokenData, SECURITIZE_REGISTER_VAULT_TYPES, SecuritizeCreditAccountData, SecuritizeInvestorData, SecuritizeMissingOpenAccountRequirements, SecuritizeOpenAccountRequirements, SecuritizeOperationArgs, SecuritizeRWAFactoryStateHuman, SecuritizeRegisterMessage, SecuritizeRegisterVaultMessage, SecuritizeSignature } from "./securitize/types.js";
|
|
8
8
|
import { SecuritizeRWAFactory } from "./securitize/SecuritizeRWAFactory.js";
|
|
9
9
|
import "./securitize/index.js";
|
|
10
10
|
import { RWARegistry } from "./RWARegistry.js";
|
|
11
|
-
export { DStokenData, GetOpenAccountRequirementsProps, IRWAFactory, MidasLiquidatorContract, PHANTOM_TOKEN_MIDAS_REDEMPTION, PHANTOM_TOKEN_SECURITIZE_REDEMPTION, RWACompressorCall, RWACompressorInvestorData, RWACompressorResponse, RWAFactoryData, RWAFactoryStateHuman, RWAFactoryType, RWAInvestorData, RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements, RWAOperationArgs, RWARegistry, RWAState, RWAStateHuman, RWAUnderlyingData, RWA_FACTORY_SECURITIZE, RWA_FACTORY_TYPES, RWA_LIQUIDATOR_MIDAS, RWA_LIQUIDATOR_SECURITIZE, SECURITIZE_REGISTER_VAULT_TYPES, SecuritizeCreditAccountData, SecuritizeInvestorData, SecuritizeLiquidatorContract, SecuritizeMissingOpenAccountRequirements, SecuritizeOpenAccountRequirements, SecuritizeOperationArgs, SecuritizeRWAFactory, SecuritizeRWAFactoryStateHuman, SecuritizeRegisterMessage, SecuritizeRegisterVaultMessage, SecuritizeSignature, isRWAFactory };
|
|
11
|
+
export { DStokenData, GetInvestorOptions, GetOpenAccountRequirementsProps, IRWAFactory, MidasLiquidatorContract, PHANTOM_TOKEN_MIDAS_REDEMPTION, PHANTOM_TOKEN_SECURITIZE_REDEMPTION, RWACompressorCall, RWACompressorInvestorData, RWACompressorResponse, RWAFactoryData, RWAFactoryStateHuman, RWAFactoryType, RWAInvestorData, RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements, RWAOperationArgs, RWARegistry, RWAState, RWAStateHuman, RWAUnderlyingData, RWA_FACTORY_SECURITIZE, RWA_FACTORY_TYPES, RWA_LIQUIDATOR_MIDAS, RWA_LIQUIDATOR_SECURITIZE, SECURITIZE_REGISTER_VAULT_TYPES, SecuritizeCreditAccountData, SecuritizeInvestorData, SecuritizeLiquidatorContract, SecuritizeMissingOpenAccountRequirements, SecuritizeOpenAccountRequirements, SecuritizeOperationArgs, SecuritizeRWAFactory, SecuritizeRWAFactoryStateHuman, SecuritizeRegisterMessage, SecuritizeRegisterVaultMessage, SecuritizeSignature, isRWAFactory };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RWA_FACTORY_SECURITIZE } from "./constants.js";
|
|
2
|
-
import { GetOpenAccountRequirementsProps, IRWAFactory, RWACompressorInvestorData, RWAFactoryData } from "../types.js";
|
|
2
|
+
import { GetInvestorOptions, GetOpenAccountRequirementsProps, IRWAFactory, RWACompressorInvestorData, RWAFactoryData } from "../types.js";
|
|
3
3
|
import { SecuritizeDegenNFT } from "./SecuritizeDegenNFT.js";
|
|
4
4
|
import { DStokenData, SecuritizeInvestorData, SecuritizeMissingOpenAccountRequirements, SecuritizeOpenAccountRequirements, SecuritizeOperationArgs, SecuritizeRWAFactoryStateHuman } from "./types.js";
|
|
5
5
|
import { MultiCall, RawTx } from "../../../types/transactions.js";
|
|
@@ -477,7 +477,7 @@ declare class SecuritizeRWAFactory extends BaseContract<abi> implements IRWAFact
|
|
|
477
477
|
/**
|
|
478
478
|
* {@inheritDoc IRWAFactory.getInvestor}
|
|
479
479
|
*/
|
|
480
|
-
getInvestor(creditAccount: Address,
|
|
480
|
+
getInvestor(creditAccount: Address, options?: GetInvestorOptions): Promise<Address>;
|
|
481
481
|
/**
|
|
482
482
|
* {@inheritDoc IRWAFactory.getApprovalAddress}
|
|
483
483
|
*/
|
|
@@ -100,6 +100,20 @@ interface GetOpenAccountRequirementsProps {
|
|
|
100
100
|
*/
|
|
101
101
|
tokenOutAddress: Address;
|
|
102
102
|
}
|
|
103
|
+
/**
|
|
104
|
+
* Options for {@link IRWAFactory.getInvestor}.
|
|
105
|
+
*/
|
|
106
|
+
interface GetInvestorOptions {
|
|
107
|
+
/**
|
|
108
|
+
* If true, use and update an in-memory cache (creditAccount → investor).
|
|
109
|
+
* On cache miss, loads from contract and stores the result.
|
|
110
|
+
**/
|
|
111
|
+
fromCache?: boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Block to read at, defaults to latest. Only used on a cache miss.
|
|
114
|
+
**/
|
|
115
|
+
blockNumber?: bigint;
|
|
116
|
+
}
|
|
103
117
|
/**
|
|
104
118
|
* Shared interface for all RWA factory contracts.
|
|
105
119
|
*
|
|
@@ -131,11 +145,9 @@ interface IRWAFactory<T extends RWAFactoryType = RWAFactoryType> extends IBaseCo
|
|
|
131
145
|
/**
|
|
132
146
|
* Returns the investor address for a credit account.
|
|
133
147
|
* @param creditAccount - credit account address
|
|
134
|
-
* @param
|
|
135
|
-
* (creditAccount → investor). On cache miss, loads from contract and
|
|
136
|
-
* stores the result for future calls.
|
|
148
|
+
* @param options - cache and block-pinning options
|
|
137
149
|
**/
|
|
138
|
-
getInvestor(creditAccount: Address,
|
|
150
|
+
getInvestor(creditAccount: Address, options?: GetInvestorOptions): Promise<Address>;
|
|
139
151
|
/**
|
|
140
152
|
* Returns address to which approval should be given on collateral token
|
|
141
153
|
*
|
|
@@ -207,4 +219,4 @@ interface IRWAFactory<T extends RWAFactoryType = RWAFactoryType> extends IBaseCo
|
|
|
207
219
|
**/
|
|
208
220
|
declare function isRWAFactory<T extends RWAFactoryType = RWAFactoryType>(contract: IBaseContract, type?: T): contract is IRWAFactory<T>;
|
|
209
221
|
//#endregion
|
|
210
|
-
export { GetOpenAccountRequirementsProps, IRWAFactory, RWACompressorCall, RWACompressorInvestorData, RWACompressorResponse, RWAFactoryData, RWAFactoryStateHuman, RWAFactoryType, RWAInvestorData, RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements, RWAOperationArgs, RWAState, RWAStateHuman, RWAUnderlyingData, RWA_FACTORY_TYPES, isRWAFactory };
|
|
222
|
+
export { GetInvestorOptions, GetOpenAccountRequirementsProps, IRWAFactory, RWACompressorCall, RWACompressorInvestorData, RWACompressorResponse, RWAFactoryData, RWAFactoryStateHuman, RWAFactoryType, RWAInvestorData, RWAMissingOpenAccountRequirements, RWAOpenAccountRequirements, RWAOperationArgs, RWAState, RWAStateHuman, RWAUnderlyingData, RWA_FACTORY_TYPES, isRWAFactory };
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Position } from "../../model/positions.js";
|
|
2
2
|
import { DataResponse } from "../../model/response.js";
|
|
3
|
+
import { PositionWithdrawals } from "../../model/withdrawals.js";
|
|
3
4
|
import "../../model/index.js";
|
|
4
5
|
import { PluginsMap } from "../plugins/types.js";
|
|
5
6
|
import "../plugins/index.js";
|
|
6
|
-
import { IMultichainPositionsService, ListPositionsProps } from "./types.js";
|
|
7
|
+
import { GetCurrentWithdrawalsProps, IMultichainPositionsService, ListPositionsProps } from "./types.js";
|
|
7
8
|
import { MultichainConstruct } from "../base/MultichainConstruct.js";
|
|
8
9
|
import "../base/index.js";
|
|
9
10
|
//#region src/onchain/positions/MultichainPositionsService.d.ts
|
|
@@ -18,6 +19,11 @@ declare class MultichainPositionsService<const Plugins extends PluginsMap = {}>
|
|
|
18
19
|
* {@link PositionsService.list}.
|
|
19
20
|
**/
|
|
20
21
|
list(props: ListPositionsProps<true>): Promise<DataResponse<Position[]>>;
|
|
22
|
+
/**
|
|
23
|
+
* Delayed withdrawals of one credit account, see
|
|
24
|
+
* {@link PositionsService.getCurrentWithdrawals}.
|
|
25
|
+
**/
|
|
26
|
+
getCurrentWithdrawals(props: GetCurrentWithdrawalsProps<true>): Promise<DataResponse<PositionWithdrawals>>;
|
|
21
27
|
}
|
|
22
28
|
//#endregion
|
|
23
29
|
export { MultichainPositionsService };
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Bps } from "../../model/primitives.js";
|
|
2
2
|
import { BorrowRateBreakdown, Position, StrategyPosition } from "../../model/positions.js";
|
|
3
3
|
import { AccountMetrics, AccountProjection } from "../../model/previews.js";
|
|
4
|
+
import { PositionWithdrawals } from "../../model/withdrawals.js";
|
|
4
5
|
import "../../model/index.js";
|
|
5
|
-
import { AccountSnapshot, ListPositionsProps, ListStrategyPositionsProps } from "./types.js";
|
|
6
|
+
import { AccountSnapshot, GetCurrentWithdrawalsProps, ListPositionsProps, ListStrategyPositionsProps } from "./types.js";
|
|
6
7
|
import { SDKConstruct } from "../base/SDKConstruct.js";
|
|
7
8
|
import "../base/index.js";
|
|
8
9
|
//#region src/onchain/positions/PositionsService.d.ts
|
|
@@ -41,6 +42,13 @@ declare class PositionsService extends SDKConstruct {
|
|
|
41
42
|
* @param props - {@link ListStrategyPositionsProps}
|
|
42
43
|
**/
|
|
43
44
|
listStrategyPositions(props: ListStrategyPositionsProps): Promise<StrategyPosition[]>;
|
|
45
|
+
/**
|
|
46
|
+
* Returns delayed withdrawals of a strategy position
|
|
47
|
+
*
|
|
48
|
+
* Empty when this chain has no withdrawal compressor, or the account does
|
|
49
|
+
* not exist.
|
|
50
|
+
**/
|
|
51
|
+
getCurrentWithdrawals(props: GetCurrentWithdrawalsProps): Promise<PositionWithdrawals>;
|
|
44
52
|
/**
|
|
45
53
|
* Health factor of an account state, in basis points (`10000` = 1.0).
|
|
46
54
|
**/
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AccountSnapshot, IMultichainPositionsService, ListPositionsProps, ListPositionsPropsBase, ListStrategyPositionsProps, accountSnapshotFromCreditAccountData } from "./types.js";
|
|
1
|
+
import { AccountSnapshot, GetCurrentWithdrawalsProps, GetCurrentWithdrawalsPropsBase, IMultichainPositionsService, ListPositionsProps, ListPositionsPropsBase, ListStrategyPositionsProps, accountSnapshotFromCreditAccountData } from "./types.js";
|
|
2
2
|
import { CalcBorrowRateProps, calcBorrowRate } from "./calcBorrowRate.js";
|
|
3
3
|
import { CalcHealthFactorProps, calcHealthFactor } from "./calcHealthFactor.js";
|
|
4
4
|
import { CalcLiquidationPriceForTargetProps, CalcLiquidationPriceProps, calcLiquidationPriceForTarget } from "./calcLiquidationPriceForTarget.js";
|
|
@@ -6,4 +6,4 @@ import { calcLiquidationPrice, soleNonUnderlyingCollateral } from "./calcLiquida
|
|
|
6
6
|
import { calcTimeToLiquidationMs } from "./calcTimeToLiquidationMs.js";
|
|
7
7
|
import { MultichainPositionsService } from "./MultichainPositionsService.js";
|
|
8
8
|
import { PositionsService, ProjectedPoolOptions } from "./PositionsService.js";
|
|
9
|
-
export { AccountSnapshot, CalcBorrowRateProps, CalcHealthFactorProps, CalcLiquidationPriceForTargetProps, CalcLiquidationPriceProps, IMultichainPositionsService, ListPositionsProps, ListPositionsPropsBase, ListStrategyPositionsProps, MultichainPositionsService, PositionsService, ProjectedPoolOptions, accountSnapshotFromCreditAccountData, calcBorrowRate, calcHealthFactor, calcLiquidationPrice, calcLiquidationPriceForTarget, calcTimeToLiquidationMs, soleNonUnderlyingCollateral };
|
|
9
|
+
export { AccountSnapshot, CalcBorrowRateProps, CalcHealthFactorProps, CalcLiquidationPriceForTargetProps, CalcLiquidationPriceProps, GetCurrentWithdrawalsProps, GetCurrentWithdrawalsPropsBase, IMultichainPositionsService, ListPositionsProps, ListPositionsPropsBase, ListStrategyPositionsProps, MultichainPositionsService, PositionsService, ProjectedPoolOptions, accountSnapshotFromCreditAccountData, calcBorrowRate, calcHealthFactor, calcLiquidationPrice, calcLiquidationPriceForTarget, calcTimeToLiquidationMs, soleNonUnderlyingCollateral };
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { ChainId } from "../../model/primitives.js";
|
|
1
2
|
import { Position, PositionFilter } from "../../model/positions.js";
|
|
2
3
|
import { DataResponse } from "../../model/response.js";
|
|
4
|
+
import { PositionWithdrawals } from "../../model/withdrawals.js";
|
|
3
5
|
import "../../model/index.js";
|
|
4
|
-
import { WithBlock } from "../types/multichain.js";
|
|
6
|
+
import { WithBlock, WithMultichain } from "../types/multichain.js";
|
|
5
7
|
import { Asset, CreditAccountData } from "../base/types.js";
|
|
6
8
|
import "../types/index.js";
|
|
7
9
|
import "../base/index.js";
|
|
@@ -33,6 +35,28 @@ interface ListPositionsPropsBase {
|
|
|
33
35
|
* {@link MultichainPositionsService.list}.
|
|
34
36
|
**/
|
|
35
37
|
type ListPositionsProps<Multichain extends boolean = false> = ListPositionsPropsBase & WithBlock<Multichain>;
|
|
38
|
+
/**
|
|
39
|
+
* Chain-independent part of {@link GetCurrentWithdrawalsProps}.
|
|
40
|
+
*
|
|
41
|
+
* {@link GetCurrentWithdrawalsPropsBase.blockNumber} is kept on the
|
|
42
|
+
* multichain form because the method already targets a single chain.
|
|
43
|
+
**/
|
|
44
|
+
interface GetCurrentWithdrawalsPropsBase {
|
|
45
|
+
/**
|
|
46
|
+
* Credit account whose delayed withdrawals to read.
|
|
47
|
+
**/
|
|
48
|
+
creditAccount: Address;
|
|
49
|
+
/**
|
|
50
|
+
* Block to read at. Defaults to the latest block.
|
|
51
|
+
**/
|
|
52
|
+
blockNumber?: bigint;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Props for {@link PositionsService.getCurrentWithdrawals}.
|
|
56
|
+
**/
|
|
57
|
+
type GetCurrentWithdrawalsProps<Multichain extends boolean = false> = GetCurrentWithdrawalsPropsBase & WithMultichain<Multichain, {
|
|
58
|
+
chainId: ChainId;
|
|
59
|
+
}>;
|
|
36
60
|
/**
|
|
37
61
|
* Cross-chain reads of the positions namespace: everything a wallet holds.
|
|
38
62
|
**/
|
|
@@ -41,6 +65,11 @@ interface IMultichainPositionsService {
|
|
|
41
65
|
* Positions of a wallet on all queried chains.
|
|
42
66
|
**/
|
|
43
67
|
list(props: ListPositionsProps<true>): Promise<DataResponse<Position[]>>;
|
|
68
|
+
/**
|
|
69
|
+
* Delayed withdrawals of one credit account, see
|
|
70
|
+
* {@link PositionsService.getCurrentWithdrawals}.
|
|
71
|
+
**/
|
|
72
|
+
getCurrentWithdrawals(props: GetCurrentWithdrawalsProps<true>): Promise<DataResponse<PositionWithdrawals>>;
|
|
44
73
|
}
|
|
45
74
|
/**
|
|
46
75
|
* Props for {@link PositionsService.listStrategyPositions}.
|
|
@@ -96,4 +125,4 @@ interface AccountSnapshot {
|
|
|
96
125
|
**/
|
|
97
126
|
declare function accountSnapshotFromCreditAccountData(ca: CreditAccountData): AccountSnapshot;
|
|
98
127
|
//#endregion
|
|
99
|
-
export { AccountSnapshot, IMultichainPositionsService, ListPositionsProps, ListPositionsPropsBase, ListStrategyPositionsProps, accountSnapshotFromCreditAccountData };
|
|
128
|
+
export { AccountSnapshot, GetCurrentWithdrawalsProps, GetCurrentWithdrawalsPropsBase, IMultichainPositionsService, ListPositionsProps, ListPositionsPropsBase, ListStrategyPositionsProps, accountSnapshotFromCreditAccountData };
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
import { ChartBundle, ChartRange, PoolPositionChartMetric, StrategyPositionChartMetric } from "../../model/charts.js";
|
|
2
2
|
import { PoolPositionRef, Position, PositionFilter, PositionsTotals, StrategyPositionRef } from "../../model/positions.js";
|
|
3
3
|
import { DataResponse } from "../../model/response.js";
|
|
4
|
+
import { PositionWithdrawals } from "../../model/withdrawals.js";
|
|
4
5
|
import "../../model/index.js";
|
|
6
|
+
import { GetCurrentWithdrawalsProps } from "../../onchain/positions/types.js";
|
|
5
7
|
import { MultichainSDK } from "../../onchain/MultichainSDK.js";
|
|
6
8
|
import "../../onchain/index.js";
|
|
7
9
|
import { GearboxAPI } from "../../offchain/GearboxAPI.js";
|
|
8
10
|
import "../../offchain/index.js";
|
|
9
11
|
import { FilterResult } from "../utils/types.js";
|
|
10
12
|
import "../utils/index.js";
|
|
11
|
-
import { IPositionMergers, IPositionsBase, IPositionsOffchainBranch, IPositionsOffchainOnly, IPositionsOnchainBranch } from "./types.js";
|
|
13
|
+
import { IPositionMergers, IPositionsBase, IPositionsOffchainBranch, IPositionsOffchainOnly, IPositionsOnchainBranch, IPositionsOnchainOnly } from "./types.js";
|
|
12
14
|
import { NamespaceOptions } from "../types.js";
|
|
13
15
|
import { AbstractNamespace } from "../AbstractNamespace.js";
|
|
14
16
|
import { Address } from "viem";
|
|
@@ -17,7 +19,7 @@ import { Address } from "viem";
|
|
|
17
19
|
* The `positions` namespace of a {@link GearboxSDK}, see
|
|
18
20
|
* {@link IPositionsByMode} for what each mode offers.
|
|
19
21
|
**/
|
|
20
|
-
declare class PositionsNamespace extends AbstractNamespace<MultichainSDK["positions"], GearboxAPI["positions"]> implements IPositionsBase, IPositionsOffchainOnly, IPositionsOnchainBranch, IPositionsOffchainBranch {
|
|
22
|
+
declare class PositionsNamespace extends AbstractNamespace<MultichainSDK["positions"], GearboxAPI["positions"]> implements IPositionsBase, IPositionsOffchainOnly, IPositionsOnchainOnly, IPositionsOnchainBranch, IPositionsOffchainBranch {
|
|
21
23
|
/**
|
|
22
24
|
* {@inheritDoc IPositionsBase.merge}
|
|
23
25
|
**/
|
|
@@ -40,6 +42,10 @@ declare class PositionsNamespace extends AbstractNamespace<MultichainSDK["positi
|
|
|
40
42
|
**/
|
|
41
43
|
charts<const Metrics extends readonly PoolPositionChartMetric[]>(key: PoolPositionRef, metrics: Metrics, range: ChartRange): Promise<DataResponse<ChartBundle<Metrics>>>;
|
|
42
44
|
charts<const Metrics extends readonly StrategyPositionChartMetric[]>(key: StrategyPositionRef, metrics: Metrics, range: ChartRange): Promise<DataResponse<ChartBundle<Metrics>>>;
|
|
45
|
+
/**
|
|
46
|
+
* {@inheritDoc IPositionsOnchainOnly.getCurrentWithdrawals}
|
|
47
|
+
**/
|
|
48
|
+
getCurrentWithdrawals(props: GetCurrentWithdrawalsProps<true>): Promise<DataResponse<PositionWithdrawals>>;
|
|
43
49
|
}
|
|
44
50
|
//#endregion
|
|
45
51
|
export { PositionsNamespace };
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { ChartBundle, ChartRange, PoolPositionChartMetric, StrategyPositionChartMetric } from "../../model/charts.js";
|
|
2
2
|
import { PoolPositionRef, Position, PositionFilter, PositionsTotals, StrategyPositionRef } from "../../model/positions.js";
|
|
3
3
|
import { DataResponse } from "../../model/response.js";
|
|
4
|
+
import { PositionWithdrawals } from "../../model/withdrawals.js";
|
|
4
5
|
import "../../model/index.js";
|
|
5
|
-
import { IMultichainPositionsService } from "../../onchain/positions/types.js";
|
|
6
|
+
import { GetCurrentWithdrawalsProps, IMultichainPositionsService } from "../../onchain/positions/types.js";
|
|
6
7
|
import "../../onchain/index.js";
|
|
7
8
|
import { IOffchainPositions } from "../../offchain/positions/types.js";
|
|
8
9
|
import "../../offchain/index.js";
|
|
@@ -58,9 +59,16 @@ interface IPositionsOffchainOnly {
|
|
|
58
59
|
charts<const Metrics extends readonly StrategyPositionChartMetric[]>(key: StrategyPositionRef, metrics: Metrics, range: ChartRange): Promise<DataResponse<ChartBundle<Metrics>>>;
|
|
59
60
|
}
|
|
60
61
|
/**
|
|
61
|
-
* Reads only the chain can answer.
|
|
62
|
+
* Reads only the chain can answer.
|
|
62
63
|
**/
|
|
63
|
-
interface IPositionsOnchainOnly {
|
|
64
|
+
interface IPositionsOnchainOnly {
|
|
65
|
+
/**
|
|
66
|
+
* Delayed withdrawals of one credit account: claimable rows carry the
|
|
67
|
+
* adapter call and recorded intent a claim is built from; pending rows
|
|
68
|
+
* name when they mature. Absent in `offchain` mode.
|
|
69
|
+
**/
|
|
70
|
+
getCurrentWithdrawals(props: GetCurrentWithdrawalsProps<true>): Promise<DataResponse<PositionWithdrawals>>;
|
|
71
|
+
}
|
|
64
72
|
/**
|
|
65
73
|
* The chain on its own, for a consumer that shows each source as it arrives.
|
|
66
74
|
* Absent in `offchain` mode.
|
|
@@ -2,8 +2,8 @@ import { Bps } from "../../model/primitives.js";
|
|
|
2
2
|
import { PoolOpportunityKey, StrategyOpportunityKey } from "../../model/opportunities.js";
|
|
3
3
|
import { PositionCollateral, StrategyPosition, StrategyPositionKey } from "../../model/positions.js";
|
|
4
4
|
import { DataResponse } from "../../model/response.js";
|
|
5
|
+
import { PositionClaimableWithdrawal } from "../../model/withdrawals.js";
|
|
5
6
|
import "../../model/index.js";
|
|
6
|
-
import { ClaimableWithdrawal } from "../../onchain/accounts/withdrawal-compressor/types.js";
|
|
7
7
|
import { Asset } from "../../onchain/base/types.js";
|
|
8
8
|
import { MultiCall } from "../../onchain/types/transactions.js";
|
|
9
9
|
import { PoolSimulation } from "../../onchain/pools/types.js";
|
|
@@ -326,13 +326,14 @@ interface LpRedeemParams {
|
|
|
326
326
|
interface FinalizeParams extends PrepareOptions {
|
|
327
327
|
/**
|
|
328
328
|
* The matured withdrawal to claim, from
|
|
329
|
-
* `sdk.
|
|
329
|
+
* `sdk.positions.getCurrentWithdrawals()`.
|
|
330
330
|
**/
|
|
331
|
-
claimable:
|
|
331
|
+
claimable: PositionClaimableWithdrawal;
|
|
332
332
|
/**
|
|
333
333
|
* The operation to resume. Defaults to the one the request recorded in the
|
|
334
|
-
* withdrawal's `extraData`, which is what
|
|
335
|
-
* decodes; pass it explicitly
|
|
334
|
+
* withdrawal's `extraData`, which is what
|
|
335
|
+
* {@link PositionClaimableWithdrawal.intent} decodes; pass it explicitly
|
|
336
|
+
* when the compressor is too old to report it.
|
|
336
337
|
**/
|
|
337
338
|
intent?: ResumableIntent;
|
|
338
339
|
}
|