diff options
author | fragosti <francesco.agosti93@gmail.com> | 2018-08-15 05:40:52 +0800 |
---|---|---|
committer | fragosti <francesco.agosti93@gmail.com> | 2018-08-15 05:40:52 +0800 |
commit | ce88086e080e05ed71c1ef4e31f2d0ce530af67f (patch) | |
tree | f2022bb7bc42c9bc85cbef19c684b666e2d7f66f /packages/connect/src/types.ts | |
parent | c1cc92a46f9ebfa4408a5dc515f1e100fe3a7054 (diff) | |
download | dexon-sol-tools-ce88086e080e05ed71c1ef4e31f2d0ce530af67f.tar dexon-sol-tools-ce88086e080e05ed71c1ef4e31f2d0ce530af67f.tar.gz dexon-sol-tools-ce88086e080e05ed71c1ef4e31f2d0ce530af67f.tar.bz2 dexon-sol-tools-ce88086e080e05ed71c1ef4e31f2d0ce530af67f.tar.lz dexon-sol-tools-ce88086e080e05ed71c1ef4e31f2d0ce530af67f.tar.xz dexon-sol-tools-ce88086e080e05ed71c1ef4e31f2d0ce530af67f.tar.zst dexon-sol-tools-ce88086e080e05ed71c1ef4e31f2d0ce530af67f.zip |
Update types to reflect v2
Diffstat (limited to 'packages/connect/src/types.ts')
-rw-r--r-- | packages/connect/src/types.ts | 91 |
1 files changed, 42 insertions, 49 deletions
diff --git a/packages/connect/src/types.ts b/packages/connect/src/types.ts index ca56d251b..0f2242329 100644 --- a/packages/connect/src/types.ts +++ b/packages/connect/src/types.ts @@ -2,11 +2,12 @@ import { SignedOrder } from '@0xproject/types'; import { BigNumber } from '@0xproject/utils'; export interface Client { - getAssetPairsAsync: (requestOpts?: AssetPairsRequestOpts & PagedRequestOpts) => Promise<TokenPairsItem[]>; - getOrdersAsync: (requestOpts?: OrdersRequestOpts & PagedRequestOpts) => Promise<SignedOrder[]>; - getOrderAsync: (orderHash: string) => Promise<SignedOrder>; + getAssetPairsAsync: (requestOpts?: AssetPairsRequestOpts & PagedRequestOpts) => Promise<PaginatedCollection<TokenPairsItem>>; + getOrdersAsync: (requestOpts?: OrdersRequestOpts & PagedRequestOpts) => Promise<PaginatedCollection<APIOrder>>; + getOrderAsync: (orderHash: string) => Promise<APIOrder>; getOrderbookAsync: (request: OrderbookRequest, requestOpts?: PagedRequestOpts) => Promise<OrderbookResponse>; - getOrderConfigAsync: (request: FeesRequest) => Promise<FeesResponse>; + getOrderConfigAsync: (request: OrderConfigRequest) => Promise<OrderConfigResponse>; + getFeeRecipients: () => Promise<PaginatedCollection<string>>; submitOrderAsync: (signedOrder: SignedOrder) => Promise<void>; } @@ -16,58 +17,45 @@ export interface OrderbookChannel { } /** - * baseTokenAddress: The address of token designated as the baseToken in the currency pair calculation of price - * quoteTokenAddress: The address of token designated as the quoteToken in the currency pair calculation of price + * baseAssetData: The address of assetData designated as the baseToken in the currency pair calculation of price + * quoteAssetData: The address of assetData designated as the quoteToken in the currency pair calculation of price * snapshot: If true, a snapshot of the orderbook will be sent before the updates to the orderbook * limit: Maximum number of bids and asks in orderbook snapshot */ export interface OrderbookChannelSubscriptionOpts { - baseTokenAddress: string; - quoteTokenAddress: string; + baseAssetData: string; + quoteAssetData: string; snapshot: boolean; limit: number; } export interface OrderbookChannelHandler { - onSnapshot: ( - channel: OrderbookChannel, - subscriptionOpts: OrderbookChannelSubscriptionOpts, - snapshot: OrderbookResponse, - ) => void; onUpdate: ( channel: OrderbookChannel, subscriptionOpts: OrderbookChannelSubscriptionOpts, - order: SignedOrder, + order: APIOrder, ) => void; onError: (channel: OrderbookChannel, err: Error, subscriptionOpts?: OrderbookChannelSubscriptionOpts) => void; onClose: (channel: OrderbookChannel) => void; } -export type OrderbookChannelMessage = - | SnapshotOrderbookChannelMessage - | UpdateOrderbookChannelMessage - | UnknownOrderbookChannelMessage; +export type OrdersChannelMessage = + | UpdateOrdersChannelMessage + | UnknownOrdersChannelMessage; -export enum OrderbookChannelMessageTypes { - Snapshot = 'snapshot', +export enum OrdersChannelMessageTypes { Update = 'update', Unknown = 'unknown', } -export interface SnapshotOrderbookChannelMessage { - type: OrderbookChannelMessageTypes.Snapshot; - requestId: number; - payload: OrderbookResponse; -} - -export interface UpdateOrderbookChannelMessage { - type: OrderbookChannelMessageTypes.Update; +export interface UpdateOrdersChannelMessage { + type: OrdersChannelMessageTypes.Update; requestId: number; - payload: SignedOrder; + payload: APIOrder; } -export interface UnknownOrderbookChannelMessage { - type: OrderbookChannelMessageTypes.Unknown; +export interface UnknownOrdersChannelMessage { + type: OrdersChannelMessageTypes.Unknown; requestId: number; payload: undefined; } @@ -83,25 +71,30 @@ export enum WebsocketClientEventType { ConnectFailed = 'connectFailed', } +export interface APIOrder { + order: SignedOrder; + metaData: object; +} + export interface AssetPairsRequestOpts { - tokenA?: string; - tokenB?: string; + assetDataA?: string; + assetDataB?: string; } export interface TokenPairsItem { - tokenA: TokenTradeInfo; - tokenB: TokenTradeInfo; + assetDataA: Asset; + assetDataB: Asset; } -export interface TokenTradeInfo { - address: string; +export interface Asset { + assetData: string; minAmount: BigNumber; maxAmount: BigNumber; precision: number; } export interface OrdersRequestOpts { - exchangeContractAddress?: string; + exchangeAddress?: string; tokenAddress?: string; makerTokenAddress?: string; takerTokenAddress?: string; @@ -112,35 +105,35 @@ export interface OrdersRequestOpts { } export interface OrderbookRequest { - baseTokenAddress: string; - quoteTokenAddress: string; + baseAssetData: string; + quoteAssetData: string; } export interface OrderbookResponse { - bids: SignedOrder[]; - asks: SignedOrder[]; + bids: PaginatedCollection<APIOrder>; + asks: PaginatedCollection<APIOrder>; } -export interface PaginatedCollectionResponse<T> { +export interface PaginatedCollection<T> { total: number; page: number; perPage: number; records: T[]; } -export interface FeesRequest { - exchangeContractAddress: string; +export interface OrderConfigRequest { + exchangeAddress: string; maker: string; taker: string; makerTokenAddress: string; takerTokenAddress: string; - makerTokenAmount: BigNumber; - takerTokenAmount: BigNumber; - expirationUnixTimestampSec: BigNumber; + makerAssetAmount: BigNumber; + takerAssetAmount: BigNumber; + expirationTimeSeconds: BigNumber; salt: BigNumber; } -export interface FeesResponse { +export interface OrderConfigResponse { feeRecipient: string; makerFee: BigNumber; takerFee: BigNumber; |