import { Coin, CoinAmino, CoinSDKType } from "../../cosmos/base/v1beta1/coin"; import { BinaryReader, BinaryWriter } from "../../binary"; import { JsonSafe } from "../../json-safe"; export interface PoolAsset { liabilities: string; custody: string; takeProfitLiabilities: string; takeProfitCustody: string; assetDenom: string; collateral: string; } export interface PoolAssetProtoMsg { typeUrl: "/elys.perpetual.PoolAsset"; value: Uint8Array; } /** * @name PoolAssetAmino * @package elys.perpetual * @see proto type: elys.perpetual.PoolAsset */ export interface PoolAssetAmino { liabilities?: string; custody?: string; take_profit_liabilities?: string; take_profit_custody?: string; asset_denom?: string; collateral?: string; } export interface PoolAssetAminoMsg { type: "/elys.perpetual.PoolAsset"; value: PoolAssetAmino; } export interface PoolAssetSDKType { liabilities: string; custody: string; take_profit_liabilities: string; take_profit_custody: string; asset_denom: string; collateral: string; } export interface LegacyPool { ammPoolId: bigint; health: string; borrowInterestRate: string; poolAssetsLong: PoolAsset[]; poolAssetsShort: PoolAsset[]; lastHeightBorrowInterestRateComputed: bigint; /** funding rate, if positive longs pay shorts, if negative shorts pay longs */ fundingRate: string; feesCollected: Coin[]; } export interface LegacyPoolProtoMsg { typeUrl: "/elys.perpetual.LegacyPool"; value: Uint8Array; } /** * @name LegacyPoolAmino * @package elys.perpetual * @see proto type: elys.perpetual.LegacyPool */ export interface LegacyPoolAmino { amm_pool_id?: string; health?: string; borrow_interest_rate?: string; pool_assets_long?: PoolAssetAmino[]; pool_assets_short?: PoolAssetAmino[]; last_height_borrow_interest_rate_computed?: string; /** * funding rate, if positive longs pay shorts, if negative shorts pay longs */ funding_rate?: string; fees_collected?: CoinAmino[]; } export interface LegacyPoolAminoMsg { type: "/elys.perpetual.LegacyPool"; value: LegacyPoolAmino; } export interface LegacyPoolSDKType { amm_pool_id: bigint; health: string; borrow_interest_rate: string; pool_assets_long: PoolAssetSDKType[]; pool_assets_short: PoolAssetSDKType[]; last_height_borrow_interest_rate_computed: bigint; funding_rate: string; fees_collected: CoinSDKType[]; } export interface Pool { ammPoolId: bigint; health: string; borrowInterestRate: string; poolAssetsLong: PoolAsset[]; poolAssetsShort: PoolAsset[]; lastHeightBorrowInterestRateComputed: bigint; /** funding rate, if positive longs pay shorts, if negative shorts pay longs */ fundingRate: string; feesCollected: Coin[]; leverageMax: string; } export interface PoolProtoMsg { typeUrl: "/elys.perpetual.Pool"; value: Uint8Array; } /** * @name PoolAmino * @package elys.perpetual * @see proto type: elys.perpetual.Pool */ export interface PoolAmino { amm_pool_id?: string; health?: string; borrow_interest_rate?: string; pool_assets_long?: PoolAssetAmino[]; pool_assets_short?: PoolAssetAmino[]; last_height_borrow_interest_rate_computed?: string; /** * funding rate, if positive longs pay shorts, if negative shorts pay longs */ funding_rate?: string; fees_collected?: CoinAmino[]; leverage_max?: string; } export interface PoolAminoMsg { type: "/elys.perpetual.Pool"; value: PoolAmino; } export interface PoolSDKType { amm_pool_id: bigint; health: string; borrow_interest_rate: string; pool_assets_long: PoolAssetSDKType[]; pool_assets_short: PoolAssetSDKType[]; last_height_borrow_interest_rate_computed: bigint; funding_rate: string; fees_collected: CoinSDKType[]; leverage_max: string; } export declare const PoolAsset: { typeUrl: string; is(o: any): o is PoolAsset; isSDK(o: any): o is PoolAssetSDKType; isAmino(o: any): o is PoolAssetAmino; encode(message: PoolAsset, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): PoolAsset; fromJSON(object: any): PoolAsset; toJSON(message: PoolAsset): JsonSafe; fromPartial(object: Partial): PoolAsset; fromAmino(object: PoolAssetAmino): PoolAsset; toAmino(message: PoolAsset): PoolAssetAmino; fromAminoMsg(object: PoolAssetAminoMsg): PoolAsset; fromProtoMsg(message: PoolAssetProtoMsg): PoolAsset; toProto(message: PoolAsset): Uint8Array; toProtoMsg(message: PoolAsset): PoolAssetProtoMsg; }; export declare const LegacyPool: { typeUrl: string; is(o: any): o is LegacyPool; isSDK(o: any): o is LegacyPoolSDKType; isAmino(o: any): o is LegacyPoolAmino; encode(message: LegacyPool, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): LegacyPool; fromJSON(object: any): LegacyPool; toJSON(message: LegacyPool): JsonSafe; fromPartial(object: Partial): LegacyPool; fromAmino(object: LegacyPoolAmino): LegacyPool; toAmino(message: LegacyPool): LegacyPoolAmino; fromAminoMsg(object: LegacyPoolAminoMsg): LegacyPool; fromProtoMsg(message: LegacyPoolProtoMsg): LegacyPool; toProto(message: LegacyPool): Uint8Array; toProtoMsg(message: LegacyPool): LegacyPoolProtoMsg; }; export declare const Pool: { typeUrl: string; is(o: any): o is Pool; isSDK(o: any): o is PoolSDKType; isAmino(o: any): o is PoolAmino; encode(message: Pool, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): Pool; fromJSON(object: any): Pool; toJSON(message: Pool): JsonSafe; fromPartial(object: Partial): Pool; fromAmino(object: PoolAmino): Pool; toAmino(message: Pool): PoolAmino; fromAminoMsg(object: PoolAminoMsg): Pool; fromProtoMsg(message: PoolProtoMsg): Pool; toProto(message: Pool): Uint8Array; toProtoMsg(message: Pool): PoolProtoMsg; };