UNPKG

ftx-api-typed

Version:

Node.js/typescript connector for FTX's REST APIs and WebSockets

196 lines (195 loc) 4.3 kB
import { ConditionalOrderType, ConditionalOrderTypeNoUnderscore, OrderSide, OrderType } from "./response/orders"; export * from "./response"; export interface TimeRange { start_time?: number; end_time?: number; } export interface TimeRangeLimit extends TimeRange { limit?: number; } export interface ChangeSubNameReq { nickname: string; newNickname: string; } export interface TransferBetweenSubReq { coin: string; size: number; source: string; destination: string; } export interface OrderbookReq { marketName: string; depth?: number; } export interface TradesReq { market_name: string; limit?: number; start_time?: number; end_time?: number; } export interface HistoricalPricesReq { market_name: string; resolution: number; limit?: number; start_time?: number; end_time?: number; } export interface HistoricalIndexReq { marketName: string; resolution: number; limit?: number; start_time?: number; end_time?: number; } export interface DepositAddressReq { coin: string; method?: string; } export interface CreateFiatDepositReq { size: number; currency: string; notes?: string; } export interface WithdrawalReq { coin: string; size: number; address: string; tag?: string; password?: string; code?: string; } export interface WithdrawalFeeReq { coin: string; size: number; address: string; tag?: string | null; method?: string | null; } export interface NewSavedAddressReq { coin: string; address: string; addressName: string; isPrimeTrust: boolean; tag?: string; } export interface OrderHistoryReq { market?: string; start_time?: number; end_time?: number; limit?: number; } export interface OpenTriggerOrdersReq { market?: string; type?: ConditionalOrderType; } export interface TriggerOrderHistoryReq { market?: string; start_time?: number; end_time?: number; side?: OrderSide; type?: ConditionalOrderType; orderType?: OrderType; } export interface NewOrderReq { market: string; side: OrderSide; price: number | null; type: OrderType; size: number; reduceOnly?: boolean; ioc?: boolean; postOnly?: boolean; clientId?: string; } export interface NewTriggerOrderReq { market: string; side: OrderSide; size: number; type: ConditionalOrderTypeNoUnderscore; reduceOnly?: boolean; retryUntilFilled?: boolean; triggerPrice?: number; orderPrice?: number; trailValue?: number; } export interface ModifyOrderReq { orderId: string; price?: number; size?: number; clientId?: string; } export interface ModifyClientIdOrderReq { price?: number; size?: number; clientId?: string; } export interface ModifyTriggerOrderReq { size?: number; triggerPrice?: number; orderPrice?: number; trailValue?: number; } export interface CancelAllOrdersReq { market?: string; conditionalOrdersOnly?: boolean; limitOrdersOnly?: boolean; } export interface QuoteReq { fromCoin: string; toCoin: string; size: number; } export interface NewLendingOfferReq { coin: string; size: number; rate: number; } export interface FillsReq { market?: string; limit?: number; start_time?: number; end_time?: number; order?: 'asc'; orderId?: number; } export interface FundingPaymentsReq { start_time?: number; end_time?: number; future?: string; } export interface NewQuoteReq { underlying: string; type: 'call' | 'put'; strike: number; expiry: number; side: OrderSide; size: number; limitPrice?: number; hideLimitPrice: boolean; requestExpiry?: number; counterpartyId?: number; } export interface NftBidReq { nftId: number; price: number; } export interface NftAuctionReq { initialPrice: number; reservationPrice: number; duration: number; } export interface NftAuctionEditReq { reservationPrice: number; } export interface CancelNftAuctionReq { nftId: number; reservationPrice: number; } export interface RedeemNftReq { nftId: number; address: string; notes: string; } export interface EditNftGallerySettingsReq { public: boolean; }