From e7a03b6c238665adf73aac67f2b957752cabd4bb Mon Sep 17 00:00:00 2001 From: Ivan Herger Date: Wed, 3 Apr 2024 10:06:51 +0200 Subject: [PATCH] chore: biome useConsistentArrayTypes --- biome.json | 7 +++- packages/api/src/client.ts | 2 +- packages/sdk/src/Asset.ts | 2 +- .../Policies/AllowedExternalPositionTypes.ts | 2 +- .../AddressListRegistryPerUserPolicies.ts | 4 +-- .../utils/AddressListRegistryPolicies.ts | 4 +-- .../utils/UintListRegistryPerUserPolicies.ts | 4 +-- .../utils/UintListRegistryPolicies.ts | 4 +-- packages/sdk/src/Depositor.ts | 8 ++--- packages/sdk/src/Performance.ts | 4 +-- .../sdk/src/Portfolio/Integrations/AaveV2.ts | 20 +++++------ .../sdk/src/Portfolio/Integrations/AaveV3.ts | 16 ++++----- .../Portfolio/Integrations/ArbitraryLoan.ts | 4 +-- .../src/Portfolio/Integrations/BalancerV2.ts | 34 +++++++++---------- .../src/Portfolio/Integrations/CompoundV2.ts | 10 +++--- .../src/Portfolio/Integrations/CompoundV3.ts | 2 +- .../sdk/src/Portfolio/Integrations/Convex.ts | 10 +++--- .../sdk/src/Portfolio/Integrations/Curve.ts | 12 +++---- .../sdk/src/Portfolio/Integrations/Kiln.ts | 2 +- .../sdk/src/Portfolio/Integrations/Lido.ts | 10 +++--- .../src/Portfolio/Integrations/ParaSwapV5.ts | 16 ++++----- .../src/Portfolio/Integrations/PendleV2.ts | 2 +- .../src/Portfolio/Integrations/UniswapV2.ts | 2 +- .../src/Portfolio/Integrations/UniswapV3.ts | 4 +-- .../GatedRedemptionQueueSharesWrapper.ts | 24 ++++++------- packages/sdk/src/Tools/SharesSplitter.ts | 4 +-- .../src/Tools/SingleAssetRedemptionQueue.ts | 8 ++--- .../src/Tools/UnpermissionedActionsWrapper.ts | 2 +- packages/sdk/src/Utils/bigint.ts | 4 +-- packages/sdk/src/Utils/types.ts | 6 ++-- packages/sdk/src/Vault.ts | 4 +-- packages/sdk/src/_internal/FeeManager.ts | 8 ++--- .../sdk/src/_internal/IntegrationManager.ts | 8 ++--- 33 files changed, 130 insertions(+), 123 deletions(-) diff --git a/biome.json b/biome.json index 20ccdd87..b9b105cb 100644 --- a/biome.json +++ b/biome.json @@ -26,7 +26,12 @@ "noDefaultExport": "off", "noParameterProperties": "off", "useNamingConvention": "off", - "useShorthandArrayType": "off" + "useShorthandArrayType": "off", + "useConsistentArrayType": { + "options": { + "syntax": "generic" + } + } }, "nursery": { "useImportRestrictions": "off" diff --git a/packages/api/src/client.ts b/packages/api/src/client.ts index 7936ae5b..ba71b113 100644 --- a/packages/api/src/client.ts +++ b/packages/api/src/client.ts @@ -29,7 +29,7 @@ export function createTokenAuthInterceptor(token: string): Interceptor { } export interface TransportOptions { - interceptors?: Interceptor[]; + interceptors?: Array; } /** diff --git a/packages/sdk/src/Asset.ts b/packages/sdk/src/Asset.ts index ce15781d..9d290814 100644 --- a/packages/sdk/src/Asset.ts +++ b/packages/sdk/src/Asset.ts @@ -137,7 +137,7 @@ export function getBalancesOf( client: PublicClient, args: Viem.ContractCallParameters<{ owner: Address; - assets: readonly Address[]; + assets: ReadonlyArray
; }>, ) { return Promise.all( diff --git a/packages/sdk/src/Configuration/Policies/AllowedExternalPositionTypes.ts b/packages/sdk/src/Configuration/Policies/AllowedExternalPositionTypes.ts index 3ec6ba9c..bffd1d2f 100644 --- a/packages/sdk/src/Configuration/Policies/AllowedExternalPositionTypes.ts +++ b/packages/sdk/src/Configuration/Policies/AllowedExternalPositionTypes.ts @@ -11,7 +11,7 @@ export type Settings = { /** * The external position types that should be allowed. */ - externalPositionTypeIds: readonly bigint[]; + externalPositionTypeIds: ReadonlyArray; }; /** diff --git a/packages/sdk/src/Configuration/Policies/utils/AddressListRegistryPerUserPolicies.ts b/packages/sdk/src/Configuration/Policies/utils/AddressListRegistryPerUserPolicies.ts index 91848354..4c250f09 100644 --- a/packages/sdk/src/Configuration/Policies/utils/AddressListRegistryPerUserPolicies.ts +++ b/packages/sdk/src/Configuration/Policies/utils/AddressListRegistryPerUserPolicies.ts @@ -17,8 +17,8 @@ const settingsEncoding = [ ] as const; export interface AddressListRegistryPerUserPolicySettings { - users: readonly Address[]; - listsData: readonly AddressListRegistryPolicySettings[]; + users: ReadonlyArray
; + listsData: ReadonlyArray; } export function encodeAddressListRegistryPerUserPolicySettings({ diff --git a/packages/sdk/src/Configuration/Policies/utils/AddressListRegistryPolicies.ts b/packages/sdk/src/Configuration/Policies/utils/AddressListRegistryPolicies.ts index 25003f05..da469479 100644 --- a/packages/sdk/src/Configuration/Policies/utils/AddressListRegistryPolicies.ts +++ b/packages/sdk/src/Configuration/Policies/utils/AddressListRegistryPolicies.ts @@ -23,10 +23,10 @@ const newAddressListArgsEncoding = [ ] as const; export interface AddressListRegistryPolicySettings { - existingListIds: readonly bigint[]; + existingListIds: ReadonlyArray; newListsArgs: ReadonlyArray<{ updateType: bigint; - initialItems: readonly Address[]; + initialItems: ReadonlyArray
; }>; } diff --git a/packages/sdk/src/Configuration/Policies/utils/UintListRegistryPerUserPolicies.ts b/packages/sdk/src/Configuration/Policies/utils/UintListRegistryPerUserPolicies.ts index c663a59e..77a57efa 100644 --- a/packages/sdk/src/Configuration/Policies/utils/UintListRegistryPerUserPolicies.ts +++ b/packages/sdk/src/Configuration/Policies/utils/UintListRegistryPerUserPolicies.ts @@ -17,8 +17,8 @@ const settingsEncoding = [ ] as const; export interface UintListRegistryPerUserPolicySettings { - users: readonly Address[]; - listsData: readonly UintListRegistryPolicySettings[]; + users: ReadonlyArray
; + listsData: ReadonlyArray; } export function encodeUintListRegistryPerUserPolicySettings({ diff --git a/packages/sdk/src/Configuration/Policies/utils/UintListRegistryPolicies.ts b/packages/sdk/src/Configuration/Policies/utils/UintListRegistryPolicies.ts index 4b9f5cd1..5ea92206 100644 --- a/packages/sdk/src/Configuration/Policies/utils/UintListRegistryPolicies.ts +++ b/packages/sdk/src/Configuration/Policies/utils/UintListRegistryPolicies.ts @@ -23,10 +23,10 @@ const newUintListArgsEncoding = [ ] as const; export interface UintListRegistryPolicySettings { - existingListIds: readonly bigint[]; + existingListIds: ReadonlyArray; newListsArgs: ReadonlyArray<{ updateType: bigint; - initialItems: readonly bigint[]; + initialItems: ReadonlyArray; }>; } diff --git a/packages/sdk/src/Depositor.ts b/packages/sdk/src/Depositor.ts index c3738b28..3f38b969 100644 --- a/packages/sdk/src/Depositor.ts +++ b/packages/sdk/src/Depositor.ts @@ -83,8 +83,8 @@ export type RedeemSharesForSpecificAssetsParams = { comptrollerProxy: Address; recipient: Address; sharesQuantity: bigint; - payoutAssets: readonly Address[]; - payoutPercentages: readonly bigint[]; + payoutAssets: ReadonlyArray
; + payoutPercentages: ReadonlyArray; }; export async function getSpecificAssetsRedemptionExpectedAmounts( @@ -128,8 +128,8 @@ export function redeemSharesInKind( comptrollerProxy: Address; recipient: Address; sharesQuantity: bigint; - additionalAssets: readonly Address[]; - assetsToSkip: readonly Address[]; + additionalAssets: ReadonlyArray
; + assetsToSkip: ReadonlyArray
; }>, ) { return new Viem.PopulatedTransaction({ diff --git a/packages/sdk/src/Performance.ts b/packages/sdk/src/Performance.ts index e93acae6..93ba8c9f 100644 --- a/packages/sdk/src/Performance.ts +++ b/packages/sdk/src/Performance.ts @@ -153,8 +153,8 @@ export async function calcCanonicalAssetsTotalValue( client: PublicClient, args: Viem.ContractCallParameters<{ valueInterpreter: Address; - baseAssets: readonly Address[]; - amounts: readonly bigint[]; + baseAssets: ReadonlyArray
; + amounts: ReadonlyArray; quoteAsset: Address; }>, ) { diff --git a/packages/sdk/src/Portfolio/Integrations/AaveV2.ts b/packages/sdk/src/Portfolio/Integrations/AaveV2.ts index 76d1312f..3e7ecec8 100644 --- a/packages/sdk/src/Portfolio/Integrations/AaveV2.ts +++ b/packages/sdk/src/Portfolio/Integrations/AaveV2.ts @@ -108,8 +108,8 @@ const addCollateralEncoding = [ ] as const; export type AddCollateralArgs = { - aTokens: readonly Address[]; - amounts: readonly bigint[]; + aTokens: ReadonlyArray
; + amounts: ReadonlyArray; }; export function addCollateralEncode(args: AddCollateralArgs): Hex { @@ -143,8 +143,8 @@ const removeCollateralEncoding = [ ] as const; export type RemoveCollateralArgs = { - aTokens: readonly Address[]; - amounts: readonly bigint[]; + aTokens: ReadonlyArray
; + amounts: ReadonlyArray; }; export function removeCollateralEncode(args: RemoveCollateralArgs): Hex { @@ -179,8 +179,8 @@ const borrowEncoding = [ ] as const; export type BorrowArgs = { - underlyingTokens: readonly Address[]; - amounts: readonly bigint[]; + underlyingTokens: ReadonlyArray
; + amounts: ReadonlyArray; }; export function borrowEncode(args: BorrowArgs): Hex { @@ -214,8 +214,8 @@ const repayBorrowEncoding = [ ] as const; export type RepayBorrowArgs = { - underlyingTokens: readonly Address[]; - amounts: readonly bigint[]; + underlyingTokens: ReadonlyArray
; + amounts: ReadonlyArray; }; export function repayBorrowEncode(args: RepayBorrowArgs): Hex { @@ -245,7 +245,7 @@ const claimRewardsEncoding = [ ] as const; export type ClaimRewardsArgs = { - rewardTokens: readonly Address[]; + rewardTokens: ReadonlyArray
; }; export function claimRewardsEncode(args: ClaimRewardsArgs): Hex { @@ -288,7 +288,7 @@ export function getRewardsBalance( client: PublicClient, args: Viem.ContractCallParameters<{ aaveIncentivesController: Address; - assets: readonly Address[]; + assets: ReadonlyArray
; user: Address; }>, ) { diff --git a/packages/sdk/src/Portfolio/Integrations/AaveV3.ts b/packages/sdk/src/Portfolio/Integrations/AaveV3.ts index 2bdbfd3d..6d74a2a5 100644 --- a/packages/sdk/src/Portfolio/Integrations/AaveV3.ts +++ b/packages/sdk/src/Portfolio/Integrations/AaveV3.ts @@ -113,8 +113,8 @@ const addCollateralEncoding = [ ] as const; export type AddCollateralArgs = { - aTokens: readonly Address[]; - amounts: readonly bigint[]; + aTokens: ReadonlyArray
; + amounts: ReadonlyArray; fromUnderlying: boolean; }; @@ -154,8 +154,8 @@ const removeCollateralEncoding = [ ] as const; export type RemoveCollateralArgs = { - aTokens: readonly Address[]; - amounts: readonly bigint[]; + aTokens: ReadonlyArray
; + amounts: ReadonlyArray; toUnderlying: boolean; }; @@ -192,8 +192,8 @@ const borrowEncoding = [ ] as const; export type BorrowArgs = { - underlyingTokens: readonly Address[]; - amounts: readonly bigint[]; + underlyingTokens: ReadonlyArray
; + amounts: ReadonlyArray; }; export function borrowEncode(args: BorrowArgs): Hex { @@ -227,8 +227,8 @@ const repayBorrowEncoding = [ ] as const; export type RepayBorrowArgs = { - underlyingTokens: readonly Address[]; - amounts: readonly bigint[]; + underlyingTokens: ReadonlyArray
; + amounts: ReadonlyArray; }; export function repayBorrowEncode(args: RepayBorrowArgs): Hex { diff --git a/packages/sdk/src/Portfolio/Integrations/ArbitraryLoan.ts b/packages/sdk/src/Portfolio/Integrations/ArbitraryLoan.ts index 9de30fb1..0b55d766 100644 --- a/packages/sdk/src/Portfolio/Integrations/ArbitraryLoan.ts +++ b/packages/sdk/src/Portfolio/Integrations/ArbitraryLoan.ts @@ -143,7 +143,7 @@ const reconcileEncoding = [ ] as const; export type ReconcileArgs = { - extraAssetsToSweep: readonly Address[]; + extraAssetsToSweep: ReadonlyArray
; }; export function reconcileEncode(args: ReconcileArgs): Hex { @@ -172,7 +172,7 @@ const closeLoanEncoding = [ ] as const; export type CloseLoanArgs = { - extraAssetsToSweep: readonly Address[]; + extraAssetsToSweep: ReadonlyArray
; }; export function closeLoanEncode(args: CloseLoanArgs): Hex { diff --git a/packages/sdk/src/Portfolio/Integrations/BalancerV2.ts b/packages/sdk/src/Portfolio/Integrations/BalancerV2.ts index 874279e7..70d8d99f 100644 --- a/packages/sdk/src/Portfolio/Integrations/BalancerV2.ts +++ b/packages/sdk/src/Portfolio/Integrations/BalancerV2.ts @@ -60,11 +60,11 @@ const lendEncoding = [ export type LendArgs = { poolId: Hex; bptAmount: bigint; - usedTokens: readonly Address[]; - usedTokenAmounts: readonly bigint[]; + usedTokens: ReadonlyArray
; + usedTokenAmounts: ReadonlyArray; request: { - assets: readonly Address[]; - limits: readonly bigint[]; + assets: ReadonlyArray
; + limits: ReadonlyArray; userData: Hex; useInternalBalance: boolean; }; @@ -293,9 +293,9 @@ export type TakeOrderArgs = { amount: bigint; userData: Hex; }>; - assets: readonly Address[]; - limits: readonly bigint[]; - stakingTokens: readonly Address[]; + assets: ReadonlyArray
; + limits: ReadonlyArray; + stakingTokens: ReadonlyArray
; }; export function takeOrderEncode(args: TakeOrderArgs): Hex { @@ -536,8 +536,8 @@ export async function queryBatchSwap( args: Viem.ContractCallParameters<{ balancerQueries: Address; kind: (typeof SwapKind)[keyof typeof SwapKind]; - swaps: readonly BatchSwapStep[]; - assets: readonly Address[]; + swaps: ReadonlyArray; + assets: ReadonlyArray
; funds: BatchSwapFunds; }>, ) { @@ -576,8 +576,8 @@ export async function queryExit( sender: Address; recipient: Address; request: { - assets: readonly Address[]; - minAmountsOut: readonly bigint[]; + assets: ReadonlyArray
; + minAmountsOut: ReadonlyArray; userData: Hex; toInternalBalance: boolean; }; @@ -606,8 +606,8 @@ export async function queryJoin( sender: Address; recipient: Address; request: { - assets: readonly Address[]; - maxAmountsIn: readonly bigint[]; + assets: ReadonlyArray
; + maxAmountsIn: ReadonlyArray; userData: Hex; fromInternalBalance: boolean; }; @@ -653,7 +653,7 @@ export function weightedPoolsUserDataBptInForExactTokensOut({ amountsOut, maxBPTAmountIn, }: { - amountsOut: readonly bigint[]; + amountsOut: ReadonlyArray; maxBPTAmountIn: bigint; }) { return encodeAbiParameters(parseAbiParameters("uint8, uint256[], uint256"), [ @@ -690,7 +690,7 @@ export function weightedPoolsUserDataExactTokensInForBptOut({ amountsIn, bptOut, }: { - amountsIn: readonly bigint[]; + amountsIn: ReadonlyArray; bptOut: bigint; }) { return encodeAbiParameters(parseAbiParameters(["uint8, uint256[], uint256"]), [ @@ -760,7 +760,7 @@ export function stablePoolsUserDataExactTokensInForBptOut({ amountsIn, bptOut, }: { - amountsIn: readonly bigint[]; + amountsIn: ReadonlyArray; bptOut: bigint; }) { return encodeAbiParameters(parseAbiParameters(["uint8, uint256[], uint256"]), [ @@ -807,7 +807,7 @@ export function composableStablePoolsUserDataExactTokensInForBptOut({ amountsIn, bptOut, }: { - amountsIn: readonly bigint[]; + amountsIn: ReadonlyArray; bptOut: bigint; }) { return encodeAbiParameters(parseAbiParameters(["uint8, uint256[], uint256"]), [ diff --git a/packages/sdk/src/Portfolio/Integrations/CompoundV2.ts b/packages/sdk/src/Portfolio/Integrations/CompoundV2.ts index ea8a4d04..7bc3291a 100644 --- a/packages/sdk/src/Portfolio/Integrations/CompoundV2.ts +++ b/packages/sdk/src/Portfolio/Integrations/CompoundV2.ts @@ -124,8 +124,8 @@ export const createAndAddCollateral = ExternalPositionManager.makeCreateAndUse( ); export type AddCollateralArgs = { - cTokens: readonly Address[]; - amounts: readonly bigint[]; + cTokens: ReadonlyArray
; + amounts: ReadonlyArray; }; export function addCollateralEncode(args: AddCollateralArgs): Hex { @@ -170,9 +170,9 @@ export const borrow = ExternalPositionManager.makeUse(Action.Borrow, borrowEncod export const createAndBorrow = ExternalPositionManager.makeCreateAndUse(Action.Borrow, borrowEncode); export type BorrowArgs = { - cTokens: readonly Address[]; - amounts: readonly bigint[]; - underlyingTokens: readonly Address[]; + cTokens: ReadonlyArray
; + amounts: ReadonlyArray; + underlyingTokens: ReadonlyArray
; }; const dataEncoding = [{ name: "cTokens", type: "address[]" }] as const; diff --git a/packages/sdk/src/Portfolio/Integrations/CompoundV3.ts b/packages/sdk/src/Portfolio/Integrations/CompoundV3.ts index 209dd343..36d04b1c 100644 --- a/packages/sdk/src/Portfolio/Integrations/CompoundV3.ts +++ b/packages/sdk/src/Portfolio/Integrations/CompoundV3.ts @@ -84,7 +84,7 @@ const claimRewardsEncoding = [ ] as const; export type ClaimRewardsArgs = { - cTokens: readonly Address[]; + cTokens: ReadonlyArray
; }; export function claimRewardsEncode(args: ClaimRewardsArgs): Hex { diff --git a/packages/sdk/src/Portfolio/Integrations/Convex.ts b/packages/sdk/src/Portfolio/Integrations/Convex.ts index 05b1ef70..5eadb74c 100644 --- a/packages/sdk/src/Portfolio/Integrations/Convex.ts +++ b/packages/sdk/src/Portfolio/Integrations/Convex.ts @@ -196,14 +196,14 @@ const claimVotingRewardsEncoding = [ ] as const; export type ClaimVotingRewardsArgs = { - allTokensToTransfer: readonly Address[]; + allTokensToTransfer: ReadonlyArray
; claimLockerRewards: boolean; - extraRewardTokens: readonly Address[]; + extraRewardTokens: ReadonlyArray
; votiumClaims: ReadonlyArray<{ token: Address; index: bigint; amount: bigint; - merkleProof: readonly Hex[]; + merkleProof: ReadonlyArray; }>; unstakeCvxCrv: boolean; }; @@ -679,7 +679,7 @@ export async function getEstimateRewards( args: [args.beneficiary], }); - const tokenRewards: { rewardToken: Address; claimedAmount: bigint }[] = []; + const tokenRewards: Array<{ rewardToken: Address; claimedAmount: bigint }> = []; for (let i = 0; i < rewardTokens.length; i++) { const rewardToken = rewardTokens[i]; const claimedAmount = claimedAmounts[i]; @@ -695,7 +695,7 @@ export async function getEstimateRewards( export function getAllEstimateRewards( client: PublicClient, args: Viem.ContractCallParameters<{ - stakingWrappers: readonly Address[]; + stakingWrappers: ReadonlyArray
; beneficiary: Address; }>, ) { diff --git a/packages/sdk/src/Portfolio/Integrations/Curve.ts b/packages/sdk/src/Portfolio/Integrations/Curve.ts index f811f504..3875dfc4 100644 --- a/packages/sdk/src/Portfolio/Integrations/Curve.ts +++ b/packages/sdk/src/Portfolio/Integrations/Curve.ts @@ -104,7 +104,7 @@ const lendEncoding = [ export type LendArgs = { pool: Address; - orderedOutgoingAssetAmounts: readonly bigint[]; + orderedOutgoingAssetAmounts: ReadonlyArray; minIncomingLpTokenAmount: bigint; useUnderlyings: boolean; }; @@ -163,7 +163,7 @@ const lendAndStakeEncoding = [ export type LendAndStakeArgs = { pool: Address; - orderedOutgoingAssetAmounts: readonly bigint[]; + orderedOutgoingAssetAmounts: ReadonlyArray; incomingStakingToken: Address; minIncomingStakingTokenAmount: bigint; useUnderlyings: boolean; @@ -314,7 +314,7 @@ export function redeemDecode(encoded: Hex): RedeemArgs { export type StandardRedeemArgs = { redeemType: typeof RedeemType.Standard; - orderedMinIncomingAssetAmounts: readonly bigint[]; + orderedMinIncomingAssetAmounts: ReadonlyArray; }; export type OneCoinRedeemArgs = { @@ -326,7 +326,7 @@ export type OneCoinRedeemArgs = { const standardRedeemEncoding = parseAbiParameters("uint256[]"); const oneCoinRedeemEncoding = parseAbiParameters("uint256, uint256"); -export function standardRedeemEncode(orderedMinIncomingAssetAmounts: readonly bigint[]): Hex { +export function standardRedeemEncode(orderedMinIncomingAssetAmounts: ReadonlyArray): Hex { return encodeAbiParameters(standardRedeemEncoding, [orderedMinIncomingAssetAmounts]); } @@ -695,7 +695,7 @@ export async function getExpectedGaugeTokens( client: PublicClient, args: Viem.ContractCallParameters<{ curvePool: Address; - tokenAmounts: readonly bigint[]; + tokenAmounts: ReadonlyArray; isDeposit: boolean; }>, ) { @@ -750,7 +750,7 @@ export async function getExpectedWithdrawalTokens( args: Viem.ContractCallParameters<{ curvePool: Address; singleTokenIndex: bigint; - underlyingAssetsDecimals: readonly number[]; + underlyingAssetsDecimals: ReadonlyArray; lpToken: Address; lpTokenAmount: bigint; equalProportion: boolean; diff --git a/packages/sdk/src/Portfolio/Integrations/Kiln.ts b/packages/sdk/src/Portfolio/Integrations/Kiln.ts index 067a7992..1f19eab4 100644 --- a/packages/sdk/src/Portfolio/Integrations/Kiln.ts +++ b/packages/sdk/src/Portfolio/Integrations/Kiln.ts @@ -74,7 +74,7 @@ const claimFeesEncoding = [ export type ClaimFeesArgs = { stakingContract: Address; - publicKeys: readonly Hex[]; + publicKeys: ReadonlyArray; claimFeeType: ClaimType; }; diff --git a/packages/sdk/src/Portfolio/Integrations/Lido.ts b/packages/sdk/src/Portfolio/Integrations/Lido.ts index 0482049d..c0c6131b 100644 --- a/packages/sdk/src/Portfolio/Integrations/Lido.ts +++ b/packages/sdk/src/Portfolio/Integrations/Lido.ts @@ -29,7 +29,7 @@ const requestWithdrawalsEncoding = [ ] as const; export type RequestWithdrawalsArgs = { - amounts: readonly bigint[]; + amounts: ReadonlyArray; }; export function requestWithdrawalsEncode(args: RequestWithdrawalsArgs): Hex { @@ -60,8 +60,8 @@ const claimWithdrawalsEncoding = [ ] as const; export type ClaimWithdrawalsArgs = { - requestIds: readonly bigint[]; - hints: readonly bigint[]; + requestIds: ReadonlyArray; + hints: ReadonlyArray; }; export function claimWithdrawalsEncode(args: ClaimWithdrawalsArgs): Hex { @@ -139,7 +139,7 @@ export function findCheckpointHints( client: PublicClient, args: Viem.ContractCallParameters<{ lidoWithdrawalsQueue: Address; - requestIds: readonly bigint[]; + requestIds: ReadonlyArray; firstIndex: bigint; lastIndex: bigint; }>, @@ -157,7 +157,7 @@ export function getWithdrawalStatus( client: PublicClient, args: Viem.ContractCallParameters<{ lidoWithdrawalsQueue: Address; - requestIds: readonly bigint[]; + requestIds: ReadonlyArray; }>, ) { return readContract(client, { diff --git a/packages/sdk/src/Portfolio/Integrations/ParaSwapV5.ts b/packages/sdk/src/Portfolio/Integrations/ParaSwapV5.ts index 789c099c..86fbd685 100644 --- a/packages/sdk/src/Portfolio/Integrations/ParaSwapV5.ts +++ b/packages/sdk/src/Portfolio/Integrations/ParaSwapV5.ts @@ -164,28 +164,28 @@ export type Adapter = { adapter: Address; percent: bigint; networkFee: bigint; - route: readonly Route[]; + route: ReadonlyArray; }; export type Path = { to: Address; totalNetworkFee: bigint; - adapters: readonly Adapter[]; + adapters: ReadonlyArray; }; export type MegaSwapData = ReadonlyArray<{ fromAmountPercent: bigint; - path: readonly Path[]; + path: ReadonlyArray; }>; -export type MultiSwapData = readonly Path[]; +export type MultiSwapData = ReadonlyArray; export type SimpleSwapData = { incomingAsset: Address; - callees: readonly Address[]; + callees: ReadonlyArray
; exchangeData: Hex; - startIndexes: readonly bigint[]; - values: readonly bigint[]; + startIndexes: ReadonlyArray; + values: ReadonlyArray; }; export type SwapType = (typeof SwapType)[keyof typeof SwapType]; @@ -323,7 +323,7 @@ const takeMultipleOrdersEncoding = [ export type TakeMultipleOrdersArgs = { allowOrdersToFail: boolean; - orders: readonly TakeOrderArgs[]; + orders: ReadonlyArray; }; export function takeMultipleOrdersEncode(args: TakeMultipleOrdersArgs): Hex { diff --git a/packages/sdk/src/Portfolio/Integrations/PendleV2.ts b/packages/sdk/src/Portfolio/Integrations/PendleV2.ts index 7d5036a6..a0871126 100644 --- a/packages/sdk/src/Portfolio/Integrations/PendleV2.ts +++ b/packages/sdk/src/Portfolio/Integrations/PendleV2.ts @@ -312,7 +312,7 @@ const claimRewardsEncoding = [ ] as const; export type ClaimRewardsArgs = { - marketAddresses: readonly Address[]; + marketAddresses: ReadonlyArray
; }; export function claimRewardsEncode(args: ClaimRewardsArgs): Hex { diff --git a/packages/sdk/src/Portfolio/Integrations/UniswapV2.ts b/packages/sdk/src/Portfolio/Integrations/UniswapV2.ts index a24e8d0a..570d2daf 100644 --- a/packages/sdk/src/Portfolio/Integrations/UniswapV2.ts +++ b/packages/sdk/src/Portfolio/Integrations/UniswapV2.ts @@ -34,7 +34,7 @@ const takeOrderEncoding = [ ] as const; export type TakeOrderArgs = { - path: readonly Address[]; + path: ReadonlyArray
; outgoingAssetAmount: bigint; minIncomingAssetAmount: bigint; }; diff --git a/packages/sdk/src/Portfolio/Integrations/UniswapV3.ts b/packages/sdk/src/Portfolio/Integrations/UniswapV3.ts index e62d91ec..457fa67b 100644 --- a/packages/sdk/src/Portfolio/Integrations/UniswapV3.ts +++ b/packages/sdk/src/Portfolio/Integrations/UniswapV3.ts @@ -30,8 +30,8 @@ const takeOrderEncoding = [ ] as const; export type TakeOrderArgs = { - pathAddresses: readonly Address[]; - pathFees: readonly number[]; + pathAddresses: ReadonlyArray
; + pathFees: ReadonlyArray; outgoingAssetAmount: bigint; minIncomingAssetAmount: bigint; }; diff --git a/packages/sdk/src/Tools/GatedRedemptionQueueSharesWrapper.ts b/packages/sdk/src/Tools/GatedRedemptionQueueSharesWrapper.ts index 8893b669..425db0ad 100644 --- a/packages/sdk/src/Tools/GatedRedemptionQueueSharesWrapper.ts +++ b/packages/sdk/src/Tools/GatedRedemptionQueueSharesWrapper.ts @@ -23,7 +23,7 @@ export type RedemptionWindowConfig = { export function deploy(args: { sharesWrapperFactory: Address; vaultProxy: Address; - managers: readonly Address[]; + managers: ReadonlyArray
; redemptionAsset: Address; useDepositApproval: boolean; useRedemptionApproval: boolean; @@ -111,9 +111,9 @@ export function forceTransfer(args: { export function setDepositApprovals(args: { sharesWrapper: Address; - depositors: readonly Address[]; - assets: readonly Address[]; - amounts: readonly bigint[]; + depositors: ReadonlyArray
; + assets: ReadonlyArray
; + amounts: ReadonlyArray; }) { return new Viem.PopulatedTransaction({ abi: Abis.IGatedRedemptionQueueSharesWrapperLib, @@ -125,8 +125,8 @@ export function setDepositApprovals(args: { export function setRedemptionApprovals(args: { sharesWrapper: Address; - depositors: readonly Address[]; - amounts: readonly bigint[]; + depositors: ReadonlyArray
; + amounts: ReadonlyArray; }) { return new Viem.PopulatedTransaction({ abi: Abis.IGatedRedemptionQueueSharesWrapperLib, @@ -138,9 +138,9 @@ export function setRedemptionApprovals(args: { export function setTransferApprovals(args: { sharesWrapper: Address; - senders: readonly Address[]; - recipients: readonly Address[]; - amounts: readonly bigint[]; + senders: ReadonlyArray
; + recipients: ReadonlyArray
; + amounts: ReadonlyArray; }) { return new Viem.PopulatedTransaction({ abi: Abis.IGatedRedemptionQueueSharesWrapperLib, @@ -153,7 +153,7 @@ export function setTransferApprovals(args: { export function depositFromQueue(args: { sharesWrapper: Address; asset: Address; - depositors: readonly Address[]; + depositors: ReadonlyArray
; }) { return new Viem.PopulatedTransaction({ abi: Abis.IGatedRedemptionQueueSharesWrapperLib, @@ -177,7 +177,7 @@ export function depositAllFromQueue(args: { export function addManagers(args: { sharesWrapper: Address; - managers: readonly Address[]; + managers: ReadonlyArray
; }) { return new Viem.PopulatedTransaction({ abi: Abis.IGatedRedemptionQueueSharesWrapperLib, @@ -189,7 +189,7 @@ export function addManagers(args: { export function removeManagers(args: { sharesWrapper: Address; - managers: readonly Address[]; + managers: ReadonlyArray
; }) { return new Viem.PopulatedTransaction({ abi: Abis.IGatedRedemptionQueueSharesWrapperLib, diff --git a/packages/sdk/src/Tools/SharesSplitter.ts b/packages/sdk/src/Tools/SharesSplitter.ts index 5925694c..9abf62b8 100644 --- a/packages/sdk/src/Tools/SharesSplitter.ts +++ b/packages/sdk/src/Tools/SharesSplitter.ts @@ -9,8 +9,8 @@ import { Viem } from "../Utils.js"; export function deploy(args: { sharesSplitterFactory: Address; - addresses: readonly Address[]; - percentages: readonly bigint[]; + addresses: ReadonlyArray
; + percentages: ReadonlyArray; }) { return new Viem.PopulatedTransaction({ abi: Abis.ISharesSplitterFactory, diff --git a/packages/sdk/src/Tools/SingleAssetRedemptionQueue.ts b/packages/sdk/src/Tools/SingleAssetRedemptionQueue.ts index 29392c53..f62abb9e 100644 --- a/packages/sdk/src/Tools/SingleAssetRedemptionQueue.ts +++ b/packages/sdk/src/Tools/SingleAssetRedemptionQueue.ts @@ -12,7 +12,7 @@ export function deployProxy(args: { vaultProxy: Address; redemptionAsset: Address; bypassableSharesThreshold: bigint; - managers: readonly Address[]; + managers: ReadonlyArray
; }) { return new Viem.PopulatedTransaction({ abi: Abis.ISingleAssetRedemptionQueueFactory, @@ -57,7 +57,7 @@ export function withdrawRequest(args: { export function redeemFromQueue(args: { redemptionQueue: Address; endId: bigint; - idsToBypass: readonly bigint[]; + idsToBypass: ReadonlyArray; }) { return new Viem.PopulatedTransaction({ abi: Abis.ISingleAssetRedemptionQueueLib, @@ -73,7 +73,7 @@ export function redeemFromQueue(args: { export function addManagers(args: { redemptionQueue: Address; - managers: readonly Address[]; + managers: ReadonlyArray
; }) { return new Viem.PopulatedTransaction({ abi: Abis.ISingleAssetRedemptionQueueLib, @@ -85,7 +85,7 @@ export function addManagers(args: { export function removeManagers(args: { redemptionQueue: Address; - managers: readonly Address[]; + managers: ReadonlyArray
; }) { return new Viem.PopulatedTransaction({ abi: Abis.ISingleAssetRedemptionQueueLib, diff --git a/packages/sdk/src/Tools/UnpermissionedActionsWrapper.ts b/packages/sdk/src/Tools/UnpermissionedActionsWrapper.ts index b07ecdc9..f72dfed7 100644 --- a/packages/sdk/src/Tools/UnpermissionedActionsWrapper.ts +++ b/packages/sdk/src/Tools/UnpermissionedActionsWrapper.ts @@ -5,7 +5,7 @@ import { Viem } from "../Utils.js"; export function invokeContinuousFeeHookAndPayoutSharesOutstandingForFund(args: { unpermissionedActionsWrapper: Address; comptrollerProxy: Address; - fees: readonly Address[]; + fees: ReadonlyArray
; }) { return new Viem.PopulatedTransaction({ abi: Abis.IUnpermissionedActionsWrapper, diff --git a/packages/sdk/src/Utils/bigint.ts b/packages/sdk/src/Utils/bigint.ts index 3893e737..3fdfe8f3 100644 --- a/packages/sdk/src/Utils/bigint.ts +++ b/packages/sdk/src/Utils/bigint.ts @@ -1,4 +1,4 @@ -export function min(first: bigint, ...rest: bigint[]) { +export function min(first: bigint, ...rest: Array) { let min = first; for (const value of rest) { if (value < min) { @@ -9,7 +9,7 @@ export function min(first: bigint, ...rest: bigint[]) { return min; } -export function max(first: bigint, ...rest: bigint[]) { +export function max(first: bigint, ...rest: Array) { let max = first; for (const value of rest) { if (value > max) { diff --git a/packages/sdk/src/Utils/types.ts b/packages/sdk/src/Utils/types.ts index 052ca1d6..0ad0f5e8 100644 --- a/packages/sdk/src/Utils/types.ts +++ b/packages/sdk/src/Utils/types.ts @@ -8,8 +8,10 @@ export type Prettify = { [K in keyof T]: T[K]; } & {}; -export type TupleOf = R["length"] extends N ? R : TupleOf; +export type TupleOf> = R["length"] extends N + ? R + : TupleOf; -export type Tuple = N extends N ? (number extends N ? T[] : TupleOf) : never; +export type Tuple = N extends N ? (number extends N ? Array : TupleOf) : never; export type DeepWriteable = { -readonly [P in keyof T]: DeepWriteable }; diff --git a/packages/sdk/src/Vault.ts b/packages/sdk/src/Vault.ts index 6dadd622..6fc69db6 100644 --- a/packages/sdk/src/Vault.ts +++ b/packages/sdk/src/Vault.ts @@ -230,7 +230,7 @@ export function sharesAreFreelyTransferable( export function addAssetManagers( args: Viem.ContractCallParameters<{ vaultProxy: Address; - managers: readonly Address[]; + managers: ReadonlyArray
; }>, ) { return new Viem.PopulatedTransaction({ @@ -244,7 +244,7 @@ export function addAssetManagers( export function removeAssetManagers( args: Viem.ContractCallParameters<{ vaultProxy: Address; - managers: readonly Address[]; + managers: ReadonlyArray
; }>, ) { return new Viem.PopulatedTransaction({ diff --git a/packages/sdk/src/_internal/FeeManager.ts b/packages/sdk/src/_internal/FeeManager.ts index faacac00..daa13891 100644 --- a/packages/sdk/src/_internal/FeeManager.ts +++ b/packages/sdk/src/_internal/FeeManager.ts @@ -38,7 +38,7 @@ const payoutOutstandingFeesEncoding = [ ] as const; export type PayoutOutstandingFeesArgs = { - removeAssets: readonly Address[]; + removeAssets: ReadonlyArray
; }; export function encodePayoutOutstandingFees(args: PayoutOutstandingFeesArgs): Hex { @@ -56,7 +56,7 @@ export function decodePayoutOutstandingFees(encoded: Hex): PayoutOutstandingFees export type PayoutOutstandingFeesParams = { comptrollerProxy: Address; feeManager: Address; - feeContracts: readonly Address[]; + feeContracts: ReadonlyArray
; }; export function payoutOutstandingFees(args: PayoutOutstandingFeesParams) { @@ -104,7 +104,7 @@ export type SettingsArgs = { * * @returns The encoded fee settings. */ -export function encodeSettings(fees: readonly SettingsArgs[]): Hex { +export function encodeSettings(fees: ReadonlyArray): Hex { const addresses = fees.map(({ address }) => address); const settings = fees.map(({ settings }) => settings); @@ -116,7 +116,7 @@ export function encodeSettings(fees: readonly SettingsArgs[]): Hex { * * @returns The decoded fee settings. */ -export function decodeSettings(encoded: Hex): readonly SettingsArgs[] { +export function decodeSettings(encoded: Hex): ReadonlyArray { const [addresses, settings] = decodeAbiParameters(settingsEncoding, encoded); Assertion.invariant( addresses.length === settings.length, diff --git a/packages/sdk/src/_internal/IntegrationManager.ts b/packages/sdk/src/_internal/IntegrationManager.ts index 55ded433..336590be 100644 --- a/packages/sdk/src/_internal/IntegrationManager.ts +++ b/packages/sdk/src/_internal/IntegrationManager.ts @@ -139,7 +139,7 @@ const addTrackedAssetsEncoding = [ ] as const; export type AddTracketAssetsArgs = { - addAssets: readonly Address[]; + addAssets: ReadonlyArray
; }; export function addTrackedAssetsEncode(args: AddTracketAssetsArgs): Hex { @@ -166,7 +166,7 @@ export type AddTracketAssetsParams = { /** * The adapter call parameters (e.g. trade parameters). */ - addAssets: readonly Address[]; + addAssets: ReadonlyArray
; }; export function addTrackedAssets(args: AddTracketAssetsParams) { @@ -192,7 +192,7 @@ const removeTracketAssetsEncoding = [ ] as const; export type RemoveTrackedAssetsArgs = { - removeAssets: readonly Address[]; + removeAssets: ReadonlyArray
; }; export function removeTrackedAssetsEncode(args: RemoveTrackedAssetsArgs): Hex { @@ -219,7 +219,7 @@ export type RemoveTrackedAssetsParams = { /** * The adapter call parameters (e.g. trade parameters). */ - removeAssets: readonly Address[]; + removeAssets: ReadonlyArray
; }; export function removeTracketAssets(args: RemoveTrackedAssetsParams) {