import { BinanceRestClient, OrderSide, OrderStatus, OrderType, TimeInForce } from './base'; export interface PAPIEndpoints extends BinanceRestClient { papiPing(): Promise; papiUmOrder(payload: { symbol: string; side: OrderSide; type: OrderType; quantity?: string; quoteOrderQty?: string; price?: string; newClientOrderId?: string; stopPrice?: string; trailingDelta?: number; trailingTime?: number; icebergQty?: string; newOrderRespType?: string; timeInForce?: TimeInForce; }): Promise<{ symbol: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; marginBuyBorrowAmount: string; marginBuyBorrowAsset: string; fills: Array<{ price: string; qty: string; commission: string; commissionAsset: string; }>; }>; papiUmConditionalOrder(payload: { symbol: string; side: OrderSide; type: OrderType; quantity?: string; quoteOrderQty?: string; price?: string; newClientOrderId?: string; stopPrice?: string; trailingDelta?: number; trailingTime?: number; icebergQty?: string; newOrderRespType?: string; timeInForce?: TimeInForce; }): Promise<{ symbol: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; marginBuyBorrowAmount: string; marginBuyBorrowAsset: string; fills: Array<{ price: string; qty: string; commission: string; commissionAsset: string; }>; }>; papiCmOrder(payload: { symbol: string; side: OrderSide; type: OrderType; quantity?: string; quoteOrderQty?: string; price?: string; newClientOrderId?: string; stopPrice?: string; trailingDelta?: number; trailingTime?: number; icebergQty?: string; newOrderRespType?: string; timeInForce?: TimeInForce; }): Promise<{ symbol: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; marginBuyBorrowAmount: string; marginBuyBorrowAsset: string; fills: Array<{ price: string; qty: string; commission: string; commissionAsset: string; }>; }>; papiCmConditionalOrder(payload: { symbol: string; side: OrderSide; type: OrderType; quantity?: string; quoteOrderQty?: string; price?: string; newClientOrderId?: string; stopPrice?: string; trailingDelta?: number; trailingTime?: number; icebergQty?: string; newOrderRespType?: string; timeInForce?: TimeInForce; }): Promise<{ symbol: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; marginBuyBorrowAmount: string; marginBuyBorrowAsset: string; fills: Array<{ price: string; qty: string; commission: string; commissionAsset: string; }>; }>; papiMarginOrder(payload: { symbol: string; side: OrderSide; type: OrderType; quantity?: string; quoteOrderQty?: string; price?: string; newClientOrderId?: string; stopPrice?: string; trailingDelta?: number; trailingTime?: number; icebergQty?: string; newOrderRespType?: string; timeInForce?: TimeInForce; }): Promise<{ symbol: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; marginBuyBorrowAmount: string; marginBuyBorrowAsset: string; fills: Array<{ price: string; qty: string; commission: string; commissionAsset: string; }>; }>; papiMarginLoan(payload: { asset: string; amount: string; isIsolated?: boolean; symbol?: string; }): Promise<{ tranId: number; }>; papiRepayLoan(payload: { asset: string; amount: string; isIsolated?: boolean; symbol?: string; }): Promise<{ tranId: number; }>; papiMarginOrderOco(payload: { symbol: string; side: OrderSide; quantity: string; price: string; stopPrice: string; stopLimitPrice?: string; stopLimitTimeInForce?: TimeInForce; takeProfitPrice?: string; takeProfitLimitPrice?: string; takeProfitLimitTimeInForce?: TimeInForce; trailingDelta?: number; trailingTime?: number; icebergQty?: string; newOrderRespType?: string; }): Promise<{ orderListId: number; contingencyType: string; listStatusType: string; listOrderStatus: string; listClientOrderId: string; transactTime: number; symbol: string; orders: Array<{ symbol: string; orderId: number; clientOrderId: string; }>; orderReports: Array<{ symbol: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; stopPrice: string; workingType: string; priceProtect: boolean; origType: string; }>; }>; papiUmCancelOrder(payload: { symbol: string; orderId?: number; origClientOrderId?: string }): Promise<{ symbol: string; origClientOrderId: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; }>; papiUmCancelAllOpenOrders(payload: { symbol: string }): Promise>; papiUmCancelConditionalOrder(payload: { symbol: string; orderId?: number; origClientOrderId?: string }): Promise<{ symbol: string; origClientOrderId: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; }>; papiUmCancelConditionalAllOpenOrders(payload: { symbol: string }): Promise>; papiCmCancelOrder(payload: { symbol: string; orderId?: number; origClientOrderId?: string }): Promise<{ symbol: string; origClientOrderId: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; }>; papiCmCancelAllOpenOrders(payload: { symbol: string }): Promise>; papiCmCancelConditionalOrder(payload: { symbol: string; orderId?: number; origClientOrderId?: string }): Promise<{ symbol: string; origClientOrderId: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; }>; papiCmCancelConditionalAllOpenOrders(payload: { symbol: string }): Promise>; papiMarginCancelOrder(payload: { symbol: string; orderId?: number; origClientOrderId?: string }): Promise<{ symbol: string; origClientOrderId: string; orderId: number; orderListId: number; clientOrderId: string; transactTime: number; price: string; origQty: string; executedQty: string; cumQuote: string; status: OrderStatus; timeInForce: TimeInForce; type: OrderType; side: OrderSide; }>; }