@triadxyz/triad-protocol 1.7.3-beta → 1.7.5-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/trade.d.ts +106 -16
- package/dist/trade.js +328 -78
- package/dist/types/idl_triad_protocol.json +635 -48
- package/dist/types/trade.d.ts +94 -23
- package/dist/types/trade.js +25 -1
- package/dist/types/triad_protocol.d.ts +811 -50
- package/dist/utils/helpers.js +11 -5
- package/package.json +1 -1
- package/dist/local-test/index.d.ts +0 -1
- package/dist/local-test/index.js +0 -419
- package/dist/local-test/init-market.d.ts +0 -8
- package/dist/local-test/init-market.js +0 -58
- package/dist/local-test/order-book.d.ts +0 -9
- package/dist/local-test/order-book.js +0 -46
- package/dist/local-test/simulate-market.d.ts +0 -5
- package/dist/local-test/simulate-market.js +0 -9
- package/dist/utils/swap.d.ts +0 -14
- package/dist/utils/swap.js +0 -82
package/dist/trade.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { AnchorProvider, Program } from '@coral-xyz/anchor';
|
|
2
2
|
import { TriadProtocol } from './types/triad_protocol';
|
|
3
|
-
import { PublicKey } from '@solana/web3.js';
|
|
4
|
-
import { CreateMarketArgs, OpenOrderArgs, UserTrade, CreateCustomerArgs } from './types/trade';
|
|
3
|
+
import { PublicKey, TransactionInstruction } from '@solana/web3.js';
|
|
4
|
+
import { CreateMarketArgs, OpenOrderArgs, UserTrade, CreateCustomerArgs, PlaceOrderArgs, CancelOrderArgs, Order, MarketBidOrderArgs } from './types/trade';
|
|
5
5
|
import { RpcOptions } from './types';
|
|
6
6
|
import BN from 'bn.js';
|
|
7
7
|
export default class Trade {
|
|
8
8
|
private program;
|
|
9
9
|
private provider;
|
|
10
10
|
mint: PublicKey;
|
|
11
|
+
decimals: number;
|
|
11
12
|
constructor(program: Program<TriadProtocol>, provider: AnchorProvider);
|
|
12
13
|
/**
|
|
13
14
|
* Get All Markets
|
|
@@ -25,7 +26,7 @@ export default class Trade {
|
|
|
25
26
|
* @param user - User PublicKey
|
|
26
27
|
*
|
|
27
28
|
*/
|
|
28
|
-
getUserOrders(user: PublicKey): Promise<
|
|
29
|
+
getUserOrders(user: PublicKey): Promise<Order[]>;
|
|
29
30
|
/**
|
|
30
31
|
* Get Market By ID
|
|
31
32
|
* @param marketId - The ID of the market
|
|
@@ -53,13 +54,14 @@ export default class Trade {
|
|
|
53
54
|
orders: {
|
|
54
55
|
ts: BN;
|
|
55
56
|
orderId: BN;
|
|
56
|
-
|
|
57
|
+
filledShares: BN;
|
|
57
58
|
marketId: BN;
|
|
58
|
-
|
|
59
|
+
orderStatus: ({
|
|
59
60
|
open?: never;
|
|
60
61
|
closed?: never;
|
|
61
62
|
claimed?: never;
|
|
62
63
|
liquidated?: never;
|
|
64
|
+
waiting?: never;
|
|
63
65
|
} & {
|
|
64
66
|
init: Record<string, never>;
|
|
65
67
|
}) | ({
|
|
@@ -67,6 +69,7 @@ export default class Trade {
|
|
|
67
69
|
closed?: never;
|
|
68
70
|
claimed?: never;
|
|
69
71
|
liquidated?: never;
|
|
72
|
+
waiting?: never;
|
|
70
73
|
} & {
|
|
71
74
|
open: Record<string, never>;
|
|
72
75
|
}) | ({
|
|
@@ -74,6 +77,7 @@ export default class Trade {
|
|
|
74
77
|
open?: never;
|
|
75
78
|
claimed?: never;
|
|
76
79
|
liquidated?: never;
|
|
80
|
+
waiting?: never;
|
|
77
81
|
} & {
|
|
78
82
|
closed: Record<string, never>;
|
|
79
83
|
}) | ({
|
|
@@ -81,6 +85,7 @@ export default class Trade {
|
|
|
81
85
|
open?: never;
|
|
82
86
|
closed?: never;
|
|
83
87
|
liquidated?: never;
|
|
88
|
+
waiting?: never;
|
|
84
89
|
} & {
|
|
85
90
|
claimed: Record<string, never>;
|
|
86
91
|
}) | ({
|
|
@@ -88,8 +93,17 @@ export default class Trade {
|
|
|
88
93
|
open?: never;
|
|
89
94
|
closed?: never;
|
|
90
95
|
claimed?: never;
|
|
96
|
+
waiting?: never;
|
|
91
97
|
} & {
|
|
92
98
|
liquidated: Record<string, never>;
|
|
99
|
+
}) | ({
|
|
100
|
+
init?: never;
|
|
101
|
+
open?: never;
|
|
102
|
+
closed?: never;
|
|
103
|
+
claimed?: never;
|
|
104
|
+
liquidated?: never;
|
|
105
|
+
} & {
|
|
106
|
+
waiting: Record<string, never>;
|
|
93
107
|
});
|
|
94
108
|
price: BN;
|
|
95
109
|
totalAmount: BN;
|
|
@@ -103,7 +117,7 @@ export default class Trade {
|
|
|
103
117
|
} & {
|
|
104
118
|
limit: Record<string, never>;
|
|
105
119
|
});
|
|
106
|
-
|
|
120
|
+
orderDirection: ({
|
|
107
121
|
flop?: never;
|
|
108
122
|
} & {
|
|
109
123
|
hype: Record<string, never>;
|
|
@@ -113,6 +127,17 @@ export default class Trade {
|
|
|
113
127
|
flop: Record<string, never>;
|
|
114
128
|
});
|
|
115
129
|
userNonce: number;
|
|
130
|
+
orderSide: ({
|
|
131
|
+
ask?: never;
|
|
132
|
+
} & {
|
|
133
|
+
bid: Record<string, never>;
|
|
134
|
+
}) | ({
|
|
135
|
+
bid?: never;
|
|
136
|
+
} & {
|
|
137
|
+
ask: Record<string, never>;
|
|
138
|
+
});
|
|
139
|
+
linkedOrderId: BN;
|
|
140
|
+
createdAt: BN;
|
|
116
141
|
padding: number[];
|
|
117
142
|
}[];
|
|
118
143
|
nonce: number;
|
|
@@ -126,28 +151,24 @@ export default class Trade {
|
|
|
126
151
|
* @param args.startTime - start time
|
|
127
152
|
* @param args.endTime - end time
|
|
128
153
|
* @param args.question - question (max 80 characters)
|
|
154
|
+
* @param args.liquidityAtStart - liquidity at start
|
|
155
|
+
* @param args.payoutFee - payout fee (to add affiliate system)
|
|
129
156
|
*
|
|
130
157
|
* @param options - RPC options
|
|
131
158
|
*
|
|
132
159
|
*/
|
|
133
|
-
createMarket({ marketId, startTime, endTime, question, feeBps, customer, mint }: CreateMarketArgs, options?: RpcOptions): Promise<string>;
|
|
134
|
-
/**
|
|
135
|
-
* Get User Trade Nonce With Slots
|
|
136
|
-
* @param userTrades - User Trades
|
|
137
|
-
*
|
|
138
|
-
*/
|
|
139
|
-
getUserTradeNonceWithSlots(userTrades: UserTrade[]): Promise<PublicKey>;
|
|
160
|
+
createMarket({ marketId, startTime, endTime, question, feeBps, customer, payoutFee, mint }: CreateMarketArgs, options?: RpcOptions): Promise<string>;
|
|
140
161
|
/**
|
|
141
162
|
* Open Order
|
|
142
163
|
* @param args.marketId - The ID of the Market
|
|
143
164
|
* @param args.amount - The amount of the Order
|
|
144
165
|
* @param args.direction - The direction of the Order
|
|
145
|
-
* @param args.
|
|
166
|
+
* @param args.mint - The mint of the Order
|
|
146
167
|
*
|
|
147
168
|
* @param options - RPC options
|
|
148
169
|
*
|
|
149
170
|
*/
|
|
150
|
-
openOrder({ marketId, amount, direction,
|
|
171
|
+
openOrder({ marketId, amount, direction, mint }: OpenOrderArgs, options?: RpcOptions): Promise<string>;
|
|
151
172
|
/**
|
|
152
173
|
* Close Order
|
|
153
174
|
* @param args.marketId - The ID of the Market
|
|
@@ -239,5 +260,74 @@ export default class Trade {
|
|
|
239
260
|
* @param options - RPC options
|
|
240
261
|
*
|
|
241
262
|
*/
|
|
242
|
-
createCustomer({ id, name, authority }: CreateCustomerArgs, options?: RpcOptions): Promise<string>;
|
|
263
|
+
createCustomer({ id, name, authority, feeRecipient }: CreateCustomerArgs, options?: RpcOptions): Promise<string>;
|
|
264
|
+
/**
|
|
265
|
+
* Get User Trade Nonce With Slots
|
|
266
|
+
* @param userTrades - User Trades
|
|
267
|
+
*
|
|
268
|
+
*/
|
|
269
|
+
getUserTradeNonceWithSlots(userTrades: UserTrade[]): Promise<PublicKey>;
|
|
270
|
+
getUserTradeIxs(): Promise<{
|
|
271
|
+
userTradePDA: PublicKey;
|
|
272
|
+
ixs: TransactionInstruction[];
|
|
273
|
+
}>;
|
|
274
|
+
/**
|
|
275
|
+
* Place Order
|
|
276
|
+
* @param args.marketId - The ID of the Market
|
|
277
|
+
* @param args.amount - The amount of the Order
|
|
278
|
+
* @param args.direction - The direction of the Order
|
|
279
|
+
* @param args.orderSide - The side of the Order
|
|
280
|
+
* @param args.mint - The mint of the Order
|
|
281
|
+
* @param args.price - The price of the Order
|
|
282
|
+
*
|
|
283
|
+
* @param options - RPC options
|
|
284
|
+
*
|
|
285
|
+
*/
|
|
286
|
+
placeOrder({ marketId, amount, direction, orderSide, mint, price, bidOrderId }: PlaceOrderArgs, options?: RpcOptions): Promise<string>;
|
|
287
|
+
/**
|
|
288
|
+
* Cancel Order
|
|
289
|
+
* @param args.marketId - The ID of the Market
|
|
290
|
+
* @param args.orderId - The ID of the Order
|
|
291
|
+
* @param args.userNonce - The nonce of the user
|
|
292
|
+
* @param args.orderSide - The side of the Order
|
|
293
|
+
*
|
|
294
|
+
* @param options - RPC options
|
|
295
|
+
*/
|
|
296
|
+
cancelOrder({ marketId, orderId, userNonce, orderSide, mint, userNonceBidOrder }: CancelOrderArgs, options?: RpcOptions): Promise<string>;
|
|
297
|
+
/**
|
|
298
|
+
* Update Customer Fee
|
|
299
|
+
* @param args.id - The ID of the Customer
|
|
300
|
+
* @param args.feeRecipient - The fee account
|
|
301
|
+
*
|
|
302
|
+
* @param options - RPC options
|
|
303
|
+
*/
|
|
304
|
+
updateCustomerFee({ id, feeRecipient }: {
|
|
305
|
+
id: number;
|
|
306
|
+
feeRecipient: PublicKey;
|
|
307
|
+
}, options?: RpcOptions): Promise<string>;
|
|
308
|
+
/**
|
|
309
|
+
* Market Bid Order
|
|
310
|
+
* @param args.marketId - The ID of the Market
|
|
311
|
+
* @param args.amount - The amount of the Order
|
|
312
|
+
* @param args.direction - The direction of the Order
|
|
313
|
+
* @param args.mint - The mint of the Order
|
|
314
|
+
*
|
|
315
|
+
* @param options - RPC options
|
|
316
|
+
*/
|
|
317
|
+
marketBidOrder({ marketId, amount, direction, mint }: MarketBidOrderArgs, options?: RpcOptions): Promise<string>;
|
|
318
|
+
/**
|
|
319
|
+
* Get Orders By Market ID
|
|
320
|
+
* @param marketId - The ID of the market
|
|
321
|
+
*
|
|
322
|
+
*/
|
|
323
|
+
getOrderBook(marketId: number): Promise<{
|
|
324
|
+
hype: {
|
|
325
|
+
bid: Order[];
|
|
326
|
+
ask: Order[];
|
|
327
|
+
};
|
|
328
|
+
flop: {
|
|
329
|
+
bid: Order[];
|
|
330
|
+
ask: Order[];
|
|
331
|
+
};
|
|
332
|
+
}>;
|
|
243
333
|
}
|