Properties
assets
assets: DecodeStruct<{
fields: [{
name: "collateral";
type: "u64";
}, {
name: "owned";
type: "u64";
}, {
name: "locked";
type: "u64";
}];
kind: "struct";
}, DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: ...;
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], EmptyDefined>>>>
Type declaration
fields: [{
name: "collateral";
type: "u64";
}, {
name: "owned";
type: "u64";
}, {
name: "locked";
type: "u64";
}]
kind: "struct"
borrowRate
borrowRate: DecodeStruct<{
fields: [{
name: "baseRate";
type: "u64";
}, {
name: "slope1";
type: "u64";
}, {
name: "slope2";
type: "u64";
}, {
name: "optimalUtilization";
type: "u64";
}];
kind: "struct";
}, DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: ...;
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], EmptyDefined>>>>
Type declaration
fields: [{
name: "baseRate";
type: "u64";
}, {
name: "slope1";
type: "u64";
}, {
name: "slope2";
type: "u64";
}, {
name: "optimalUtilization";
type: "u64";
}]
kind: "struct"
borrowRateState
borrowRateState: DecodeStruct<{
fields: [{
name: "currentRate";
type: "u64";
}, {
name: "cumulativeLockFee";
type: "u128";
}, {
name: "lastUpdate";
type: "i64";
}];
kind: "struct";
}, DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: ...;
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], EmptyDefined>>>>
Type declaration
fields: [{
name: "currentRate";
type: "u64";
}, {
name: "cumulativeLockFee";
type: "u128";
}, {
name: "lastUpdate";
type: "i64";
}]
kind: "struct"
depegAdjustment
depegAdjustment: boolean
distributeRewards
distributeRewards: boolean
fees
fees: DecodeStruct<{
fields: [{
name: "mode";
type: {
defined: "FeesMode";
};
}, {
name: "swapIn";
type: {
defined: "RatioFees";
};
}, {
name: "swapOut";
type: {
defined: "RatioFees";
};
}, {
name: "stableSwapIn";
type: {
defined: "RatioFees";
};
}, {
name: "stableSwapOut";
type: {
defined: "RatioFees";
};
}, {
name: "addLiquidity";
type: {
defined: "RatioFees";
};
}];
kind: "struct";
}, DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: ...;
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], EmptyDefined>>>>
Type declaration
fields: [{
name: "mode";
type: {
defined: "FeesMode";
};
}, {
name: "swapIn";
type: {
defined: "RatioFees";
};
}, {
name: "swapOut";
type: {
defined: "RatioFees";
};
}, {
name: "stableSwapIn";
type: {
defined: "RatioFees";
};
}, {
name: "stableSwapOut";
type: {
defined: "RatioFees";
};
}, {
name: "addLiquidity";
type: {
defined: "RatioFees";
};
}]
kind: "struct"
feesStats
feesStats: DecodeStruct<{
fields: [{
name: "accrued";
type: "u128";
}, {
name: "distributed";
type: "u128";
}, {
name: "paid";
type: "u128";
}, {
name: "rewardPerLpStaked";
type: "u64";
}, {
name: "protocolFee";
type: "u64";
}];
kind: "struct";
}, DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: ...;
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], EmptyDefined>>>>
Type declaration
fields: [{
name: "accrued";
type: "u128";
}, {
name: "distributed";
type: "u128";
}, {
name: "paid";
type: "u128";
}, {
name: "rewardPerLpStaked";
type: "u64";
}, {
name: "protocolFee";
type: "u64";
}]
kind: "struct"
isStable
isStable: boolean
isVirtual
isVirtual: boolean
limitPriceBufferBps
limitPriceBufferBps: BN
minReserveUsd
minReserveUsd: BN
oracle
oracle: DecodeStruct<{
fields: [{
name: "intOracleAccount";
type: "publicKey";
}, {
name: "extOracleAccount";
type: "publicKey";
}, {
name: "oracleType";
type: {
defined: "OracleType";
};
}, {
name: "maxDivergenceBps";
type: "u64";
}, {
name: "maxConfBps";
type: "u64";
}, {
name: "maxPriceAgeSec";
type: "u32";
}, {
name: "maxBackupAgeSec";
type: "u32";
}];
kind: "struct";
}, DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: ...;
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], EmptyDefined>>>>
Type declaration
fields: [{
name: "intOracleAccount";
type: "publicKey";
}, {
name: "extOracleAccount";
type: "publicKey";
}, {
name: "oracleType";
type: {
defined: "OracleType";
};
}, {
name: "maxDivergenceBps";
type: "u64";
}, {
name: "maxConfBps";
type: "u64";
}, {
name: "maxPriceAgeSec";
type: "u32";
}, {
name: "maxBackupAgeSec";
type: "u32";
}]
kind: "struct"
permissions
permissions: DecodeStruct<{
fields: [{
name: "allowSwap";
type: "bool";
}, {
name: "allowAddLiquidity";
type: "bool";
}, {
name: "allowRemoveLiquidity";
type: "bool";
}, {
name: "allowOpenPosition";
type: "bool";
}, {
name: "allowClosePosition";
type: "bool";
}, {
name: "allowCollateralWithdrawal";
type: "bool";
}, {
name: "allowSizeChange";
type: "bool";
}];
kind: "struct";
}, DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: ...;
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], EmptyDefined>>>>
Type declaration
fields: [{
name: "allowSwap";
type: "bool";
}, {
name: "allowAddLiquidity";
type: "bool";
}, {
name: "allowRemoveLiquidity";
type: "bool";
}, {
name: "allowOpenPosition";
type: "bool";
}, {
name: "allowClosePosition";
type: "bool";
}, {
name: "allowCollateralWithdrawal";
type: "bool";
}, {
name: "allowSizeChange";
type: "bool";
}]
kind: "struct"
pricing
pricing: DecodeStruct<{
fields: [{
name: "tradeSpreadMin";
type: "u64";
}, {
name: "tradeSpreadMax";
type: "u64";
}, {
name: "swapSpread";
type: "u64";
}, {
name: "minInitialLeverage";
type: "u64";
}, {
name: "maxInitialLeverage";
type: "u64";
}, {
name: "maxLeverage";
type: "u64";
}, {
name: "minCollateralUsd";
type: "u64";
}];
kind: "struct";
}, DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: "TokenRatios";
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], DecodedHelper<[{
name: "AddCollateralParams";
type: {
fields: [{
name: "collateralDelta";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCollectionParams";
type: {
fields: [];
kind: "struct";
};
}, {
name: "AddCompoundingLiquidityParams";
type: {
fields: [{
name: "amountIn";
type: "u64";
}, {
name: "minCompoundingAmountOut";
type: "u64";
}];
kind: "struct";
};
}, {
name: "AddCustodyParams";
type: {
fields: [{
name: "isStable";
type: "bool";
}, {
name: "depegAdjustment";
type: "bool";
}, {
name: "isVirtual";
type: "bool";
}, {
name: "oracle";
type: {
defined: "OracleParams";
};
}, {
name: "pricing";
type: {
defined: "PricingParams";
};
}, {
name: "permissions";
type: {
defined: "Permissions";
};
}, {
name: "fees";
type: {
defined: "Fees";
};
}, {
name: "borrowRate";
type: {
defined: "BorrowRateParams";
};
}, {
name: "ratios";
type: {
vec: {
defined: ...;
};
};
}];
kind: "struct";
};
}, {
name: "AddInternalOracleParams";
type: {
fields: [];
kind: "struct";
};
}], EmptyDefined>>>>
Type declaration
fields: [{
name: "tradeSpreadMin";
type: "u64";
}, {
name: "tradeSpreadMax";
type: "u64";
}, {
name: "swapSpread";
type: "u64";
}, {
name: "minInitialLeverage";
type: "u64";
}, {
name: "maxInitialLeverage";
type: "u64";
}, {
name: "maxLeverage";
type: "u64";
}, {
name: "minCollateralUsd";
type: "u64";
}]
kind: "struct"
publicKey
publicKey: PublicKey
reservedAmount
reservedAmount: BN
rewardThreshold
rewardThreshold: BN
sizeFactorForSpread
sizeFactorForSpread: number
tokenAccount
tokenAccount: PublicKey
tokenAccountBump
tokenAccountBump: number