@lightconexyz/lightcone-sdk 0.6.1 → 0.7.1
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/README.md +6 -2
- package/dist/auth/client.d.ts.map +1 -1
- package/dist/auth/client.js +2 -0
- package/dist/auth/client.js.map +1 -1
- package/dist/auth/index.d.ts +15 -0
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +10 -1
- package/dist/auth/index.js.map +1 -1
- package/dist/client.d.ts +17 -7
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +36 -13
- package/dist/client.js.map +1 -1
- package/dist/context.d.ts +7 -1
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +60 -6
- package/dist/context.js.map +1 -1
- package/dist/domain/admin/client.d.ts +11 -1
- package/dist/domain/admin/client.d.ts.map +1 -1
- package/dist/domain/admin/client.js +39 -4
- package/dist/domain/admin/client.js.map +1 -1
- package/dist/domain/admin/wire.d.ts +37 -12
- package/dist/domain/admin/wire.d.ts.map +1 -1
- package/dist/domain/admin/wire.js.map +1 -1
- package/dist/domain/market/client.js +1 -1
- package/dist/domain/market/client.js.map +1 -1
- package/dist/domain/market/convert.js +1 -1
- package/dist/domain/market/convert.js.map +1 -1
- package/dist/domain/market/index.d.ts +8 -1
- package/dist/domain/market/index.d.ts.map +1 -1
- package/dist/domain/market/index.js +12 -0
- package/dist/domain/market/index.js.map +1 -1
- package/dist/domain/market/outcome.d.ts +1 -0
- package/dist/domain/market/outcome.d.ts.map +1 -1
- package/dist/domain/market/outcome.js +1 -0
- package/dist/domain/market/outcome.js.map +1 -1
- package/dist/domain/market/tokens.d.ts +2 -0
- package/dist/domain/market/tokens.d.ts.map +1 -1
- package/dist/domain/market/tokens.js +6 -1
- package/dist/domain/market/tokens.js.map +1 -1
- package/dist/domain/market/wire.d.ts +23 -2
- package/dist/domain/market/wire.d.ts.map +1 -1
- package/dist/domain/market/wire.js +5 -0
- package/dist/domain/market/wire.js.map +1 -1
- package/dist/domain/metrics/client.d.ts +3 -3
- package/dist/domain/metrics/client.d.ts.map +1 -1
- package/dist/domain/metrics/client.js +4 -4
- package/dist/domain/metrics/client.js.map +1 -1
- package/dist/domain/metrics/wire.d.ts +5 -1
- package/dist/domain/metrics/wire.d.ts.map +1 -1
- package/dist/domain/metrics/wire.js.map +1 -1
- package/dist/domain/notification/client.d.ts +2 -2
- package/dist/domain/notification/client.d.ts.map +1 -1
- package/dist/domain/notification/client.js +3 -3
- package/dist/domain/notification/client.js.map +1 -1
- package/dist/domain/notification/index.d.ts +3 -1
- package/dist/domain/notification/index.d.ts.map +1 -1
- package/dist/domain/notification/index.js.map +1 -1
- package/dist/domain/order/client.d.ts +12 -10
- package/dist/domain/order/client.d.ts.map +1 -1
- package/dist/domain/order/client.js +20 -13
- package/dist/domain/order/client.js.map +1 -1
- package/dist/domain/order/convert.d.ts +1 -1
- package/dist/domain/order/convert.d.ts.map +1 -1
- package/dist/domain/order/convert.js +2 -2
- package/dist/domain/order/convert.js.map +1 -1
- package/dist/domain/order/index.d.ts +2 -1
- package/dist/domain/order/index.d.ts.map +1 -1
- package/dist/domain/order/index.js +11 -3
- package/dist/domain/order/index.js.map +1 -1
- package/dist/domain/orderbook/client.d.ts +6 -2
- package/dist/domain/orderbook/client.d.ts.map +1 -1
- package/dist/domain/orderbook/client.js +17 -0
- package/dist/domain/orderbook/client.js.map +1 -1
- package/dist/domain/position/builders.d.ts +11 -8
- package/dist/domain/position/builders.d.ts.map +1 -1
- package/dist/domain/position/builders.js +31 -25
- package/dist/domain/position/builders.js.map +1 -1
- package/dist/domain/position/client.d.ts +21 -15
- package/dist/domain/position/client.d.ts.map +1 -1
- package/dist/domain/position/client.js +43 -22
- package/dist/domain/position/client.js.map +1 -1
- package/dist/domain/referral/client.d.ts +2 -2
- package/dist/domain/referral/client.d.ts.map +1 -1
- package/dist/domain/referral/client.js +3 -3
- package/dist/domain/referral/client.js.map +1 -1
- package/dist/domain/trade/client.d.ts +1 -0
- package/dist/domain/trade/client.d.ts.map +1 -1
- package/dist/domain/trade/client.js +14 -0
- package/dist/domain/trade/client.js.map +1 -1
- package/dist/domain/trade/wire.d.ts +6 -0
- package/dist/domain/trade/wire.d.ts.map +1 -1
- package/dist/domain/trade/wire.js.map +1 -1
- package/dist/env.d.ts +6 -1
- package/dist/env.d.ts.map +1 -1
- package/dist/env.js +19 -9
- package/dist/env.js.map +1 -1
- package/dist/http/client.d.ts +7 -7
- package/dist/http/client.d.ts.map +1 -1
- package/dist/http/client.js +15 -12
- package/dist/http/client.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/prelude.d.ts +8 -7
- package/dist/prelude.d.ts.map +1 -1
- package/dist/prelude.js +7 -6
- package/dist/prelude.js.map +1 -1
- package/dist/privy/index.d.ts +1 -1
- package/dist/privy/index.js.map +1 -1
- package/dist/program/accounts.d.ts +12 -7
- package/dist/program/accounts.d.ts.map +1 -1
- package/dist/program/accounts.js +38 -16
- package/dist/program/accounts.js.map +1 -1
- package/dist/program/builder.d.ts +0 -4
- package/dist/program/builder.d.ts.map +1 -1
- package/dist/program/builder.js +0 -8
- package/dist/program/builder.js.map +1 -1
- package/dist/program/constants.d.ts +20 -7
- package/dist/program/constants.d.ts.map +1 -1
- package/dist/program/constants.js +21 -8
- package/dist/program/constants.js.map +1 -1
- package/dist/program/error.d.ts +25 -1
- package/dist/program/error.d.ts.map +1 -1
- package/dist/program/error.js +72 -0
- package/dist/program/error.js.map +1 -1
- package/dist/program/index.d.ts +7 -7
- package/dist/program/index.d.ts.map +1 -1
- package/dist/program/index.js +36 -9
- package/dist/program/index.js.map +1 -1
- package/dist/program/instructions.d.ts +184 -71
- package/dist/program/instructions.d.ts.map +1 -1
- package/dist/program/instructions.js +573 -140
- package/dist/program/instructions.js.map +1 -1
- package/dist/program/orders.js +2 -2
- package/dist/program/orders.js.map +1 -1
- package/dist/program/pda.d.ts +21 -3
- package/dist/program/pda.d.ts.map +1 -1
- package/dist/program/pda.js +43 -6
- package/dist/program/pda.js.map +1 -1
- package/dist/program/types.d.ts +139 -21
- package/dist/program/types.d.ts.map +1 -1
- package/dist/program/types.js.map +1 -1
- package/dist/program/utils.d.ts +31 -2
- package/dist/program/utils.d.ts.map +1 -1
- package/dist/program/utils.js +132 -5
- package/dist/program/utils.js.map +1 -1
- package/dist/rpc.d.ts +6 -1
- package/dist/rpc.d.ts.map +1 -1
- package/dist/rpc.js +9 -7
- package/dist/rpc.js.map +1 -1
- package/dist/rpcFailover.d.ts +22 -0
- package/dist/rpcFailover.d.ts.map +1 -0
- package/dist/rpcFailover.js +71 -0
- package/dist/rpcFailover.js.map +1 -0
- package/dist/shared/fmt/constants.d.ts +5 -0
- package/dist/shared/fmt/constants.d.ts.map +1 -0
- package/dist/shared/fmt/constants.js +25 -0
- package/dist/shared/fmt/constants.js.map +1 -0
- package/dist/shared/fmt/decimal.d.ts +7 -0
- package/dist/shared/fmt/decimal.d.ts.map +1 -1
- package/dist/shared/fmt/decimal.js +28 -20
- package/dist/shared/fmt/decimal.js.map +1 -1
- package/dist/shared/fmt/num.d.ts +7 -0
- package/dist/shared/fmt/num.d.ts.map +1 -1
- package/dist/shared/fmt/num.js +27 -15
- package/dist/shared/fmt/num.js.map +1 -1
- package/dist/ws/client.node.js +1 -1
- package/dist/ws/client.node.js.map +1 -1
- package/package.json +1 -1
package/dist/program/types.d.ts
CHANGED
|
@@ -20,42 +20,48 @@ export declare enum OrderSide {
|
|
|
20
20
|
/**
|
|
21
21
|
* Exchange account - singleton central state
|
|
22
22
|
* PDA: ["central_state"]
|
|
23
|
-
* Size:
|
|
23
|
+
* Size: 212 bytes
|
|
24
24
|
*/
|
|
25
25
|
export interface Exchange {
|
|
26
26
|
discriminator: Buffer;
|
|
27
27
|
authority: PublicKey;
|
|
28
28
|
operator: PublicKey;
|
|
29
|
+
manager: PublicKey;
|
|
29
30
|
marketCount: bigint;
|
|
30
31
|
paused: boolean;
|
|
31
32
|
bump: number;
|
|
32
33
|
depositTokenCount: number;
|
|
34
|
+
feeReceiver: PublicKey;
|
|
33
35
|
}
|
|
34
36
|
/**
|
|
35
37
|
* Market account
|
|
36
38
|
* PDA: ["market", market_id (u64)]
|
|
37
|
-
* Size:
|
|
39
|
+
* Size: 212 bytes
|
|
38
40
|
*/
|
|
39
41
|
export interface Market {
|
|
40
42
|
discriminator: Buffer;
|
|
41
43
|
marketId: bigint;
|
|
42
44
|
numOutcomes: number;
|
|
43
45
|
status: MarketStatus;
|
|
44
|
-
winningOutcome: number;
|
|
45
|
-
hasWinningOutcome: boolean;
|
|
46
46
|
bump: number;
|
|
47
|
+
makerFeeBps: number;
|
|
48
|
+
takerFeeBps: number;
|
|
47
49
|
oracle: PublicKey;
|
|
48
50
|
questionId: Buffer;
|
|
49
51
|
conditionId: Buffer;
|
|
52
|
+
payoutNumerators: PayoutNumerators;
|
|
53
|
+
payoutDenominator: number;
|
|
50
54
|
}
|
|
55
|
+
export type PayoutNumerators = [number, number, number, number, number, number];
|
|
51
56
|
/**
|
|
52
57
|
* Order status account - tracks partial fills and cancellations
|
|
53
58
|
* PDA: ["order_status", order_hash (32 bytes)]
|
|
54
|
-
* Size:
|
|
59
|
+
* Size: 32 bytes
|
|
55
60
|
*/
|
|
56
61
|
export interface OrderStatus {
|
|
57
62
|
discriminator: Buffer;
|
|
58
63
|
remaining: bigint;
|
|
64
|
+
baseRemaining: bigint;
|
|
59
65
|
isCancelled: boolean;
|
|
60
66
|
}
|
|
61
67
|
/**
|
|
@@ -147,26 +153,19 @@ export interface InitializeParams {
|
|
|
147
153
|
* Parameters for createMarket instruction
|
|
148
154
|
*/
|
|
149
155
|
export interface CreateMarketParams {
|
|
150
|
-
|
|
156
|
+
manager: PublicKey;
|
|
151
157
|
numOutcomes: number;
|
|
152
158
|
oracle: PublicKey;
|
|
153
159
|
questionId: Buffer;
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
* Metadata for a single outcome token
|
|
157
|
-
*/
|
|
158
|
-
export interface OutcomeMetadata {
|
|
159
|
-
name: string;
|
|
160
|
-
symbol: string;
|
|
161
|
-
uri: string;
|
|
160
|
+
makerFeeBps: number;
|
|
161
|
+
takerFeeBps: number;
|
|
162
162
|
}
|
|
163
163
|
/**
|
|
164
164
|
* Parameters for addDepositMint instruction
|
|
165
165
|
*/
|
|
166
166
|
export interface AddDepositMintParams {
|
|
167
|
-
|
|
167
|
+
manager: PublicKey;
|
|
168
168
|
depositMint: PublicKey;
|
|
169
|
-
outcomeMetadata: OutcomeMetadata[];
|
|
170
169
|
}
|
|
171
170
|
/**
|
|
172
171
|
* Parameters for deposit (mint complete set) instruction.
|
|
@@ -190,7 +189,8 @@ export interface BuildMergeParams {
|
|
|
190
189
|
* Parameters for cancelOrder instruction
|
|
191
190
|
*/
|
|
192
191
|
export interface CancelOrderParams {
|
|
193
|
-
|
|
192
|
+
operator: PublicKey;
|
|
193
|
+
market: PublicKey;
|
|
194
194
|
order: SignedOrder;
|
|
195
195
|
}
|
|
196
196
|
/**
|
|
@@ -205,7 +205,18 @@ export interface IncrementNonceParams {
|
|
|
205
205
|
export interface SettleMarketParams {
|
|
206
206
|
oracle: PublicKey;
|
|
207
207
|
marketId: bigint;
|
|
208
|
-
|
|
208
|
+
payoutNumerators: number[];
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Integer fixed-point metadata for two-sided scalar settlement.
|
|
212
|
+
*/
|
|
213
|
+
export interface ScalarResolutionParams {
|
|
214
|
+
minValue: bigint;
|
|
215
|
+
maxValue: bigint;
|
|
216
|
+
resolvedValue: bigint;
|
|
217
|
+
lowerOutcomeIndex: number;
|
|
218
|
+
upperOutcomeIndex: number;
|
|
219
|
+
numOutcomes: number;
|
|
209
220
|
}
|
|
210
221
|
/**
|
|
211
222
|
* Parameters for redeemWinnings instruction
|
|
@@ -244,7 +255,7 @@ export interface WithdrawFromPositionParams {
|
|
|
244
255
|
* Parameters for activateMarket instruction
|
|
245
256
|
*/
|
|
246
257
|
export interface ActivateMarketParams {
|
|
247
|
-
|
|
258
|
+
manager: PublicKey;
|
|
248
259
|
marketId: bigint;
|
|
249
260
|
}
|
|
250
261
|
/**
|
|
@@ -255,6 +266,7 @@ export interface MatchOrdersMultiParams {
|
|
|
255
266
|
market: PublicKey;
|
|
256
267
|
baseMint: PublicKey;
|
|
257
268
|
quoteMint: PublicKey;
|
|
269
|
+
feeReceiver: PublicKey;
|
|
258
270
|
takerOrder: SignedOrder;
|
|
259
271
|
makerOrders: SignedOrder[];
|
|
260
272
|
makerFillAmounts: bigint[];
|
|
@@ -272,12 +284,58 @@ export interface SetAuthorityParams {
|
|
|
272
284
|
* Parameters for createOrderbook instruction
|
|
273
285
|
*/
|
|
274
286
|
export interface CreateOrderbookParams {
|
|
275
|
-
|
|
287
|
+
manager: PublicKey;
|
|
276
288
|
market: PublicKey;
|
|
277
289
|
mintA: PublicKey;
|
|
278
290
|
mintB: PublicKey;
|
|
291
|
+
feeReceiver: PublicKey;
|
|
292
|
+
mintADepositMint: PublicKey;
|
|
293
|
+
mintBDepositMint: PublicKey;
|
|
279
294
|
recentSlot: bigint;
|
|
280
295
|
baseIndex: number;
|
|
296
|
+
mintAOutcomeIndex: number;
|
|
297
|
+
mintBOutcomeIndex: number;
|
|
298
|
+
}
|
|
299
|
+
/**
|
|
300
|
+
* Parameters for setManager instruction
|
|
301
|
+
*/
|
|
302
|
+
export interface SetManagerParams {
|
|
303
|
+
authority: PublicKey;
|
|
304
|
+
newManager: PublicKey;
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* One per-market fee update.
|
|
308
|
+
*/
|
|
309
|
+
export interface MarketFeeUpdate {
|
|
310
|
+
market: PublicKey;
|
|
311
|
+
makerFeeBps: number;
|
|
312
|
+
takerFeeBps: number;
|
|
313
|
+
}
|
|
314
|
+
/**
|
|
315
|
+
* Parameters for setMarketFees instruction.
|
|
316
|
+
*/
|
|
317
|
+
export interface SetMarketFeesParams {
|
|
318
|
+
manager: PublicKey;
|
|
319
|
+
updates: MarketFeeUpdate[];
|
|
320
|
+
}
|
|
321
|
+
/**
|
|
322
|
+
* Parameters for setFeeReceiver instruction.
|
|
323
|
+
*/
|
|
324
|
+
export interface SetFeeReceiverParams {
|
|
325
|
+
authority: PublicKey;
|
|
326
|
+
newFeeReceiver: PublicKey;
|
|
327
|
+
}
|
|
328
|
+
/**
|
|
329
|
+
* Parameters for create/update conditional mint metadata instructions.
|
|
330
|
+
*/
|
|
331
|
+
export interface ConditionalMetadataParams {
|
|
332
|
+
manager: PublicKey;
|
|
333
|
+
market: PublicKey;
|
|
334
|
+
depositMint: PublicKey;
|
|
335
|
+
outcomeIndex: number;
|
|
336
|
+
name: string;
|
|
337
|
+
symbol: string;
|
|
338
|
+
uri: string;
|
|
281
339
|
}
|
|
282
340
|
/**
|
|
283
341
|
* Parameters for whitelistDepositToken instruction
|
|
@@ -294,6 +352,16 @@ export interface DepositToGlobalParams {
|
|
|
294
352
|
mint: PublicKey;
|
|
295
353
|
amount: bigint;
|
|
296
354
|
}
|
|
355
|
+
/**
|
|
356
|
+
* Optional ALT behavior for depositToGlobal.
|
|
357
|
+
*/
|
|
358
|
+
export type DepositToGlobalAltContext = {
|
|
359
|
+
kind: "create";
|
|
360
|
+
recentSlot: bigint;
|
|
361
|
+
} | {
|
|
362
|
+
kind: "extend";
|
|
363
|
+
lookupTable: PublicKey;
|
|
364
|
+
};
|
|
297
365
|
/**
|
|
298
366
|
* Parameters for globalToMarketDeposit instruction
|
|
299
367
|
*/
|
|
@@ -320,7 +388,7 @@ export interface InitPositionTokensParams {
|
|
|
320
388
|
* Parameters for extendPositionTokens instruction
|
|
321
389
|
*/
|
|
322
390
|
export interface ExtendPositionTokensParams {
|
|
323
|
-
|
|
391
|
+
operator: PublicKey;
|
|
324
392
|
user: PublicKey;
|
|
325
393
|
market: PublicKey;
|
|
326
394
|
lookupTable: PublicKey;
|
|
@@ -339,6 +407,7 @@ export interface DepositAndSwapParams {
|
|
|
339
407
|
market: PublicKey;
|
|
340
408
|
baseMint: PublicKey;
|
|
341
409
|
quoteMint: PublicKey;
|
|
410
|
+
feeReceiver: PublicKey;
|
|
342
411
|
takerOrder: SignedOrder;
|
|
343
412
|
takerIsFullFill: boolean;
|
|
344
413
|
takerIsDeposit: boolean;
|
|
@@ -354,6 +423,49 @@ export interface WithdrawFromGlobalParams {
|
|
|
354
423
|
mint: PublicKey;
|
|
355
424
|
amount: bigint;
|
|
356
425
|
}
|
|
426
|
+
/**
|
|
427
|
+
* Parameters for closePositionAlt instruction.
|
|
428
|
+
*/
|
|
429
|
+
export interface ClosePositionAltParams {
|
|
430
|
+
operator: PublicKey;
|
|
431
|
+
position: PublicKey;
|
|
432
|
+
market: PublicKey;
|
|
433
|
+
lookupTable: PublicKey;
|
|
434
|
+
}
|
|
435
|
+
/**
|
|
436
|
+
* Parameters for closeOrderStatus instruction.
|
|
437
|
+
*/
|
|
438
|
+
export interface CloseOrderStatusParams {
|
|
439
|
+
operator: PublicKey;
|
|
440
|
+
orderHash: Buffer;
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* Parameters for closePositionTokenAccounts instruction.
|
|
444
|
+
*/
|
|
445
|
+
export interface ClosePositionTokenAccountsParams {
|
|
446
|
+
operator: PublicKey;
|
|
447
|
+
market: PublicKey;
|
|
448
|
+
position: PublicKey;
|
|
449
|
+
depositMints: PublicKey[];
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Parameters for closeOrderbookAlt instruction.
|
|
453
|
+
*/
|
|
454
|
+
export interface CloseOrderbookAltParams {
|
|
455
|
+
operator: PublicKey;
|
|
456
|
+
orderbook: PublicKey;
|
|
457
|
+
market: PublicKey;
|
|
458
|
+
lookupTable: PublicKey;
|
|
459
|
+
}
|
|
460
|
+
/**
|
|
461
|
+
* Parameters for closeOrderbook instruction.
|
|
462
|
+
*/
|
|
463
|
+
export interface CloseOrderbookParams {
|
|
464
|
+
operator: PublicKey;
|
|
465
|
+
orderbook: PublicKey;
|
|
466
|
+
market: PublicKey;
|
|
467
|
+
lookupTable: PublicKey;
|
|
468
|
+
}
|
|
357
469
|
/**
|
|
358
470
|
* Result from transaction builders
|
|
359
471
|
*/
|
|
@@ -377,14 +489,17 @@ export interface InitializeAccounts {
|
|
|
377
489
|
export interface CreateMarketAccounts {
|
|
378
490
|
exchange: PublicKey;
|
|
379
491
|
market: PublicKey;
|
|
492
|
+
conditionTombstone: PublicKey;
|
|
380
493
|
}
|
|
381
494
|
/**
|
|
382
495
|
* Accounts returned from addDepositMint
|
|
383
496
|
*/
|
|
384
497
|
export interface AddDepositMintAccounts {
|
|
498
|
+
exchange: PublicKey;
|
|
385
499
|
market: PublicKey;
|
|
386
500
|
vault: PublicKey;
|
|
387
501
|
mintAuthority: PublicKey;
|
|
502
|
+
globalDepositToken: PublicKey;
|
|
388
503
|
conditionalMints: PublicKey[];
|
|
389
504
|
}
|
|
390
505
|
/**
|
|
@@ -407,6 +522,8 @@ export interface MergeCompleteSetAccounts {
|
|
|
407
522
|
* Accounts returned from cancelOrder
|
|
408
523
|
*/
|
|
409
524
|
export interface CancelOrderAccounts {
|
|
525
|
+
exchange: PublicKey;
|
|
526
|
+
market: PublicKey;
|
|
410
527
|
orderStatus: PublicKey;
|
|
411
528
|
}
|
|
412
529
|
/**
|
|
@@ -441,6 +558,7 @@ export interface ActivateMarketAccounts {
|
|
|
441
558
|
* Accounts returned from matchOrdersMulti
|
|
442
559
|
*/
|
|
443
560
|
export interface MatchOrdersMultiAccounts {
|
|
561
|
+
orderbook: PublicKey;
|
|
444
562
|
takerOrderStatus: PublicKey;
|
|
445
563
|
takerPosition: PublicKey;
|
|
446
564
|
makerOrderStatuses: PublicKey[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/program/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAMzD;;GAEG;AACH,oBAAY,YAAY;IACtB,OAAO,IAAI;IACX,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,SAAS,IAAI;CACd;AAED;;;;GAIG;AACH,oBAAY,SAAS;IACnB,GAAG,IAAI;IACP,GAAG,IAAI;CACR;AAMD;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/program/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/program/types.ts"],"names":[],"mappings":";;;AAEA,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E;;GAEG;AACH,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,qDAAW,CAAA;IACX,mDAAU,CAAA;IACV,uDAAY,CAAA;IACZ,yDAAa,CAAA;AACf,CAAC,EALW,YAAY,4BAAZ,YAAY,QAKvB;AAED;;;;GAIG;AACH,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,uCAAO,CAAA;IACP,uCAAO,CAAA;AACT,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB","sourcesContent":["import { PublicKey, Transaction } from \"@solana/web3.js\";\n\n// ============================================================================\n// ENUMS\n// ============================================================================\n\n/**\n * Market status enum matching on-chain representation\n */\nexport enum MarketStatus {\n Pending = 0,\n Active = 1,\n Resolved = 2,\n Cancelled = 3,\n}\n\n/**\n * Order side enum\n * BID = buyer wants base tokens (pays quote)\n * ASK = seller offers base tokens (receives quote)\n */\nexport enum OrderSide {\n BID = 0,\n ASK = 1,\n}\n\n// ============================================================================\n// ACCOUNT TYPES\n// ============================================================================\n\n/**\n * Exchange account - singleton central state\n * PDA: [\"central_state\"]\n * Size: 88 bytes\n */\nexport interface Exchange {\n discriminator: Buffer; // 8 bytes\n authority: PublicKey; // 32 bytes - initial admin\n operator: PublicKey; // 32 bytes - can perform operational tasks\n marketCount: bigint; // u64 - incremented for each market\n paused: boolean; // u8 - 0 = active, 1 = paused\n bump: number; // u8\n depositTokenCount: number; // u16 - number of whitelisted deposit tokens\n}\n\n/**\n * Market account\n * PDA: [\"market\", market_id (u64)]\n * Size: 120 bytes\n */\nexport interface Market {\n discriminator: Buffer; // 8 bytes\n marketId: bigint; // u64 - auto-assigned, sequential\n numOutcomes: number; // u8 - 2-6 outcomes supported\n status: MarketStatus; // u8\n winningOutcome: number; // u8\n hasWinningOutcome: boolean; // u8\n bump: number; // u8\n oracle: PublicKey; // 32 bytes - who can settle the market\n questionId: Buffer; // 32 bytes\n conditionId: Buffer; // 32 bytes - derived from oracle + questionId + numOutcomes\n}\n\n/**\n * Order status account - tracks partial fills and cancellations\n * PDA: [\"order_status\", order_hash (32 bytes)]\n * Size: 24 bytes\n */\nexport interface OrderStatus {\n discriminator: Buffer; // 8 bytes\n remaining: bigint; // u64 - maker_amount not yet filled\n isCancelled: boolean; // u8\n}\n\n/**\n * User nonce account - replay protection\n * PDA: [\"user_nonce\", user_pubkey (32 bytes)]\n * Size: 16 bytes\n */\nexport interface UserNonce {\n discriminator: Buffer; // 8 bytes\n nonce: bigint; // u64 - incremented per order\n}\n\n/**\n * Position account - user's state in a market\n * PDA: [\"position\", owner (32 bytes), market (32 bytes)]\n * Size: 80 bytes\n */\nexport interface Position {\n discriminator: Buffer; // 8 bytes\n owner: PublicKey; // 32 bytes\n market: PublicKey; // 32 bytes\n bump: number; // u8\n}\n\n/**\n * Orderbook account - links market to token pair and lookup table\n * PDA: [\"orderbook\", mint_a (32 bytes), mint_b (32 bytes)]\n * Size: 144 bytes\n */\nexport interface Orderbook {\n discriminator: Buffer; // 8 bytes\n market: PublicKey; // 32 bytes\n mintA: PublicKey; // 32 bytes\n mintB: PublicKey; // 32 bytes\n lookupTable: PublicKey; // 32 bytes\n baseIndex: number; // u8\n bump: number; // u8\n}\n\n/**\n * GlobalDepositToken whitelist account.\n * PDA: [\"global_deposit\", mint]\n * Size: 48 bytes\n */\nexport interface GlobalDepositToken {\n discriminator: Buffer; // 8 bytes\n mint: PublicKey; // 32 bytes\n active: boolean; // u8\n bump: number; // u8\n index: number; // u16 - ALT ordering index\n}\n\n// ============================================================================\n// ORDER TYPES\n// ============================================================================\n\n/**\n * Signed order format (233 bytes)\n * Full order with all fields for submission, cancellation, and hashing\n */\nexport interface SignedOrder {\n nonce: number; // u32 - order ID + replay protection (serialized as u64 LE on wire)\n salt: bigint; // u64 - random salt for order uniqueness\n maker: PublicKey; // 32 bytes - signer\n market: PublicKey; // 32 bytes\n baseMint: PublicKey; // 32 bytes - token being bought/sold\n quoteMint: PublicKey; // 32 bytes - payment token\n side: OrderSide; // u8 - 0=BID, 1=ASK\n amountIn: bigint; // u64 - what maker gives\n amountOut: bigint; // u64 - what maker receives\n expiration: bigint; // i64 - unix timestamp, 0=no expiration\n signature: Buffer; // 64 bytes - Ed25519 signature\n}\n\n/**\n * Alias matching Rust v2 naming.\n */\nexport type OrderPayload = SignedOrder;\n\n/**\n * Compact order format (37 bytes)\n * Transaction-optimized version: nonce is u32, no maker field (derived on-chain from Position PDA)\n */\nexport interface Order {\n nonce: number; // u32 (4 bytes) - truncated from SignedOrder's u64 nonce\n salt: bigint; // u64 - random salt for order uniqueness\n side: OrderSide; // u8\n amountIn: bigint; // u64\n amountOut: bigint; // u64\n expiration: bigint; // i64\n}\n\n// ============================================================================\n// PARAMETER TYPES\n// ============================================================================\n\n/**\n * Parameters for initialize instruction\n */\nexport interface InitializeParams {\n authority: PublicKey;\n}\n\n/**\n * Parameters for createMarket instruction\n */\nexport interface CreateMarketParams {\n authority: PublicKey;\n numOutcomes: number; // 2-6\n oracle: PublicKey;\n questionId: Buffer; // 32 bytes\n}\n\n/**\n * Metadata for a single outcome token\n */\nexport interface OutcomeMetadata {\n name: string;\n symbol: string;\n uri: string;\n}\n\n/**\n * Parameters for addDepositMint instruction\n */\nexport interface AddDepositMintParams {\n authority: PublicKey;\n depositMint: PublicKey;\n outcomeMetadata: OutcomeMetadata[];\n}\n\n/**\n * Parameters for deposit (mint complete set) instruction.\n */\nexport interface BuildDepositParams {\n user: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for merge (merge complete set) instruction.\n */\nexport interface BuildMergeParams {\n user: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for cancelOrder instruction\n */\nexport interface CancelOrderParams {\n maker: PublicKey;\n order: SignedOrder;\n}\n\n/**\n * Parameters for incrementNonce instruction\n */\nexport interface IncrementNonceParams {\n user: PublicKey;\n}\n\n/**\n * Parameters for settleMarket instruction\n */\nexport interface SettleMarketParams {\n oracle: PublicKey;\n marketId: bigint;\n winningOutcome: number;\n}\n\n/**\n * Parameters for redeemWinnings instruction\n */\nexport interface RedeemWinningsParams {\n user: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for setPaused instruction\n */\nexport interface SetPausedParams {\n authority: PublicKey;\n paused: boolean;\n}\n\n/**\n * Parameters for setOperator instruction\n */\nexport interface SetOperatorParams {\n authority: PublicKey;\n newOperator: PublicKey;\n}\n\n/**\n * Parameters for withdrawFromPosition instruction\n */\nexport interface WithdrawFromPositionParams {\n user: PublicKey;\n market: PublicKey;\n mint: PublicKey; // Can be deposit mint or conditional mint\n amount: bigint;\n outcomeIndex: number; // u8 outcome index\n}\n\n/**\n * Parameters for activateMarket instruction\n */\nexport interface ActivateMarketParams {\n authority: PublicKey;\n marketId: bigint;\n}\n\n/**\n * Parameters for matchOrdersMulti instruction\n */\nexport interface MatchOrdersMultiParams {\n operator: PublicKey;\n market: PublicKey;\n baseMint: PublicKey;\n quoteMint: PublicKey;\n takerOrder: SignedOrder;\n makerOrders: SignedOrder[];\n makerFillAmounts: bigint[]; // Per maker - what each maker gives\n takerFillAmounts: bigint[]; // Per maker - what taker gives to each maker\n fullFillBitmask: number; // u8 bitmask: bit 7 = taker, bits 0..n = makers\n}\n\n/**\n * Parameters for setAuthority instruction\n */\nexport interface SetAuthorityParams {\n currentAuthority: PublicKey;\n newAuthority: PublicKey;\n}\n\n/**\n * Parameters for createOrderbook instruction\n */\nexport interface CreateOrderbookParams {\n authority: PublicKey;\n market: PublicKey;\n mintA: PublicKey;\n mintB: PublicKey;\n recentSlot: bigint;\n baseIndex: number;\n}\n\n/**\n * Parameters for whitelistDepositToken instruction\n */\nexport interface WhitelistDepositTokenParams {\n authority: PublicKey;\n mint: PublicKey;\n}\n\n/**\n * Parameters for depositToGlobal instruction\n */\nexport interface DepositToGlobalParams {\n user: PublicKey;\n mint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for globalToMarketDeposit instruction\n */\nexport interface GlobalToMarketDepositParams {\n user: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for initPositionTokens instruction\n */\nexport interface InitPositionTokensParams {\n payer: PublicKey;\n user: PublicKey;\n market: PublicKey;\n depositMints: PublicKey[];\n recentSlot: bigint;\n}\n\n/**\n * Parameters for depositAndSwap instruction\n */\n/**\n * Parameters for extendPositionTokens instruction\n */\nexport interface ExtendPositionTokensParams {\n payer: PublicKey;\n user: PublicKey;\n market: PublicKey;\n lookupTable: PublicKey;\n depositMints: PublicKey[];\n}\n\nexport interface MakerFill {\n order: SignedOrder;\n makerFillAmount: bigint;\n takerFillAmount: bigint;\n isFullFill: boolean;\n isDeposit: boolean;\n depositMint: PublicKey;\n}\n\nexport interface DepositAndSwapParams {\n operator: PublicKey;\n market: PublicKey;\n baseMint: PublicKey;\n quoteMint: PublicKey;\n takerOrder: SignedOrder;\n takerIsFullFill: boolean;\n takerIsDeposit: boolean;\n takerDepositMint: PublicKey;\n numOutcomes: number;\n makers: MakerFill[];\n}\n\n/**\n * Parameters for withdrawFromGlobal instruction\n */\nexport interface WithdrawFromGlobalParams {\n user: PublicKey;\n mint: PublicKey;\n amount: bigint;\n}\n\n// ============================================================================\n// BUILDER RESULT TYPES\n// ============================================================================\n\n/**\n * Result from transaction builders\n */\nexport interface BuildResult<T = Record<string, PublicKey>> {\n /** Unsigned transaction ready for signing */\n transaction: Transaction;\n /** Key accounts involved in the transaction */\n accounts: T;\n /** Serialize transaction to base64 */\n serialize: () => string;\n}\n\n/**\n * Accounts returned from initialize\n */\nexport interface InitializeAccounts {\n exchange: PublicKey;\n}\n\n/**\n * Accounts returned from createMarket\n */\nexport interface CreateMarketAccounts {\n exchange: PublicKey;\n market: PublicKey;\n}\n\n/**\n * Accounts returned from addDepositMint\n */\nexport interface AddDepositMintAccounts {\n market: PublicKey;\n vault: PublicKey;\n mintAuthority: PublicKey;\n conditionalMints: PublicKey[];\n}\n\n/**\n * Accounts returned from mintCompleteSet\n */\nexport interface MintCompleteSetAccounts {\n position: PublicKey;\n vault: PublicKey;\n conditionalMints: PublicKey[];\n}\n\n/**\n * Accounts returned from mergeCompleteSet\n */\nexport interface MergeCompleteSetAccounts {\n position: PublicKey;\n vault: PublicKey;\n conditionalMints: PublicKey[];\n}\n\n/**\n * Accounts returned from cancelOrder\n */\nexport interface CancelOrderAccounts {\n orderStatus: PublicKey;\n}\n\n/**\n * Accounts returned from incrementNonce\n */\nexport interface IncrementNonceAccounts {\n userNonce: PublicKey;\n}\n\n/**\n * Accounts returned from settleMarket\n */\nexport interface SettleMarketAccounts {\n exchange: PublicKey;\n market: PublicKey;\n}\n\n/**\n * Accounts returned from redeemWinnings\n */\nexport interface RedeemWinningsAccounts {\n position: PublicKey;\n vault: PublicKey;\n winningMint: PublicKey;\n}\n\n/**\n * Accounts returned from activateMarket\n */\nexport interface ActivateMarketAccounts {\n exchange: PublicKey;\n market: PublicKey;\n}\n\n/**\n * Accounts returned from matchOrdersMulti\n */\nexport interface MatchOrdersMultiAccounts {\n takerOrderStatus: PublicKey;\n takerPosition: PublicKey;\n makerOrderStatuses: PublicKey[];\n makerPositions: PublicKey[];\n}\n\n// ============================================================================\n// ORDER CREATION TYPES\n// ============================================================================\n\n/**\n * Parameters for creating a bid order\n */\nexport interface BidOrderParams {\n nonce: number;\n salt?: bigint;\n maker: PublicKey;\n market: PublicKey;\n baseMint: PublicKey; // Token to buy\n quoteMint: PublicKey; // Token to pay with\n amountIn: bigint; // Quote tokens to give\n amountOut: bigint; // Base tokens to receive\n expiration?: bigint; // 0 = no expiration\n}\n\n/**\n * Parameters for creating an ask order\n */\nexport interface AskOrderParams {\n nonce: number;\n salt?: bigint;\n maker: PublicKey;\n market: PublicKey;\n baseMint: PublicKey; // Token to sell\n quoteMint: PublicKey; // Token to receive\n amountIn: bigint; // Base tokens to give\n amountOut: bigint; // Quote tokens to receive\n expiration?: bigint; // 0 = no expiration\n}\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/program/types.ts"],"names":[],"mappings":";;;AAEA,+EAA+E;AAC/E,QAAQ;AACR,+EAA+E;AAE/E;;GAEG;AACH,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,qDAAW,CAAA;IACX,mDAAU,CAAA;IACV,uDAAY,CAAA;IACZ,yDAAa,CAAA;AACf,CAAC,EALW,YAAY,4BAAZ,YAAY,QAKvB;AAED;;;;GAIG;AACH,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,uCAAO,CAAA;IACP,uCAAO,CAAA;AACT,CAAC,EAHW,SAAS,yBAAT,SAAS,QAGpB","sourcesContent":["import { PublicKey, Transaction } from \"@solana/web3.js\";\n\n// ============================================================================\n// ENUMS\n// ============================================================================\n\n/**\n * Market status enum matching on-chain representation\n */\nexport enum MarketStatus {\n Pending = 0,\n Active = 1,\n Resolved = 2,\n Cancelled = 3,\n}\n\n/**\n * Order side enum\n * BID = buyer wants base tokens (pays quote)\n * ASK = seller offers base tokens (receives quote)\n */\nexport enum OrderSide {\n BID = 0,\n ASK = 1,\n}\n\n// ============================================================================\n// ACCOUNT TYPES\n// ============================================================================\n\n/**\n * Exchange account - singleton central state\n * PDA: [\"central_state\"]\n * Size: 212 bytes\n */\nexport interface Exchange {\n discriminator: Buffer; // 8 bytes\n authority: PublicKey; // 32 bytes - initial admin\n operator: PublicKey; // 32 bytes - can perform operational tasks\n manager: PublicKey; // 32 bytes - can manage market setup\n marketCount: bigint; // u64 - incremented for each market\n paused: boolean; // u8 - 0 = active, 1 = paused\n bump: number; // u8\n depositTokenCount: number; // u16 - number of whitelisted deposit tokens\n feeReceiver: PublicKey; // 32 bytes - quote-leg fee receiver\n}\n\n/**\n * Market account\n * PDA: [\"market\", market_id (u64)]\n * Size: 212 bytes\n */\nexport interface Market {\n discriminator: Buffer; // 8 bytes\n marketId: bigint; // u64 - auto-assigned, sequential\n numOutcomes: number; // u8 - 2-6 outcomes supported\n status: MarketStatus; // u8\n bump: number; // u8\n makerFeeBps: number; // i16\n takerFeeBps: number; // i16\n oracle: PublicKey; // 32 bytes - who can settle the market\n questionId: Buffer; // 32 bytes\n conditionId: Buffer; // 32 bytes - derived from oracle + questionId + numOutcomes\n payoutNumerators: PayoutNumerators; // six u32 values; first numOutcomes are meaningful\n payoutDenominator: number; // u32 sum of meaningful payout numerators\n}\n\nexport type PayoutNumerators = [number, number, number, number, number, number];\n\n/**\n * Order status account - tracks partial fills and cancellations\n * PDA: [\"order_status\", order_hash (32 bytes)]\n * Size: 32 bytes\n */\nexport interface OrderStatus {\n discriminator: Buffer; // 8 bytes\n remaining: bigint; // u64 - maker_amount not yet filled\n baseRemaining: bigint; // u64 - base-side amount not yet filled\n isCancelled: boolean; // u8\n}\n\n/**\n * User nonce account - replay protection\n * PDA: [\"user_nonce\", user_pubkey (32 bytes)]\n * Size: 16 bytes\n */\nexport interface UserNonce {\n discriminator: Buffer; // 8 bytes\n nonce: bigint; // u64 - incremented per order\n}\n\n/**\n * Position account - user's state in a market\n * PDA: [\"position\", owner (32 bytes), market (32 bytes)]\n * Size: 80 bytes\n */\nexport interface Position {\n discriminator: Buffer; // 8 bytes\n owner: PublicKey; // 32 bytes\n market: PublicKey; // 32 bytes\n bump: number; // u8\n}\n\n/**\n * Orderbook account - links market to token pair and lookup table\n * PDA: [\"orderbook\", mint_a (32 bytes), mint_b (32 bytes)]\n * Size: 144 bytes\n */\nexport interface Orderbook {\n discriminator: Buffer; // 8 bytes\n market: PublicKey; // 32 bytes\n mintA: PublicKey; // 32 bytes\n mintB: PublicKey; // 32 bytes\n lookupTable: PublicKey; // 32 bytes\n baseIndex: number; // u8\n bump: number; // u8\n}\n\n/**\n * GlobalDepositToken whitelist account.\n * PDA: [\"global_deposit\", mint]\n * Size: 48 bytes\n */\nexport interface GlobalDepositToken {\n discriminator: Buffer; // 8 bytes\n mint: PublicKey; // 32 bytes\n active: boolean; // u8\n bump: number; // u8\n index: number; // u16 - ALT ordering index\n}\n\n// ============================================================================\n// ORDER TYPES\n// ============================================================================\n\n/**\n * Signed order format (233 bytes)\n * Full order with all fields for submission, cancellation, and hashing\n */\nexport interface SignedOrder {\n nonce: number; // u32 - order ID + replay protection (serialized as u64 LE on wire)\n salt: bigint; // u64 - random salt for order uniqueness\n maker: PublicKey; // 32 bytes - signer\n market: PublicKey; // 32 bytes\n baseMint: PublicKey; // 32 bytes - token being bought/sold\n quoteMint: PublicKey; // 32 bytes - payment token\n side: OrderSide; // u8 - 0=BID, 1=ASK\n amountIn: bigint; // u64 - what maker gives\n amountOut: bigint; // u64 - what maker receives\n expiration: bigint; // i64 - unix timestamp, 0=no expiration\n signature: Buffer; // 64 bytes - Ed25519 signature\n}\n\n/**\n * Alias matching Rust v2 naming.\n */\nexport type OrderPayload = SignedOrder;\n\n/**\n * Compact order format (37 bytes)\n * Transaction-optimized version: nonce is u32, no maker field (derived on-chain from Position PDA)\n */\nexport interface Order {\n nonce: number; // u32 (4 bytes) - truncated from SignedOrder's u64 nonce\n salt: bigint; // u64 - random salt for order uniqueness\n side: OrderSide; // u8\n amountIn: bigint; // u64\n amountOut: bigint; // u64\n expiration: bigint; // i64\n}\n\n// ============================================================================\n// PARAMETER TYPES\n// ============================================================================\n\n/**\n * Parameters for initialize instruction\n */\nexport interface InitializeParams {\n authority: PublicKey;\n}\n\n/**\n * Parameters for createMarket instruction\n */\nexport interface CreateMarketParams {\n manager: PublicKey;\n numOutcomes: number; // 2-6\n oracle: PublicKey;\n questionId: Buffer; // 32 bytes\n makerFeeBps: number;\n takerFeeBps: number;\n}\n\n/**\n * Parameters for addDepositMint instruction\n */\nexport interface AddDepositMintParams {\n manager: PublicKey;\n depositMint: PublicKey;\n}\n\n/**\n * Parameters for deposit (mint complete set) instruction.\n */\nexport interface BuildDepositParams {\n user: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for merge (merge complete set) instruction.\n */\nexport interface BuildMergeParams {\n user: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for cancelOrder instruction\n */\nexport interface CancelOrderParams {\n operator: PublicKey;\n market: PublicKey;\n order: SignedOrder;\n}\n\n/**\n * Parameters for incrementNonce instruction\n */\nexport interface IncrementNonceParams {\n user: PublicKey;\n}\n\n/**\n * Parameters for settleMarket instruction\n */\nexport interface SettleMarketParams {\n oracle: PublicKey;\n marketId: bigint;\n payoutNumerators: number[];\n}\n\n/**\n * Integer fixed-point metadata for two-sided scalar settlement.\n */\nexport interface ScalarResolutionParams {\n minValue: bigint;\n maxValue: bigint;\n resolvedValue: bigint;\n lowerOutcomeIndex: number;\n upperOutcomeIndex: number;\n numOutcomes: number;\n}\n\n/**\n * Parameters for redeemWinnings instruction\n */\nexport interface RedeemWinningsParams {\n user: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for setPaused instruction\n */\nexport interface SetPausedParams {\n authority: PublicKey;\n paused: boolean;\n}\n\n/**\n * Parameters for setOperator instruction\n */\nexport interface SetOperatorParams {\n authority: PublicKey;\n newOperator: PublicKey;\n}\n\n/**\n * Parameters for withdrawFromPosition instruction\n */\nexport interface WithdrawFromPositionParams {\n user: PublicKey;\n market: PublicKey;\n mint: PublicKey; // Can be deposit mint or conditional mint\n amount: bigint;\n outcomeIndex: number; // u8 outcome index\n}\n\n/**\n * Parameters for activateMarket instruction\n */\nexport interface ActivateMarketParams {\n manager: PublicKey;\n marketId: bigint;\n}\n\n/**\n * Parameters for matchOrdersMulti instruction\n */\nexport interface MatchOrdersMultiParams {\n operator: PublicKey;\n market: PublicKey;\n baseMint: PublicKey;\n quoteMint: PublicKey;\n feeReceiver: PublicKey;\n takerOrder: SignedOrder;\n makerOrders: SignedOrder[];\n makerFillAmounts: bigint[]; // Per maker - what each maker gives\n takerFillAmounts: bigint[]; // Per maker - what taker gives to each maker\n fullFillBitmask: number; // u8 bitmask: bit 7 = taker, bits 0..n = makers\n}\n\n/**\n * Parameters for setAuthority instruction\n */\nexport interface SetAuthorityParams {\n currentAuthority: PublicKey;\n newAuthority: PublicKey;\n}\n\n/**\n * Parameters for createOrderbook instruction\n */\nexport interface CreateOrderbookParams {\n manager: PublicKey;\n market: PublicKey;\n mintA: PublicKey;\n mintB: PublicKey;\n feeReceiver: PublicKey;\n mintADepositMint: PublicKey;\n mintBDepositMint: PublicKey;\n recentSlot: bigint;\n baseIndex: number; // Which supplied mint is base: 0 = mintA, 1 = mintB\n mintAOutcomeIndex: number;\n mintBOutcomeIndex: number;\n}\n\n/**\n * Parameters for setManager instruction\n */\nexport interface SetManagerParams {\n authority: PublicKey;\n newManager: PublicKey;\n}\n\n/**\n * One per-market fee update.\n */\nexport interface MarketFeeUpdate {\n market: PublicKey;\n makerFeeBps: number;\n takerFeeBps: number;\n}\n\n/**\n * Parameters for setMarketFees instruction.\n */\nexport interface SetMarketFeesParams {\n manager: PublicKey;\n updates: MarketFeeUpdate[];\n}\n\n/**\n * Parameters for setFeeReceiver instruction.\n */\nexport interface SetFeeReceiverParams {\n authority: PublicKey;\n newFeeReceiver: PublicKey;\n}\n\n/**\n * Parameters for create/update conditional mint metadata instructions.\n */\nexport interface ConditionalMetadataParams {\n manager: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n outcomeIndex: number;\n name: string;\n symbol: string;\n uri: string;\n}\n\n/**\n * Parameters for whitelistDepositToken instruction\n */\nexport interface WhitelistDepositTokenParams {\n authority: PublicKey;\n mint: PublicKey;\n}\n\n/**\n * Parameters for depositToGlobal instruction\n */\nexport interface DepositToGlobalParams {\n user: PublicKey;\n mint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Optional ALT behavior for depositToGlobal.\n */\nexport type DepositToGlobalAltContext =\n | { kind: \"create\"; recentSlot: bigint }\n | { kind: \"extend\"; lookupTable: PublicKey };\n\n/**\n * Parameters for globalToMarketDeposit instruction\n */\nexport interface GlobalToMarketDepositParams {\n user: PublicKey;\n market: PublicKey;\n depositMint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for initPositionTokens instruction\n */\nexport interface InitPositionTokensParams {\n payer: PublicKey;\n user: PublicKey;\n market: PublicKey;\n depositMints: PublicKey[];\n recentSlot: bigint;\n}\n\n/**\n * Parameters for depositAndSwap instruction\n */\n/**\n * Parameters for extendPositionTokens instruction\n */\nexport interface ExtendPositionTokensParams {\n operator: PublicKey;\n user: PublicKey;\n market: PublicKey;\n lookupTable: PublicKey;\n depositMints: PublicKey[];\n}\n\nexport interface MakerFill {\n order: SignedOrder;\n makerFillAmount: bigint;\n takerFillAmount: bigint;\n isFullFill: boolean;\n isDeposit: boolean;\n depositMint: PublicKey;\n}\n\nexport interface DepositAndSwapParams {\n operator: PublicKey;\n market: PublicKey;\n baseMint: PublicKey;\n quoteMint: PublicKey;\n feeReceiver: PublicKey;\n takerOrder: SignedOrder;\n takerIsFullFill: boolean;\n takerIsDeposit: boolean;\n takerDepositMint: PublicKey;\n numOutcomes: number;\n makers: MakerFill[];\n}\n\n/**\n * Parameters for withdrawFromGlobal instruction\n */\nexport interface WithdrawFromGlobalParams {\n user: PublicKey;\n mint: PublicKey;\n amount: bigint;\n}\n\n/**\n * Parameters for closePositionAlt instruction.\n */\nexport interface ClosePositionAltParams {\n operator: PublicKey;\n position: PublicKey;\n market: PublicKey;\n lookupTable: PublicKey;\n}\n\n/**\n * Parameters for closeOrderStatus instruction.\n */\nexport interface CloseOrderStatusParams {\n operator: PublicKey;\n orderHash: Buffer;\n}\n\n/**\n * Parameters for closePositionTokenAccounts instruction.\n */\nexport interface ClosePositionTokenAccountsParams {\n operator: PublicKey;\n market: PublicKey;\n position: PublicKey;\n depositMints: PublicKey[];\n}\n\n/**\n * Parameters for closeOrderbookAlt instruction.\n */\nexport interface CloseOrderbookAltParams {\n operator: PublicKey;\n orderbook: PublicKey;\n market: PublicKey;\n lookupTable: PublicKey;\n}\n\n/**\n * Parameters for closeOrderbook instruction.\n */\nexport interface CloseOrderbookParams {\n operator: PublicKey;\n orderbook: PublicKey;\n market: PublicKey;\n lookupTable: PublicKey;\n}\n\n// ============================================================================\n// BUILDER RESULT TYPES\n// ============================================================================\n\n/**\n * Result from transaction builders\n */\nexport interface BuildResult<T = Record<string, PublicKey>> {\n /** Unsigned transaction ready for signing */\n transaction: Transaction;\n /** Key accounts involved in the transaction */\n accounts: T;\n /** Serialize transaction to base64 */\n serialize: () => string;\n}\n\n/**\n * Accounts returned from initialize\n */\nexport interface InitializeAccounts {\n exchange: PublicKey;\n}\n\n/**\n * Accounts returned from createMarket\n */\nexport interface CreateMarketAccounts {\n exchange: PublicKey;\n market: PublicKey;\n conditionTombstone: PublicKey;\n}\n\n/**\n * Accounts returned from addDepositMint\n */\nexport interface AddDepositMintAccounts {\n exchange: PublicKey;\n market: PublicKey;\n vault: PublicKey;\n mintAuthority: PublicKey;\n globalDepositToken: PublicKey;\n conditionalMints: PublicKey[];\n}\n\n/**\n * Accounts returned from mintCompleteSet\n */\nexport interface MintCompleteSetAccounts {\n position: PublicKey;\n vault: PublicKey;\n conditionalMints: PublicKey[];\n}\n\n/**\n * Accounts returned from mergeCompleteSet\n */\nexport interface MergeCompleteSetAccounts {\n position: PublicKey;\n vault: PublicKey;\n conditionalMints: PublicKey[];\n}\n\n/**\n * Accounts returned from cancelOrder\n */\nexport interface CancelOrderAccounts {\n exchange: PublicKey;\n market: PublicKey;\n orderStatus: PublicKey;\n}\n\n/**\n * Accounts returned from incrementNonce\n */\nexport interface IncrementNonceAccounts {\n userNonce: PublicKey;\n}\n\n/**\n * Accounts returned from settleMarket\n */\nexport interface SettleMarketAccounts {\n exchange: PublicKey;\n market: PublicKey;\n}\n\n/**\n * Accounts returned from redeemWinnings\n */\nexport interface RedeemWinningsAccounts {\n position: PublicKey;\n vault: PublicKey;\n winningMint: PublicKey;\n}\n\n/**\n * Accounts returned from activateMarket\n */\nexport interface ActivateMarketAccounts {\n exchange: PublicKey;\n market: PublicKey;\n}\n\n/**\n * Accounts returned from matchOrdersMulti\n */\nexport interface MatchOrdersMultiAccounts {\n orderbook: PublicKey;\n takerOrderStatus: PublicKey;\n takerPosition: PublicKey;\n makerOrderStatuses: PublicKey[];\n makerPositions: PublicKey[];\n}\n\n// ============================================================================\n// ORDER CREATION TYPES\n// ============================================================================\n\n/**\n * Parameters for creating a bid order\n */\nexport interface BidOrderParams {\n nonce: number;\n salt?: bigint;\n maker: PublicKey;\n market: PublicKey;\n baseMint: PublicKey; // Token to buy\n quoteMint: PublicKey; // Token to pay with\n amountIn: bigint; // Quote tokens to give\n amountOut: bigint; // Base tokens to receive\n expiration?: bigint; // 0 = no expiration\n}\n\n/**\n * Parameters for creating an ask order\n */\nexport interface AskOrderParams {\n nonce: number;\n salt?: bigint;\n maker: PublicKey;\n market: PublicKey;\n baseMint: PublicKey; // Token to sell\n quoteMint: PublicKey; // Token to receive\n amountIn: bigint; // Base tokens to give\n amountOut: bigint; // Quote tokens to receive\n expiration?: bigint; // 0 = no expiration\n}\n"]}
|
package/dist/program/utils.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PublicKey } from "@solana/web3.js";
|
|
2
|
+
import type { ScalarResolutionParams } from "./types";
|
|
2
3
|
/**
|
|
3
4
|
* Convert a bigint to little-endian bytes
|
|
4
5
|
* @param value - The value to convert
|
|
@@ -33,6 +34,10 @@ export declare function toU64Le(value: bigint): Buffer;
|
|
|
33
34
|
* Convert a number to u32 little-endian buffer
|
|
34
35
|
*/
|
|
35
36
|
export declare function toU32Le(value: number): Buffer;
|
|
37
|
+
/**
|
|
38
|
+
* Convert a number to i16 little-endian buffer
|
|
39
|
+
*/
|
|
40
|
+
export declare function toI16Le(value: number): Buffer;
|
|
36
41
|
/**
|
|
37
42
|
* Convert a bigint to i64 little-endian buffer (signed)
|
|
38
43
|
*/
|
|
@@ -56,11 +61,11 @@ export declare function deriveConditionId(oracle: PublicKey, questionId: Buffer,
|
|
|
56
61
|
* Derive Associated Token Address
|
|
57
62
|
* @param mint - The token mint
|
|
58
63
|
* @param owner - The owner of the ATA
|
|
59
|
-
* @param token2022 -
|
|
64
|
+
* @param token2022 - Deprecated. Conditional tokens now use SPL Token.
|
|
60
65
|
*/
|
|
61
66
|
export declare function getAssociatedTokenAddress(mint: PublicKey, owner: PublicKey, token2022?: boolean): PublicKey;
|
|
62
67
|
/**
|
|
63
|
-
* Get ATA for a conditional token (
|
|
68
|
+
* Get ATA for a conditional token (SPL Token)
|
|
64
69
|
*/
|
|
65
70
|
export declare function getConditionalTokenAta(mint: PublicKey, owner: PublicKey): PublicKey;
|
|
66
71
|
/**
|
|
@@ -71,6 +76,14 @@ export declare function getDepositTokenAta(mint: PublicKey, owner: PublicKey): P
|
|
|
71
76
|
* Serialize a string with u16 length prefix (little-endian)
|
|
72
77
|
*/
|
|
73
78
|
export declare function serializeString(str: string): Buffer;
|
|
79
|
+
/**
|
|
80
|
+
* Serialize a string with u32 length prefix (little-endian), enforcing max UTF-8 bytes.
|
|
81
|
+
*/
|
|
82
|
+
export declare function serializeStringU32(str: string, maxBytes: number): Buffer;
|
|
83
|
+
/**
|
|
84
|
+
* Serialize conditional metadata instruction strings.
|
|
85
|
+
*/
|
|
86
|
+
export declare function serializeConditionalMetadata(name: string, symbol: string, uri: string): Buffer;
|
|
74
87
|
/**
|
|
75
88
|
* Deserialize a string with u16 length prefix
|
|
76
89
|
* @returns [string, bytesConsumed]
|
|
@@ -84,8 +97,24 @@ export declare function validateOutcomes(numOutcomes: number): void;
|
|
|
84
97
|
* Validate that an outcome index is valid for a market
|
|
85
98
|
*/
|
|
86
99
|
export declare function validateOutcomeIndex(outcomeIndex: number, numOutcomes: number): void;
|
|
100
|
+
/**
|
|
101
|
+
* Validate a maker/taker fee pair against program rules.
|
|
102
|
+
*/
|
|
103
|
+
export declare function validateFeePair(makerFeeBps: number, takerFeeBps: number): void;
|
|
87
104
|
/**
|
|
88
105
|
* Validate that a buffer is exactly 32 bytes
|
|
89
106
|
*/
|
|
90
107
|
export declare function validate32Bytes(buffer: Buffer, name: string): void;
|
|
108
|
+
/**
|
|
109
|
+
* Build a winner-takes-all payout vector for a binary or multi-outcome market.
|
|
110
|
+
*/
|
|
111
|
+
export declare function winnerTakesAllPayoutNumerators(winningOutcome: number, numOutcomes: number): number[];
|
|
112
|
+
/**
|
|
113
|
+
* Convert a two-sided scalar resolution into program payout numerators.
|
|
114
|
+
*
|
|
115
|
+
* All values are integer fixed-point BigInts. The resolved value is clamped to
|
|
116
|
+
* [minValue, maxValue], reduced by GCD, and checked against the program's u32
|
|
117
|
+
* payout representation.
|
|
118
|
+
*/
|
|
119
|
+
export declare function scalarToPayoutNumerators(params: ScalarResolutionParams): number[];
|
|
91
120
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/program/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/program/utils.ts"],"names":[],"mappings":"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"}
|