@aspan/sdk 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -209,13 +209,9 @@ interface RouterSwapParams {
209
209
  minLSTOut: bigint;
210
210
  /** PancakeSwap V3 pool fee tier (500, 2500, 10000) */
211
211
  poolFee: number;
212
- /** true = PancakeSwap V2, false = V3 */
213
- useV2: boolean;
214
212
  }
215
213
  /** Router mint parameters */
216
214
  interface RouterMintParams {
217
- /** true = mint xBNB, false = mint apUSD */
218
- mintXBNB: boolean;
219
215
  /** Minimum output to receive (slippage protection) */
220
216
  minMintOut: bigint;
221
217
  /** Recipient of minted tokens (address(0) = msg.sender) */
@@ -233,7 +229,7 @@ interface StakeAndMintParams {
233
229
  /** Target LST (slisBNB, asBNB, wclisBNB) */
234
230
  targetLST: Address;
235
231
  /** true = mint xBNB, false = mint apUSD */
236
- mintXBNB: boolean;
232
+ isXBNB: boolean;
237
233
  /** Minimum output to receive */
238
234
  minMintOut: bigint;
239
235
  /** Transaction deadline timestamp */
@@ -290,34 +286,30 @@ interface RouterRedeemXBNBParams {
290
286
  /** Minimum LST to receive */
291
287
  minOut?: bigint;
292
288
  }
293
- /** Parameters for redeemAndSwap functions */
289
+ /** Parameters for redeemAndSwap functions (uses PancakeSwap V3 path) */
294
290
  interface RouterRedeemAndSwapParams {
295
291
  /** LST to redeem */
296
292
  lst: Address;
297
293
  /** Amount to redeem (apUSD or xBNB) */
298
294
  amount: bigint;
299
- /** Output token (address(0) for native BNB) */
300
- outputToken: Address;
295
+ /**
296
+ * PancakeSwap V3 encoded swap path (LST → ... → outputToken)
297
+ * Use encodeV3Path() helper or get from PancakeSwap Quoter
298
+ * Example: slisBNB → WBNB → USDT
299
+ */
300
+ path: `0x${string}`;
301
301
  /** Minimum output to receive */
302
302
  minOut: bigint;
303
303
  /** Transaction deadline timestamp */
304
304
  deadline: bigint;
305
- /** true = PancakeSwap V2, false = V3 */
306
- useV2: boolean;
307
- /** V3 pool fee tier (ignored if useV2) */
308
- poolFee: number;
309
- }
310
- /** Parameters for redeemAndUnstake functions */
311
- interface RouterRedeemAndUnstakeParams {
312
- /** LST to redeem */
313
- lst: Address;
314
- /** Amount to redeem (apUSD or xBNB) */
315
- amount: bigint;
316
- /** Minimum BNB to receive */
317
- minBNBOut: bigint;
318
- /** Transaction deadline timestamp */
319
- deadline: bigint;
320
305
  }
306
+ /**
307
+ * Encode a PancakeSwap V3 swap path
308
+ * @param tokens Array of token addresses in order
309
+ * @param fees Array of pool fees between each token pair
310
+ * @returns Encoded path bytes
311
+ */
312
+ declare function encodeV3Path(tokens: Address[], fees: number[]): `0x${string}`;
321
313
  /** Withdrawal request status */
322
314
  interface WithdrawalRequestInfo {
323
315
  /** Whether the request can be claimed */
@@ -325,13 +317,6 @@ interface WithdrawalRequestInfo {
325
317
  /** Amount of BNB to receive */
326
318
  bnbAmount: bigint;
327
319
  }
328
- /** Expected output from swap and mint */
329
- interface ExpectedOutput {
330
- /** Expected LST from swap */
331
- expectedLST: bigint;
332
- /** Expected apUSD/xBNB from mint */
333
- expectedMint: bigint;
334
- }
335
320
  /** SwapAndMint event */
336
321
  interface SwapAndMintEvent {
337
322
  user: Address;
@@ -591,9 +576,21 @@ declare class AspanRouterReadClient {
591
576
  */
592
577
  getDiamond(): Promise<Address>;
593
578
  /**
594
- * Get expected output from a swap and mint operation
579
+ * Preview apUSD mint output for a given LST amount
580
+ */
581
+ previewMintApUSD(lst: Address, lstAmount: bigint): Promise<bigint>;
582
+ /**
583
+ * Preview xBNB mint output for a given LST amount
584
+ */
585
+ previewMintXBNB(lst: Address, lstAmount: bigint): Promise<bigint>;
586
+ /**
587
+ * Preview LST output for redeeming apUSD
588
+ */
589
+ previewRedeemApUSD(lst: Address, apUSDAmount: bigint): Promise<bigint>;
590
+ /**
591
+ * Preview LST output for redeeming xBNB
595
592
  */
596
- getExpectedOutput(inputToken: Address, inputAmount: bigint, targetLST: Address, mintXBNB: boolean): Promise<ExpectedOutput>;
593
+ previewRedeemXBNB(lst: Address, xBNBAmount: bigint): Promise<bigint>;
597
594
  /**
598
595
  * Get user's withdrawal request indices
599
596
  */
@@ -615,7 +612,7 @@ declare class AspanRouterReadClient {
615
612
  * Full client with write capabilities for AspanRouter
616
613
  */
617
614
  declare class AspanRouterClient extends AspanRouterReadClient {
618
- private readonly walletClient;
615
+ readonly walletClient: WalletClient;
619
616
  constructor(config: AspanRouterWriteClientConfig);
620
617
  /**
621
618
  * Swap input token to LST and mint apUSD
@@ -662,21 +659,15 @@ declare class AspanRouterClient extends AspanRouterReadClient {
662
659
  */
663
660
  redeemXBNB(params: RouterRedeemXBNBParams): Promise<Hash>;
664
661
  /**
665
- * Redeem apUSD and swap LST to output token
662
+ * Redeem apUSD and swap LST to output token via V3 path
663
+ * @param params.path - PancakeSwap V3 encoded path (use encodeV3Path helper)
666
664
  */
667
665
  redeemApUSDAndSwap(params: RouterRedeemAndSwapParams): Promise<Hash>;
668
666
  /**
669
- * Redeem xBNB and swap LST to output token
667
+ * Redeem xBNB and swap LST to output token via V3 path
668
+ * @param params.path - PancakeSwap V3 encoded path (use encodeV3Path helper)
670
669
  */
671
670
  redeemXBNBAndSwap(params: RouterRedeemAndSwapParams): Promise<Hash>;
672
- /**
673
- * Redeem apUSD and instantly unstake LST to native BNB via DEX
674
- */
675
- redeemApUSDAndUnstake(params: RouterRedeemAndUnstakeParams): Promise<Hash>;
676
- /**
677
- * Redeem xBNB and instantly unstake LST to native BNB via DEX
678
- */
679
- redeemXBNBAndUnstake(params: RouterRedeemAndUnstakeParams): Promise<Hash>;
680
671
  /**
681
672
  * Redeem apUSD and request native unstake from Lista (starts unbonding period)
682
673
  */
@@ -1653,6 +1644,7 @@ declare const DiamondABI: readonly [{
1653
1644
  /**
1654
1645
  * AspanRouter ABI
1655
1646
  * Periphery contract for one-click swap+mint operations
1647
+ * Updated: 2025-01-31
1656
1648
  */
1657
1649
  declare const RouterABI: readonly [{
1658
1650
  readonly type: "function";
@@ -1675,17 +1667,11 @@ declare const RouterABI: readonly [{
1675
1667
  }, {
1676
1668
  readonly name: "poolFee";
1677
1669
  readonly type: "uint24";
1678
- }, {
1679
- readonly name: "useV2";
1680
- readonly type: "bool";
1681
1670
  }];
1682
1671
  }, {
1683
1672
  readonly name: "mintParams";
1684
1673
  readonly type: "tuple";
1685
1674
  readonly components: readonly [{
1686
- readonly name: "mintXBNB";
1687
- readonly type: "bool";
1688
- }, {
1689
1675
  readonly name: "minMintOut";
1690
1676
  readonly type: "uint256";
1691
1677
  }, {
@@ -1725,17 +1711,11 @@ declare const RouterABI: readonly [{
1725
1711
  }, {
1726
1712
  readonly name: "poolFee";
1727
1713
  readonly type: "uint24";
1728
- }, {
1729
- readonly name: "useV2";
1730
- readonly type: "bool";
1731
1714
  }];
1732
1715
  }, {
1733
1716
  readonly name: "mintParams";
1734
1717
  readonly type: "tuple";
1735
1718
  readonly components: readonly [{
1736
- readonly name: "mintXBNB";
1737
- readonly type: "bool";
1738
- }, {
1739
1719
  readonly name: "minMintOut";
1740
1720
  readonly type: "uint256";
1741
1721
  }, {
@@ -1761,7 +1741,7 @@ declare const RouterABI: readonly [{
1761
1741
  readonly name: "targetLST";
1762
1742
  readonly type: "address";
1763
1743
  }, {
1764
- readonly name: "mintXBNB";
1744
+ readonly name: "isXBNB";
1765
1745
  readonly type: "bool";
1766
1746
  }, {
1767
1747
  readonly name: "minMintOut";
@@ -1780,19 +1760,10 @@ declare const RouterABI: readonly [{
1780
1760
  readonly stateMutability: "payable";
1781
1761
  }, {
1782
1762
  readonly type: "function";
1783
- readonly name: "swapAndMintApUSDDefault";
1763
+ readonly name: "stakeAndMintApUSD";
1784
1764
  readonly inputs: readonly [{
1785
- readonly name: "inputToken";
1786
- readonly type: "address";
1787
- }, {
1788
- readonly name: "inputAmount";
1789
- readonly type: "uint256";
1790
- }, {
1791
1765
  readonly name: "minMintOut";
1792
1766
  readonly type: "uint256";
1793
- }, {
1794
- readonly name: "deadline";
1795
- readonly type: "uint256";
1796
1767
  }];
1797
1768
  readonly outputs: readonly [{
1798
1769
  readonly name: "apUSDAmount";
@@ -1801,19 +1772,10 @@ declare const RouterABI: readonly [{
1801
1772
  readonly stateMutability: "payable";
1802
1773
  }, {
1803
1774
  readonly type: "function";
1804
- readonly name: "swapAndMintXBNBDefault";
1775
+ readonly name: "stakeAndMintXBNB";
1805
1776
  readonly inputs: readonly [{
1806
- readonly name: "inputToken";
1807
- readonly type: "address";
1808
- }, {
1809
- readonly name: "inputAmount";
1810
- readonly type: "uint256";
1811
- }, {
1812
1777
  readonly name: "minMintOut";
1813
1778
  readonly type: "uint256";
1814
- }, {
1815
- readonly name: "deadline";
1816
- readonly type: "uint256";
1817
1779
  }];
1818
1780
  readonly outputs: readonly [{
1819
1781
  readonly name: "xBNBAmount";
@@ -1822,10 +1784,19 @@ declare const RouterABI: readonly [{
1822
1784
  readonly stateMutability: "payable";
1823
1785
  }, {
1824
1786
  readonly type: "function";
1825
- readonly name: "stakeAndMintApUSD";
1787
+ readonly name: "swapAndMintApUSDDefault";
1826
1788
  readonly inputs: readonly [{
1789
+ readonly name: "inputToken";
1790
+ readonly type: "address";
1791
+ }, {
1792
+ readonly name: "inputAmount";
1793
+ readonly type: "uint256";
1794
+ }, {
1827
1795
  readonly name: "minMintOut";
1828
1796
  readonly type: "uint256";
1797
+ }, {
1798
+ readonly name: "deadline";
1799
+ readonly type: "uint256";
1829
1800
  }];
1830
1801
  readonly outputs: readonly [{
1831
1802
  readonly name: "apUSDAmount";
@@ -1834,10 +1805,19 @@ declare const RouterABI: readonly [{
1834
1805
  readonly stateMutability: "payable";
1835
1806
  }, {
1836
1807
  readonly type: "function";
1837
- readonly name: "stakeAndMintXBNB";
1808
+ readonly name: "swapAndMintXBNBDefault";
1838
1809
  readonly inputs: readonly [{
1810
+ readonly name: "inputToken";
1811
+ readonly type: "address";
1812
+ }, {
1813
+ readonly name: "inputAmount";
1814
+ readonly type: "uint256";
1815
+ }, {
1839
1816
  readonly name: "minMintOut";
1840
1817
  readonly type: "uint256";
1818
+ }, {
1819
+ readonly name: "deadline";
1820
+ readonly type: "uint256";
1841
1821
  }];
1842
1822
  readonly outputs: readonly [{
1843
1823
  readonly name: "xBNBAmount";
@@ -1926,20 +1906,14 @@ declare const RouterABI: readonly [{
1926
1906
  readonly name: "apUSDAmount";
1927
1907
  readonly type: "uint256";
1928
1908
  }, {
1929
- readonly name: "outputToken";
1930
- readonly type: "address";
1909
+ readonly name: "path";
1910
+ readonly type: "bytes";
1931
1911
  }, {
1932
1912
  readonly name: "minOut";
1933
1913
  readonly type: "uint256";
1934
1914
  }, {
1935
1915
  readonly name: "deadline";
1936
1916
  readonly type: "uint256";
1937
- }, {
1938
- readonly name: "useV2";
1939
- readonly type: "bool";
1940
- }, {
1941
- readonly name: "poolFee";
1942
- readonly type: "uint24";
1943
1917
  }];
1944
1918
  readonly outputs: readonly [{
1945
1919
  readonly name: "outputAmount";
@@ -1956,68 +1930,20 @@ declare const RouterABI: readonly [{
1956
1930
  readonly name: "xBNBAmount";
1957
1931
  readonly type: "uint256";
1958
1932
  }, {
1959
- readonly name: "outputToken";
1960
- readonly type: "address";
1933
+ readonly name: "path";
1934
+ readonly type: "bytes";
1961
1935
  }, {
1962
1936
  readonly name: "minOut";
1963
1937
  readonly type: "uint256";
1964
1938
  }, {
1965
1939
  readonly name: "deadline";
1966
1940
  readonly type: "uint256";
1967
- }, {
1968
- readonly name: "useV2";
1969
- readonly type: "bool";
1970
- }, {
1971
- readonly name: "poolFee";
1972
- readonly type: "uint24";
1973
1941
  }];
1974
1942
  readonly outputs: readonly [{
1975
1943
  readonly name: "outputAmount";
1976
1944
  readonly type: "uint256";
1977
1945
  }];
1978
1946
  readonly stateMutability: "nonpayable";
1979
- }, {
1980
- readonly type: "function";
1981
- readonly name: "redeemApUSDAndUnstake";
1982
- readonly inputs: readonly [{
1983
- readonly name: "lst";
1984
- readonly type: "address";
1985
- }, {
1986
- readonly name: "apUSDAmount";
1987
- readonly type: "uint256";
1988
- }, {
1989
- readonly name: "minBNBOut";
1990
- readonly type: "uint256";
1991
- }, {
1992
- readonly name: "deadline";
1993
- readonly type: "uint256";
1994
- }];
1995
- readonly outputs: readonly [{
1996
- readonly name: "bnbAmount";
1997
- readonly type: "uint256";
1998
- }];
1999
- readonly stateMutability: "nonpayable";
2000
- }, {
2001
- readonly type: "function";
2002
- readonly name: "redeemXBNBAndUnstake";
2003
- readonly inputs: readonly [{
2004
- readonly name: "lst";
2005
- readonly type: "address";
2006
- }, {
2007
- readonly name: "xBNBAmount";
2008
- readonly type: "uint256";
2009
- }, {
2010
- readonly name: "minBNBOut";
2011
- readonly type: "uint256";
2012
- }, {
2013
- readonly name: "deadline";
2014
- readonly type: "uint256";
2015
- }];
2016
- readonly outputs: readonly [{
2017
- readonly name: "bnbAmount";
2018
- readonly type: "uint256";
2019
- }];
2020
- readonly stateMutability: "nonpayable";
2021
1947
  }, {
2022
1948
  readonly type: "function";
2023
1949
  readonly name: "redeemApUSDAndRequestUnstake";
@@ -2060,12 +1986,115 @@ declare const RouterABI: readonly [{
2060
1986
  readonly type: "uint256";
2061
1987
  }];
2062
1988
  readonly stateMutability: "nonpayable";
1989
+ }, {
1990
+ readonly type: "function";
1991
+ readonly name: "wbnb";
1992
+ readonly inputs: readonly [];
1993
+ readonly outputs: readonly [{
1994
+ readonly type: "address";
1995
+ }];
1996
+ readonly stateMutability: "view";
1997
+ }, {
1998
+ readonly type: "function";
1999
+ readonly name: "usdt";
2000
+ readonly inputs: readonly [];
2001
+ readonly outputs: readonly [{
2002
+ readonly type: "address";
2003
+ }];
2004
+ readonly stateMutability: "view";
2005
+ }, {
2006
+ readonly type: "function";
2007
+ readonly name: "usdc";
2008
+ readonly inputs: readonly [];
2009
+ readonly outputs: readonly [{
2010
+ readonly type: "address";
2011
+ }];
2012
+ readonly stateMutability: "view";
2013
+ }, {
2014
+ readonly type: "function";
2015
+ readonly name: "slisBNB";
2016
+ readonly inputs: readonly [];
2017
+ readonly outputs: readonly [{
2018
+ readonly type: "address";
2019
+ }];
2020
+ readonly stateMutability: "view";
2021
+ }, {
2022
+ readonly type: "function";
2023
+ readonly name: "asBNB";
2024
+ readonly inputs: readonly [];
2025
+ readonly outputs: readonly [{
2026
+ readonly type: "address";
2027
+ }];
2028
+ readonly stateMutability: "view";
2029
+ }, {
2030
+ readonly type: "function";
2031
+ readonly name: "wclisBNB";
2032
+ readonly inputs: readonly [];
2033
+ readonly outputs: readonly [{
2034
+ readonly type: "address";
2035
+ }];
2036
+ readonly stateMutability: "view";
2037
+ }, {
2038
+ readonly type: "function";
2039
+ readonly name: "apUSD";
2040
+ readonly inputs: readonly [];
2041
+ readonly outputs: readonly [{
2042
+ readonly type: "address";
2043
+ }];
2044
+ readonly stateMutability: "view";
2045
+ }, {
2046
+ readonly type: "function";
2047
+ readonly name: "xBNB";
2048
+ readonly inputs: readonly [];
2049
+ readonly outputs: readonly [{
2050
+ readonly type: "address";
2051
+ }];
2052
+ readonly stateMutability: "view";
2053
+ }, {
2054
+ readonly type: "function";
2055
+ readonly name: "diamond";
2056
+ readonly inputs: readonly [];
2057
+ readonly outputs: readonly [{
2058
+ readonly type: "address";
2059
+ }];
2060
+ readonly stateMutability: "view";
2061
+ }, {
2062
+ readonly type: "function";
2063
+ readonly name: "pancakeV3Router";
2064
+ readonly inputs: readonly [];
2065
+ readonly outputs: readonly [{
2066
+ readonly type: "address";
2067
+ }];
2068
+ readonly stateMutability: "view";
2069
+ }, {
2070
+ readonly type: "function";
2071
+ readonly name: "listaStakeManager";
2072
+ readonly inputs: readonly [];
2073
+ readonly outputs: readonly [{
2074
+ readonly type: "address";
2075
+ }];
2076
+ readonly stateMutability: "view";
2077
+ }, {
2078
+ readonly type: "function";
2079
+ readonly name: "astherusMinter";
2080
+ readonly inputs: readonly [];
2081
+ readonly outputs: readonly [{
2082
+ readonly type: "address";
2083
+ }];
2084
+ readonly stateMutability: "view";
2085
+ }, {
2086
+ readonly type: "function";
2087
+ readonly name: "slisBNBProvider";
2088
+ readonly inputs: readonly [];
2089
+ readonly outputs: readonly [{
2090
+ readonly type: "address";
2091
+ }];
2092
+ readonly stateMutability: "view";
2063
2093
  }, {
2064
2094
  readonly type: "function";
2065
2095
  readonly name: "defaultLST";
2066
2096
  readonly inputs: readonly [];
2067
2097
  readonly outputs: readonly [{
2068
- readonly name: "";
2069
2098
  readonly type: "address";
2070
2099
  }];
2071
2100
  readonly stateMutability: "view";
@@ -2077,7 +2106,6 @@ declare const RouterABI: readonly [{
2077
2106
  readonly type: "address";
2078
2107
  }];
2079
2108
  readonly outputs: readonly [{
2080
- readonly name: "";
2081
2109
  readonly type: "bool";
2082
2110
  }];
2083
2111
  readonly stateMutability: "view";
@@ -2089,40 +2117,66 @@ declare const RouterABI: readonly [{
2089
2117
  readonly type: "address";
2090
2118
  }];
2091
2119
  readonly outputs: readonly [{
2092
- readonly name: "";
2093
2120
  readonly type: "bool";
2094
2121
  }];
2095
2122
  readonly stateMutability: "view";
2096
2123
  }, {
2097
2124
  readonly type: "function";
2098
- readonly name: "diamond";
2099
- readonly inputs: readonly [];
2100
- readonly outputs: readonly [{
2101
- readonly name: "";
2125
+ readonly name: "previewMintApUSD";
2126
+ readonly inputs: readonly [{
2127
+ readonly name: "lst";
2102
2128
  readonly type: "address";
2129
+ }, {
2130
+ readonly name: "lstAmount";
2131
+ readonly type: "uint256";
2132
+ }];
2133
+ readonly outputs: readonly [{
2134
+ readonly name: "apUSDAmount";
2135
+ readonly type: "uint256";
2103
2136
  }];
2104
2137
  readonly stateMutability: "view";
2105
2138
  }, {
2106
2139
  readonly type: "function";
2107
- readonly name: "getExpectedOutput";
2140
+ readonly name: "previewMintXBNB";
2108
2141
  readonly inputs: readonly [{
2109
- readonly name: "inputToken";
2142
+ readonly name: "lst";
2110
2143
  readonly type: "address";
2111
2144
  }, {
2112
- readonly name: "inputAmount";
2145
+ readonly name: "lstAmount";
2113
2146
  readonly type: "uint256";
2114
- }, {
2115
- readonly name: "targetLST";
2147
+ }];
2148
+ readonly outputs: readonly [{
2149
+ readonly name: "xBNBAmount";
2150
+ readonly type: "uint256";
2151
+ }];
2152
+ readonly stateMutability: "view";
2153
+ }, {
2154
+ readonly type: "function";
2155
+ readonly name: "previewRedeemApUSD";
2156
+ readonly inputs: readonly [{
2157
+ readonly name: "lst";
2116
2158
  readonly type: "address";
2117
2159
  }, {
2118
- readonly name: "mintXBNB";
2119
- readonly type: "bool";
2160
+ readonly name: "apUSDAmount";
2161
+ readonly type: "uint256";
2120
2162
  }];
2121
2163
  readonly outputs: readonly [{
2122
- readonly name: "expectedLST";
2164
+ readonly name: "lstAmount";
2123
2165
  readonly type: "uint256";
2166
+ }];
2167
+ readonly stateMutability: "view";
2168
+ }, {
2169
+ readonly type: "function";
2170
+ readonly name: "previewRedeemXBNB";
2171
+ readonly inputs: readonly [{
2172
+ readonly name: "lst";
2173
+ readonly type: "address";
2124
2174
  }, {
2125
- readonly name: "expectedMint";
2175
+ readonly name: "xBNBAmount";
2176
+ readonly type: "uint256";
2177
+ }];
2178
+ readonly outputs: readonly [{
2179
+ readonly name: "lstAmount";
2126
2180
  readonly type: "uint256";
2127
2181
  }];
2128
2182
  readonly stateMutability: "view";
@@ -2134,7 +2188,6 @@ declare const RouterABI: readonly [{
2134
2188
  readonly type: "address";
2135
2189
  }];
2136
2190
  readonly outputs: readonly [{
2137
- readonly name: "";
2138
2191
  readonly type: "uint256[]";
2139
2192
  }];
2140
2193
  readonly stateMutability: "view";
@@ -2155,76 +2208,87 @@ declare const RouterABI: readonly [{
2155
2208
  readonly stateMutability: "view";
2156
2209
  }, {
2157
2210
  readonly type: "function";
2158
- readonly name: "wbnb";
2159
- readonly inputs: readonly [];
2211
+ readonly name: "withdrawalRequests";
2212
+ readonly inputs: readonly [{
2213
+ readonly name: "index";
2214
+ readonly type: "uint256";
2215
+ }];
2160
2216
  readonly outputs: readonly [{
2161
- readonly name: "";
2217
+ readonly name: "user";
2162
2218
  readonly type: "address";
2219
+ }, {
2220
+ readonly name: "listaIdx";
2221
+ readonly type: "uint256";
2222
+ }, {
2223
+ readonly name: "slisBNBAmount";
2224
+ readonly type: "uint256";
2225
+ }, {
2226
+ readonly name: "claimed";
2227
+ readonly type: "bool";
2163
2228
  }];
2164
2229
  readonly stateMutability: "view";
2165
2230
  }, {
2166
2231
  readonly type: "function";
2167
- readonly name: "usdt";
2232
+ readonly name: "owner";
2168
2233
  readonly inputs: readonly [];
2169
2234
  readonly outputs: readonly [{
2170
- readonly name: "";
2171
2235
  readonly type: "address";
2172
2236
  }];
2173
2237
  readonly stateMutability: "view";
2174
2238
  }, {
2175
2239
  readonly type: "function";
2176
- readonly name: "usdc";
2177
- readonly inputs: readonly [];
2178
- readonly outputs: readonly [{
2179
- readonly name: "";
2240
+ readonly name: "setDefaultLST";
2241
+ readonly inputs: readonly [{
2242
+ readonly name: "lst";
2180
2243
  readonly type: "address";
2181
2244
  }];
2182
- readonly stateMutability: "view";
2245
+ readonly outputs: readonly [];
2246
+ readonly stateMutability: "nonpayable";
2183
2247
  }, {
2184
2248
  readonly type: "function";
2185
- readonly name: "slisBNB";
2186
- readonly inputs: readonly [];
2187
- readonly outputs: readonly [{
2188
- readonly name: "";
2249
+ readonly name: "addSupportedInputToken";
2250
+ readonly inputs: readonly [{
2251
+ readonly name: "token";
2189
2252
  readonly type: "address";
2190
2253
  }];
2191
- readonly stateMutability: "view";
2254
+ readonly outputs: readonly [];
2255
+ readonly stateMutability: "nonpayable";
2192
2256
  }, {
2193
2257
  readonly type: "function";
2194
- readonly name: "asBNB";
2195
- readonly inputs: readonly [];
2196
- readonly outputs: readonly [{
2197
- readonly name: "";
2258
+ readonly name: "addSupportedLST";
2259
+ readonly inputs: readonly [{
2260
+ readonly name: "lst";
2198
2261
  readonly type: "address";
2199
2262
  }];
2200
- readonly stateMutability: "view";
2263
+ readonly outputs: readonly [];
2264
+ readonly stateMutability: "nonpayable";
2201
2265
  }, {
2202
2266
  readonly type: "function";
2203
- readonly name: "wclisBNB";
2204
- readonly inputs: readonly [];
2205
- readonly outputs: readonly [{
2206
- readonly name: "";
2267
+ readonly name: "rescueTokens";
2268
+ readonly inputs: readonly [{
2269
+ readonly name: "token";
2207
2270
  readonly type: "address";
2271
+ }, {
2272
+ readonly name: "amount";
2273
+ readonly type: "uint256";
2208
2274
  }];
2209
- readonly stateMutability: "view";
2275
+ readonly outputs: readonly [];
2276
+ readonly stateMutability: "nonpayable";
2210
2277
  }, {
2211
2278
  readonly type: "function";
2212
- readonly name: "apUSD";
2213
- readonly inputs: readonly [];
2214
- readonly outputs: readonly [{
2215
- readonly name: "";
2279
+ readonly name: "transferOwnership";
2280
+ readonly inputs: readonly [{
2281
+ readonly name: "newOwner";
2216
2282
  readonly type: "address";
2217
2283
  }];
2218
- readonly stateMutability: "view";
2284
+ readonly outputs: readonly [];
2285
+ readonly stateMutability: "nonpayable";
2219
2286
  }, {
2220
2287
  readonly type: "function";
2221
- readonly name: "xBNB";
2288
+ readonly name: "renounceOwnership";
2222
2289
  readonly inputs: readonly [];
2223
- readonly outputs: readonly [{
2224
- readonly name: "";
2225
- readonly type: "address";
2226
- }];
2227
- readonly stateMutability: "view";
2290
+ readonly outputs: readonly [];
2291
+ readonly stateMutability: "nonpayable";
2228
2292
  }, {
2229
2293
  readonly type: "event";
2230
2294
  readonly name: "SwapAndMint";
@@ -2235,15 +2299,15 @@ declare const RouterABI: readonly [{
2235
2299
  }, {
2236
2300
  readonly name: "inputToken";
2237
2301
  readonly type: "address";
2238
- readonly indexed: true;
2302
+ readonly indexed: false;
2239
2303
  }, {
2240
2304
  readonly name: "inputAmount";
2241
2305
  readonly type: "uint256";
2242
2306
  readonly indexed: false;
2243
2307
  }, {
2244
- readonly name: "targetLST";
2308
+ readonly name: "lst";
2245
2309
  readonly type: "address";
2246
- readonly indexed: true;
2310
+ readonly indexed: false;
2247
2311
  }, {
2248
2312
  readonly name: "lstAmount";
2249
2313
  readonly type: "uint256";
@@ -2269,9 +2333,9 @@ declare const RouterABI: readonly [{
2269
2333
  readonly type: "uint256";
2270
2334
  readonly indexed: false;
2271
2335
  }, {
2272
- readonly name: "targetLST";
2336
+ readonly name: "lst";
2273
2337
  readonly type: "address";
2274
- readonly indexed: true;
2338
+ readonly indexed: false;
2275
2339
  }, {
2276
2340
  readonly name: "lstAmount";
2277
2341
  readonly type: "uint256";
@@ -2279,7 +2343,7 @@ declare const RouterABI: readonly [{
2279
2343
  }, {
2280
2344
  readonly name: "mintedToken";
2281
2345
  readonly type: "address";
2282
- readonly indexed: true;
2346
+ readonly indexed: false;
2283
2347
  }, {
2284
2348
  readonly name: "mintedAmount";
2285
2349
  readonly type: "uint256";
@@ -2295,7 +2359,7 @@ declare const RouterABI: readonly [{
2295
2359
  }, {
2296
2360
  readonly name: "lst";
2297
2361
  readonly type: "address";
2298
- readonly indexed: true;
2362
+ readonly indexed: false;
2299
2363
  }, {
2300
2364
  readonly name: "lstAmount";
2301
2365
  readonly type: "uint256";
@@ -2303,7 +2367,7 @@ declare const RouterABI: readonly [{
2303
2367
  }, {
2304
2368
  readonly name: "mintedToken";
2305
2369
  readonly type: "address";
2306
- readonly indexed: true;
2370
+ readonly indexed: false;
2307
2371
  }, {
2308
2372
  readonly name: "mintedAmount";
2309
2373
  readonly type: "uint256";
@@ -2319,7 +2383,7 @@ declare const RouterABI: readonly [{
2319
2383
  }, {
2320
2384
  readonly name: "redeemedToken";
2321
2385
  readonly type: "address";
2322
- readonly indexed: true;
2386
+ readonly indexed: false;
2323
2387
  }, {
2324
2388
  readonly name: "redeemedAmount";
2325
2389
  readonly type: "uint256";
@@ -2327,7 +2391,7 @@ declare const RouterABI: readonly [{
2327
2391
  }, {
2328
2392
  readonly name: "lst";
2329
2393
  readonly type: "address";
2330
- readonly indexed: true;
2394
+ readonly indexed: false;
2331
2395
  }, {
2332
2396
  readonly name: "lstAmount";
2333
2397
  readonly type: "uint256";
@@ -2359,7 +2423,7 @@ declare const RouterABI: readonly [{
2359
2423
  }, {
2360
2424
  readonly name: "outputToken";
2361
2425
  readonly type: "address";
2362
- readonly indexed: true;
2426
+ readonly indexed: false;
2363
2427
  }, {
2364
2428
  readonly name: "outputAmount";
2365
2429
  readonly type: "uint256";
@@ -2375,7 +2439,7 @@ declare const RouterABI: readonly [{
2375
2439
  }, {
2376
2440
  readonly name: "requestIndex";
2377
2441
  readonly type: "uint256";
2378
- readonly indexed: true;
2442
+ readonly indexed: false;
2379
2443
  }, {
2380
2444
  readonly name: "redeemedToken";
2381
2445
  readonly type: "address";
@@ -2399,7 +2463,7 @@ declare const RouterABI: readonly [{
2399
2463
  }, {
2400
2464
  readonly name: "requestIndex";
2401
2465
  readonly type: "uint256";
2402
- readonly indexed: true;
2466
+ readonly indexed: false;
2403
2467
  }, {
2404
2468
  readonly name: "bnbAmount";
2405
2469
  readonly type: "uint256";
@@ -2411,23 +2475,31 @@ declare const RouterABI: readonly [{
2411
2475
  readonly inputs: readonly [{
2412
2476
  readonly name: "oldLST";
2413
2477
  readonly type: "address";
2414
- readonly indexed: true;
2478
+ readonly indexed: false;
2415
2479
  }, {
2416
2480
  readonly name: "newLST";
2417
2481
  readonly type: "address";
2418
- readonly indexed: true;
2482
+ readonly indexed: false;
2419
2483
  }];
2420
2484
  }, {
2421
- readonly type: "error";
2422
- readonly name: "UnsupportedInputToken";
2423
- readonly inputs: readonly [];
2485
+ readonly type: "event";
2486
+ readonly name: "OwnershipTransferred";
2487
+ readonly inputs: readonly [{
2488
+ readonly name: "previousOwner";
2489
+ readonly type: "address";
2490
+ readonly indexed: true;
2491
+ }, {
2492
+ readonly name: "newOwner";
2493
+ readonly type: "address";
2494
+ readonly indexed: true;
2495
+ }];
2424
2496
  }, {
2425
2497
  readonly type: "error";
2426
- readonly name: "UnsupportedLST";
2498
+ readonly name: "DeadlineExpired";
2427
2499
  readonly inputs: readonly [];
2428
2500
  }, {
2429
2501
  readonly type: "error";
2430
- readonly name: "DeadlineExpired";
2502
+ readonly name: "DefaultLSTNotSet";
2431
2503
  readonly inputs: readonly [];
2432
2504
  }, {
2433
2505
  readonly type: "error";
@@ -2435,7 +2507,7 @@ declare const RouterABI: readonly [{
2435
2507
  readonly inputs: readonly [];
2436
2508
  }, {
2437
2509
  readonly type: "error";
2438
- readonly name: "ZeroAmount";
2510
+ readonly name: "InvalidPoolFee";
2439
2511
  readonly inputs: readonly [];
2440
2512
  }, {
2441
2513
  readonly type: "error";
@@ -2443,7 +2515,7 @@ declare const RouterABI: readonly [{
2443
2515
  readonly inputs: readonly [];
2444
2516
  }, {
2445
2517
  readonly type: "error";
2446
- readonly name: "SwapFailed";
2518
+ readonly name: "InvalidWithdrawalRequest";
2447
2519
  readonly inputs: readonly [];
2448
2520
  }, {
2449
2521
  readonly type: "error";
@@ -2455,19 +2527,23 @@ declare const RouterABI: readonly [{
2455
2527
  readonly inputs: readonly [];
2456
2528
  }, {
2457
2529
  readonly type: "error";
2458
- readonly name: "InvalidPoolFee";
2530
+ readonly name: "OnlySlisBNBSupported";
2459
2531
  readonly inputs: readonly [];
2460
2532
  }, {
2461
2533
  readonly type: "error";
2462
- readonly name: "DefaultLSTNotSet";
2534
+ readonly name: "SwapFailed";
2463
2535
  readonly inputs: readonly [];
2464
2536
  }, {
2465
2537
  readonly type: "error";
2466
- readonly name: "InvalidWithdrawalRequest";
2538
+ readonly name: "UnsupportedInputToken";
2467
2539
  readonly inputs: readonly [];
2468
2540
  }, {
2469
2541
  readonly type: "error";
2470
- readonly name: "WithdrawalNotClaimable";
2542
+ readonly name: "UnsupportedLST";
2543
+ readonly inputs: readonly [];
2544
+ }, {
2545
+ readonly type: "error";
2546
+ readonly name: "V3PoolNotFound";
2471
2547
  readonly inputs: readonly [];
2472
2548
  }, {
2473
2549
  readonly type: "error";
@@ -2475,8 +2551,40 @@ declare const RouterABI: readonly [{
2475
2551
  readonly inputs: readonly [];
2476
2552
  }, {
2477
2553
  readonly type: "error";
2478
- readonly name: "OnlySlisBNBSupported";
2554
+ readonly name: "WithdrawalNotClaimable";
2479
2555
  readonly inputs: readonly [];
2556
+ }, {
2557
+ readonly type: "error";
2558
+ readonly name: "ZeroAmount";
2559
+ readonly inputs: readonly [];
2560
+ }, {
2561
+ readonly type: "error";
2562
+ readonly name: "ReentrancyGuardReentrantCall";
2563
+ readonly inputs: readonly [];
2564
+ }, {
2565
+ readonly type: "error";
2566
+ readonly name: "OwnableInvalidOwner";
2567
+ readonly inputs: readonly [{
2568
+ readonly name: "owner";
2569
+ readonly type: "address";
2570
+ }];
2571
+ }, {
2572
+ readonly type: "error";
2573
+ readonly name: "OwnableUnauthorizedAccount";
2574
+ readonly inputs: readonly [{
2575
+ readonly name: "account";
2576
+ readonly type: "address";
2577
+ }];
2578
+ }, {
2579
+ readonly type: "error";
2580
+ readonly name: "SafeERC20FailedOperation";
2581
+ readonly inputs: readonly [{
2582
+ readonly name: "token";
2583
+ readonly type: "address";
2584
+ }];
2585
+ }, {
2586
+ readonly type: "receive";
2587
+ readonly stateMutability: "payable";
2480
2588
  }];
2481
2589
 
2482
2590
  /**
@@ -2529,4 +2637,4 @@ declare function formatPriceUSD(price: bigint): string;
2529
2637
  */
2530
2638
  declare function calculateAPY(previousRate: bigint, currentRate: bigint, periodDays: number): number;
2531
2639
 
2532
- export { type ApUSDMintedEvent, type ApUSDRedeemedEvent, AspanClient, type AspanClientConfig, AspanReadClient, AspanRouterClient, type AspanRouterClientConfig, AspanRouterReadClient, type AspanRouterWriteClientConfig, type AspanWriteClientConfig, BPS_PRECISION, type BigIntString, type CurrentFeeTier, type CurrentFees, type DepositParams, type DepositedEvent, DiamondABI, type ExpectedOutput, type FeeTier, type LSTInfo, type LSTYieldInfo, type MintApUSDParams, type MintXBNBParams, type OracleBounds, PRECISION, PRICE_PRECISION, type ProtocolStats, type RedeemAndSwapEvent, type RedeemApUSDParams, type RedeemXBNBParams, RouterABI, type RouterMintApUSDParams, type RouterMintEvent, type RouterMintParams, type RouterMintXBNBParams, type RouterRedeemAndSwapParams, type RouterRedeemAndUnstakeParams, type RouterRedeemApUSDParams, type RouterRedeemEvent, type RouterRedeemXBNBParams, type RouterSwapParams, type StabilityMode2Info, type StabilityModeInfo, type StabilityPoolStats, type StakeAndMintEvent, type StakeAndMintParams, type SwapAndMintDefaultParams, type SwapAndMintEvent, type SwapAndMintParams, type TokenAddresses, type TransactionReceipt, type TransactionResult, type UnstakeClaimedEvent, type UnstakeRequestedEvent, type UserStabilityPoolPosition, type WithdrawAssetsParams, type WithdrawParams, type WithdrawalRequestInfo, type WithdrawnEvent, type XBNBMintedEvent, type XBNBRedeemedEvent, type YieldHarvestedEvent, type YieldStats, calculateAPY, createAspanClient, createAspanReadClient, createAspanTestnetClient, createAspanTestnetReadClient, createRouterClient, createRouterReadClient, createRouterTestnetClient, createRouterTestnetReadClient, formatAmount, formatCR, formatFeeBPS, formatPriceUSD, parseAmount };
2640
+ export { type ApUSDMintedEvent, type ApUSDRedeemedEvent, AspanClient, type AspanClientConfig, AspanReadClient, AspanRouterClient, type AspanRouterClientConfig, AspanRouterReadClient, type AspanRouterWriteClientConfig, type AspanWriteClientConfig, BPS_PRECISION, type BigIntString, type CurrentFeeTier, type CurrentFees, type DepositParams, type DepositedEvent, DiamondABI, type FeeTier, type LSTInfo, type LSTYieldInfo, type MintApUSDParams, type MintXBNBParams, type OracleBounds, PRECISION, PRICE_PRECISION, type ProtocolStats, type RedeemAndSwapEvent, type RedeemApUSDParams, type RedeemXBNBParams, RouterABI, type RouterMintApUSDParams, type RouterMintEvent, type RouterMintParams, type RouterMintXBNBParams, type RouterRedeemAndSwapParams, type RouterRedeemApUSDParams, type RouterRedeemEvent, type RouterRedeemXBNBParams, type RouterSwapParams, type StabilityMode2Info, type StabilityModeInfo, type StabilityPoolStats, type StakeAndMintEvent, type StakeAndMintParams, type SwapAndMintDefaultParams, type SwapAndMintEvent, type SwapAndMintParams, type TokenAddresses, type TransactionReceipt, type TransactionResult, type UnstakeClaimedEvent, type UnstakeRequestedEvent, type UserStabilityPoolPosition, type WithdrawAssetsParams, type WithdrawParams, type WithdrawalRequestInfo, type WithdrawnEvent, type XBNBMintedEvent, type XBNBRedeemedEvent, type YieldHarvestedEvent, type YieldStats, calculateAPY, createAspanClient, createAspanReadClient, createAspanTestnetClient, createAspanTestnetReadClient, createRouterClient, createRouterReadClient, createRouterTestnetClient, createRouterTestnetReadClient, encodeV3Path, formatAmount, formatCR, formatFeeBPS, formatPriceUSD, parseAmount };