@aspan/sdk 0.2.1 → 0.3.0
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 +27 -43
- package/dist/index.d.mts +252 -240
- package/dist/index.d.ts +252 -240
- package/dist/index.js +148 -256
- package/dist/index.mjs +147 -256
- package/package.json +1 -1
- package/src/__tests__/router.test.ts +394 -0
- package/src/abi/router.ts +123 -200
- package/src/index.ts +3 -2
- package/src/router.ts +9 -91
- package/src/types.ts +27 -9
package/dist/index.d.ts
CHANGED
|
@@ -209,8 +209,6 @@ 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 {
|
|
@@ -290,34 +288,30 @@ interface RouterRedeemXBNBParams {
|
|
|
290
288
|
/** Minimum LST to receive */
|
|
291
289
|
minOut?: bigint;
|
|
292
290
|
}
|
|
293
|
-
/** Parameters for redeemAndSwap functions */
|
|
291
|
+
/** Parameters for redeemAndSwap functions (uses PancakeSwap V3 path) */
|
|
294
292
|
interface RouterRedeemAndSwapParams {
|
|
295
293
|
/** LST to redeem */
|
|
296
294
|
lst: Address;
|
|
297
295
|
/** Amount to redeem (apUSD or xBNB) */
|
|
298
296
|
amount: bigint;
|
|
299
|
-
/**
|
|
300
|
-
|
|
297
|
+
/**
|
|
298
|
+
* PancakeSwap V3 encoded swap path (LST → ... → outputToken)
|
|
299
|
+
* Use encodeV3Path() helper or get from PancakeSwap Quoter
|
|
300
|
+
* Example: slisBNB → WBNB → USDT
|
|
301
|
+
*/
|
|
302
|
+
path: `0x${string}`;
|
|
301
303
|
/** Minimum output to receive */
|
|
302
304
|
minOut: bigint;
|
|
303
305
|
/** Transaction deadline timestamp */
|
|
304
306
|
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
307
|
}
|
|
308
|
+
/**
|
|
309
|
+
* Encode a PancakeSwap V3 swap path
|
|
310
|
+
* @param tokens Array of token addresses in order
|
|
311
|
+
* @param fees Array of pool fees between each token pair
|
|
312
|
+
* @returns Encoded path bytes
|
|
313
|
+
*/
|
|
314
|
+
declare function encodeV3Path(tokens: Address[], fees: number[]): `0x${string}`;
|
|
321
315
|
/** Withdrawal request status */
|
|
322
316
|
interface WithdrawalRequestInfo {
|
|
323
317
|
/** Whether the request can be claimed */
|
|
@@ -325,13 +319,6 @@ interface WithdrawalRequestInfo {
|
|
|
325
319
|
/** Amount of BNB to receive */
|
|
326
320
|
bnbAmount: bigint;
|
|
327
321
|
}
|
|
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
322
|
/** SwapAndMint event */
|
|
336
323
|
interface SwapAndMintEvent {
|
|
337
324
|
user: Address;
|
|
@@ -590,14 +577,6 @@ declare class AspanRouterReadClient {
|
|
|
590
577
|
* Get the Diamond contract address
|
|
591
578
|
*/
|
|
592
579
|
getDiamond(): Promise<Address>;
|
|
593
|
-
/**
|
|
594
|
-
* Get expected output from a swap and mint operation
|
|
595
|
-
*/
|
|
596
|
-
getExpectedMintOutput(inputToken: Address, inputAmount: bigint, targetLST: Address, isXBNB: boolean): Promise<ExpectedOutput>;
|
|
597
|
-
/**
|
|
598
|
-
* Get expected output from a redeem and swap operation
|
|
599
|
-
*/
|
|
600
|
-
getExpectedRedeemOutput(isXBNB: boolean, redeemAmount: bigint, lst: Address, outputToken: Address): Promise<ExpectedOutput>;
|
|
601
580
|
/**
|
|
602
581
|
* Preview apUSD mint output for a given LST amount
|
|
603
582
|
*/
|
|
@@ -635,7 +614,7 @@ declare class AspanRouterReadClient {
|
|
|
635
614
|
* Full client with write capabilities for AspanRouter
|
|
636
615
|
*/
|
|
637
616
|
declare class AspanRouterClient extends AspanRouterReadClient {
|
|
638
|
-
|
|
617
|
+
readonly walletClient: WalletClient;
|
|
639
618
|
constructor(config: AspanRouterWriteClientConfig);
|
|
640
619
|
/**
|
|
641
620
|
* Swap input token to LST and mint apUSD
|
|
@@ -682,21 +661,15 @@ declare class AspanRouterClient extends AspanRouterReadClient {
|
|
|
682
661
|
*/
|
|
683
662
|
redeemXBNB(params: RouterRedeemXBNBParams): Promise<Hash>;
|
|
684
663
|
/**
|
|
685
|
-
* Redeem apUSD and swap LST to output token
|
|
664
|
+
* Redeem apUSD and swap LST to output token via V3 path
|
|
665
|
+
* @param params.path - PancakeSwap V3 encoded path (use encodeV3Path helper)
|
|
686
666
|
*/
|
|
687
667
|
redeemApUSDAndSwap(params: RouterRedeemAndSwapParams): Promise<Hash>;
|
|
688
668
|
/**
|
|
689
|
-
* Redeem xBNB and swap LST to output token
|
|
669
|
+
* Redeem xBNB and swap LST to output token via V3 path
|
|
670
|
+
* @param params.path - PancakeSwap V3 encoded path (use encodeV3Path helper)
|
|
690
671
|
*/
|
|
691
672
|
redeemXBNBAndSwap(params: RouterRedeemAndSwapParams): Promise<Hash>;
|
|
692
|
-
/**
|
|
693
|
-
* Redeem apUSD and instantly unstake LST to native BNB via DEX
|
|
694
|
-
*/
|
|
695
|
-
redeemApUSDAndUnstake(params: RouterRedeemAndUnstakeParams): Promise<Hash>;
|
|
696
|
-
/**
|
|
697
|
-
* Redeem xBNB and instantly unstake LST to native BNB via DEX
|
|
698
|
-
*/
|
|
699
|
-
redeemXBNBAndUnstake(params: RouterRedeemAndUnstakeParams): Promise<Hash>;
|
|
700
673
|
/**
|
|
701
674
|
* Redeem apUSD and request native unstake from Lista (starts unbonding period)
|
|
702
675
|
*/
|
|
@@ -1673,6 +1646,7 @@ declare const DiamondABI: readonly [{
|
|
|
1673
1646
|
/**
|
|
1674
1647
|
* AspanRouter ABI
|
|
1675
1648
|
* Periphery contract for one-click swap+mint operations
|
|
1649
|
+
* Updated: 2025-01-31
|
|
1676
1650
|
*/
|
|
1677
1651
|
declare const RouterABI: readonly [{
|
|
1678
1652
|
readonly type: "function";
|
|
@@ -1695,9 +1669,6 @@ declare const RouterABI: readonly [{
|
|
|
1695
1669
|
}, {
|
|
1696
1670
|
readonly name: "poolFee";
|
|
1697
1671
|
readonly type: "uint24";
|
|
1698
|
-
}, {
|
|
1699
|
-
readonly name: "useV2";
|
|
1700
|
-
readonly type: "bool";
|
|
1701
1672
|
}];
|
|
1702
1673
|
}, {
|
|
1703
1674
|
readonly name: "mintParams";
|
|
@@ -1745,9 +1716,6 @@ declare const RouterABI: readonly [{
|
|
|
1745
1716
|
}, {
|
|
1746
1717
|
readonly name: "poolFee";
|
|
1747
1718
|
readonly type: "uint24";
|
|
1748
|
-
}, {
|
|
1749
|
-
readonly name: "useV2";
|
|
1750
|
-
readonly type: "bool";
|
|
1751
1719
|
}];
|
|
1752
1720
|
}, {
|
|
1753
1721
|
readonly name: "mintParams";
|
|
@@ -1800,19 +1768,10 @@ declare const RouterABI: readonly [{
|
|
|
1800
1768
|
readonly stateMutability: "payable";
|
|
1801
1769
|
}, {
|
|
1802
1770
|
readonly type: "function";
|
|
1803
|
-
readonly name: "
|
|
1771
|
+
readonly name: "stakeAndMintApUSD";
|
|
1804
1772
|
readonly inputs: readonly [{
|
|
1805
|
-
readonly name: "inputToken";
|
|
1806
|
-
readonly type: "address";
|
|
1807
|
-
}, {
|
|
1808
|
-
readonly name: "inputAmount";
|
|
1809
|
-
readonly type: "uint256";
|
|
1810
|
-
}, {
|
|
1811
1773
|
readonly name: "minMintOut";
|
|
1812
1774
|
readonly type: "uint256";
|
|
1813
|
-
}, {
|
|
1814
|
-
readonly name: "deadline";
|
|
1815
|
-
readonly type: "uint256";
|
|
1816
1775
|
}];
|
|
1817
1776
|
readonly outputs: readonly [{
|
|
1818
1777
|
readonly name: "apUSDAmount";
|
|
@@ -1821,19 +1780,10 @@ declare const RouterABI: readonly [{
|
|
|
1821
1780
|
readonly stateMutability: "payable";
|
|
1822
1781
|
}, {
|
|
1823
1782
|
readonly type: "function";
|
|
1824
|
-
readonly name: "
|
|
1783
|
+
readonly name: "stakeAndMintXBNB";
|
|
1825
1784
|
readonly inputs: readonly [{
|
|
1826
|
-
readonly name: "inputToken";
|
|
1827
|
-
readonly type: "address";
|
|
1828
|
-
}, {
|
|
1829
|
-
readonly name: "inputAmount";
|
|
1830
|
-
readonly type: "uint256";
|
|
1831
|
-
}, {
|
|
1832
1785
|
readonly name: "minMintOut";
|
|
1833
1786
|
readonly type: "uint256";
|
|
1834
|
-
}, {
|
|
1835
|
-
readonly name: "deadline";
|
|
1836
|
-
readonly type: "uint256";
|
|
1837
1787
|
}];
|
|
1838
1788
|
readonly outputs: readonly [{
|
|
1839
1789
|
readonly name: "xBNBAmount";
|
|
@@ -1842,10 +1792,19 @@ declare const RouterABI: readonly [{
|
|
|
1842
1792
|
readonly stateMutability: "payable";
|
|
1843
1793
|
}, {
|
|
1844
1794
|
readonly type: "function";
|
|
1845
|
-
readonly name: "
|
|
1795
|
+
readonly name: "swapAndMintApUSDDefault";
|
|
1846
1796
|
readonly inputs: readonly [{
|
|
1797
|
+
readonly name: "inputToken";
|
|
1798
|
+
readonly type: "address";
|
|
1799
|
+
}, {
|
|
1800
|
+
readonly name: "inputAmount";
|
|
1801
|
+
readonly type: "uint256";
|
|
1802
|
+
}, {
|
|
1847
1803
|
readonly name: "minMintOut";
|
|
1848
1804
|
readonly type: "uint256";
|
|
1805
|
+
}, {
|
|
1806
|
+
readonly name: "deadline";
|
|
1807
|
+
readonly type: "uint256";
|
|
1849
1808
|
}];
|
|
1850
1809
|
readonly outputs: readonly [{
|
|
1851
1810
|
readonly name: "apUSDAmount";
|
|
@@ -1854,10 +1813,19 @@ declare const RouterABI: readonly [{
|
|
|
1854
1813
|
readonly stateMutability: "payable";
|
|
1855
1814
|
}, {
|
|
1856
1815
|
readonly type: "function";
|
|
1857
|
-
readonly name: "
|
|
1816
|
+
readonly name: "swapAndMintXBNBDefault";
|
|
1858
1817
|
readonly inputs: readonly [{
|
|
1818
|
+
readonly name: "inputToken";
|
|
1819
|
+
readonly type: "address";
|
|
1820
|
+
}, {
|
|
1821
|
+
readonly name: "inputAmount";
|
|
1822
|
+
readonly type: "uint256";
|
|
1823
|
+
}, {
|
|
1859
1824
|
readonly name: "minMintOut";
|
|
1860
1825
|
readonly type: "uint256";
|
|
1826
|
+
}, {
|
|
1827
|
+
readonly name: "deadline";
|
|
1828
|
+
readonly type: "uint256";
|
|
1861
1829
|
}];
|
|
1862
1830
|
readonly outputs: readonly [{
|
|
1863
1831
|
readonly name: "xBNBAmount";
|
|
@@ -1946,20 +1914,14 @@ declare const RouterABI: readonly [{
|
|
|
1946
1914
|
readonly name: "apUSDAmount";
|
|
1947
1915
|
readonly type: "uint256";
|
|
1948
1916
|
}, {
|
|
1949
|
-
readonly name: "
|
|
1950
|
-
readonly type: "
|
|
1917
|
+
readonly name: "path";
|
|
1918
|
+
readonly type: "bytes";
|
|
1951
1919
|
}, {
|
|
1952
1920
|
readonly name: "minOut";
|
|
1953
1921
|
readonly type: "uint256";
|
|
1954
1922
|
}, {
|
|
1955
1923
|
readonly name: "deadline";
|
|
1956
1924
|
readonly type: "uint256";
|
|
1957
|
-
}, {
|
|
1958
|
-
readonly name: "useV2";
|
|
1959
|
-
readonly type: "bool";
|
|
1960
|
-
}, {
|
|
1961
|
-
readonly name: "poolFee";
|
|
1962
|
-
readonly type: "uint24";
|
|
1963
1925
|
}];
|
|
1964
1926
|
readonly outputs: readonly [{
|
|
1965
1927
|
readonly name: "outputAmount";
|
|
@@ -1976,68 +1938,20 @@ declare const RouterABI: readonly [{
|
|
|
1976
1938
|
readonly name: "xBNBAmount";
|
|
1977
1939
|
readonly type: "uint256";
|
|
1978
1940
|
}, {
|
|
1979
|
-
readonly name: "
|
|
1980
|
-
readonly type: "
|
|
1941
|
+
readonly name: "path";
|
|
1942
|
+
readonly type: "bytes";
|
|
1981
1943
|
}, {
|
|
1982
1944
|
readonly name: "minOut";
|
|
1983
1945
|
readonly type: "uint256";
|
|
1984
1946
|
}, {
|
|
1985
1947
|
readonly name: "deadline";
|
|
1986
1948
|
readonly type: "uint256";
|
|
1987
|
-
}, {
|
|
1988
|
-
readonly name: "useV2";
|
|
1989
|
-
readonly type: "bool";
|
|
1990
|
-
}, {
|
|
1991
|
-
readonly name: "poolFee";
|
|
1992
|
-
readonly type: "uint24";
|
|
1993
1949
|
}];
|
|
1994
1950
|
readonly outputs: readonly [{
|
|
1995
1951
|
readonly name: "outputAmount";
|
|
1996
1952
|
readonly type: "uint256";
|
|
1997
1953
|
}];
|
|
1998
1954
|
readonly stateMutability: "nonpayable";
|
|
1999
|
-
}, {
|
|
2000
|
-
readonly type: "function";
|
|
2001
|
-
readonly name: "redeemApUSDAndUnstake";
|
|
2002
|
-
readonly inputs: readonly [{
|
|
2003
|
-
readonly name: "lst";
|
|
2004
|
-
readonly type: "address";
|
|
2005
|
-
}, {
|
|
2006
|
-
readonly name: "apUSDAmount";
|
|
2007
|
-
readonly type: "uint256";
|
|
2008
|
-
}, {
|
|
2009
|
-
readonly name: "minBNBOut";
|
|
2010
|
-
readonly type: "uint256";
|
|
2011
|
-
}, {
|
|
2012
|
-
readonly name: "deadline";
|
|
2013
|
-
readonly type: "uint256";
|
|
2014
|
-
}];
|
|
2015
|
-
readonly outputs: readonly [{
|
|
2016
|
-
readonly name: "bnbAmount";
|
|
2017
|
-
readonly type: "uint256";
|
|
2018
|
-
}];
|
|
2019
|
-
readonly stateMutability: "nonpayable";
|
|
2020
|
-
}, {
|
|
2021
|
-
readonly type: "function";
|
|
2022
|
-
readonly name: "redeemXBNBAndUnstake";
|
|
2023
|
-
readonly inputs: readonly [{
|
|
2024
|
-
readonly name: "lst";
|
|
2025
|
-
readonly type: "address";
|
|
2026
|
-
}, {
|
|
2027
|
-
readonly name: "xBNBAmount";
|
|
2028
|
-
readonly type: "uint256";
|
|
2029
|
-
}, {
|
|
2030
|
-
readonly name: "minBNBOut";
|
|
2031
|
-
readonly type: "uint256";
|
|
2032
|
-
}, {
|
|
2033
|
-
readonly name: "deadline";
|
|
2034
|
-
readonly type: "uint256";
|
|
2035
|
-
}];
|
|
2036
|
-
readonly outputs: readonly [{
|
|
2037
|
-
readonly name: "bnbAmount";
|
|
2038
|
-
readonly type: "uint256";
|
|
2039
|
-
}];
|
|
2040
|
-
readonly stateMutability: "nonpayable";
|
|
2041
1955
|
}, {
|
|
2042
1956
|
readonly type: "function";
|
|
2043
1957
|
readonly name: "redeemApUSDAndRequestUnstake";
|
|
@@ -2082,35 +1996,66 @@ declare const RouterABI: readonly [{
|
|
|
2082
1996
|
readonly stateMutability: "nonpayable";
|
|
2083
1997
|
}, {
|
|
2084
1998
|
readonly type: "function";
|
|
2085
|
-
readonly name: "
|
|
1999
|
+
readonly name: "wbnb";
|
|
2086
2000
|
readonly inputs: readonly [];
|
|
2087
2001
|
readonly outputs: readonly [{
|
|
2088
|
-
readonly name: "";
|
|
2089
2002
|
readonly type: "address";
|
|
2090
2003
|
}];
|
|
2091
2004
|
readonly stateMutability: "view";
|
|
2092
2005
|
}, {
|
|
2093
2006
|
readonly type: "function";
|
|
2094
|
-
readonly name: "
|
|
2095
|
-
readonly inputs: readonly [
|
|
2096
|
-
|
|
2007
|
+
readonly name: "usdt";
|
|
2008
|
+
readonly inputs: readonly [];
|
|
2009
|
+
readonly outputs: readonly [{
|
|
2097
2010
|
readonly type: "address";
|
|
2098
2011
|
}];
|
|
2012
|
+
readonly stateMutability: "view";
|
|
2013
|
+
}, {
|
|
2014
|
+
readonly type: "function";
|
|
2015
|
+
readonly name: "usdc";
|
|
2016
|
+
readonly inputs: readonly [];
|
|
2099
2017
|
readonly outputs: readonly [{
|
|
2100
|
-
readonly
|
|
2101
|
-
readonly type: "bool";
|
|
2018
|
+
readonly type: "address";
|
|
2102
2019
|
}];
|
|
2103
2020
|
readonly stateMutability: "view";
|
|
2104
2021
|
}, {
|
|
2105
2022
|
readonly type: "function";
|
|
2106
|
-
readonly name: "
|
|
2107
|
-
readonly inputs: readonly [
|
|
2108
|
-
|
|
2023
|
+
readonly name: "slisBNB";
|
|
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: "asBNB";
|
|
2032
|
+
readonly inputs: readonly [];
|
|
2033
|
+
readonly outputs: readonly [{
|
|
2109
2034
|
readonly type: "address";
|
|
2110
2035
|
}];
|
|
2036
|
+
readonly stateMutability: "view";
|
|
2037
|
+
}, {
|
|
2038
|
+
readonly type: "function";
|
|
2039
|
+
readonly name: "wclisBNB";
|
|
2040
|
+
readonly inputs: readonly [];
|
|
2111
2041
|
readonly outputs: readonly [{
|
|
2112
|
-
readonly
|
|
2113
|
-
|
|
2042
|
+
readonly type: "address";
|
|
2043
|
+
}];
|
|
2044
|
+
readonly stateMutability: "view";
|
|
2045
|
+
}, {
|
|
2046
|
+
readonly type: "function";
|
|
2047
|
+
readonly name: "apUSD";
|
|
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: "xBNB";
|
|
2056
|
+
readonly inputs: readonly [];
|
|
2057
|
+
readonly outputs: readonly [{
|
|
2058
|
+
readonly type: "address";
|
|
2114
2059
|
}];
|
|
2115
2060
|
readonly stateMutability: "view";
|
|
2116
2061
|
}, {
|
|
@@ -2118,56 +2063,69 @@ declare const RouterABI: readonly [{
|
|
|
2118
2063
|
readonly name: "diamond";
|
|
2119
2064
|
readonly inputs: readonly [];
|
|
2120
2065
|
readonly outputs: readonly [{
|
|
2121
|
-
readonly name: "";
|
|
2122
2066
|
readonly type: "address";
|
|
2123
2067
|
}];
|
|
2124
2068
|
readonly stateMutability: "view";
|
|
2125
2069
|
}, {
|
|
2126
2070
|
readonly type: "function";
|
|
2127
|
-
readonly name: "
|
|
2128
|
-
readonly inputs: readonly [
|
|
2129
|
-
|
|
2071
|
+
readonly name: "pancakeV3Router";
|
|
2072
|
+
readonly inputs: readonly [];
|
|
2073
|
+
readonly outputs: readonly [{
|
|
2130
2074
|
readonly type: "address";
|
|
2131
|
-
}
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
2075
|
+
}];
|
|
2076
|
+
readonly stateMutability: "view";
|
|
2077
|
+
}, {
|
|
2078
|
+
readonly type: "function";
|
|
2079
|
+
readonly name: "listaStakeManager";
|
|
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: "astherusMinter";
|
|
2088
|
+
readonly inputs: readonly [];
|
|
2089
|
+
readonly outputs: readonly [{
|
|
2136
2090
|
readonly type: "address";
|
|
2137
|
-
}, {
|
|
2138
|
-
readonly name: "isXBNB";
|
|
2139
|
-
readonly type: "bool";
|
|
2140
2091
|
}];
|
|
2092
|
+
readonly stateMutability: "view";
|
|
2093
|
+
}, {
|
|
2094
|
+
readonly type: "function";
|
|
2095
|
+
readonly name: "slisBNBProvider";
|
|
2096
|
+
readonly inputs: readonly [];
|
|
2141
2097
|
readonly outputs: readonly [{
|
|
2142
|
-
readonly
|
|
2143
|
-
readonly type: "uint256";
|
|
2144
|
-
}, {
|
|
2145
|
-
readonly name: "expectedMint";
|
|
2146
|
-
readonly type: "uint256";
|
|
2098
|
+
readonly type: "address";
|
|
2147
2099
|
}];
|
|
2148
2100
|
readonly stateMutability: "view";
|
|
2149
2101
|
}, {
|
|
2150
2102
|
readonly type: "function";
|
|
2151
|
-
readonly name: "
|
|
2103
|
+
readonly name: "defaultLST";
|
|
2104
|
+
readonly inputs: readonly [];
|
|
2105
|
+
readonly outputs: readonly [{
|
|
2106
|
+
readonly type: "address";
|
|
2107
|
+
}];
|
|
2108
|
+
readonly stateMutability: "view";
|
|
2109
|
+
}, {
|
|
2110
|
+
readonly type: "function";
|
|
2111
|
+
readonly name: "supportedInputTokens";
|
|
2152
2112
|
readonly inputs: readonly [{
|
|
2153
|
-
readonly name: "
|
|
2113
|
+
readonly name: "token";
|
|
2114
|
+
readonly type: "address";
|
|
2115
|
+
}];
|
|
2116
|
+
readonly outputs: readonly [{
|
|
2154
2117
|
readonly type: "bool";
|
|
2155
|
-
}
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2118
|
+
}];
|
|
2119
|
+
readonly stateMutability: "view";
|
|
2120
|
+
}, {
|
|
2121
|
+
readonly type: "function";
|
|
2122
|
+
readonly name: "supportedLSTs";
|
|
2123
|
+
readonly inputs: readonly [{
|
|
2159
2124
|
readonly name: "lst";
|
|
2160
2125
|
readonly type: "address";
|
|
2161
|
-
}, {
|
|
2162
|
-
readonly name: "outputToken";
|
|
2163
|
-
readonly type: "address";
|
|
2164
2126
|
}];
|
|
2165
2127
|
readonly outputs: readonly [{
|
|
2166
|
-
readonly
|
|
2167
|
-
readonly type: "uint256";
|
|
2168
|
-
}, {
|
|
2169
|
-
readonly name: "expectedOutput";
|
|
2170
|
-
readonly type: "uint256";
|
|
2128
|
+
readonly type: "bool";
|
|
2171
2129
|
}];
|
|
2172
2130
|
readonly stateMutability: "view";
|
|
2173
2131
|
}, {
|
|
@@ -2238,7 +2196,6 @@ declare const RouterABI: readonly [{
|
|
|
2238
2196
|
readonly type: "address";
|
|
2239
2197
|
}];
|
|
2240
2198
|
readonly outputs: readonly [{
|
|
2241
|
-
readonly name: "";
|
|
2242
2199
|
readonly type: "uint256[]";
|
|
2243
2200
|
}];
|
|
2244
2201
|
readonly stateMutability: "view";
|
|
@@ -2259,76 +2216,87 @@ declare const RouterABI: readonly [{
|
|
|
2259
2216
|
readonly stateMutability: "view";
|
|
2260
2217
|
}, {
|
|
2261
2218
|
readonly type: "function";
|
|
2262
|
-
readonly name: "
|
|
2263
|
-
readonly inputs: readonly [
|
|
2219
|
+
readonly name: "withdrawalRequests";
|
|
2220
|
+
readonly inputs: readonly [{
|
|
2221
|
+
readonly name: "index";
|
|
2222
|
+
readonly type: "uint256";
|
|
2223
|
+
}];
|
|
2264
2224
|
readonly outputs: readonly [{
|
|
2265
|
-
readonly name: "";
|
|
2225
|
+
readonly name: "user";
|
|
2266
2226
|
readonly type: "address";
|
|
2227
|
+
}, {
|
|
2228
|
+
readonly name: "listaIdx";
|
|
2229
|
+
readonly type: "uint256";
|
|
2230
|
+
}, {
|
|
2231
|
+
readonly name: "slisBNBAmount";
|
|
2232
|
+
readonly type: "uint256";
|
|
2233
|
+
}, {
|
|
2234
|
+
readonly name: "claimed";
|
|
2235
|
+
readonly type: "bool";
|
|
2267
2236
|
}];
|
|
2268
2237
|
readonly stateMutability: "view";
|
|
2269
2238
|
}, {
|
|
2270
2239
|
readonly type: "function";
|
|
2271
|
-
readonly name: "
|
|
2240
|
+
readonly name: "owner";
|
|
2272
2241
|
readonly inputs: readonly [];
|
|
2273
2242
|
readonly outputs: readonly [{
|
|
2274
|
-
readonly name: "";
|
|
2275
2243
|
readonly type: "address";
|
|
2276
2244
|
}];
|
|
2277
2245
|
readonly stateMutability: "view";
|
|
2278
2246
|
}, {
|
|
2279
2247
|
readonly type: "function";
|
|
2280
|
-
readonly name: "
|
|
2281
|
-
readonly inputs: readonly [
|
|
2282
|
-
|
|
2283
|
-
readonly name: "";
|
|
2248
|
+
readonly name: "setDefaultLST";
|
|
2249
|
+
readonly inputs: readonly [{
|
|
2250
|
+
readonly name: "lst";
|
|
2284
2251
|
readonly type: "address";
|
|
2285
2252
|
}];
|
|
2286
|
-
readonly
|
|
2253
|
+
readonly outputs: readonly [];
|
|
2254
|
+
readonly stateMutability: "nonpayable";
|
|
2287
2255
|
}, {
|
|
2288
2256
|
readonly type: "function";
|
|
2289
|
-
readonly name: "
|
|
2290
|
-
readonly inputs: readonly [
|
|
2291
|
-
|
|
2292
|
-
readonly name: "";
|
|
2257
|
+
readonly name: "addSupportedInputToken";
|
|
2258
|
+
readonly inputs: readonly [{
|
|
2259
|
+
readonly name: "token";
|
|
2293
2260
|
readonly type: "address";
|
|
2294
2261
|
}];
|
|
2295
|
-
readonly
|
|
2262
|
+
readonly outputs: readonly [];
|
|
2263
|
+
readonly stateMutability: "nonpayable";
|
|
2296
2264
|
}, {
|
|
2297
2265
|
readonly type: "function";
|
|
2298
|
-
readonly name: "
|
|
2299
|
-
readonly inputs: readonly [
|
|
2300
|
-
|
|
2301
|
-
readonly name: "";
|
|
2266
|
+
readonly name: "addSupportedLST";
|
|
2267
|
+
readonly inputs: readonly [{
|
|
2268
|
+
readonly name: "lst";
|
|
2302
2269
|
readonly type: "address";
|
|
2303
2270
|
}];
|
|
2304
|
-
readonly
|
|
2271
|
+
readonly outputs: readonly [];
|
|
2272
|
+
readonly stateMutability: "nonpayable";
|
|
2305
2273
|
}, {
|
|
2306
2274
|
readonly type: "function";
|
|
2307
|
-
readonly name: "
|
|
2308
|
-
readonly inputs: readonly [
|
|
2309
|
-
|
|
2310
|
-
readonly name: "";
|
|
2275
|
+
readonly name: "rescueTokens";
|
|
2276
|
+
readonly inputs: readonly [{
|
|
2277
|
+
readonly name: "token";
|
|
2311
2278
|
readonly type: "address";
|
|
2279
|
+
}, {
|
|
2280
|
+
readonly name: "amount";
|
|
2281
|
+
readonly type: "uint256";
|
|
2312
2282
|
}];
|
|
2313
|
-
readonly
|
|
2283
|
+
readonly outputs: readonly [];
|
|
2284
|
+
readonly stateMutability: "nonpayable";
|
|
2314
2285
|
}, {
|
|
2315
2286
|
readonly type: "function";
|
|
2316
|
-
readonly name: "
|
|
2317
|
-
readonly inputs: readonly [
|
|
2318
|
-
|
|
2319
|
-
readonly name: "";
|
|
2287
|
+
readonly name: "transferOwnership";
|
|
2288
|
+
readonly inputs: readonly [{
|
|
2289
|
+
readonly name: "newOwner";
|
|
2320
2290
|
readonly type: "address";
|
|
2321
2291
|
}];
|
|
2322
|
-
readonly
|
|
2292
|
+
readonly outputs: readonly [];
|
|
2293
|
+
readonly stateMutability: "nonpayable";
|
|
2323
2294
|
}, {
|
|
2324
2295
|
readonly type: "function";
|
|
2325
|
-
readonly name: "
|
|
2296
|
+
readonly name: "renounceOwnership";
|
|
2326
2297
|
readonly inputs: readonly [];
|
|
2327
|
-
readonly outputs: readonly [
|
|
2328
|
-
|
|
2329
|
-
readonly type: "address";
|
|
2330
|
-
}];
|
|
2331
|
-
readonly stateMutability: "view";
|
|
2298
|
+
readonly outputs: readonly [];
|
|
2299
|
+
readonly stateMutability: "nonpayable";
|
|
2332
2300
|
}, {
|
|
2333
2301
|
readonly type: "event";
|
|
2334
2302
|
readonly name: "SwapAndMint";
|
|
@@ -2339,15 +2307,15 @@ declare const RouterABI: readonly [{
|
|
|
2339
2307
|
}, {
|
|
2340
2308
|
readonly name: "inputToken";
|
|
2341
2309
|
readonly type: "address";
|
|
2342
|
-
readonly indexed:
|
|
2310
|
+
readonly indexed: false;
|
|
2343
2311
|
}, {
|
|
2344
2312
|
readonly name: "inputAmount";
|
|
2345
2313
|
readonly type: "uint256";
|
|
2346
2314
|
readonly indexed: false;
|
|
2347
2315
|
}, {
|
|
2348
|
-
readonly name: "
|
|
2316
|
+
readonly name: "lst";
|
|
2349
2317
|
readonly type: "address";
|
|
2350
|
-
readonly indexed:
|
|
2318
|
+
readonly indexed: false;
|
|
2351
2319
|
}, {
|
|
2352
2320
|
readonly name: "lstAmount";
|
|
2353
2321
|
readonly type: "uint256";
|
|
@@ -2373,9 +2341,9 @@ declare const RouterABI: readonly [{
|
|
|
2373
2341
|
readonly type: "uint256";
|
|
2374
2342
|
readonly indexed: false;
|
|
2375
2343
|
}, {
|
|
2376
|
-
readonly name: "
|
|
2344
|
+
readonly name: "lst";
|
|
2377
2345
|
readonly type: "address";
|
|
2378
|
-
readonly indexed:
|
|
2346
|
+
readonly indexed: false;
|
|
2379
2347
|
}, {
|
|
2380
2348
|
readonly name: "lstAmount";
|
|
2381
2349
|
readonly type: "uint256";
|
|
@@ -2383,7 +2351,7 @@ declare const RouterABI: readonly [{
|
|
|
2383
2351
|
}, {
|
|
2384
2352
|
readonly name: "mintedToken";
|
|
2385
2353
|
readonly type: "address";
|
|
2386
|
-
readonly indexed:
|
|
2354
|
+
readonly indexed: false;
|
|
2387
2355
|
}, {
|
|
2388
2356
|
readonly name: "mintedAmount";
|
|
2389
2357
|
readonly type: "uint256";
|
|
@@ -2399,7 +2367,7 @@ declare const RouterABI: readonly [{
|
|
|
2399
2367
|
}, {
|
|
2400
2368
|
readonly name: "lst";
|
|
2401
2369
|
readonly type: "address";
|
|
2402
|
-
readonly indexed:
|
|
2370
|
+
readonly indexed: false;
|
|
2403
2371
|
}, {
|
|
2404
2372
|
readonly name: "lstAmount";
|
|
2405
2373
|
readonly type: "uint256";
|
|
@@ -2407,7 +2375,7 @@ declare const RouterABI: readonly [{
|
|
|
2407
2375
|
}, {
|
|
2408
2376
|
readonly name: "mintedToken";
|
|
2409
2377
|
readonly type: "address";
|
|
2410
|
-
readonly indexed:
|
|
2378
|
+
readonly indexed: false;
|
|
2411
2379
|
}, {
|
|
2412
2380
|
readonly name: "mintedAmount";
|
|
2413
2381
|
readonly type: "uint256";
|
|
@@ -2423,7 +2391,7 @@ declare const RouterABI: readonly [{
|
|
|
2423
2391
|
}, {
|
|
2424
2392
|
readonly name: "redeemedToken";
|
|
2425
2393
|
readonly type: "address";
|
|
2426
|
-
readonly indexed:
|
|
2394
|
+
readonly indexed: false;
|
|
2427
2395
|
}, {
|
|
2428
2396
|
readonly name: "redeemedAmount";
|
|
2429
2397
|
readonly type: "uint256";
|
|
@@ -2431,7 +2399,7 @@ declare const RouterABI: readonly [{
|
|
|
2431
2399
|
}, {
|
|
2432
2400
|
readonly name: "lst";
|
|
2433
2401
|
readonly type: "address";
|
|
2434
|
-
readonly indexed:
|
|
2402
|
+
readonly indexed: false;
|
|
2435
2403
|
}, {
|
|
2436
2404
|
readonly name: "lstAmount";
|
|
2437
2405
|
readonly type: "uint256";
|
|
@@ -2463,7 +2431,7 @@ declare const RouterABI: readonly [{
|
|
|
2463
2431
|
}, {
|
|
2464
2432
|
readonly name: "outputToken";
|
|
2465
2433
|
readonly type: "address";
|
|
2466
|
-
readonly indexed:
|
|
2434
|
+
readonly indexed: false;
|
|
2467
2435
|
}, {
|
|
2468
2436
|
readonly name: "outputAmount";
|
|
2469
2437
|
readonly type: "uint256";
|
|
@@ -2479,7 +2447,7 @@ declare const RouterABI: readonly [{
|
|
|
2479
2447
|
}, {
|
|
2480
2448
|
readonly name: "requestIndex";
|
|
2481
2449
|
readonly type: "uint256";
|
|
2482
|
-
readonly indexed:
|
|
2450
|
+
readonly indexed: false;
|
|
2483
2451
|
}, {
|
|
2484
2452
|
readonly name: "redeemedToken";
|
|
2485
2453
|
readonly type: "address";
|
|
@@ -2503,7 +2471,7 @@ declare const RouterABI: readonly [{
|
|
|
2503
2471
|
}, {
|
|
2504
2472
|
readonly name: "requestIndex";
|
|
2505
2473
|
readonly type: "uint256";
|
|
2506
|
-
readonly indexed:
|
|
2474
|
+
readonly indexed: false;
|
|
2507
2475
|
}, {
|
|
2508
2476
|
readonly name: "bnbAmount";
|
|
2509
2477
|
readonly type: "uint256";
|
|
@@ -2515,23 +2483,31 @@ declare const RouterABI: readonly [{
|
|
|
2515
2483
|
readonly inputs: readonly [{
|
|
2516
2484
|
readonly name: "oldLST";
|
|
2517
2485
|
readonly type: "address";
|
|
2518
|
-
readonly indexed:
|
|
2486
|
+
readonly indexed: false;
|
|
2519
2487
|
}, {
|
|
2520
2488
|
readonly name: "newLST";
|
|
2521
2489
|
readonly type: "address";
|
|
2522
|
-
readonly indexed:
|
|
2490
|
+
readonly indexed: false;
|
|
2523
2491
|
}];
|
|
2524
2492
|
}, {
|
|
2525
|
-
readonly type: "
|
|
2526
|
-
readonly name: "
|
|
2527
|
-
readonly inputs: readonly [
|
|
2493
|
+
readonly type: "event";
|
|
2494
|
+
readonly name: "OwnershipTransferred";
|
|
2495
|
+
readonly inputs: readonly [{
|
|
2496
|
+
readonly name: "previousOwner";
|
|
2497
|
+
readonly type: "address";
|
|
2498
|
+
readonly indexed: true;
|
|
2499
|
+
}, {
|
|
2500
|
+
readonly name: "newOwner";
|
|
2501
|
+
readonly type: "address";
|
|
2502
|
+
readonly indexed: true;
|
|
2503
|
+
}];
|
|
2528
2504
|
}, {
|
|
2529
2505
|
readonly type: "error";
|
|
2530
|
-
readonly name: "
|
|
2506
|
+
readonly name: "DeadlineExpired";
|
|
2531
2507
|
readonly inputs: readonly [];
|
|
2532
2508
|
}, {
|
|
2533
2509
|
readonly type: "error";
|
|
2534
|
-
readonly name: "
|
|
2510
|
+
readonly name: "DefaultLSTNotSet";
|
|
2535
2511
|
readonly inputs: readonly [];
|
|
2536
2512
|
}, {
|
|
2537
2513
|
readonly type: "error";
|
|
@@ -2539,7 +2515,7 @@ declare const RouterABI: readonly [{
|
|
|
2539
2515
|
readonly inputs: readonly [];
|
|
2540
2516
|
}, {
|
|
2541
2517
|
readonly type: "error";
|
|
2542
|
-
readonly name: "
|
|
2518
|
+
readonly name: "InvalidPoolFee";
|
|
2543
2519
|
readonly inputs: readonly [];
|
|
2544
2520
|
}, {
|
|
2545
2521
|
readonly type: "error";
|
|
@@ -2547,7 +2523,7 @@ declare const RouterABI: readonly [{
|
|
|
2547
2523
|
readonly inputs: readonly [];
|
|
2548
2524
|
}, {
|
|
2549
2525
|
readonly type: "error";
|
|
2550
|
-
readonly name: "
|
|
2526
|
+
readonly name: "InvalidWithdrawalRequest";
|
|
2551
2527
|
readonly inputs: readonly [];
|
|
2552
2528
|
}, {
|
|
2553
2529
|
readonly type: "error";
|
|
@@ -2559,19 +2535,23 @@ declare const RouterABI: readonly [{
|
|
|
2559
2535
|
readonly inputs: readonly [];
|
|
2560
2536
|
}, {
|
|
2561
2537
|
readonly type: "error";
|
|
2562
|
-
readonly name: "
|
|
2538
|
+
readonly name: "OnlySlisBNBSupported";
|
|
2563
2539
|
readonly inputs: readonly [];
|
|
2564
2540
|
}, {
|
|
2565
2541
|
readonly type: "error";
|
|
2566
|
-
readonly name: "
|
|
2542
|
+
readonly name: "SwapFailed";
|
|
2567
2543
|
readonly inputs: readonly [];
|
|
2568
2544
|
}, {
|
|
2569
2545
|
readonly type: "error";
|
|
2570
|
-
readonly name: "
|
|
2546
|
+
readonly name: "UnsupportedInputToken";
|
|
2571
2547
|
readonly inputs: readonly [];
|
|
2572
2548
|
}, {
|
|
2573
2549
|
readonly type: "error";
|
|
2574
|
-
readonly name: "
|
|
2550
|
+
readonly name: "UnsupportedLST";
|
|
2551
|
+
readonly inputs: readonly [];
|
|
2552
|
+
}, {
|
|
2553
|
+
readonly type: "error";
|
|
2554
|
+
readonly name: "V3PoolNotFound";
|
|
2575
2555
|
readonly inputs: readonly [];
|
|
2576
2556
|
}, {
|
|
2577
2557
|
readonly type: "error";
|
|
@@ -2579,8 +2559,40 @@ declare const RouterABI: readonly [{
|
|
|
2579
2559
|
readonly inputs: readonly [];
|
|
2580
2560
|
}, {
|
|
2581
2561
|
readonly type: "error";
|
|
2582
|
-
readonly name: "
|
|
2562
|
+
readonly name: "WithdrawalNotClaimable";
|
|
2583
2563
|
readonly inputs: readonly [];
|
|
2564
|
+
}, {
|
|
2565
|
+
readonly type: "error";
|
|
2566
|
+
readonly name: "ZeroAmount";
|
|
2567
|
+
readonly inputs: readonly [];
|
|
2568
|
+
}, {
|
|
2569
|
+
readonly type: "error";
|
|
2570
|
+
readonly name: "ReentrancyGuardReentrantCall";
|
|
2571
|
+
readonly inputs: readonly [];
|
|
2572
|
+
}, {
|
|
2573
|
+
readonly type: "error";
|
|
2574
|
+
readonly name: "OwnableInvalidOwner";
|
|
2575
|
+
readonly inputs: readonly [{
|
|
2576
|
+
readonly name: "owner";
|
|
2577
|
+
readonly type: "address";
|
|
2578
|
+
}];
|
|
2579
|
+
}, {
|
|
2580
|
+
readonly type: "error";
|
|
2581
|
+
readonly name: "OwnableUnauthorizedAccount";
|
|
2582
|
+
readonly inputs: readonly [{
|
|
2583
|
+
readonly name: "account";
|
|
2584
|
+
readonly type: "address";
|
|
2585
|
+
}];
|
|
2586
|
+
}, {
|
|
2587
|
+
readonly type: "error";
|
|
2588
|
+
readonly name: "SafeERC20FailedOperation";
|
|
2589
|
+
readonly inputs: readonly [{
|
|
2590
|
+
readonly name: "token";
|
|
2591
|
+
readonly type: "address";
|
|
2592
|
+
}];
|
|
2593
|
+
}, {
|
|
2594
|
+
readonly type: "receive";
|
|
2595
|
+
readonly stateMutability: "payable";
|
|
2584
2596
|
}];
|
|
2585
2597
|
|
|
2586
2598
|
/**
|
|
@@ -2633,4 +2645,4 @@ declare function formatPriceUSD(price: bigint): string;
|
|
|
2633
2645
|
*/
|
|
2634
2646
|
declare function calculateAPY(previousRate: bigint, currentRate: bigint, periodDays: number): number;
|
|
2635
2647
|
|
|
2636
|
-
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
|
|
2648
|
+
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 };
|