import { SpotOrderType, LegacyOrderPriceV1, LegacyOrderPriceV1Amino, LegacyOrderPriceV1SDKType, PerpetualPosition, LegacyTriggerPriceV1, LegacyTriggerPriceV1Amino, LegacyTriggerPriceV1SDKType } from "./order"; import { Coin, CoinAmino, CoinSDKType } from "../../cosmos/base/v1beta1/coin"; import { BinaryReader, BinaryWriter } from "../../binary"; import { JsonSafe } from "../../json-safe"; export declare enum Status { PENDING = 0, EXECUTED = 1, CANCELED = 2, ALL = 3, UNRECOGNIZED = -1 } export declare const StatusSDKType: typeof Status; export declare const StatusAmino: typeof Status; export declare function statusFromJSON(object: any): Status; export declare function statusToJSON(object: Status): string; /** Perpetual Order */ export declare enum PerpetualOrderType { LIMITOPEN = 0, LIMITCLOSE = 1, STOPLOSSPERP = 2, UNRECOGNIZED = -1 } export declare const PerpetualOrderTypeSDKType: typeof PerpetualOrderType; export declare const PerpetualOrderTypeAmino: typeof PerpetualOrderType; export declare function perpetualOrderTypeFromJSON(object: any): PerpetualOrderType; export declare function perpetualOrderTypeToJSON(object: PerpetualOrderType): string; export interface Date { height: bigint; timestamp: bigint; } export interface DateProtoMsg { typeUrl: "/elys.tradeshield.Date"; value: Uint8Array; } /** * @name DateAmino * @package elys.tradeshield * @see proto type: elys.tradeshield.Date */ export interface DateAmino { height?: string; timestamp?: string; } export interface DateAminoMsg { type: "/elys.tradeshield.Date"; value: DateAmino; } export interface DateSDKType { height: bigint; timestamp: bigint; } export interface SpotOrder { orderType: SpotOrderType; orderId: bigint; legacyOrderPriceV1: LegacyOrderPriceV1; orderPrice: string; orderAmount: Coin; ownerAddress: string; orderTargetDenom: string; status: Status; date?: Date; } export interface SpotOrderProtoMsg { typeUrl: "/elys.tradeshield.SpotOrder"; value: Uint8Array; } /** * @name SpotOrderAmino * @package elys.tradeshield * @see proto type: elys.tradeshield.SpotOrder */ export interface SpotOrderAmino { order_type?: SpotOrderType; order_id?: string; legacy_order_price_v1?: LegacyOrderPriceV1Amino; order_price?: string; order_amount?: CoinAmino; owner_address?: string; order_target_denom?: string; status?: Status; date?: DateAmino; } export interface SpotOrderAminoMsg { type: "/elys.tradeshield.SpotOrder"; value: SpotOrderAmino; } export interface SpotOrderSDKType { order_type: SpotOrderType; order_id: bigint; legacy_order_price_v1: LegacyOrderPriceV1SDKType; order_price: string; order_amount: CoinSDKType; owner_address: string; order_target_denom: string; status: Status; date?: DateSDKType; } export interface PerpetualOrder { orderId: bigint; ownerAddress: string; perpetualOrderType: PerpetualOrderType; position: PerpetualPosition; legacyTriggerPriceV1: LegacyTriggerPriceV1; triggerPrice: string; collateral: Coin; tradingAsset: string; leverage: string; takeProfitPrice: string; positionId: bigint; status: Status; stopLossPrice: string; poolId: bigint; } export interface PerpetualOrderProtoMsg { typeUrl: "/elys.tradeshield.PerpetualOrder"; value: Uint8Array; } /** * @name PerpetualOrderAmino * @package elys.tradeshield * @see proto type: elys.tradeshield.PerpetualOrder */ export interface PerpetualOrderAmino { order_id?: string; owner_address?: string; perpetual_order_type?: PerpetualOrderType; position?: PerpetualPosition; legacy_trigger_price_v1?: LegacyTriggerPriceV1Amino; trigger_price?: string; collateral?: CoinAmino; trading_asset?: string; leverage?: string; take_profit_price?: string; position_id?: string; status?: Status; stop_loss_price?: string; poolId?: string; } export interface PerpetualOrderAminoMsg { type: "/elys.tradeshield.PerpetualOrder"; value: PerpetualOrderAmino; } export interface PerpetualOrderSDKType { order_id: bigint; owner_address: string; perpetual_order_type: PerpetualOrderType; position: PerpetualPosition; legacy_trigger_price_v1: LegacyTriggerPriceV1SDKType; trigger_price: string; collateral: CoinSDKType; trading_asset: string; leverage: string; take_profit_price: string; position_id: bigint; status: Status; stop_loss_price: string; poolId: bigint; } export interface PerpetualOrderExtraInfo { perpetualOrder?: PerpetualOrder; positionSize: Coin; liquidationPrice: string; fundingRate: string; borrowInterestRate: string; } export interface PerpetualOrderExtraInfoProtoMsg { typeUrl: "/elys.tradeshield.PerpetualOrderExtraInfo"; value: Uint8Array; } /** * @name PerpetualOrderExtraInfoAmino * @package elys.tradeshield * @see proto type: elys.tradeshield.PerpetualOrderExtraInfo */ export interface PerpetualOrderExtraInfoAmino { perpetual_order?: PerpetualOrderAmino; position_size?: CoinAmino; liquidation_price?: string; funding_rate?: string; borrow_interest_rate?: string; } export interface PerpetualOrderExtraInfoAminoMsg { type: "/elys.tradeshield.PerpetualOrderExtraInfo"; value: PerpetualOrderExtraInfoAmino; } export interface PerpetualOrderExtraInfoSDKType { perpetual_order?: PerpetualOrderSDKType; position_size: CoinSDKType; liquidation_price: string; funding_rate: string; borrow_interest_rate: string; } export declare const Date: { typeUrl: string; is(o: any): o is Date; isSDK(o: any): o is DateSDKType; isAmino(o: any): o is DateAmino; encode(message: Date, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): Date; fromJSON(object: any): Date; toJSON(message: Date): JsonSafe; fromPartial(object: Partial): Date; fromAmino(object: DateAmino): Date; toAmino(message: Date): DateAmino; fromAminoMsg(object: DateAminoMsg): Date; fromProtoMsg(message: DateProtoMsg): Date; toProto(message: Date): Uint8Array; toProtoMsg(message: Date): DateProtoMsg; }; export declare const SpotOrder: { typeUrl: string; is(o: any): o is SpotOrder; isSDK(o: any): o is SpotOrderSDKType; isAmino(o: any): o is SpotOrderAmino; encode(message: SpotOrder, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): SpotOrder; fromJSON(object: any): SpotOrder; toJSON(message: SpotOrder): JsonSafe; fromPartial(object: Partial): SpotOrder; fromAmino(object: SpotOrderAmino): SpotOrder; toAmino(message: SpotOrder): SpotOrderAmino; fromAminoMsg(object: SpotOrderAminoMsg): SpotOrder; fromProtoMsg(message: SpotOrderProtoMsg): SpotOrder; toProto(message: SpotOrder): Uint8Array; toProtoMsg(message: SpotOrder): SpotOrderProtoMsg; }; export declare const PerpetualOrder: { typeUrl: string; is(o: any): o is PerpetualOrder; isSDK(o: any): o is PerpetualOrderSDKType; isAmino(o: any): o is PerpetualOrderAmino; encode(message: PerpetualOrder, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): PerpetualOrder; fromJSON(object: any): PerpetualOrder; toJSON(message: PerpetualOrder): JsonSafe; fromPartial(object: Partial): PerpetualOrder; fromAmino(object: PerpetualOrderAmino): PerpetualOrder; toAmino(message: PerpetualOrder): PerpetualOrderAmino; fromAminoMsg(object: PerpetualOrderAminoMsg): PerpetualOrder; fromProtoMsg(message: PerpetualOrderProtoMsg): PerpetualOrder; toProto(message: PerpetualOrder): Uint8Array; toProtoMsg(message: PerpetualOrder): PerpetualOrderProtoMsg; }; export declare const PerpetualOrderExtraInfo: { typeUrl: string; is(o: any): o is PerpetualOrderExtraInfo; isSDK(o: any): o is PerpetualOrderExtraInfoSDKType; isAmino(o: any): o is PerpetualOrderExtraInfoAmino; encode(message: PerpetualOrderExtraInfo, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): PerpetualOrderExtraInfo; fromJSON(object: any): PerpetualOrderExtraInfo; toJSON(message: PerpetualOrderExtraInfo): JsonSafe; fromPartial(object: Partial): PerpetualOrderExtraInfo; fromAmino(object: PerpetualOrderExtraInfoAmino): PerpetualOrderExtraInfo; toAmino(message: PerpetualOrderExtraInfo): PerpetualOrderExtraInfoAmino; fromAminoMsg(object: PerpetualOrderExtraInfoAminoMsg): PerpetualOrderExtraInfo; fromProtoMsg(message: PerpetualOrderExtraInfoProtoMsg): PerpetualOrderExtraInfo; toProto(message: PerpetualOrderExtraInfo): Uint8Array; toProtoMsg(message: PerpetualOrderExtraInfo): PerpetualOrderExtraInfoProtoMsg; };