@clober/v2-sdk 0.0.3 → 0.0.5

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.
Files changed (109) hide show
  1. package/dist/cjs/abis/core/book-viewer-abi.js +189 -0
  2. package/dist/cjs/abis/core/book-viewer-abi.js.map +1 -0
  3. package/dist/cjs/apis/market.js +42 -33
  4. package/dist/cjs/apis/market.js.map +1 -1
  5. package/dist/cjs/apis/open-order.js +10 -7
  6. package/dist/cjs/apis/open-order.js.map +1 -1
  7. package/dist/cjs/apis/subgraph.js.map +1 -1
  8. package/dist/cjs/approval.js +4 -4
  9. package/dist/cjs/approval.js.map +1 -1
  10. package/dist/cjs/call.js +197 -186
  11. package/dist/cjs/call.js.map +1 -1
  12. package/dist/cjs/constants/client.js +14 -0
  13. package/dist/cjs/constants/client.js.map +1 -0
  14. package/dist/cjs/model/book.js +8 -1
  15. package/dist/cjs/model/book.js.map +1 -1
  16. package/dist/cjs/model/market.js +44 -171
  17. package/dist/cjs/model/market.js.map +1 -1
  18. package/dist/cjs/signature.js +7 -11
  19. package/dist/cjs/signature.js.map +1 -1
  20. package/dist/cjs/utils/approval.js +3 -8
  21. package/dist/cjs/utils/approval.js.map +1 -1
  22. package/dist/cjs/utils/build-transaction.js +4 -8
  23. package/dist/cjs/utils/build-transaction.js.map +1 -1
  24. package/dist/cjs/{apis → utils}/currency.js +3 -7
  25. package/dist/cjs/utils/currency.js.map +1 -0
  26. package/dist/cjs/utils/decorator.js +13 -0
  27. package/dist/cjs/utils/decorator.js.map +1 -0
  28. package/dist/cjs/utils/open.js +36 -0
  29. package/dist/cjs/utils/open.js.map +1 -0
  30. package/dist/cjs/utils/unit.js +3 -7
  31. package/dist/cjs/utils/unit.js.map +1 -1
  32. package/dist/cjs/view.js +24 -44
  33. package/dist/cjs/view.js.map +1 -1
  34. package/dist/esm/abis/core/book-viewer-abi.js +186 -0
  35. package/dist/esm/abis/core/book-viewer-abi.js.map +1 -0
  36. package/dist/esm/apis/market.js +43 -34
  37. package/dist/esm/apis/market.js.map +1 -1
  38. package/dist/esm/apis/open-order.js +10 -7
  39. package/dist/esm/apis/open-order.js.map +1 -1
  40. package/dist/esm/apis/subgraph.js.map +1 -1
  41. package/dist/esm/approval.js +5 -4
  42. package/dist/esm/approval.js.map +1 -1
  43. package/dist/esm/call.js +213 -191
  44. package/dist/esm/call.js.map +1 -1
  45. package/dist/esm/constants/client.js +10 -0
  46. package/dist/esm/constants/client.js.map +1 -0
  47. package/dist/esm/model/book.js +8 -1
  48. package/dist/esm/model/book.js.map +1 -1
  49. package/dist/esm/model/market.js +45 -176
  50. package/dist/esm/model/market.js.map +1 -1
  51. package/dist/esm/signature.js +8 -11
  52. package/dist/esm/signature.js.map +1 -1
  53. package/dist/esm/utils/approval.js +3 -8
  54. package/dist/esm/utils/approval.js.map +1 -1
  55. package/dist/esm/utils/build-transaction.js +5 -9
  56. package/dist/esm/utils/build-transaction.js.map +1 -1
  57. package/dist/esm/{apis → utils}/currency.js +4 -8
  58. package/dist/esm/utils/currency.js.map +1 -0
  59. package/dist/esm/utils/decorator.js +9 -0
  60. package/dist/esm/utils/decorator.js.map +1 -0
  61. package/dist/esm/utils/open.js +32 -0
  62. package/dist/esm/utils/open.js.map +1 -0
  63. package/dist/esm/utils/unit.js +4 -8
  64. package/dist/esm/utils/unit.js.map +1 -1
  65. package/dist/esm/view.js +25 -39
  66. package/dist/esm/view.js.map +1 -1
  67. package/dist/tsconfig.build.tsbuildinfo +1 -1
  68. package/dist/types/abis/core/book-viewer-abi.d.ts +141 -0
  69. package/dist/types/abis/core/book-viewer-abi.d.ts.map +1 -0
  70. package/dist/types/apis/market.d.ts +1 -1
  71. package/dist/types/apis/market.d.ts.map +1 -1
  72. package/dist/types/apis/open-order.d.ts +3 -3
  73. package/dist/types/apis/open-order.d.ts.map +1 -1
  74. package/dist/types/approval.d.ts +6 -3
  75. package/dist/types/approval.d.ts.map +1 -1
  76. package/dist/types/call.d.ts +82 -31
  77. package/dist/types/call.d.ts.map +1 -1
  78. package/dist/types/constants/client.d.ts +5 -0
  79. package/dist/types/constants/client.d.ts.map +1 -0
  80. package/dist/types/model/book.d.ts +3 -1
  81. package/dist/types/model/book.d.ts.map +1 -1
  82. package/dist/types/model/depth.d.ts +0 -2
  83. package/dist/types/model/depth.d.ts.map +1 -1
  84. package/dist/types/model/market.d.ts +11 -13
  85. package/dist/types/model/market.d.ts.map +1 -1
  86. package/dist/types/model/open-order.d.ts +5 -2
  87. package/dist/types/model/open-order.d.ts.map +1 -1
  88. package/dist/types/signature.d.ts +7 -3
  89. package/dist/types/signature.d.ts.map +1 -1
  90. package/dist/types/type.d.ts +14 -6
  91. package/dist/types/type.d.ts.map +1 -1
  92. package/dist/types/utils/approval.d.ts +1 -1
  93. package/dist/types/utils/approval.d.ts.map +1 -1
  94. package/dist/types/utils/build-transaction.d.ts +3 -4
  95. package/dist/types/utils/build-transaction.d.ts.map +1 -1
  96. package/dist/types/{apis → utils}/currency.d.ts +1 -1
  97. package/dist/types/utils/currency.d.ts.map +1 -0
  98. package/dist/types/utils/decorator.d.ts +6 -0
  99. package/dist/types/utils/decorator.d.ts.map +1 -0
  100. package/dist/types/utils/open.d.ts +3 -0
  101. package/dist/types/utils/open.d.ts.map +1 -0
  102. package/dist/types/utils/unit.d.ts +2 -2
  103. package/dist/types/utils/unit.d.ts.map +1 -1
  104. package/dist/types/view.d.ts +36 -24
  105. package/dist/types/view.d.ts.map +1 -1
  106. package/package.json +1 -8
  107. package/dist/cjs/apis/currency.js.map +0 -1
  108. package/dist/esm/apis/currency.js.map +0 -1
  109. package/dist/types/apis/currency.d.ts.map +0 -1
@@ -0,0 +1,141 @@
1
+ export declare const BOOK_VIEWER_ABI: readonly [{
2
+ readonly inputs: readonly [{
3
+ readonly internalType: "contract IBookManager";
4
+ readonly name: "bookManager_";
5
+ readonly type: "address";
6
+ }];
7
+ readonly stateMutability: "nonpayable";
8
+ readonly type: "constructor";
9
+ }, {
10
+ readonly inputs: readonly [];
11
+ readonly name: "InvalidTick";
12
+ readonly type: "error";
13
+ }, {
14
+ readonly inputs: readonly [{
15
+ readonly internalType: "uint256";
16
+ readonly name: "value";
17
+ readonly type: "uint256";
18
+ }];
19
+ readonly name: "SafeCastOverflowedUintToInt";
20
+ readonly type: "error";
21
+ }, {
22
+ readonly inputs: readonly [];
23
+ readonly name: "bookManager";
24
+ readonly outputs: readonly [{
25
+ readonly internalType: "contract IBookManager";
26
+ readonly name: "";
27
+ readonly type: "address";
28
+ }];
29
+ readonly stateMutability: "view";
30
+ readonly type: "function";
31
+ }, {
32
+ readonly inputs: readonly [{
33
+ readonly components: readonly [{
34
+ readonly internalType: "BookId";
35
+ readonly name: "id";
36
+ readonly type: "uint192";
37
+ }, {
38
+ readonly internalType: "uint256";
39
+ readonly name: "limitPrice";
40
+ readonly type: "uint256";
41
+ }, {
42
+ readonly internalType: "uint256";
43
+ readonly name: "quoteAmount";
44
+ readonly type: "uint256";
45
+ }, {
46
+ readonly internalType: "uint256";
47
+ readonly name: "maxBaseAmount";
48
+ readonly type: "uint256";
49
+ }, {
50
+ readonly internalType: "bytes";
51
+ readonly name: "hookData";
52
+ readonly type: "bytes";
53
+ }];
54
+ readonly internalType: "struct IController.TakeOrderParams";
55
+ readonly name: "params";
56
+ readonly type: "tuple";
57
+ }];
58
+ readonly name: "getExpectedInput";
59
+ readonly outputs: readonly [{
60
+ readonly internalType: "uint256";
61
+ readonly name: "takenQuoteAmount";
62
+ readonly type: "uint256";
63
+ }, {
64
+ readonly internalType: "uint256";
65
+ readonly name: "spendBaseAmount";
66
+ readonly type: "uint256";
67
+ }];
68
+ readonly stateMutability: "view";
69
+ readonly type: "function";
70
+ }, {
71
+ readonly inputs: readonly [{
72
+ readonly components: readonly [{
73
+ readonly internalType: "BookId";
74
+ readonly name: "id";
75
+ readonly type: "uint192";
76
+ }, {
77
+ readonly internalType: "uint256";
78
+ readonly name: "limitPrice";
79
+ readonly type: "uint256";
80
+ }, {
81
+ readonly internalType: "uint256";
82
+ readonly name: "baseAmount";
83
+ readonly type: "uint256";
84
+ }, {
85
+ readonly internalType: "uint256";
86
+ readonly name: "minQuoteAmount";
87
+ readonly type: "uint256";
88
+ }, {
89
+ readonly internalType: "bytes";
90
+ readonly name: "hookData";
91
+ readonly type: "bytes";
92
+ }];
93
+ readonly internalType: "struct IController.SpendOrderParams";
94
+ readonly name: "params";
95
+ readonly type: "tuple";
96
+ }];
97
+ readonly name: "getExpectedOutput";
98
+ readonly outputs: readonly [{
99
+ readonly internalType: "uint256";
100
+ readonly name: "takenQuoteAmount";
101
+ readonly type: "uint256";
102
+ }, {
103
+ readonly internalType: "uint256";
104
+ readonly name: "spendBaseAmount";
105
+ readonly type: "uint256";
106
+ }];
107
+ readonly stateMutability: "view";
108
+ readonly type: "function";
109
+ }, {
110
+ readonly inputs: readonly [{
111
+ readonly internalType: "BookId";
112
+ readonly name: "id";
113
+ readonly type: "uint192";
114
+ }, {
115
+ readonly internalType: "Tick";
116
+ readonly name: "tick";
117
+ readonly type: "int24";
118
+ }, {
119
+ readonly internalType: "uint256";
120
+ readonly name: "n";
121
+ readonly type: "uint256";
122
+ }];
123
+ readonly name: "getLiquidity";
124
+ readonly outputs: readonly [{
125
+ readonly components: readonly [{
126
+ readonly internalType: "Tick";
127
+ readonly name: "tick";
128
+ readonly type: "int24";
129
+ }, {
130
+ readonly internalType: "uint64";
131
+ readonly name: "depth";
132
+ readonly type: "uint64";
133
+ }];
134
+ readonly internalType: "struct IBookViewer.Liquidity[]";
135
+ readonly name: "liquidity";
136
+ readonly type: "tuple[]";
137
+ }];
138
+ readonly stateMutability: "view";
139
+ readonly type: "function";
140
+ }];
141
+ //# sourceMappingURL=book-viewer-abi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"book-viewer-abi.d.ts","sourceRoot":"","sources":["../../../../src/abis/core/book-viewer-abi.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwLlB,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import { CHAIN_IDS } from '../constants/chain';
2
2
  import { Market } from '../model/market';
3
- export declare function fetchMarket(chainId: CHAIN_IDS, tokenAddresses: `0x${string}`[], rpcUrl?: string): Promise<Market>;
3
+ export declare function fetchMarket(chainId: CHAIN_IDS, tokenAddresses: `0x${string}`[], n?: number): Promise<Market>;
4
4
  //# sourceMappingURL=market.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../../../src/apis/market.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AA4BxC,wBAAsB,WAAW,CAC/B,OAAO,EAAE,SAAS,EAClB,cAAc,EAAE,KAAK,MAAM,EAAE,EAAE,EAC/B,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,CAsDjB"}
1
+ {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../../../src/apis/market.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAgDxC,wBAAsB,WAAW,CAC/B,OAAO,EAAE,SAAS,EAClB,cAAc,EAAE,KAAK,MAAM,EAAE,EAAE,EAC/B,CAAC,SAAM,GACN,OAAO,CAAC,MAAM,CAAC,CAyBjB"}
@@ -1,5 +1,5 @@
1
1
  import { CHAIN_IDS } from '../constants/chain';
2
- import { OpenOrder } from '../model/open-order';
3
- export declare function fetchOpenOrders(chainId: CHAIN_IDS, userAddress: `0x${string}`, rpcUrl?: string): Promise<OpenOrder[]>;
4
- export declare function fetchOpenOrder(chainId: CHAIN_IDS, id: string, rpcUrl?: string): Promise<OpenOrder>;
2
+ import type { OpenOrder } from '../model/open-order';
3
+ export declare function fetchOpenOrders(chainId: CHAIN_IDS, userAddress: `0x${string}`): Promise<OpenOrder[]>;
4
+ export declare function fetchOpenOrder(chainId: CHAIN_IDS, id: string): Promise<OpenOrder>;
5
5
  //# sourceMappingURL=open-order.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"open-order.d.ts","sourceRoot":"","sources":["../../../src/apis/open-order.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAM9C,OAAO,EAAE,SAAS,EAAgB,MAAM,qBAAqB,CAAA;AAsC7D,wBAAsB,eAAe,CACnC,OAAO,EAAE,SAAS,EAClB,WAAW,EAAE,KAAK,MAAM,EAAE,EAC1B,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,SAAS,EAAE,CAAC,CAoBtB;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,SAAS,EAClB,EAAE,EAAE,MAAM,EACV,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,SAAS,CAAC,CAYpB"}
1
+ {"version":3,"file":"open-order.d.ts","sourceRoot":"","sources":["../../../src/apis/open-order.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAM9C,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,qBAAqB,CAAA;AAsClE,wBAAsB,eAAe,CACnC,OAAO,EAAE,SAAS,EAClB,WAAW,EAAE,KAAK,MAAM,EAAE,GACzB,OAAO,CAAC,SAAS,EAAE,CAAC,CAoBtB;AAED,wBAAsB,cAAc,CAClC,OAAO,EAAE,SAAS,EAClB,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,SAAS,CAAC,CAYpB"}
@@ -1,5 +1,6 @@
1
- import { HDAccount, PrivateKeyAccount } from 'viem';
1
+ import { type HDAccount, type PrivateKeyAccount } from 'viem';
2
2
  import { CHAIN_IDS } from './constants/chain';
3
+ import type { DefaultOptions } from './type';
3
4
  /**
4
5
  * Sets approval of all open orders for the specified account on the given chain.
5
6
  *
@@ -26,7 +27,9 @@ import { CHAIN_IDS } from './constants/chain';
26
27
  * mnemonicToAccount('legal ...')
27
28
  * )
28
29
  */
29
- export declare const setApprovalOfOpenOrdersForAll: (chainId: CHAIN_IDS, account: HDAccount | PrivateKeyAccount, options?: {
30
- rpcUrl: string;
30
+ export declare const setApprovalOfOpenOrdersForAll: (args: {
31
+ chainId: CHAIN_IDS;
32
+ account: HDAccount | PrivateKeyAccount;
33
+ options?: DefaultOptions;
31
34
  }) => Promise<`0x${string}` | undefined>;
32
35
  //# sourceMappingURL=approval.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"approval.d.ts","sourceRoot":"","sources":["../../src/approval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,SAAS,EAAQ,iBAAiB,EAAE,MAAM,MAAM,CAAA;AAE7E,OAAO,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAA;AAyBxD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,6BAA6B,YAC/B,SAAS,WACT,SAAS,GAAG,iBAAiB,YAC5B;IACR,MAAM,EAAE,MAAM,CAAA;CACf,KACA,QAAQ,KAAK,MAAM,EAAE,GAAG,SAAS,CAsBnC,CAAA"}
1
+ {"version":3,"file":"approval.d.ts","sourceRoot":"","sources":["../../src/approval.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,iBAAiB,EACvB,MAAM,MAAM,CAAA;AAEb,OAAO,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAA;AAIxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAuB5C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,6BAA6B;aAM7B,SAAS;aACT,SAAS,GAAG,iBAAiB;cAC5B,cAAc;wCAuB3B,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { CHAIN_IDS } from './constants/chain';
2
- import { PermitSignature, Transaction } from './type';
2
+ import type { CurrencyFlow, DefaultOptions, PermitSignature, Transaction } from './type';
3
3
  /**
4
4
  * Build a transaction to open a market.
5
5
  *
@@ -18,8 +18,11 @@ import { PermitSignature, Transaction } from './type';
18
18
  * '0x0000000000000000000000000000000000000000'
19
19
  * )
20
20
  */
21
- export declare const openMarket: (chainId: CHAIN_IDS, inputToken: `0x${string}`, outputToken: `0x${string}`, options?: {
22
- rpcUrl?: string;
21
+ export declare const openMarket: (args: {
22
+ chainId: CHAIN_IDS;
23
+ inputToken: `0x${string}`;
24
+ outputToken: `0x${string}`;
25
+ options?: DefaultOptions;
23
26
  }) => Promise<Transaction | undefined>;
24
27
  /**
25
28
  * Places a limit order on the specified chain for trading tokens.
@@ -34,7 +37,8 @@ export declare const openMarket: (chainId: CHAIN_IDS, inputToken: `0x${string}`,
34
37
  * @param {PermitSignature} [options.signature] The permit signature for token approval.
35
38
  * @param {boolean} [options.postOnly] A boolean indicating whether the order is only to be made not taken.
36
39
  * @param {string} [options.rpcUrl] The RPC URL of the blockchain.
37
- * @returns {Promise<Transaction>} Promise resolving to the transaction object representing the limit order.
40
+ * @returns {Promise<{ transaction: Transaction, result: { make: CurrencyFlow, take: CurrencyFlow } }>}
41
+ * Promise resolving to the transaction object representing the limit order with the result of the order.
38
42
  * @example
39
43
  * import { signERC20Permit, limitOrder } from '@clober/v2-sdk'
40
44
  * import { privateKeyToAccount } from 'viem/accounts'
@@ -46,7 +50,7 @@ export declare const openMarket: (chainId: CHAIN_IDS, inputToken: `0x${string}`,
46
50
  * '100.123'
47
51
  * )
48
52
  *
49
- * const transaction = await limitOrder(
53
+ * const { transaction } = await limitOrder(
50
54
  * 421614,
51
55
  * '0xF8c1869Ecd4df136693C45EcE1b67f85B6bDaE69
52
56
  * '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
@@ -59,7 +63,7 @@ export declare const openMarket: (chainId: CHAIN_IDS, inputToken: `0x${string}`,
59
63
  * @example
60
64
  * import { limitOrder } from '@clober/v2-sdk'
61
65
  *
62
- * const transaction = await limitOrder(
66
+ * const { transaction } = await limitOrder(
63
67
  * 421614,
64
68
  * '0xF8c1869Ecd4df136693C45EcE1b67f85B6bDaE69
65
69
  * '0x0000000000000000000000000000000000000000',
@@ -68,11 +72,24 @@ export declare const openMarket: (chainId: CHAIN_IDS, inputToken: `0x${string}`,
68
72
  * '4000.01', // price at 4000.01 (ETH/USDC)
69
73
  * )
70
74
  */
71
- export declare const limitOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}`, inputToken: `0x${string}`, outputToken: `0x${string}`, amount: string, price: string, options?: {
72
- signature?: PermitSignature;
73
- postOnly?: boolean;
74
- rpcUrl?: string;
75
- }) => Promise<Transaction>;
75
+ export declare const limitOrder: (args: {
76
+ chainId: CHAIN_IDS;
77
+ userAddress: `0x${string}`;
78
+ inputToken: `0x${string}`;
79
+ outputToken: `0x${string}`;
80
+ amount: string;
81
+ price: string;
82
+ options?: {
83
+ signature?: PermitSignature;
84
+ postOnly?: boolean;
85
+ } & DefaultOptions;
86
+ }) => Promise<{
87
+ transaction: Transaction;
88
+ result: {
89
+ make: CurrencyFlow;
90
+ take: CurrencyFlow;
91
+ };
92
+ }>;
76
93
  /**
77
94
  * Executes a market order on the specified chain for trading tokens.
78
95
  *
@@ -118,10 +135,16 @@ export declare const limitOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}`
118
135
  * '0.13', // 0.13 ETH
119
136
  * )
120
137
  */
121
- export declare const marketOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}`, inputToken: `0x${string}`, outputToken: `0x${string}`, amount: string, options?: {
122
- signature?: PermitSignature;
123
- rpcUrl?: string;
124
- limitPrice?: string;
138
+ export declare const marketOrder: (args: {
139
+ chainId: CHAIN_IDS;
140
+ userAddress: `0x${string}`;
141
+ inputToken: `0x${string}`;
142
+ outputToken: `0x${string}`;
143
+ amount: string;
144
+ options?: {
145
+ signature?: PermitSignature;
146
+ limitPrice?: string;
147
+ } & DefaultOptions;
125
148
  }) => Promise<Transaction>;
126
149
  /**
127
150
  * Claims specified open order for settlement.
@@ -132,7 +155,8 @@ export declare const marketOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}
132
155
  * @param {string} id An ID representing the open order to be claimed.
133
156
  * @param {Object} [options] Optional parameters for claiming orders.
134
157
  * @param {string} [options.rpcUrl] The RPC URL to use for executing the transaction.
135
- * @returns {Promise<Transaction>} Promise resolving to the transaction object representing the claim action.
158
+ * @returns {Promise<{ transaction: Transaction, result: CurrencyFlow }>}
159
+ * Promise resolving to the transaction object representing the claim action with the result of the order.
136
160
  * @throws {Error} Throws an error if no open orders are found for the specified user.
137
161
  * @example
138
162
  * import { getOpenOrders, claimOrders } from '@clober/v2-sdk'
@@ -147,9 +171,15 @@ export declare const marketOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}
147
171
  * openOrders.map((order) => order.id)
148
172
  * )
149
173
  */
150
- export declare const claimOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}`, id: string, options?: {
151
- rpcUrl?: string;
152
- }) => Promise<Transaction>;
174
+ export declare const claimOrder: (args: {
175
+ chainId: CHAIN_IDS;
176
+ userAddress: `0x${string}`;
177
+ id: string;
178
+ options?: DefaultOptions;
179
+ }) => Promise<{
180
+ transaction: Transaction;
181
+ result: CurrencyFlow;
182
+ }>;
153
183
  /**
154
184
  * Claims specified open orders for settlement.
155
185
  * [IMPORTANT] Set ApprovalForAll before calling this function.
@@ -159,7 +189,8 @@ export declare const claimOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}`
159
189
  * @param {string[]} ids An array of IDs representing the open orders to be claimed.
160
190
  * @param {Object} [options] Optional parameters for claiming orders.
161
191
  * @param {string} [options.rpcUrl] The RPC URL to use for executing the transaction.
162
- * @returns {Promise<Transaction>} Promise resolving to the transaction object representing the claim action.
192
+ * @returns {Promise<{ transaction: Transaction, result: CurrencyFlow[] }>}
193
+ * Promise resolving to the transaction object representing the claim action with the result of the orders.
163
194
  * @throws {Error} Throws an error if no open orders are found for the specified user.
164
195
  * @example
165
196
  * import { getOpenOrders, claimOrders } from '@clober/v2-sdk'
@@ -174,9 +205,15 @@ export declare const claimOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}`
174
205
  * openOrders.map((order) => order.id)
175
206
  * )
176
207
  */
177
- export declare const claimOrders: (chainId: CHAIN_IDS, userAddress: `0x${string}`, ids: string[], options?: {
178
- rpcUrl?: string;
179
- }) => Promise<Transaction>;
208
+ export declare const claimOrders: (args: {
209
+ chainId: CHAIN_IDS;
210
+ userAddress: `0x${string}`;
211
+ ids: string[];
212
+ options?: DefaultOptions;
213
+ }) => Promise<{
214
+ transaction: Transaction;
215
+ result: CurrencyFlow[];
216
+ }>;
180
217
  /**
181
218
  * Cancels specified open order if the order is not fully filled.
182
219
  * [IMPORTANT] Set ApprovalForAll before calling this function.
@@ -186,7 +223,8 @@ export declare const claimOrders: (chainId: CHAIN_IDS, userAddress: `0x${string}
186
223
  * @param {string} id An ID representing the open order to be canceled
187
224
  * @param {Object} [options] Optional parameters for canceling orders.
188
225
  * @param {string} [options.rpcUrl] The RPC URL to use for executing the transaction.
189
- * @returns {Promise<Transaction>} Promise resolving to the transaction object representing the cancel action.
226
+ * @returns {Promise<{ transaction: Transaction, result: CurrencyFlow }>}
227
+ * Promise resolving to the transaction object representing the cancel action with the result of the order.
190
228
  * @throws {Error} Throws an error if no open orders are found for the specified user.
191
229
  * @example
192
230
  * import { getOpenOrders, cancelOrders } from '@clober/v2-sdk'
@@ -201,9 +239,15 @@ export declare const claimOrders: (chainId: CHAIN_IDS, userAddress: `0x${string}
201
239
  * openOrders.map((order) => order.id)
202
240
  * )
203
241
  */
204
- export declare const cancelOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}`, id: string, options?: {
205
- rpcUrl?: string;
206
- }) => Promise<Transaction>;
242
+ export declare const cancelOrder: (args: {
243
+ chainId: CHAIN_IDS;
244
+ userAddress: `0x${string}`;
245
+ id: string;
246
+ options?: DefaultOptions;
247
+ }) => Promise<{
248
+ transaction: Transaction;
249
+ result: CurrencyFlow;
250
+ }>;
207
251
  /**
208
252
  * Cancels specified open orders if orders are not fully filled.
209
253
  * [IMPORTANT] Set ApprovalForAll before calling this function.
@@ -213,7 +257,8 @@ export declare const cancelOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}
213
257
  * @param {string[]} ids An array of IDs representing the open orders to be canceled.
214
258
  * @param {Object} [options] Optional parameters for canceling orders.
215
259
  * @param {string} [options.rpcUrl] The RPC URL to use for executing the transaction.
216
- * @returns {Promise<Transaction>} Promise resolving to the transaction object representing the cancel action.
260
+ * @returns {Promise<{ transaction: Transaction, result: CurrencyFlow[] }>
261
+ * Promise resolving to the transaction object representing the cancel action with the result of the orders.
217
262
  * @throws {Error} Throws an error if no open orders are found for the specified user.
218
263
  * @example
219
264
  * import { getOpenOrders, cancelOrders } from '@clober/v2-sdk'
@@ -228,7 +273,13 @@ export declare const cancelOrder: (chainId: CHAIN_IDS, userAddress: `0x${string}
228
273
  * openOrders.map((order) => order.id)
229
274
  * )
230
275
  */
231
- export declare const cancelOrders: (chainId: CHAIN_IDS, userAddress: `0x${string}`, ids: string[], options?: {
232
- rpcUrl?: string;
233
- }) => Promise<Transaction>;
276
+ export declare const cancelOrders: (args: {
277
+ chainId: CHAIN_IDS;
278
+ userAddress: `0x${string}`;
279
+ ids: string[];
280
+ options?: DefaultOptions;
281
+ }) => Promise<{
282
+ transaction: Transaction;
283
+ result: CurrencyFlow[];
284
+ }>;
234
285
  //# sourceMappingURL=call.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../src/call.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAmBrD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,UAAU,YACZ,SAAS,cACN,KAAK,MAAM,EAAE,eACZ,KAAK,MAAM,EAAE,YAChB;IACR,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACA,QAAQ,WAAW,GAAG,SAAS,CAwCjC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,eAAO,MAAM,UAAU,YACZ,SAAS,eACL,KAAK,MAAM,EAAE,cACd,KAAK,MAAM,EAAE,eACZ,KAAK,MAAM,EAAE,UAClB,MAAM,SACP,MAAM,YACH;IACR,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACA,QAAQ,WAAW,CAuKrB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,WAAW,YACb,SAAS,eACL,KAAK,MAAM,EAAE,cACd,KAAK,MAAM,EAAE,eACZ,KAAK,MAAM,EAAE,UAClB,MAAM,YACJ;IACR,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,KACA,QAAQ,WAAW,CA8ErB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,UAAU,YACZ,SAAS,eACL,KAAK,MAAM,EAAE,MACtB,MAAM,YACA;IACR,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACA,QAAQ,WAAW,CAErB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,WAAW,YACb,SAAS,eACL,KAAK,MAAM,EAAE,OACrB,MAAM,EAAE,YACH;IACR,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACA,QAAQ,WAAW,CAuDrB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,WAAW,YACb,SAAS,eACL,KAAK,MAAM,EAAE,MACtB,MAAM,YACA;IACR,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACA,QAAQ,WAAW,CAErB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,YAAY,YACd,SAAS,eACL,KAAK,MAAM,EAAE,OACrB,MAAM,EAAE,YACH;IACR,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,KACA,QAAQ,WAAW,CAwDrB,CAAA"}
1
+ {"version":3,"file":"call.d.ts","sourceRoot":"","sources":["../../src/call.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EACf,WAAW,EACZ,MAAM,QAAQ,CAAA;AAef;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,UAAU;aAMV,SAAS;gBACN,KAAK,MAAM,EAAE;iBACZ,KAAK,MAAM,EAAE;cAChB,cAAc;sCAiC3B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,eAAO,MAAM,UAAU;aAUV,SAAS;iBACL,KAAK,MAAM,EAAE;gBACd,KAAK,MAAM,EAAE;iBACZ,KAAK,MAAM,EAAE;YAClB,MAAM;WACP,MAAM;cACH;QACR,SAAS,CAAC,EAAE,eAAe,CAAA;QAC3B,QAAQ,CAAC,EAAE,OAAO,CAAA;KACnB,GAAG,cAAc;;iBAEL,WAAW;YAChB;QACN,IAAI,EAAE,YAAY,CAAA;QAClB,IAAI,EAAE,YAAY,CAAA;KACnB;EAyIJ,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,WAAW;aASX,SAAS;iBACL,KAAK,MAAM,EAAE;gBACd,KAAK,MAAM,EAAE;iBACZ,KAAK,MAAM,EAAE;YAClB,MAAM;cACJ;QACR,SAAS,CAAC,EAAE,eAAe,CAAA;QAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;KACpB,GAAG,cAAc;0BAwErB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,UAAU;aAOV,SAAS;iBACL,KAAK,MAAM,EAAE;QACtB,MAAM;cACA,cAAc;;iBACC,WAAW;YAAU,YAAY;EAY7D,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,WAAW;aAOX,SAAS;iBACL,KAAK,MAAM,EAAE;SACrB,MAAM,EAAE;cACH,cAAc;;iBACC,WAAW;YAAU,YAAY,EAAE;EAwD/D,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,WAAW;aAOX,SAAS;iBACL,KAAK,MAAM,EAAE;QACtB,MAAM;cACA,cAAc;;iBACC,WAAW;YAAU,YAAY;EAY7D,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,YAAY;aAOZ,SAAS;iBACL,KAAK,MAAM,EAAE;SACrB,MAAM,EAAE;cACH,cAAc;;iBACC,WAAW;YAAU,YAAY,EAAE;EAyD/D,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { type PublicClient } from 'viem';
2
+ import { CHAIN_IDS } from './chain';
3
+ export declare const cachedPublicClients: Record<CHAIN_IDS, PublicClient>;
4
+ export declare const buildPublicClient: (chainId: CHAIN_IDS, rpcUrl?: string) => void;
5
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/constants/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAA4B,MAAM,MAAM,CAAA;AAElE,OAAO,EAAE,SAAS,EAAa,MAAM,SAAS,CAAA;AAE9C,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAe,CAAA;AAC/E,eAAO,MAAM,iBAAiB,YAAa,SAAS,WAAW,MAAM,SAKpE,CAAA"}
@@ -27,12 +27,14 @@ export declare class Book {
27
27
  unit: bigint;
28
28
  quote: Currency;
29
29
  depths: RawDepth[];
30
- constructor({ id, base, quote, unit, depths, }: {
30
+ isOpened: boolean;
31
+ constructor({ id, base, quote, unit, depths, isOpened, }: {
31
32
  id: bigint;
32
33
  base: Currency;
33
34
  quote: Currency;
34
35
  unit: bigint;
35
36
  depths: RawDepth[];
37
+ isOpened: boolean;
36
38
  });
37
39
  take: ({ limitPrice, amountOut, }: {
38
40
  limitPrice: bigint;
@@ -1 +1 @@
1
- {"version":3,"file":"book.d.ts","sourceRoot":"","sources":["../../../src/model/book.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,KAAK,EAAE;QACL,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,CAAA;KAClB,EAAE,CAAA;CACJ,CAAA;AAED,qBAAa,IAAI;IACf,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,QAAQ,CAAA;IACf,MAAM,EAAE,QAAQ,EAAE,CAAA;gBAEN,EACV,EAAE,EACF,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,GACP,EAAE;QACD,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,QAAQ,CAAA;QACd,KAAK,EAAE,QAAQ,CAAA;QACf,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,QAAQ,EAAE,CAAA;KACnB;IAQD,IAAI,+BAGD;QACD,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;KAClB;;;MA2DA;IAED,KAAK,8BAGF;QACD,UAAU,EAAE,MAAM,CAAA;QAClB,QAAQ,EAAE,MAAM,CAAA;KACjB;;;MAwDA;CACF"}
1
+ {"version":3,"file":"book.d.ts","sourceRoot":"","sources":["../../../src/model/book.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEvC,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,KAAK,EAAE;QACL,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,CAAA;KAClB,EAAE,CAAA;CACJ,CAAA;AAED,qBAAa,IAAI;IACf,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,QAAQ,CAAA;IACf,MAAM,EAAE,QAAQ,EAAE,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;gBAEL,EACV,EAAE,EACF,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EACN,QAAQ,GACT,EAAE;QACD,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE,QAAQ,CAAA;QACd,KAAK,EAAE,QAAQ,CAAA;QACf,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,QAAQ,EAAE,CAAA;QAClB,QAAQ,EAAE,OAAO,CAAA;KAClB;IASD,IAAI,+BAGD;QACD,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;KAClB;;;MA2DA;IAED,KAAK,8BAGF;QACD,UAAU,EAAE,MAAM,CAAA;QAClB,QAAQ,EAAE,MAAM,CAAA;KACjB;;;MAwDA;CACF"}
@@ -1,6 +1,4 @@
1
1
  export type RawDepth = {
2
- bookId: string;
3
- unit: bigint;
4
2
  tick: bigint;
5
3
  rawAmount: bigint;
6
4
  };
@@ -1 +1 @@
1
- {"version":3,"file":"depth.d.ts","sourceRoot":"","sources":["../../../src/model/depth.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA"}
1
+ {"version":3,"file":"depth.d.ts","sourceRoot":"","sources":["../../../src/model/depth.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA"}
@@ -12,33 +12,31 @@ export declare class Market {
12
12
  bidBookOpen: boolean;
13
13
  asks: Depth[];
14
14
  askBookOpen: boolean;
15
- private books;
16
- constructor({ chainId, tokens, books, }: {
15
+ private bidBook;
16
+ private askBook;
17
+ constructor({ chainId, tokens, bidBook, askBook, }: {
17
18
  chainId: CHAIN_IDS;
18
19
  tokens: [Currency, Currency];
19
- books: Book[];
20
+ bidBook: Book;
21
+ askBook: Book;
20
22
  });
21
23
  take: ({ takeQuote, limitPrice, amountOut, }: {
22
24
  takeQuote: boolean;
23
25
  limitPrice: bigint;
24
26
  amountOut: bigint;
25
27
  }) => {
26
- [k: string]: {
27
- takenAmount: bigint;
28
- spendAmount: bigint;
29
- };
28
+ takenQuoteAmount: bigint;
29
+ spendBaseAmount: bigint;
30
+ bookId: bigint;
30
31
  };
31
32
  spend: ({ spendBase, limitPrice, amountIn, }: {
32
33
  spendBase: boolean;
33
34
  limitPrice: bigint;
34
35
  amountIn: bigint;
35
36
  }) => {
36
- [k: string]: {
37
- takenAmount: bigint;
38
- spendAmount: bigint;
39
- };
37
+ takenQuoteAmount: bigint;
38
+ spendBaseAmount: bigint;
39
+ bookId: bigint;
40
40
  };
41
- private takeInner;
42
- private spendInner;
43
41
  }
44
42
  //# sourceMappingURL=market.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../../../src/model/market.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAO9C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAY,MAAM,SAAS,CAAA;AAE9C,qBAAa,MAAM;IACjB,QAAQ,CAAC,QAAQ,SAAkD;IACnE,QAAQ,CAAC,QAAQ,SAAkD;IAEnE,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,QAAQ,CAAA;IACf,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,KAAK,EAAE,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,IAAI,EAAE,KAAK,EAAE,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,KAAK,CAAQ;gBAET,EACV,OAAO,EACP,MAAM,EACN,KAAK,GACN,EAAE;QACD,OAAO,EAAE,SAAS,CAAA;QAClB,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC5B,KAAK,EAAE,IAAI,EAAE,CAAA;KACd;IA0DD,IAAI,0CAID;QACD,SAAS,EAAE,OAAO,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;KAClB;;yBA8DkB,MAAM;yBACN,MAAM;;MA7CxB;IAED,KAAK,yCAIF;QACD,SAAS,EAAE,OAAO,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;QAClB,QAAQ,EAAE,MAAM,CAAA;KACjB;;yBAyHkB,MAAM;yBACN,MAAM;;MAxGxB;IAED,OAAO,CAAC,SAAS,CAqFhB;IAED,OAAO,CAAC,UAAU,CAkFjB;CACF"}
1
+ {"version":3,"file":"market.d.ts","sourceRoot":"","sources":["../../../src/model/market.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAM9C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAC7B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC,qBAAa,MAAM;IACjB,QAAQ,CAAC,QAAQ,SAAkD;IACnE,QAAQ,CAAC,QAAQ,SAAkD;IAEnE,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,QAAQ,CAAA;IACf,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,KAAK,EAAE,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,IAAI,EAAE,KAAK,EAAE,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,OAAO,CAAM;gBAET,EACV,OAAO,EACP,MAAM,EACN,OAAO,EACP,OAAO,GACR,EAAE;QACD,OAAO,EAAE,SAAS,CAAA;QAClB,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC5B,OAAO,EAAE,IAAI,CAAA;QACb,OAAO,EAAE,IAAI,CAAA;KACd;IAiDD,IAAI,0CAID;QACD,SAAS,EAAE,OAAO,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;KAClB;;;;MAkBA;IAED,KAAK,yCAIF;QACD,SAAS,EAAE,OAAO,CAAA;QAClB,UAAU,EAAE,MAAM,CAAA;QAClB,QAAQ,EAAE,MAAM,CAAA;KACjB;;;;MAkBA;CACF"}
@@ -1,4 +1,4 @@
1
- import { Currency } from './currency';
1
+ import type { Currency } from './currency';
2
2
  export type OpenOrderDto = {
3
3
  id: string;
4
4
  book: {
@@ -49,6 +49,9 @@ export type OpenOrder = {
49
49
  currency: Currency;
50
50
  value: string;
51
51
  };
52
- cancelable: boolean;
52
+ cancelable: {
53
+ currency: Currency;
54
+ value: string;
55
+ };
53
56
  };
54
57
  //# sourceMappingURL=open-order.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"open-order.d.ts","sourceRoot":"","sources":["../../../src/model/open-order.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAErC,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE;YACJ,EAAE,EAAE,MAAM,CAAA;YACV,IAAI,EAAE,MAAM,CAAA;YACZ,MAAM,EAAE,MAAM,CAAA;YACd,QAAQ,EAAE,MAAM,CAAA;SACjB,CAAA;QACD,KAAK,EAAE;YACL,EAAE,EAAE,MAAM,CAAA;YACV,IAAI,EAAE,MAAM,CAAA;YACZ,MAAM,EAAE,MAAM,CAAA;YACd,QAAQ,EAAE,MAAM,CAAA;SACjB,CAAA;QACD,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,OAAO,CAAA;IACd,aAAa,EAAE,QAAQ,CAAA;IACvB,cAAc,EAAE,QAAQ,CAAA;IACxB,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,MAAM,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,OAAO,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9C,SAAS,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAChD,UAAU,EAAE,OAAO,CAAA;CACpB,CAAA"}
1
+ {"version":3,"file":"open-order.d.ts","sourceRoot":"","sources":["../../../src/model/open-order.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1C,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAA;QACV,IAAI,EAAE;YACJ,EAAE,EAAE,MAAM,CAAA;YACV,IAAI,EAAE,MAAM,CAAA;YACZ,MAAM,EAAE,MAAM,CAAA;YACd,QAAQ,EAAE,MAAM,CAAA;SACjB,CAAA;QACD,KAAK,EAAE;YACL,EAAE,EAAE,MAAM,CAAA;YACV,IAAI,EAAE,MAAM,CAAA;YACZ,MAAM,EAAE,MAAM,CAAA;YACd,QAAQ,EAAE,MAAM,CAAA;SACjB,CAAA;QACD,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;IACD,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,OAAO,CAAA;IACd,aAAa,EAAE,QAAQ,CAAA;IACvB,cAAc,EAAE,QAAQ,CAAA;IACxB,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,MAAM,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,OAAO,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9C,SAAS,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAChD,UAAU,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAClD,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { HDAccount, PrivateKeyAccount } from 'viem';
2
2
  import { CHAIN_IDS } from './constants/chain';
3
- import { PermitSignature } from './type';
3
+ import { DefaultOptions, PermitSignature } from './type';
4
4
  /**
5
5
  * Signs an ERC20 permit using EIP-712 encoding.
6
6
  *
@@ -34,7 +34,11 @@ import { PermitSignature } from './type';
34
34
  * '1000.123', // spend 1000.123 USDC
35
35
  * )
36
36
  */
37
- export declare const signERC20Permit: (chainId: CHAIN_IDS, account: HDAccount | PrivateKeyAccount, token: `0x${string}`, amount: string, options?: {
38
- rpcUrl: string;
37
+ export declare const signERC20Permit: (args: {
38
+ chainId: CHAIN_IDS;
39
+ account: HDAccount | PrivateKeyAccount;
40
+ token: `0x${string}`;
41
+ amount: string;
42
+ options?: DefaultOptions;
39
43
  }) => Promise<PermitSignature>;
40
44
  //# sourceMappingURL=signature.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EAIT,iBAAiB,EAGlB,MAAM,MAAM,CAAA;AAEb,OAAO,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAA;AAIxD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AAkDxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,eAAe,YACjB,SAAS,WACT,SAAS,GAAG,iBAAiB,SAC/B,KAAK,MAAM,EAAE,UACZ,MAAM,YACJ;IACR,MAAM,EAAE,MAAM,CAAA;CACf,KACA,QAAQ,eAAe,CAyFzB,CAAA"}
1
+ {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../src/signature.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGT,iBAAiB,EAGlB,MAAM,MAAM,CAAA;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAI7C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AAoDxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,eAAe;aAOf,SAAS;aACT,SAAS,GAAG,iBAAiB;WAC/B,KAAK,MAAM,EAAE;YACZ,MAAM;cACJ,cAAc;8BAuF3B,CAAA"}
@@ -1,11 +1,11 @@
1
- import { Account } from 'viem';
1
+ import type { Account } from 'viem';
2
2
  import { CHAIN_IDS } from './constants/chain';
3
- import { Currency } from './model/currency';
4
- import { Depth } from './model/depth';
3
+ import type { Currency } from './model/currency';
4
+ import type { Depth } from './model/depth';
5
5
  export { CHAIN_IDS } from './constants/chain';
6
- export { Currency } from './model/currency';
7
- export { Depth } from './model/depth';
8
- export { OpenOrder } from './model/open-order';
6
+ export type { Currency } from './model/currency';
7
+ export type { Depth } from './model/depth';
8
+ export type { OpenOrder } from './model/open-order';
9
9
  export type Market = {
10
10
  chainId: CHAIN_IDS;
11
11
  quote: Currency;
@@ -31,4 +31,12 @@ export type PermitSignature = {
31
31
  r: `0x${string}`;
32
32
  s: `0x${string}`;
33
33
  };
34
+ export type DefaultOptions = {
35
+ rpcUrl?: string;
36
+ };
37
+ export type CurrencyFlow = {
38
+ currency: Currency;
39
+ amount: string;
40
+ direction: 'in' | 'out';
41
+ };
34
42
  //# sourceMappingURL=type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAE9B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAErC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C,MAAM,MAAM,MAAM,GAAG;IACnB,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,EAAE,QAAQ,CAAA;IACf,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,KAAK,EAAE,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,IAAI,EAAE,KAAK,EAAE,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;IACnB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,KAAK,MAAM,EAAE,CAAA;IACjB,IAAI,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,GAAG,SAAS,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,MAAM,CAAA;IAChB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;IAChB,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CACjB,CAAA"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,YAAY,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAChD,YAAY,EAAE,KAAK,EAAE,MAAM,eAAe,CAAA;AAC1C,YAAY,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAEnD,MAAM,MAAM,MAAM,GAAG;IACnB,OAAO,EAAE,SAAS,CAAA;IAClB,KAAK,EAAE,QAAQ,CAAA;IACf,IAAI,EAAE,QAAQ,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,KAAK,EAAE,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;IACpB,IAAI,EAAE,KAAK,EAAE,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;IACnB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,KAAK,MAAM,EAAE,CAAA;IACjB,IAAI,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,GAAG,SAAS,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,MAAM,CAAA;IAChB,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;IAChB,CAAC,EAAE,KAAK,MAAM,EAAE,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,QAAQ,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,IAAI,GAAG,KAAK,CAAA;CACxB,CAAA"}
@@ -1,3 +1,3 @@
1
1
  import { CHAIN_IDS } from '../constants/chain';
2
- export declare function fetchIsApprovedForAll(chainId: CHAIN_IDS, owner: `0x${string}`, rpcUrl?: string): Promise<boolean>;
2
+ export declare function fetchIsApprovedForAll(chainId: CHAIN_IDS, owner: `0x${string}`): Promise<boolean>;
3
3
  //# sourceMappingURL=approval.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"approval.d.ts","sourceRoot":"","sources":["../../../src/utils/approval.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAa,MAAM,oBAAoB,CAAA;AA8BzD,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,KAAK,MAAM,EAAE,EACpB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAWlB"}
1
+ {"version":3,"file":"approval.d.ts","sourceRoot":"","sources":["../../../src/utils/approval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AA+B9C,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,KAAK,MAAM,EAAE,GACnB,OAAO,CAAC,OAAO,CAAC,CAOlB"}