@lightconexyz/lightcone-sdk 0.5.2 → 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 +39 -5
- 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 +43 -4
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +70 -9
- 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 +21 -2
- package/dist/domain/admin/client.d.ts.map +1 -1
- package/dist/domain/admin/client.js +90 -4
- package/dist/domain/admin/client.js.map +1 -1
- package/dist/domain/admin/wire.d.ts +292 -7
- package/dist/domain/admin/wire.d.ts.map +1 -1
- package/dist/domain/admin/wire.js.map +1 -1
- package/dist/domain/faucet.d.ts +25 -0
- package/dist/domain/faucet.d.ts.map +1 -0
- package/dist/domain/faucet.js +3 -0
- package/dist/domain/faucet.js.map +1 -0
- package/dist/domain/index.d.ts +2 -0
- package/dist/domain/index.d.ts.map +1 -1
- package/dist/domain/index.js +3 -1
- package/dist/domain/index.js.map +1 -1
- package/dist/domain/market/client.d.ts +23 -2
- package/dist/domain/market/client.d.ts.map +1 -1
- package/dist/domain/market/client.js +31 -1
- package/dist/domain/market/client.js.map +1 -1
- package/dist/domain/market/convert.d.ts +10 -0
- package/dist/domain/market/convert.d.ts.map +1 -1
- package/dist/domain/market/convert.js +44 -5
- package/dist/domain/market/convert.js.map +1 -1
- package/dist/domain/market/icon.d.ts +17 -0
- package/dist/domain/market/icon.d.ts.map +1 -0
- package/dist/domain/market/icon.js +25 -0
- package/dist/domain/market/icon.js.map +1 -0
- package/dist/domain/market/index.d.ts +21 -5
- package/dist/domain/market/index.d.ts.map +1 -1
- package/dist/domain/market/index.js +15 -1
- package/dist/domain/market/index.js.map +1 -1
- package/dist/domain/market/outcome.d.ts +4 -1
- package/dist/domain/market/outcome.d.ts.map +1 -1
- package/dist/domain/market/outcome.js +8 -7
- package/dist/domain/market/outcome.js.map +1 -1
- package/dist/domain/market/tokens.d.ts +55 -3
- package/dist/domain/market/tokens.d.ts.map +1 -1
- package/dist/domain/market/tokens.js +105 -9
- package/dist/domain/market/tokens.js.map +1 -1
- package/dist/domain/market/wire.d.ts +69 -10
- 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 +66 -0
- package/dist/domain/metrics/client.d.ts.map +1 -0
- package/dist/domain/metrics/client.js +124 -0
- package/dist/domain/metrics/client.js.map +1 -0
- package/dist/domain/metrics/index.d.ts +3 -0
- package/dist/domain/metrics/index.d.ts.map +1 -0
- package/dist/domain/metrics/index.js +19 -0
- package/dist/domain/metrics/index.js.map +1 -0
- package/dist/domain/metrics/wire.d.ts +346 -0
- package/dist/domain/metrics/wire.d.ts.map +1 -0
- package/dist/domain/metrics/wire.js +3 -0
- package/dist/domain/metrics/wire.js.map +1 -0
- package/dist/domain/notification/client.d.ts +6 -0
- package/dist/domain/notification/client.d.ts.map +1 -1
- package/dist/domain/notification/client.js +10 -0
- package/dist/domain/notification/client.js.map +1 -1
- package/dist/domain/notification/index.d.ts +6 -2
- 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 +34 -6
- package/dist/domain/order/client.d.ts.map +1 -1
- package/dist/domain/order/client.js +88 -21
- package/dist/domain/order/client.js.map +1 -1
- package/dist/domain/order/convert.d.ts +5 -5
- package/dist/domain/order/convert.d.ts.map +1 -1
- package/dist/domain/order/convert.js +3 -3
- package/dist/domain/order/convert.js.map +1 -1
- package/dist/domain/order/index.d.ts +3 -2
- 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/order/state.d.ts +9 -7
- package/dist/domain/order/state.d.ts.map +1 -1
- package/dist/domain/order/state.js +81 -28
- package/dist/domain/order/state.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/orderbook/index.d.ts +1 -1
- package/dist/domain/orderbook/index.d.ts.map +1 -1
- package/dist/domain/orderbook/index.js +3 -8
- package/dist/domain/orderbook/index.js.map +1 -1
- package/dist/domain/orderbook/state.d.ts +30 -7
- package/dist/domain/orderbook/state.d.ts.map +1 -1
- package/dist/domain/orderbook/state.js +41 -12
- package/dist/domain/orderbook/state.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 +66 -5
- package/dist/domain/position/client.d.ts.map +1 -1
- package/dist/domain/position/client.js +101 -9
- package/dist/domain/position/client.js.map +1 -1
- package/dist/domain/position/index.d.ts +3 -2
- package/dist/domain/position/index.d.ts.map +1 -1
- package/dist/domain/position/index.js.map +1 -1
- package/dist/domain/price_history/client.d.ts +12 -1
- package/dist/domain/price_history/client.d.ts.map +1 -1
- package/dist/domain/price_history/client.js +14 -0
- package/dist/domain/price_history/client.js.map +1 -1
- package/dist/domain/price_history/wire.d.ts +27 -0
- package/dist/domain/price_history/wire.d.ts.map +1 -1
- package/dist/domain/price_history/wire.js.map +1 -1
- package/dist/domain/referral/client.d.ts +6 -0
- package/dist/domain/referral/client.d.ts.map +1 -1
- package/dist/domain/referral/client.js +22 -9
- 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 +9 -0
- package/dist/http/client.d.ts.map +1 -1
- package/dist/http/client.js +29 -11
- package/dist/http/client.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/prelude.d.ts +16 -7
- package/dist/prelude.d.ts.map +1 -1
- package/dist/prelude.js +10 -7
- 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 +32 -24
- 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/shared/index.d.ts +1 -1
- package/dist/shared/index.d.ts.map +1 -1
- package/dist/shared/index.js +2 -1
- package/dist/shared/index.js.map +1 -1
- package/dist/shared/types.d.ts +1 -0
- package/dist/shared/types.d.ts.map +1 -1
- package/dist/shared/types.js +19 -0
- package/dist/shared/types.js.map +1 -1
- package/dist/ws/client.node.js +1 -1
- package/dist/ws/client.node.js.map +1 -1
- package/dist/ws/index.d.ts +12 -1
- package/dist/ws/index.d.ts.map +1 -1
- package/dist/ws/index.js +20 -0
- package/dist/ws/index.js.map +1 -1
- package/dist/ws/subscriptions.d.ts +6 -0
- package/dist/ws/subscriptions.d.ts.map +1 -1
- package/dist/ws/subscriptions.js +4 -0
- package/dist/ws/subscriptions.js.map +1 -1
- package/package.json +1 -1
package/dist/privy/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/privy/index.ts"],"names":[],"mappings":"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","sourcesContent":["export * from \"./client\";\nimport { SdkError } from \"../error\";\nimport type { LimitOrderEnvelope, TriggerOrderEnvelope } from \"../program/envelope\";\n\nexport interface SignAndSendTxRequest {\n wallet_id: string;\n base64_tx: string;\n}\n\nexport interface SignAndSendTxResponse {\n hash: string;\n}\n\nexport interface PrivyOrderEnvelope {\n maker: string;\n nonce: number;\n salt: number;\n market_pubkey: string;\n base_token: string;\n quote_token: string;\n side: number;\n amount_in: number;\n amount_out: number;\n expiration?: number;\n orderbook_id: string;\n tif?: import(\"../shared\").TimeInForce;\n trigger_price?: number;\n trigger_type?: import(\"../shared\").TriggerType;\n deposit_source?: import(\"../shared\").DepositSource;\n}\n\nexport interface SignAndSendOrderRequest {\n wallet_id: string;\n order: PrivyOrderEnvelope;\n}\n\nexport type CancelTarget =\n | { cancel_type: \"limit\"; order_hash: string }\n | { cancel_type: \"trigger\"; trigger_order_id: string };\n\nexport type SignAndCancelOrderRequest = {\n wallet_id: string;\n maker: string;\n} & CancelTarget;\n\nexport interface SignAndCancelAllRequest {\n wallet_id: string;\n user_pubkey: string;\n orderbook_id: string;\n timestamp: number;\n salt: string;\n}\n\nexport interface ExportWalletRequest {\n wallet_id: string;\n decode_pubkey_base64: string;\n}\n\nexport interface ExportWalletResponse {\n encryption_type: string;\n ciphertext: string;\n encapsulated_key: string;\n}\n\nexport interface OrderFill {\n counterparty: string;\n counterparty_order_hash: string;\n fill_amount: string;\n price: string;\n is_maker: boolean;\n}\n\nexport interface LimitOrderResponse {\n order_hash: string;\n remaining: string;\n filled: string;\n fills: OrderFill[];\n}\n\nexport interface TriggerOrderResponse {\n trigger_order_id: string;\n order_hash: string;\n}\n\nexport type SignAndSendOrderResponse = LimitOrderResponse | TriggerOrderResponse;\n\nexport interface LimitCancelResponse {\n order_hash: string;\n remaining:
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/privy/index.ts"],"names":[],"mappings":"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","sourcesContent":["export * from \"./client\";\nimport { SdkError } from \"../error\";\nimport type { LimitOrderEnvelope, TriggerOrderEnvelope } from \"../program/envelope\";\n\nexport interface SignAndSendTxRequest {\n wallet_id: string;\n base64_tx: string;\n}\n\nexport interface SignAndSendTxResponse {\n hash: string;\n}\n\nexport interface PrivyOrderEnvelope {\n maker: string;\n nonce: number;\n salt: number;\n market_pubkey: string;\n base_token: string;\n quote_token: string;\n side: number;\n amount_in: number;\n amount_out: number;\n expiration?: number;\n orderbook_id: string;\n tif?: import(\"../shared\").TimeInForce;\n trigger_price?: number;\n trigger_type?: import(\"../shared\").TriggerType;\n deposit_source?: import(\"../shared\").DepositSource;\n}\n\nexport interface SignAndSendOrderRequest {\n wallet_id: string;\n order: PrivyOrderEnvelope;\n}\n\nexport type CancelTarget =\n | { cancel_type: \"limit\"; order_hash: string }\n | { cancel_type: \"trigger\"; trigger_order_id: string };\n\nexport type SignAndCancelOrderRequest = {\n wallet_id: string;\n maker: string;\n} & CancelTarget;\n\nexport interface SignAndCancelAllRequest {\n wallet_id: string;\n user_pubkey: string;\n orderbook_id: string;\n timestamp: number;\n salt: string;\n}\n\nexport interface ExportWalletRequest {\n wallet_id: string;\n decode_pubkey_base64: string;\n}\n\nexport interface ExportWalletResponse {\n encryption_type: string;\n ciphertext: string;\n encapsulated_key: string;\n}\n\nexport interface OrderFill {\n counterparty: string;\n counterparty_order_hash: string;\n fill_amount: string;\n price: string;\n is_maker: boolean;\n}\n\nexport interface LimitOrderResponse {\n order_hash: string;\n remaining: string;\n filled: string;\n fills: OrderFill[];\n}\n\nexport interface TriggerOrderResponse {\n trigger_order_id: string;\n order_hash: string;\n}\n\nexport type SignAndSendOrderResponse = LimitOrderResponse | TriggerOrderResponse;\n\nexport interface LimitCancelResponse {\n order_hash: string;\n remaining: string;\n}\n\nexport interface TriggerCancelResponse {\n trigger_order_id: string;\n}\n\nexport type SignAndCancelOrderResponse = LimitCancelResponse | TriggerCancelResponse;\n\nexport interface SignAndCancelAllResponse {\n user_pubkey: string;\n orderbook_id: string;\n cancelled_order_hashes: string[];\n count: number;\n message: string;\n}\n\nfunction requireDefined<T>(\n value: T | undefined,\n field: string\n): T {\n if (value === undefined) {\n throw SdkError.validation(`Missing required field: ${field}`);\n }\n return value;\n}\n\nfunction bigintToSafeNumber(value: bigint, field: string): number {\n const max = BigInt(Number.MAX_SAFE_INTEGER);\n if (value > max || value < -max) {\n throw SdkError.validation(`${field} exceeds Number.MAX_SAFE_INTEGER`);\n }\n return Number(value);\n}\n\nexport function privyOrderFromLimitEnvelope(\n envelope: LimitOrderEnvelope,\n orderbookId: string\n): PrivyOrderEnvelope {\n const maker = requireDefined(envelope.getMaker(), \"maker\");\n const nonce = requireDefined(envelope.getNonce(), \"nonce\");\n const salt = requireDefined(envelope.getSalt(), \"salt\");\n const market = requireDefined(envelope.getMarket(), \"market\");\n const baseMint = requireDefined(envelope.getBaseMint(), \"base_mint\");\n const quoteMint = requireDefined(envelope.getQuoteMint(), \"quote_mint\");\n const side = requireDefined(envelope.getSide(), \"side\");\n const amountIn = requireDefined(envelope.getAmountIn(), \"amount_in\");\n const amountOut = requireDefined(envelope.getAmountOut(), \"amount_out\");\n\n return {\n maker: maker.toBase58(),\n nonce,\n salt: bigintToSafeNumber(salt, \"salt\"),\n market_pubkey: market.toBase58(),\n base_token: baseMint.toBase58(),\n quote_token: quoteMint.toBase58(),\n side,\n amount_in: bigintToSafeNumber(amountIn, \"amount_in\"),\n amount_out: bigintToSafeNumber(amountOut, \"amount_out\"),\n expiration: bigintToSafeNumber(envelope.getExpiration(), \"expiration\"),\n orderbook_id: orderbookId,\n deposit_source: envelope.getDepositSource(),\n };\n}\n\nexport function privyOrderFromTriggerEnvelope(\n envelope: TriggerOrderEnvelope,\n orderbookId: string\n): PrivyOrderEnvelope {\n const maker = requireDefined(envelope.getMaker(), \"maker\");\n const nonce = requireDefined(envelope.getNonce(), \"nonce\");\n const salt = requireDefined(envelope.getSalt(), \"salt\");\n const market = requireDefined(envelope.getMarket(), \"market\");\n const baseMint = requireDefined(envelope.getBaseMint(), \"base_mint\");\n const quoteMint = requireDefined(envelope.getQuoteMint(), \"quote_mint\");\n const side = requireDefined(envelope.getSide(), \"side\");\n const amountIn = requireDefined(envelope.getAmountIn(), \"amount_in\");\n const amountOut = requireDefined(envelope.getAmountOut(), \"amount_out\");\n\n return {\n maker: maker.toBase58(),\n nonce,\n salt: bigintToSafeNumber(salt, \"salt\"),\n market_pubkey: market.toBase58(),\n base_token: baseMint.toBase58(),\n quote_token: quoteMint.toBase58(),\n side,\n amount_in: bigintToSafeNumber(amountIn, \"amount_in\"),\n amount_out: bigintToSafeNumber(amountOut, \"amount_out\"),\n expiration: bigintToSafeNumber(envelope.getExpiration(), \"expiration\"),\n orderbook_id: orderbookId,\n tif: envelope.getTimeInForce(),\n trigger_price: envelope.getTriggerPrice(),\n trigger_type: envelope.getTriggerType(),\n deposit_source: envelope.getDepositSource(),\n };\n}\n"]}
|
|
@@ -30,40 +30,45 @@ export declare function isGlobalDepositTokenAccount(data: Buffer): boolean;
|
|
|
30
30
|
/**
|
|
31
31
|
* Deserialize Exchange account data
|
|
32
32
|
*
|
|
33
|
-
* Layout (
|
|
33
|
+
* Layout (212 bytes):
|
|
34
34
|
* - discriminator: [u8; 8]
|
|
35
35
|
* - authority: Pubkey (32 bytes)
|
|
36
36
|
* - operator: Pubkey (32 bytes)
|
|
37
|
+
* - manager: Pubkey (32 bytes)
|
|
37
38
|
* - market_count: u64 (8 bytes)
|
|
38
39
|
* - paused: u8 (1 byte)
|
|
39
40
|
* - bump: u8 (1 byte)
|
|
40
41
|
* - deposit_token_count: u16 (2 bytes)
|
|
41
|
-
* -
|
|
42
|
+
* - fee_receiver: Pubkey (32 bytes)
|
|
43
|
+
* - _reserved: [u8; 64]
|
|
42
44
|
*/
|
|
43
45
|
export declare function deserializeExchange(data: Buffer): Exchange;
|
|
44
46
|
/**
|
|
45
47
|
* Deserialize Market account data
|
|
46
48
|
*
|
|
47
|
-
* Layout (
|
|
49
|
+
* Layout (212 bytes):
|
|
48
50
|
* - discriminator: [u8; 8]
|
|
49
51
|
* - market_id: u64 (8 bytes)
|
|
50
52
|
* - num_outcomes: u8 (1 byte)
|
|
51
53
|
* - status: u8 (1 byte)
|
|
52
|
-
* - winning_outcome: u8 (1 byte)
|
|
53
|
-
* - has_winning_outcome: u8 (1 byte)
|
|
54
54
|
* - bump: u8 (1 byte)
|
|
55
|
-
* - _padding: [u8;
|
|
55
|
+
* - _padding: [u8; 1]
|
|
56
|
+
* - maker_fee_bps: i16
|
|
57
|
+
* - taker_fee_bps: i16
|
|
56
58
|
* - oracle: Pubkey (32 bytes)
|
|
57
59
|
* - question_id: [u8; 32]
|
|
58
60
|
* - condition_id: [u8; 32]
|
|
61
|
+
* - payout_numerators: [u32; 6]
|
|
62
|
+
* - payout_denominator: u32
|
|
59
63
|
*/
|
|
60
64
|
export declare function deserializeMarket(data: Buffer): Market;
|
|
61
65
|
/**
|
|
62
66
|
* Deserialize OrderStatus account data
|
|
63
67
|
*
|
|
64
|
-
* Layout (
|
|
68
|
+
* Layout (32 bytes):
|
|
65
69
|
* - discriminator: [u8; 8]
|
|
66
70
|
* - remaining: u64 (8 bytes)
|
|
71
|
+
* - base_remaining: u64 (8 bytes)
|
|
67
72
|
* - is_cancelled: u8 (1 byte)
|
|
68
73
|
* - _padding: [u8; 7]
|
|
69
74
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/program/accounts.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,MAAM,EAEN,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACV,MAAM,SAAS,CAAC;AAyBjB;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGrD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGjE;AAMD
|
|
1
|
+
{"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/program/accounts.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,MAAM,EAEN,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACV,MAAM,SAAS,CAAC;AAyBjB;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGrD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGvD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGjE;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CA+C1D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAoFtD;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CA6BhE;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAmB5D;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,CA6B1D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAyC5D;AAED;;;;;;;;;GASG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CA8B9E"}
|
package/dist/program/accounts.js
CHANGED
|
@@ -93,15 +93,17 @@ function isGlobalDepositTokenAccount(data) {
|
|
|
93
93
|
/**
|
|
94
94
|
* Deserialize Exchange account data
|
|
95
95
|
*
|
|
96
|
-
* Layout (
|
|
96
|
+
* Layout (212 bytes):
|
|
97
97
|
* - discriminator: [u8; 8]
|
|
98
98
|
* - authority: Pubkey (32 bytes)
|
|
99
99
|
* - operator: Pubkey (32 bytes)
|
|
100
|
+
* - manager: Pubkey (32 bytes)
|
|
100
101
|
* - market_count: u64 (8 bytes)
|
|
101
102
|
* - paused: u8 (1 byte)
|
|
102
103
|
* - bump: u8 (1 byte)
|
|
103
104
|
* - deposit_token_count: u16 (2 bytes)
|
|
104
|
-
* -
|
|
105
|
+
* - fee_receiver: Pubkey (32 bytes)
|
|
106
|
+
* - _reserved: [u8; 64]
|
|
105
107
|
*/
|
|
106
108
|
function deserializeExchange(data) {
|
|
107
109
|
if (data.length < constants_1.ACCOUNT_SIZE.EXCHANGE) {
|
|
@@ -115,6 +117,8 @@ function deserializeExchange(data) {
|
|
|
115
117
|
offset += 32;
|
|
116
118
|
const operator = new web3_js_1.PublicKey(data.subarray(offset, offset + 32));
|
|
117
119
|
offset += 32;
|
|
120
|
+
const manager = new web3_js_1.PublicKey(data.subarray(offset, offset + 32));
|
|
121
|
+
offset += 32;
|
|
118
122
|
const marketCount = (0, utils_1.fromLeBytes)(data.subarray(offset, offset + 8));
|
|
119
123
|
offset += 8;
|
|
120
124
|
const paused = data[offset] !== 0;
|
|
@@ -123,32 +127,37 @@ function deserializeExchange(data) {
|
|
|
123
127
|
offset += 1;
|
|
124
128
|
const depositTokenCount = data.readUInt16LE(offset);
|
|
125
129
|
offset += 2;
|
|
126
|
-
|
|
130
|
+
const feeReceiver = new web3_js_1.PublicKey(data.subarray(offset, offset + 32));
|
|
131
|
+
offset += 32;
|
|
127
132
|
return {
|
|
128
133
|
discriminator,
|
|
129
134
|
authority,
|
|
130
135
|
operator,
|
|
136
|
+
manager,
|
|
131
137
|
marketCount,
|
|
132
138
|
paused,
|
|
133
139
|
bump,
|
|
134
140
|
depositTokenCount,
|
|
141
|
+
feeReceiver,
|
|
135
142
|
};
|
|
136
143
|
}
|
|
137
144
|
/**
|
|
138
145
|
* Deserialize Market account data
|
|
139
146
|
*
|
|
140
|
-
* Layout (
|
|
147
|
+
* Layout (212 bytes):
|
|
141
148
|
* - discriminator: [u8; 8]
|
|
142
149
|
* - market_id: u64 (8 bytes)
|
|
143
150
|
* - num_outcomes: u8 (1 byte)
|
|
144
151
|
* - status: u8 (1 byte)
|
|
145
|
-
* - winning_outcome: u8 (1 byte)
|
|
146
|
-
* - has_winning_outcome: u8 (1 byte)
|
|
147
152
|
* - bump: u8 (1 byte)
|
|
148
|
-
* - _padding: [u8;
|
|
153
|
+
* - _padding: [u8; 1]
|
|
154
|
+
* - maker_fee_bps: i16
|
|
155
|
+
* - taker_fee_bps: i16
|
|
149
156
|
* - oracle: Pubkey (32 bytes)
|
|
150
157
|
* - question_id: [u8; 32]
|
|
151
158
|
* - condition_id: [u8; 32]
|
|
159
|
+
* - payout_numerators: [u32; 6]
|
|
160
|
+
* - payout_denominator: u32
|
|
152
161
|
*/
|
|
153
162
|
function deserializeMarket(data) {
|
|
154
163
|
if (data.length < constants_1.ACCOUNT_SIZE.MARKET) {
|
|
@@ -164,20 +173,27 @@ function deserializeMarket(data) {
|
|
|
164
173
|
offset += 1;
|
|
165
174
|
const statusByte = data[offset];
|
|
166
175
|
offset += 1;
|
|
167
|
-
const winningOutcome = data[offset];
|
|
168
|
-
offset += 1;
|
|
169
|
-
const hasWinningOutcome = data[offset] !== 0;
|
|
170
|
-
offset += 1;
|
|
171
176
|
const bump = data[offset];
|
|
172
177
|
offset += 1;
|
|
173
|
-
// Skip padding:
|
|
174
|
-
offset +=
|
|
178
|
+
// Skip padding: 1 byte
|
|
179
|
+
offset += 1;
|
|
180
|
+
const makerFeeBps = data.readInt16LE(offset);
|
|
181
|
+
offset += 2;
|
|
182
|
+
const takerFeeBps = data.readInt16LE(offset);
|
|
183
|
+
offset += 2;
|
|
175
184
|
const oracle = new web3_js_1.PublicKey(data.subarray(offset, offset + 32));
|
|
176
185
|
offset += 32;
|
|
177
186
|
const questionId = Buffer.from(data.subarray(offset, offset + 32));
|
|
178
187
|
offset += 32;
|
|
179
188
|
const conditionId = Buffer.from(data.subarray(offset, offset + 32));
|
|
180
189
|
offset += 32;
|
|
190
|
+
const payoutNumerators = [0, 0, 0, 0, 0, 0];
|
|
191
|
+
for (let i = 0; i < payoutNumerators.length; i++) {
|
|
192
|
+
payoutNumerators[i] = data.readUInt32LE(offset);
|
|
193
|
+
offset += 4;
|
|
194
|
+
}
|
|
195
|
+
const payoutDenominator = data.readUInt32LE(offset);
|
|
196
|
+
offset += 4;
|
|
181
197
|
// Map status byte to enum
|
|
182
198
|
let status;
|
|
183
199
|
switch (statusByte) {
|
|
@@ -201,20 +217,23 @@ function deserializeMarket(data) {
|
|
|
201
217
|
marketId,
|
|
202
218
|
numOutcomes,
|
|
203
219
|
status,
|
|
204
|
-
winningOutcome,
|
|
205
|
-
hasWinningOutcome,
|
|
206
220
|
bump,
|
|
221
|
+
makerFeeBps,
|
|
222
|
+
takerFeeBps,
|
|
207
223
|
oracle,
|
|
208
224
|
questionId,
|
|
209
225
|
conditionId,
|
|
226
|
+
payoutNumerators,
|
|
227
|
+
payoutDenominator,
|
|
210
228
|
};
|
|
211
229
|
}
|
|
212
230
|
/**
|
|
213
231
|
* Deserialize OrderStatus account data
|
|
214
232
|
*
|
|
215
|
-
* Layout (
|
|
233
|
+
* Layout (32 bytes):
|
|
216
234
|
* - discriminator: [u8; 8]
|
|
217
235
|
* - remaining: u64 (8 bytes)
|
|
236
|
+
* - base_remaining: u64 (8 bytes)
|
|
218
237
|
* - is_cancelled: u8 (1 byte)
|
|
219
238
|
* - _padding: [u8; 7]
|
|
220
239
|
*/
|
|
@@ -228,12 +247,15 @@ function deserializeOrderStatus(data) {
|
|
|
228
247
|
offset += 8;
|
|
229
248
|
const remaining = (0, utils_1.fromLeBytes)(data.subarray(offset, offset + 8));
|
|
230
249
|
offset += 8;
|
|
250
|
+
const baseRemaining = (0, utils_1.fromLeBytes)(data.subarray(offset, offset + 8));
|
|
251
|
+
offset += 8;
|
|
231
252
|
const isCancelled = data[offset] !== 0;
|
|
232
253
|
offset += 1;
|
|
233
254
|
// Skip padding: 7 bytes
|
|
234
255
|
return {
|
|
235
256
|
discriminator,
|
|
236
257
|
remaining,
|
|
258
|
+
baseRemaining,
|
|
237
259
|
isCancelled,
|
|
238
260
|
};
|
|
239
261
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/program/accounts.ts"],"names":[],"mappings":"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","sourcesContent":["import { PublicKey } from \"@solana/web3.js\";\nimport { DISCRIMINATOR, ACCOUNT_SIZE } from \"./constants\";\nimport { ProgramSdkError } from \"./error\";\nimport {\n Exchange,\n GlobalDepositToken,\n Market,\n MarketStatus,\n OrderStatus,\n UserNonce,\n Position,\n Orderbook,\n} from \"./types\";\nimport { fromLeBytes } from \"./utils\";\n\n// ============================================================================\n// DISCRIMINATOR VALIDATION\n// ============================================================================\n\n/**\n * Validate that a buffer starts with the expected discriminator\n */\nfunction validateDiscriminator(\n data: Buffer,\n expected: Buffer,\n accountType: string\n): void {\n const actual = data.subarray(0, 8);\n if (!actual.equals(expected)) {\n throw ProgramSdkError.invalidDiscriminator(\n accountType,\n expected.toString(\"hex\"),\n actual.toString(\"hex\"),\n );\n }\n}\n\n/**\n * Check if a buffer has a valid Exchange discriminator\n */\nexport function isExchangeAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.EXCHANGE);\n}\n\n/**\n * Check if a buffer has a valid Market discriminator\n */\nexport function isMarketAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.MARKET);\n}\n\n/**\n * Check if a buffer has a valid OrderStatus discriminator\n */\nexport function isOrderStatusAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.ORDER_STATUS);\n}\n\n/**\n * Check if a buffer has a valid UserNonce discriminator\n */\nexport function isUserNonceAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.USER_NONCE);\n}\n\n/**\n * Check if a buffer has a valid Position discriminator\n */\nexport function isPositionAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.POSITION);\n}\n\n/**\n * Check if a buffer has a valid Orderbook discriminator\n */\nexport function isOrderbookAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.ORDERBOOK);\n}\n\n/**\n * Check if a buffer has a valid GlobalDepositToken discriminator\n */\nexport function isGlobalDepositTokenAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.GLOBAL_DEPOSIT_TOKEN);\n}\n\n// ============================================================================\n// ACCOUNT DESERIALIZATION\n// ============================================================================\n\n/**\n * Deserialize Exchange account data\n *\n * Layout (88 bytes):\n * - discriminator: [u8; 8]\n * - authority: Pubkey (32 bytes)\n * - operator: Pubkey (32 bytes)\n * - market_count: u64 (8 bytes)\n * - paused: u8 (1 byte)\n * - bump: u8 (1 byte)\n * - deposit_token_count: u16 (2 bytes)\n * - _padding: [u8; 4]\n */\nexport function deserializeExchange(data: Buffer): Exchange {\n if (data.length < ACCOUNT_SIZE.EXCHANGE) {\n throw ProgramSdkError.invalidDataLength(\"Exchange\", ACCOUNT_SIZE.EXCHANGE, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.EXCHANGE, \"Exchange\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const authority = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const operator = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const marketCount = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n const paused = data[offset] !== 0;\n offset += 1;\n\n const bump = data[offset];\n offset += 1;\n\n const depositTokenCount = data.readUInt16LE(offset);\n offset += 2;\n\n // Skip padding: 4 bytes\n\n return {\n discriminator,\n authority,\n operator,\n marketCount,\n paused,\n bump,\n depositTokenCount,\n };\n}\n\n/**\n * Deserialize Market account data\n *\n * Layout (120 bytes):\n * - discriminator: [u8; 8]\n * - market_id: u64 (8 bytes)\n * - num_outcomes: u8 (1 byte)\n * - status: u8 (1 byte)\n * - winning_outcome: u8 (1 byte)\n * - has_winning_outcome: u8 (1 byte)\n * - bump: u8 (1 byte)\n * - _padding: [u8; 3]\n * - oracle: Pubkey (32 bytes)\n * - question_id: [u8; 32]\n * - condition_id: [u8; 32]\n */\nexport function deserializeMarket(data: Buffer): Market {\n if (data.length < ACCOUNT_SIZE.MARKET) {\n throw ProgramSdkError.invalidDataLength(\"Market\", ACCOUNT_SIZE.MARKET, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.MARKET, \"Market\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const marketId = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n const numOutcomes = data[offset];\n offset += 1;\n\n const statusByte = data[offset];\n offset += 1;\n\n const winningOutcome = data[offset];\n offset += 1;\n\n const hasWinningOutcome = data[offset] !== 0;\n offset += 1;\n\n const bump = data[offset];\n offset += 1;\n\n // Skip padding: 3 bytes\n offset += 3;\n\n const oracle = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const questionId = Buffer.from(data.subarray(offset, offset + 32));\n offset += 32;\n\n const conditionId = Buffer.from(data.subarray(offset, offset + 32));\n offset += 32;\n\n // Map status byte to enum\n let status: MarketStatus;\n switch (statusByte) {\n case 0:\n status = MarketStatus.Pending;\n break;\n case 1:\n status = MarketStatus.Active;\n break;\n case 2:\n status = MarketStatus.Resolved;\n break;\n case 3:\n status = MarketStatus.Cancelled;\n break;\n default:\n throw ProgramSdkError.invalidMarketStatus(statusByte);\n }\n\n return {\n discriminator,\n marketId,\n numOutcomes,\n status,\n winningOutcome,\n hasWinningOutcome,\n bump,\n oracle,\n questionId,\n conditionId,\n };\n}\n\n/**\n * Deserialize OrderStatus account data\n *\n * Layout (24 bytes):\n * - discriminator: [u8; 8]\n * - remaining: u64 (8 bytes)\n * - is_cancelled: u8 (1 byte)\n * - _padding: [u8; 7]\n */\nexport function deserializeOrderStatus(data: Buffer): OrderStatus {\n if (data.length < ACCOUNT_SIZE.ORDER_STATUS) {\n throw ProgramSdkError.invalidDataLength(\"OrderStatus\", ACCOUNT_SIZE.ORDER_STATUS, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.ORDER_STATUS, \"OrderStatus\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const remaining = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n const isCancelled = data[offset] !== 0;\n offset += 1;\n\n // Skip padding: 7 bytes\n\n return {\n discriminator,\n remaining,\n isCancelled,\n };\n}\n\n/**\n * Deserialize UserNonce account data\n *\n * Layout (16 bytes):\n * - discriminator: [u8; 8]\n * - nonce: u64 (8 bytes)\n */\nexport function deserializeUserNonce(data: Buffer): UserNonce {\n if (data.length < ACCOUNT_SIZE.USER_NONCE) {\n throw ProgramSdkError.invalidDataLength(\"UserNonce\", ACCOUNT_SIZE.USER_NONCE, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.USER_NONCE, \"UserNonce\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const nonce = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n return {\n discriminator,\n nonce,\n };\n}\n\n/**\n * Deserialize Position account data\n *\n * Layout (80 bytes):\n * - discriminator: [u8; 8]\n * - owner: Pubkey (32 bytes)\n * - market: Pubkey (32 bytes)\n * - bump: u8 (1 byte)\n * - _padding: [u8; 7]\n */\nexport function deserializePosition(data: Buffer): Position {\n if (data.length < ACCOUNT_SIZE.POSITION) {\n throw ProgramSdkError.invalidDataLength(\"Position\", ACCOUNT_SIZE.POSITION, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.POSITION, \"Position\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const owner = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const market = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const bump = data[offset];\n offset += 1;\n\n // Skip padding: 7 bytes\n\n return {\n discriminator,\n owner,\n market,\n bump,\n };\n}\n\n/**\n * Deserialize Orderbook account data\n *\n * Layout (144 bytes):\n * - discriminator: [u8; 8]\n * - market: Pubkey (32 bytes)\n * - mint_a: Pubkey (32 bytes)\n * - mint_b: Pubkey (32 bytes)\n * - lookup_table: Pubkey (32 bytes)\n * - base_index: u8 (1 byte)\n * - bump: u8 (1 byte)\n * - _padding: [u8; 6]\n */\nexport function deserializeOrderbook(data: Buffer): Orderbook {\n if (data.length < ACCOUNT_SIZE.ORDERBOOK) {\n throw ProgramSdkError.invalidDataLength(\"Orderbook\", ACCOUNT_SIZE.ORDERBOOK, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.ORDERBOOK, \"Orderbook\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const market = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const mintA = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const mintB = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const lookupTable = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const baseIndex = data[offset];\n offset += 1;\n\n const bump = data[offset];\n offset += 1;\n\n // Skip padding: 6 bytes\n\n return {\n discriminator,\n market,\n mintA,\n mintB,\n lookupTable,\n baseIndex,\n bump,\n };\n}\n\n/**\n * Deserialize GlobalDepositToken account data\n *\n * Layout (48 bytes):\n * - discriminator: [u8; 8]\n * - mint: Pubkey (32 bytes)\n * - active: u8 (1 byte)\n * - bump: u8 (1 byte)\n * - _padding: [u8; 6]\n */\nexport function deserializeGlobalDepositToken(data: Buffer): GlobalDepositToken {\n if (data.length < ACCOUNT_SIZE.GLOBAL_DEPOSIT_TOKEN) {\n throw ProgramSdkError.invalidDataLength(\"GlobalDepositToken\", ACCOUNT_SIZE.GLOBAL_DEPOSIT_TOKEN, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.GLOBAL_DEPOSIT_TOKEN, \"GlobalDepositToken\");\n\n let offset = 0;\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const mint = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const active = data[offset] !== 0;\n offset += 1;\n\n const bump = data[offset];\n offset += 1;\n\n const index = data.readUInt16LE(offset);\n offset += 2;\n\n return {\n discriminator,\n mint,\n active,\n bump,\n index,\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/program/accounts.ts"],"names":[],"mappings":"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","sourcesContent":["import { PublicKey } from \"@solana/web3.js\";\nimport { DISCRIMINATOR, ACCOUNT_SIZE } from \"./constants\";\nimport { ProgramSdkError } from \"./error\";\nimport {\n Exchange,\n GlobalDepositToken,\n Market,\n MarketStatus,\n OrderStatus,\n UserNonce,\n Position,\n Orderbook,\n} from \"./types\";\nimport { fromLeBytes } from \"./utils\";\n\n// ============================================================================\n// DISCRIMINATOR VALIDATION\n// ============================================================================\n\n/**\n * Validate that a buffer starts with the expected discriminator\n */\nfunction validateDiscriminator(\n data: Buffer,\n expected: Buffer,\n accountType: string\n): void {\n const actual = data.subarray(0, 8);\n if (!actual.equals(expected)) {\n throw ProgramSdkError.invalidDiscriminator(\n accountType,\n expected.toString(\"hex\"),\n actual.toString(\"hex\"),\n );\n }\n}\n\n/**\n * Check if a buffer has a valid Exchange discriminator\n */\nexport function isExchangeAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.EXCHANGE);\n}\n\n/**\n * Check if a buffer has a valid Market discriminator\n */\nexport function isMarketAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.MARKET);\n}\n\n/**\n * Check if a buffer has a valid OrderStatus discriminator\n */\nexport function isOrderStatusAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.ORDER_STATUS);\n}\n\n/**\n * Check if a buffer has a valid UserNonce discriminator\n */\nexport function isUserNonceAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.USER_NONCE);\n}\n\n/**\n * Check if a buffer has a valid Position discriminator\n */\nexport function isPositionAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.POSITION);\n}\n\n/**\n * Check if a buffer has a valid Orderbook discriminator\n */\nexport function isOrderbookAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.ORDERBOOK);\n}\n\n/**\n * Check if a buffer has a valid GlobalDepositToken discriminator\n */\nexport function isGlobalDepositTokenAccount(data: Buffer): boolean {\n if (data.length < 8) return false;\n return data.subarray(0, 8).equals(DISCRIMINATOR.GLOBAL_DEPOSIT_TOKEN);\n}\n\n// ============================================================================\n// ACCOUNT DESERIALIZATION\n// ============================================================================\n\n/**\n * Deserialize Exchange account data\n *\n * Layout (212 bytes):\n * - discriminator: [u8; 8]\n * - authority: Pubkey (32 bytes)\n * - operator: Pubkey (32 bytes)\n * - manager: Pubkey (32 bytes)\n * - market_count: u64 (8 bytes)\n * - paused: u8 (1 byte)\n * - bump: u8 (1 byte)\n * - deposit_token_count: u16 (2 bytes)\n * - fee_receiver: Pubkey (32 bytes)\n * - _reserved: [u8; 64]\n */\nexport function deserializeExchange(data: Buffer): Exchange {\n if (data.length < ACCOUNT_SIZE.EXCHANGE) {\n throw ProgramSdkError.invalidDataLength(\"Exchange\", ACCOUNT_SIZE.EXCHANGE, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.EXCHANGE, \"Exchange\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const authority = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const operator = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const manager = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const marketCount = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n const paused = data[offset] !== 0;\n offset += 1;\n\n const bump = data[offset];\n offset += 1;\n\n const depositTokenCount = data.readUInt16LE(offset);\n offset += 2;\n\n const feeReceiver = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n return {\n discriminator,\n authority,\n operator,\n manager,\n marketCount,\n paused,\n bump,\n depositTokenCount,\n feeReceiver,\n };\n}\n\n/**\n * Deserialize Market account data\n *\n * Layout (212 bytes):\n * - discriminator: [u8; 8]\n * - market_id: u64 (8 bytes)\n * - num_outcomes: u8 (1 byte)\n * - status: u8 (1 byte)\n * - bump: u8 (1 byte)\n * - _padding: [u8; 1]\n * - maker_fee_bps: i16\n * - taker_fee_bps: i16\n * - oracle: Pubkey (32 bytes)\n * - question_id: [u8; 32]\n * - condition_id: [u8; 32]\n * - payout_numerators: [u32; 6]\n * - payout_denominator: u32\n */\nexport function deserializeMarket(data: Buffer): Market {\n if (data.length < ACCOUNT_SIZE.MARKET) {\n throw ProgramSdkError.invalidDataLength(\"Market\", ACCOUNT_SIZE.MARKET, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.MARKET, \"Market\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const marketId = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n const numOutcomes = data[offset];\n offset += 1;\n\n const statusByte = data[offset];\n offset += 1;\n\n const bump = data[offset];\n offset += 1;\n\n // Skip padding: 1 byte\n offset += 1;\n\n const makerFeeBps = data.readInt16LE(offset);\n offset += 2;\n\n const takerFeeBps = data.readInt16LE(offset);\n offset += 2;\n\n const oracle = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const questionId = Buffer.from(data.subarray(offset, offset + 32));\n offset += 32;\n\n const conditionId = Buffer.from(data.subarray(offset, offset + 32));\n offset += 32;\n\n const payoutNumerators: Market[\"payoutNumerators\"] = [0, 0, 0, 0, 0, 0];\n for (let i = 0; i < payoutNumerators.length; i++) {\n payoutNumerators[i] = data.readUInt32LE(offset);\n offset += 4;\n }\n\n const payoutDenominator = data.readUInt32LE(offset);\n offset += 4;\n\n // Map status byte to enum\n let status: MarketStatus;\n switch (statusByte) {\n case 0:\n status = MarketStatus.Pending;\n break;\n case 1:\n status = MarketStatus.Active;\n break;\n case 2:\n status = MarketStatus.Resolved;\n break;\n case 3:\n status = MarketStatus.Cancelled;\n break;\n default:\n throw ProgramSdkError.invalidMarketStatus(statusByte);\n }\n\n return {\n discriminator,\n marketId,\n numOutcomes,\n status,\n bump,\n makerFeeBps,\n takerFeeBps,\n oracle,\n questionId,\n conditionId,\n payoutNumerators,\n payoutDenominator,\n };\n}\n\n/**\n * Deserialize OrderStatus account data\n *\n * Layout (32 bytes):\n * - discriminator: [u8; 8]\n * - remaining: u64 (8 bytes)\n * - base_remaining: u64 (8 bytes)\n * - is_cancelled: u8 (1 byte)\n * - _padding: [u8; 7]\n */\nexport function deserializeOrderStatus(data: Buffer): OrderStatus {\n if (data.length < ACCOUNT_SIZE.ORDER_STATUS) {\n throw ProgramSdkError.invalidDataLength(\"OrderStatus\", ACCOUNT_SIZE.ORDER_STATUS, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.ORDER_STATUS, \"OrderStatus\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const remaining = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n const baseRemaining = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n const isCancelled = data[offset] !== 0;\n offset += 1;\n\n // Skip padding: 7 bytes\n\n return {\n discriminator,\n remaining,\n baseRemaining,\n isCancelled,\n };\n}\n\n/**\n * Deserialize UserNonce account data\n *\n * Layout (16 bytes):\n * - discriminator: [u8; 8]\n * - nonce: u64 (8 bytes)\n */\nexport function deserializeUserNonce(data: Buffer): UserNonce {\n if (data.length < ACCOUNT_SIZE.USER_NONCE) {\n throw ProgramSdkError.invalidDataLength(\"UserNonce\", ACCOUNT_SIZE.USER_NONCE, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.USER_NONCE, \"UserNonce\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const nonce = fromLeBytes(data.subarray(offset, offset + 8));\n offset += 8;\n\n return {\n discriminator,\n nonce,\n };\n}\n\n/**\n * Deserialize Position account data\n *\n * Layout (80 bytes):\n * - discriminator: [u8; 8]\n * - owner: Pubkey (32 bytes)\n * - market: Pubkey (32 bytes)\n * - bump: u8 (1 byte)\n * - _padding: [u8; 7]\n */\nexport function deserializePosition(data: Buffer): Position {\n if (data.length < ACCOUNT_SIZE.POSITION) {\n throw ProgramSdkError.invalidDataLength(\"Position\", ACCOUNT_SIZE.POSITION, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.POSITION, \"Position\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const owner = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const market = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const bump = data[offset];\n offset += 1;\n\n // Skip padding: 7 bytes\n\n return {\n discriminator,\n owner,\n market,\n bump,\n };\n}\n\n/**\n * Deserialize Orderbook account data\n *\n * Layout (144 bytes):\n * - discriminator: [u8; 8]\n * - market: Pubkey (32 bytes)\n * - mint_a: Pubkey (32 bytes)\n * - mint_b: Pubkey (32 bytes)\n * - lookup_table: Pubkey (32 bytes)\n * - base_index: u8 (1 byte)\n * - bump: u8 (1 byte)\n * - _padding: [u8; 6]\n */\nexport function deserializeOrderbook(data: Buffer): Orderbook {\n if (data.length < ACCOUNT_SIZE.ORDERBOOK) {\n throw ProgramSdkError.invalidDataLength(\"Orderbook\", ACCOUNT_SIZE.ORDERBOOK, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.ORDERBOOK, \"Orderbook\");\n\n let offset = 0;\n\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const market = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const mintA = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const mintB = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const lookupTable = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const baseIndex = data[offset];\n offset += 1;\n\n const bump = data[offset];\n offset += 1;\n\n // Skip padding: 6 bytes\n\n return {\n discriminator,\n market,\n mintA,\n mintB,\n lookupTable,\n baseIndex,\n bump,\n };\n}\n\n/**\n * Deserialize GlobalDepositToken account data\n *\n * Layout (48 bytes):\n * - discriminator: [u8; 8]\n * - mint: Pubkey (32 bytes)\n * - active: u8 (1 byte)\n * - bump: u8 (1 byte)\n * - _padding: [u8; 6]\n */\nexport function deserializeGlobalDepositToken(data: Buffer): GlobalDepositToken {\n if (data.length < ACCOUNT_SIZE.GLOBAL_DEPOSIT_TOKEN) {\n throw ProgramSdkError.invalidDataLength(\"GlobalDepositToken\", ACCOUNT_SIZE.GLOBAL_DEPOSIT_TOKEN, data.length);\n }\n\n validateDiscriminator(data, DISCRIMINATOR.GLOBAL_DEPOSIT_TOKEN, \"GlobalDepositToken\");\n\n let offset = 0;\n const discriminator = data.subarray(offset, offset + 8);\n offset += 8;\n\n const mint = new PublicKey(data.subarray(offset, offset + 32));\n offset += 32;\n\n const active = data[offset] !== 0;\n offset += 1;\n\n const bump = data[offset];\n offset += 1;\n\n const index = data.readUInt16LE(offset);\n offset += 2;\n\n return {\n discriminator,\n mint,\n active,\n bump,\n index,\n };\n}\n"]}
|
|
@@ -55,10 +55,6 @@ export declare class OrderBuilder {
|
|
|
55
55
|
amountIn(value: bigint): this;
|
|
56
56
|
/** Set amount out (what maker receives) */
|
|
57
57
|
amountOut(value: bigint): this;
|
|
58
|
-
/** @deprecated Use amountIn() */
|
|
59
|
-
makerAmount(value: bigint): this;
|
|
60
|
-
/** @deprecated Use amountOut() */
|
|
61
|
-
takerAmount(value: bigint): this;
|
|
62
58
|
/** Set expiration timestamp (0 = no expiration) */
|
|
63
59
|
expiration(value: bigint): this;
|
|
64
60
|
/** Set deposit source for order submission */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/program/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAkB,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEnE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,cAAc,CAAC,CAAgB;IAEvC,gCAAgC;IAChC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1B,0EAA0E;IAC1E,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKzB,6BAA6B;IAC7B,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAK7B,qBAAqB;IACrB,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAK9B,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAKhC,yCAAyC;IACzC,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAKjC,sBAAsB;IACtB,GAAG,IAAI,IAAI;IAKX,sBAAsB;IACtB,GAAG,IAAI,IAAI;IAKX,yBAAyB;IACzB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAK5B,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,2CAA2C;IAC3C,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK9B,
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/program/builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAkB,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEnE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,cAAc,CAAC,CAAgB;IAEvC,gCAAgC;IAChC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1B,0EAA0E;IAC1E,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAKzB,6BAA6B;IAC7B,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAK7B,qBAAqB;IACrB,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAK9B,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAKhC,yCAAyC;IACzC,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAKjC,sBAAsB;IACtB,GAAG,IAAI,IAAI;IAKX,sBAAsB;IACtB,GAAG,IAAI,IAAI;IAKX,yBAAyB;IACzB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAK5B,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,2CAA2C;IAC3C,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK9B,mDAAmD;IACnD,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK/B,8CAA8C;IAC9C,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAKzC;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAY3E;;;OAGG;IACH,YAAY,CACV,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,iBAAiB,GAC1B,IAAI;IAIP;;;OAGG;IACH,KAAK,IAAI,WAAW;IAqBpB;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,WAAW;IAmB3C;;OAEG;IACH,eAAe,CACb,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,MAAM,GAClB,kBAAkB;CAMtB"}
|
package/dist/program/builder.js
CHANGED
|
@@ -91,14 +91,6 @@ class OrderBuilder {
|
|
|
91
91
|
this._amountOut = value;
|
|
92
92
|
return this;
|
|
93
93
|
}
|
|
94
|
-
/** @deprecated Use amountIn() */
|
|
95
|
-
makerAmount(value) {
|
|
96
|
-
return this.amountIn(value);
|
|
97
|
-
}
|
|
98
|
-
/** @deprecated Use amountOut() */
|
|
99
|
-
takerAmount(value) {
|
|
100
|
-
return this.amountOut(value);
|
|
101
|
-
}
|
|
102
94
|
/** Set expiration timestamp (0 = no expiration) */
|
|
103
95
|
expiration(value) {
|
|
104
96
|
this._expiration = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/program/builder.ts"],"names":[],"mappings":";;;AACA,mCAA0C;AAC1C,mCAAiD;AACjD,qCAAgG;AAChG,+CAAsE;AAGtE;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,YAAY;IACf,MAAM,GAAW,CAAC,CAAC;IACnB,KAAK,GAAkB,IAAI,CAAC;IAC5B,MAAM,GAAqB,IAAI,CAAC;IAChC,OAAO,GAAqB,IAAI,CAAC;IACjC,SAAS,GAAqB,IAAI,CAAC;IACnC,UAAU,GAAqB,IAAI,CAAC;IACpC,KAAK,GAAc,iBAAS,CAAC,GAAG,CAAC;IACjC,SAAS,GAAW,EAAE,CAAC;IACvB,UAAU,GAAW,EAAE,CAAC;IACxB,WAAW,GAAW,EAAE,CAAC;IACzB,cAAc,CAAiB;IAEvC,gCAAgC;IAChC,KAAK,CAAC,KAAa;QACjB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0EAA0E;IAC1E,IAAI,CAAC,KAAa;QAChB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6BAA6B;IAC7B,KAAK,CAAC,KAAgB;QACpB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB;IACrB,MAAM,CAAC,KAAgB;QACrB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4CAA4C;IAC5C,QAAQ,CAAC,KAAgB;QACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yCAAyC;IACzC,SAAS,CAAC,KAAgB;QACxB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sBAAsB;IACtB,GAAG;QACD,IAAI,CAAC,KAAK,GAAG,iBAAS,CAAC,GAAG,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,sBAAsB;IACtB,GAAG;QACD,IAAI,CAAC,KAAK,GAAG,iBAAS,CAAC,GAAG,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yBAAyB;IACzB,IAAI,CAAC,KAAgB;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uCAAuC;IACvC,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2CAA2C;IAC3C,SAAS,CAAC,KAAa;QACrB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/program/builder.ts"],"names":[],"mappings":"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","sourcesContent":["import { PublicKey, Keypair } from \"@solana/web3.js\";\nimport { ProgramSdkError } from \"./error\";\nimport { SignedOrder, OrderSide } from \"./types\";\nimport { generateSalt, signOrderFull, toSubmitRequest as orderToSubmitRequest } from \"./orders\";\nimport { scalePriceSize, OrderbookDecimals } from \"../shared/scaling\";\nimport type { DepositSource, SubmitOrderRequest } from \"../shared\";\n\n/**\n * Fluent builder for creating orders.\n * Matches the Rust SDK's OrderBuilder pattern.\n *\n * @example\n * ```typescript\n * const order = new OrderBuilder()\n * .nonce(1)\n * .maker(makerPubkey)\n * .market(marketPubkey)\n * .baseMint(baseMintPubkey)\n * .quoteMint(quoteMintPubkey)\n * .bid()\n * .amountIn(1000000n)\n * .amountOut(500000n)\n * .expiration(0n)\n * .build();\n * ```\n */\nexport class OrderBuilder {\n private _nonce: number = 0;\n private _salt: bigint | null = null;\n private _maker: PublicKey | null = null;\n private _market: PublicKey | null = null;\n private _baseMint: PublicKey | null = null;\n private _quoteMint: PublicKey | null = null;\n private _side: OrderSide = OrderSide.BID;\n private _amountIn: bigint = 0n;\n private _amountOut: bigint = 0n;\n private _expiration: bigint = 0n;\n private _depositSource?: DepositSource;\n\n /** Set the order nonce (u32) */\n nonce(value: number): this {\n this._nonce = value;\n return this;\n }\n\n /** Set the order salt (u64) for uniqueness. Auto-generated if not set. */\n salt(value: bigint): this {\n this._salt = value;\n return this;\n }\n\n /** Set the maker (signer) */\n maker(value: PublicKey): this {\n this._maker = value;\n return this;\n }\n\n /** Set the market */\n market(value: PublicKey): this {\n this._market = value;\n return this;\n }\n\n /** Set the base mint (conditional token) */\n baseMint(value: PublicKey): this {\n this._baseMint = value;\n return this;\n }\n\n /** Set the quote mint (payment token) */\n quoteMint(value: PublicKey): this {\n this._quoteMint = value;\n return this;\n }\n\n /** Set side to BID */\n bid(): this {\n this._side = OrderSide.BID;\n return this;\n }\n\n /** Set side to ASK */\n ask(): this {\n this._side = OrderSide.ASK;\n return this;\n }\n\n /** Set the order side */\n side(value: OrderSide): this {\n this._side = value;\n return this;\n }\n\n /** Set amount in (what maker gives) */\n amountIn(value: bigint): this {\n this._amountIn = value;\n return this;\n }\n\n /** Set amount out (what maker receives) */\n amountOut(value: bigint): this {\n this._amountOut = value;\n return this;\n }\n\n /** Set expiration timestamp (0 = no expiration) */\n expiration(value: bigint): this {\n this._expiration = value;\n return this;\n }\n\n /** Set deposit source for order submission */\n depositSource(value: DepositSource): this {\n this._depositSource = value;\n return this;\n }\n\n /**\n * Set price and size, auto-computing amountIn and amountOut using decimal scaling.\n *\n * @param price - Price as a decimal string (e.g., \"0.75\")\n * @param size - Size as a decimal string (e.g., \"100\")\n * @param decimals - Orderbook decimal configuration\n */\n price(priceStr: string, sizeStr: string, decimals: OrderbookDecimals): this {\n const { amountIn, amountOut } = scalePriceSize(\n priceStr,\n sizeStr,\n this._side,\n decimals\n );\n this._amountIn = amountIn;\n this._amountOut = amountOut;\n return this;\n }\n\n /**\n * Apply decimal scaling to convert price/size to amountIn/amountOut.\n * Equivalent to calling price() but with separate method name for clarity.\n */\n applyScaling(\n priceStr: string,\n sizeStr: string,\n decimals: OrderbookDecimals\n ): this {\n return this.price(priceStr, sizeStr, decimals);\n }\n\n /**\n * Build the unsigned SignedOrder (signature will be all zeros).\n * All required fields must be set.\n */\n build(): SignedOrder {\n if (!this._maker) throw ProgramSdkError.missingField(\"maker\");\n if (!this._market) throw ProgramSdkError.missingField(\"market\");\n if (!this._baseMint) throw ProgramSdkError.missingField(\"baseMint\");\n if (!this._quoteMint) throw ProgramSdkError.missingField(\"quoteMint\");\n\n return {\n nonce: this._nonce,\n salt: this._salt ?? generateSalt(),\n maker: this._maker,\n market: this._market,\n baseMint: this._baseMint,\n quoteMint: this._quoteMint,\n side: this._side,\n amountIn: this._amountIn,\n amountOut: this._amountOut,\n expiration: this._expiration,\n signature: Buffer.alloc(64),\n };\n }\n\n /**\n * Build and sign the order with a Keypair.\n */\n buildAndSign(keypair: Keypair): SignedOrder {\n const unsigned = this.build();\n return signOrderFull(\n {\n nonce: unsigned.nonce,\n salt: unsigned.salt,\n maker: unsigned.maker,\n market: unsigned.market,\n baseMint: unsigned.baseMint,\n quoteMint: unsigned.quoteMint,\n side: unsigned.side,\n amountIn: unsigned.amountIn,\n amountOut: unsigned.amountOut,\n expiration: unsigned.expiration,\n },\n keypair\n );\n }\n\n /**\n * Build, sign, and convert to a SubmitOrderRequest.\n */\n toSubmitRequest(\n keypair: Keypair,\n orderbookId: string\n ): SubmitOrderRequest {\n const signed = this.buildAndSign(keypair);\n return orderToSubmitRequest(signed, orderbookId, {\n depositSource: this._depositSource,\n });\n }\n}\n"]}
|
|
@@ -7,14 +7,14 @@ export declare const ALT_PROGRAM_ID: PublicKey;
|
|
|
7
7
|
* SPL Token Program ID
|
|
8
8
|
*/
|
|
9
9
|
export declare const TOKEN_PROGRAM_ID: PublicKey;
|
|
10
|
-
/**
|
|
11
|
-
* Token-2022 Program ID (for conditional tokens)
|
|
12
|
-
*/
|
|
13
|
-
export declare const TOKEN_2022_PROGRAM_ID: PublicKey;
|
|
14
10
|
/**
|
|
15
11
|
* Associated Token Account Program ID
|
|
16
12
|
*/
|
|
17
13
|
export declare const ASSOCIATED_TOKEN_PROGRAM_ID: PublicKey;
|
|
14
|
+
/**
|
|
15
|
+
* Metaplex Token Metadata Program ID
|
|
16
|
+
*/
|
|
17
|
+
export declare const MPL_TOKEN_METADATA_PROGRAM_ID: PublicKey;
|
|
18
18
|
/**
|
|
19
19
|
* System Program ID
|
|
20
20
|
*/
|
|
@@ -50,6 +50,16 @@ export declare const INSTRUCTION: {
|
|
|
50
50
|
readonly DEPOSIT_AND_SWAP: 20;
|
|
51
51
|
readonly EXTEND_POSITION_TOKENS: 21;
|
|
52
52
|
readonly WITHDRAW_FROM_GLOBAL: 22;
|
|
53
|
+
readonly CLOSE_POSITION_ALT: 23;
|
|
54
|
+
readonly CLOSE_ORDER_STATUS: 24;
|
|
55
|
+
readonly CLOSE_POSITION_TOKEN_ACCOUNTS: 25;
|
|
56
|
+
readonly CLOSE_ORDERBOOK_ALT: 26;
|
|
57
|
+
readonly CLOSE_ORDERBOOK: 27;
|
|
58
|
+
readonly SET_MANAGER: 28;
|
|
59
|
+
readonly SET_MARKET_FEES: 29;
|
|
60
|
+
readonly SET_FEE_RECEIVER: 30;
|
|
61
|
+
readonly CREATE_CONDITIONAL_METADATA: 31;
|
|
62
|
+
readonly UPDATE_CONDITIONAL_METADATA: 32;
|
|
53
63
|
};
|
|
54
64
|
/**
|
|
55
65
|
* Account discriminators (8 bytes each)
|
|
@@ -68,9 +78,9 @@ export declare const DISCRIMINATOR: {
|
|
|
68
78
|
* Account sizes in bytes
|
|
69
79
|
*/
|
|
70
80
|
export declare const ACCOUNT_SIZE: {
|
|
71
|
-
readonly EXCHANGE:
|
|
72
|
-
readonly MARKET:
|
|
73
|
-
readonly ORDER_STATUS:
|
|
81
|
+
readonly EXCHANGE: 212;
|
|
82
|
+
readonly MARKET: 212;
|
|
83
|
+
readonly ORDER_STATUS: 32;
|
|
74
84
|
readonly USER_NONCE: 16;
|
|
75
85
|
readonly POSITION: 80;
|
|
76
86
|
readonly ORDERBOOK: 144;
|
|
@@ -105,10 +115,13 @@ export declare const SEEDS: {
|
|
|
105
115
|
readonly MARKET_DEPOSIT_TOKEN_ACCOUNT: "market_deposit_token_account";
|
|
106
116
|
readonly MARKET_MINT_AUTHORITY: "market_mint_authority";
|
|
107
117
|
readonly CONDITIONAL_MINT: "conditional_mint";
|
|
118
|
+
readonly CONDITION: "condition";
|
|
108
119
|
readonly ORDER_STATUS: "order_status";
|
|
109
120
|
readonly USER_NONCE: "user_nonce";
|
|
110
121
|
readonly POSITION: "position";
|
|
111
122
|
readonly ORDERBOOK: "orderbook";
|
|
112
123
|
readonly GLOBAL_DEPOSIT: "global_deposit";
|
|
124
|
+
readonly FEE_RECEIVER: "fee_receiver";
|
|
125
|
+
readonly MPL_METADATA: "metadata";
|
|
113
126
|
};
|
|
114
127
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/program/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGV,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/program/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGV,MAAM,iBAAiB,CAAC;AAMzB;;GAEG;AACH,eAAO,MAAM,cAAc,WAE1B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,WAAuB,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,2BAA2B,WAAkC,CAAC;AAE3E;;GAEG;AACH,eAAO,MAAM,6BAA6B,WAEzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,WAA0B,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,cAAc,WAAqB,CAAC;AAEjD;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCd,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;;;CAQhB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;CAQf,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;;;;CAIb,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY,IAAI,CAAC;AAE9B;;GAEG;AACH,eAAO,MAAM,YAAY,IAAI,CAAC;AAE9B;;GAEG;AACH,eAAO,MAAM,UAAU,IAAI,CAAC;AAE5B;;GAEG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;CAcR,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SEEDS = exports.MAX_MAKERS = exports.MIN_OUTCOMES = exports.MAX_OUTCOMES = exports.ORDER_SIZE = exports.ACCOUNT_SIZE = exports.DISCRIMINATOR = exports.INSTRUCTION = exports.RENT_SYSVAR_ID = exports.SYSTEM_PROGRAM_ID = exports.
|
|
3
|
+
exports.SEEDS = exports.MAX_MAKERS = exports.MIN_OUTCOMES = exports.MAX_OUTCOMES = exports.ORDER_SIZE = exports.ACCOUNT_SIZE = exports.DISCRIMINATOR = exports.INSTRUCTION = exports.RENT_SYSVAR_ID = exports.SYSTEM_PROGRAM_ID = exports.MPL_TOKEN_METADATA_PROGRAM_ID = exports.ASSOCIATED_TOKEN_PROGRAM_ID = exports.TOKEN_PROGRAM_ID = exports.ALT_PROGRAM_ID = void 0;
|
|
4
4
|
const web3_js_1 = require("@solana/web3.js");
|
|
5
5
|
const spl_token_1 = require("@solana/spl-token");
|
|
6
6
|
/**
|
|
@@ -11,14 +11,14 @@ exports.ALT_PROGRAM_ID = new web3_js_1.PublicKey("AddressLookupTab1e111111111111
|
|
|
11
11
|
* SPL Token Program ID
|
|
12
12
|
*/
|
|
13
13
|
exports.TOKEN_PROGRAM_ID = spl_token_1.TOKEN_PROGRAM_ID;
|
|
14
|
-
/**
|
|
15
|
-
* Token-2022 Program ID (for conditional tokens)
|
|
16
|
-
*/
|
|
17
|
-
exports.TOKEN_2022_PROGRAM_ID = spl_token_1.TOKEN_2022_PROGRAM_ID;
|
|
18
14
|
/**
|
|
19
15
|
* Associated Token Account Program ID
|
|
20
16
|
*/
|
|
21
17
|
exports.ASSOCIATED_TOKEN_PROGRAM_ID = spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID;
|
|
18
|
+
/**
|
|
19
|
+
* Metaplex Token Metadata Program ID
|
|
20
|
+
*/
|
|
21
|
+
exports.MPL_TOKEN_METADATA_PROGRAM_ID = new web3_js_1.PublicKey("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s");
|
|
22
22
|
/**
|
|
23
23
|
* System Program ID
|
|
24
24
|
*/
|
|
@@ -54,6 +54,16 @@ exports.INSTRUCTION = {
|
|
|
54
54
|
DEPOSIT_AND_SWAP: 20,
|
|
55
55
|
EXTEND_POSITION_TOKENS: 21,
|
|
56
56
|
WITHDRAW_FROM_GLOBAL: 22,
|
|
57
|
+
CLOSE_POSITION_ALT: 23,
|
|
58
|
+
CLOSE_ORDER_STATUS: 24,
|
|
59
|
+
CLOSE_POSITION_TOKEN_ACCOUNTS: 25,
|
|
60
|
+
CLOSE_ORDERBOOK_ALT: 26,
|
|
61
|
+
CLOSE_ORDERBOOK: 27,
|
|
62
|
+
SET_MANAGER: 28,
|
|
63
|
+
SET_MARKET_FEES: 29,
|
|
64
|
+
SET_FEE_RECEIVER: 30,
|
|
65
|
+
CREATE_CONDITIONAL_METADATA: 31,
|
|
66
|
+
UPDATE_CONDITIONAL_METADATA: 32,
|
|
57
67
|
};
|
|
58
68
|
/**
|
|
59
69
|
* Account discriminators (8 bytes each)
|
|
@@ -72,9 +82,9 @@ exports.DISCRIMINATOR = {
|
|
|
72
82
|
* Account sizes in bytes
|
|
73
83
|
*/
|
|
74
84
|
exports.ACCOUNT_SIZE = {
|
|
75
|
-
EXCHANGE:
|
|
76
|
-
MARKET:
|
|
77
|
-
ORDER_STATUS:
|
|
85
|
+
EXCHANGE: 212,
|
|
86
|
+
MARKET: 212,
|
|
87
|
+
ORDER_STATUS: 32,
|
|
78
88
|
USER_NONCE: 16,
|
|
79
89
|
POSITION: 80,
|
|
80
90
|
ORDERBOOK: 144,
|
|
@@ -109,10 +119,13 @@ exports.SEEDS = {
|
|
|
109
119
|
MARKET_DEPOSIT_TOKEN_ACCOUNT: "market_deposit_token_account",
|
|
110
120
|
MARKET_MINT_AUTHORITY: "market_mint_authority",
|
|
111
121
|
CONDITIONAL_MINT: "conditional_mint",
|
|
122
|
+
CONDITION: "condition",
|
|
112
123
|
ORDER_STATUS: "order_status",
|
|
113
124
|
USER_NONCE: "user_nonce",
|
|
114
125
|
POSITION: "position",
|
|
115
126
|
ORDERBOOK: "orderbook",
|
|
116
127
|
GLOBAL_DEPOSIT: "global_deposit",
|
|
128
|
+
FEE_RECEIVER: "fee_receiver",
|
|
129
|
+
MPL_METADATA: "metadata",
|
|
117
130
|
};
|
|
118
131
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/program/constants.ts"],"names":[],"mappings":";;;AAAA,6CAIyB;AACzB,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/program/constants.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n PublicKey,\n SystemProgram,\n SYSVAR_RENT_PUBKEY,\n} from \"@solana/web3.js\";\nimport {\n TOKEN_PROGRAM_ID as SPL_TOKEN_PROGRAM_ID,\n ASSOCIATED_TOKEN_PROGRAM_ID as SPL_ASSOCIATED_TOKEN_PROGRAM_ID,\n} from \"@solana/spl-token\";\n\n/**\n * Address Lookup Table Program ID\n */\nexport const ALT_PROGRAM_ID = new PublicKey(\n \"AddressLookupTab1e1111111111111111111111111\"\n);\n\n/**\n * SPL Token Program ID\n */\nexport const TOKEN_PROGRAM_ID = SPL_TOKEN_PROGRAM_ID;\n\n/**\n * Associated Token Account Program ID\n */\nexport const ASSOCIATED_TOKEN_PROGRAM_ID = SPL_ASSOCIATED_TOKEN_PROGRAM_ID;\n\n/**\n * Metaplex Token Metadata Program ID\n */\nexport const MPL_TOKEN_METADATA_PROGRAM_ID = new PublicKey(\n \"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\"\n);\n\n/**\n * System Program ID\n */\nexport const SYSTEM_PROGRAM_ID = SystemProgram.programId;\n\n/**\n * Rent Sysvar ID\n */\nexport const RENT_SYSVAR_ID = SYSVAR_RENT_PUBKEY;\n\n/**\n * Instruction discriminators (single byte indices)\n */\nexport const INSTRUCTION = {\n INITIALIZE: 0,\n CREATE_MARKET: 1,\n ADD_DEPOSIT_MINT: 2,\n MINT_COMPLETE_SET: 3,\n MERGE_COMPLETE_SET: 4,\n CANCEL_ORDER: 5,\n INCREMENT_NONCE: 6,\n SETTLE_MARKET: 7,\n REDEEM_WINNINGS: 8,\n SET_PAUSED: 9,\n SET_OPERATOR: 10,\n WITHDRAW_FROM_POSITION: 11,\n ACTIVATE_MARKET: 12,\n MATCH_ORDERS_MULTI: 13,\n SET_AUTHORITY: 14,\n CREATE_ORDERBOOK: 15,\n WHITELIST_DEPOSIT_TOKEN: 16,\n DEPOSIT_TO_GLOBAL: 17,\n GLOBAL_TO_MARKET_DEPOSIT: 18,\n INIT_POSITION_TOKENS: 19,\n DEPOSIT_AND_SWAP: 20,\n EXTEND_POSITION_TOKENS: 21,\n WITHDRAW_FROM_GLOBAL: 22,\n CLOSE_POSITION_ALT: 23,\n CLOSE_ORDER_STATUS: 24,\n CLOSE_POSITION_TOKEN_ACCOUNTS: 25,\n CLOSE_ORDERBOOK_ALT: 26,\n CLOSE_ORDERBOOK: 27,\n SET_MANAGER: 28,\n SET_MARKET_FEES: 29,\n SET_FEE_RECEIVER: 30,\n CREATE_CONDITIONAL_METADATA: 31,\n UPDATE_CONDITIONAL_METADATA: 32,\n} as const;\n\n/**\n * Account discriminators (8 bytes each)\n * SHA-256 hash bytes matching the on-chain program\n */\nexport const DISCRIMINATOR = {\n EXCHANGE: Buffer.from([0x1e, 0xc8, 0xdc, 0x95, 0x03, 0x3d, 0x68, 0x32]),\n MARKET: Buffer.from([0xdb, 0xbe, 0xd5, 0x37, 0x00, 0xe3, 0xc6, 0x9a]),\n ORDER_STATUS: Buffer.from([0x2e, 0x5a, 0xf1, 0x49, 0xb2, 0x68, 0x41, 0x03]),\n USER_NONCE: Buffer.from([0xeb, 0x85, 0x01, 0xf3, 0x12, 0x87, 0x58, 0xe0]),\n POSITION: Buffer.from([0xaa, 0xbc, 0x8f, 0xe4, 0x7a, 0x40, 0xf7, 0xd0]),\n ORDERBOOK: Buffer.from([0x2b, 0x22, 0x19, 0x71, 0xc3, 0x45, 0x48, 0x07]),\n GLOBAL_DEPOSIT_TOKEN: Buffer.from([0x25, 0xbe, 0xa1, 0xe8, 0x7b, 0x92, 0x2a, 0x57]),\n} as const;\n\n/**\n * Account sizes in bytes\n */\nexport const ACCOUNT_SIZE = {\n EXCHANGE: 212,\n MARKET: 212,\n ORDER_STATUS: 32,\n USER_NONCE: 16,\n POSITION: 80,\n ORDERBOOK: 144,\n GLOBAL_DEPOSIT_TOKEN: 48,\n} as const;\n\n/**\n * Order sizes in bytes\n */\nexport const ORDER_SIZE = {\n SIGNED_ORDER: 233,\n ORDER: 37,\n SIGNATURE: 64,\n} as const;\n\n/**\n * Maximum number of outcomes per market (2-6)\n */\nexport const MAX_OUTCOMES = 6;\n\n/**\n * Minimum number of outcomes per market\n */\nexport const MIN_OUTCOMES = 2;\n\n/**\n * Maximum number of makers per match_orders_multi instruction\n */\nexport const MAX_MAKERS = 5;\n\n/**\n * PDA Seeds\n */\nexport const SEEDS = {\n CENTRAL_STATE: \"central_state\",\n MARKET: \"market\",\n MARKET_DEPOSIT_TOKEN_ACCOUNT: \"market_deposit_token_account\",\n MARKET_MINT_AUTHORITY: \"market_mint_authority\",\n CONDITIONAL_MINT: \"conditional_mint\",\n CONDITION: \"condition\",\n ORDER_STATUS: \"order_status\",\n USER_NONCE: \"user_nonce\",\n POSITION: \"position\",\n ORDERBOOK: \"orderbook\",\n GLOBAL_DEPOSIT: \"global_deposit\",\n FEE_RECEIVER: \"fee_receiver\",\n MPL_METADATA: \"metadata\",\n} as const;\n"]}
|