aboutsummaryrefslogtreecommitdiffstats
path: root/packages/connect/src/types.ts
diff options
context:
space:
mode:
authorfragosti <francesco.agosti93@gmail.com>2018-08-15 05:40:52 +0800
committerfragosti <francesco.agosti93@gmail.com>2018-08-15 05:40:52 +0800
commitce88086e080e05ed71c1ef4e31f2d0ce530af67f (patch)
treef2022bb7bc42c9bc85cbef19c684b666e2d7f66f /packages/connect/src/types.ts
parentc1cc92a46f9ebfa4408a5dc515f1e100fe3a7054 (diff)
downloaddexon-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.ts91
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;