@aspan/sdk 0.1.8 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -197,6 +197,200 @@ interface TransactionReceipt {
197
197
  transactionHash: Hash;
198
198
  status: "success" | "reverted";
199
199
  }
200
+ /** Router swap parameters */
201
+ interface RouterSwapParams {
202
+ /** Input token address (address(0) for native BNB) */
203
+ inputToken: Address;
204
+ /** Amount of input token */
205
+ inputAmount: bigint;
206
+ /** Target LST address (address(0) uses default LST) */
207
+ targetLST: Address;
208
+ /** Minimum LST to receive from swap (slippage protection) */
209
+ minLSTOut: bigint;
210
+ /** PancakeSwap V3 pool fee tier (500, 2500, 10000) */
211
+ poolFee: number;
212
+ /** true = PancakeSwap V2, false = V3 */
213
+ useV2: boolean;
214
+ }
215
+ /** Router mint parameters */
216
+ interface RouterMintParams {
217
+ /** true = mint xBNB, false = mint apUSD */
218
+ mintXBNB: boolean;
219
+ /** Minimum output to receive (slippage protection) */
220
+ minMintOut: bigint;
221
+ /** Recipient of minted tokens (address(0) = msg.sender) */
222
+ recipient: Address;
223
+ /** Transaction deadline timestamp */
224
+ deadline: bigint;
225
+ }
226
+ /** Parameters for swapAndMint functions */
227
+ interface SwapAndMintParams {
228
+ swapParams: RouterSwapParams;
229
+ mintParams: RouterMintParams;
230
+ }
231
+ /** Parameters for stakeAndMint function */
232
+ interface StakeAndMintParams {
233
+ /** Target LST (slisBNB, asBNB, wclisBNB) */
234
+ targetLST: Address;
235
+ /** true = mint xBNB, false = mint apUSD */
236
+ isXBNB: boolean;
237
+ /** Minimum output to receive */
238
+ minMintOut: bigint;
239
+ /** Transaction deadline timestamp */
240
+ deadline: bigint;
241
+ /** Native BNB amount to stake */
242
+ value: bigint;
243
+ }
244
+ /** Parameters for simplified swap and mint functions */
245
+ interface SwapAndMintDefaultParams {
246
+ /** Input token address (address(0) for native BNB) */
247
+ inputToken: Address;
248
+ /** Amount of input token */
249
+ inputAmount: bigint;
250
+ /** Minimum output to receive */
251
+ minMintOut: bigint;
252
+ /** Transaction deadline timestamp */
253
+ deadline: bigint;
254
+ /** Native BNB amount (if inputToken is address(0)) */
255
+ value?: bigint;
256
+ }
257
+ /** Parameters for router direct mint functions */
258
+ interface RouterMintApUSDParams {
259
+ /** LST token address */
260
+ lst: Address;
261
+ /** Amount of LST to deposit */
262
+ lstAmount: bigint;
263
+ /** Minimum apUSD to receive */
264
+ minOut?: bigint;
265
+ }
266
+ /** Parameters for router direct mint xBNB functions */
267
+ interface RouterMintXBNBParams {
268
+ /** LST token address */
269
+ lst: Address;
270
+ /** Amount of LST to deposit */
271
+ lstAmount: bigint;
272
+ /** Minimum xBNB to receive */
273
+ minOut?: bigint;
274
+ }
275
+ /** Parameters for router redeem apUSD functions */
276
+ interface RouterRedeemApUSDParams {
277
+ /** LST token to receive */
278
+ lst: Address;
279
+ /** Amount of apUSD to redeem */
280
+ apUSDAmount: bigint;
281
+ /** Minimum LST to receive */
282
+ minOut?: bigint;
283
+ }
284
+ /** Parameters for router redeem xBNB functions */
285
+ interface RouterRedeemXBNBParams {
286
+ /** LST token to receive */
287
+ lst: Address;
288
+ /** Amount of xBNB to redeem */
289
+ xBNBAmount: bigint;
290
+ /** Minimum LST to receive */
291
+ minOut?: bigint;
292
+ }
293
+ /** Parameters for redeemAndSwap functions */
294
+ interface RouterRedeemAndSwapParams {
295
+ /** LST to redeem */
296
+ lst: Address;
297
+ /** Amount to redeem (apUSD or xBNB) */
298
+ amount: bigint;
299
+ /** Output token (address(0) for native BNB) */
300
+ outputToken: Address;
301
+ /** Minimum output to receive */
302
+ minOut: bigint;
303
+ /** Transaction deadline timestamp */
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
+ }
321
+ /** Withdrawal request status */
322
+ interface WithdrawalRequestInfo {
323
+ /** Whether the request can be claimed */
324
+ isClaimable: boolean;
325
+ /** Amount of BNB to receive */
326
+ bnbAmount: bigint;
327
+ }
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
+ /** SwapAndMint event */
336
+ interface SwapAndMintEvent {
337
+ user: Address;
338
+ inputToken: Address;
339
+ inputAmount: bigint;
340
+ targetLST: Address;
341
+ lstAmount: bigint;
342
+ mintedToken: Address;
343
+ mintedAmount: bigint;
344
+ }
345
+ /** StakeAndMint event */
346
+ interface StakeAndMintEvent {
347
+ user: Address;
348
+ bnbAmount: bigint;
349
+ targetLST: Address;
350
+ lstAmount: bigint;
351
+ mintedToken: Address;
352
+ mintedAmount: bigint;
353
+ }
354
+ /** Router Mint event */
355
+ interface RouterMintEvent {
356
+ user: Address;
357
+ lst: Address;
358
+ lstAmount: bigint;
359
+ mintedToken: Address;
360
+ mintedAmount: bigint;
361
+ }
362
+ /** Router Redeem event */
363
+ interface RouterRedeemEvent {
364
+ user: Address;
365
+ redeemedToken: Address;
366
+ redeemedAmount: bigint;
367
+ lst: Address;
368
+ lstAmount: bigint;
369
+ }
370
+ /** RedeemAndSwap event */
371
+ interface RedeemAndSwapEvent {
372
+ user: Address;
373
+ redeemedToken: Address;
374
+ redeemedAmount: bigint;
375
+ lst: Address;
376
+ lstAmount: bigint;
377
+ outputToken: Address;
378
+ outputAmount: bigint;
379
+ }
380
+ /** UnstakeRequested event */
381
+ interface UnstakeRequestedEvent {
382
+ user: Address;
383
+ requestIndex: bigint;
384
+ redeemedToken: Address;
385
+ redeemedAmount: bigint;
386
+ slisBNBAmount: bigint;
387
+ }
388
+ /** UnstakeClaimed event */
389
+ interface UnstakeClaimedEvent {
390
+ user: Address;
391
+ requestIndex: bigint;
392
+ bnbAmount: bigint;
393
+ }
200
394
 
201
395
  interface AspanClientConfig {
202
396
  /** Diamond contract address */
@@ -358,6 +552,185 @@ declare function createAspanTestnetReadClient(diamondAddress: Address, rpcUrl?:
358
552
  */
359
553
  declare function createAspanTestnetClient(diamondAddress: Address, account: Account, rpcUrl?: string): AspanClient;
360
554
 
555
+ interface AspanRouterClientConfig {
556
+ /** Router contract address */
557
+ routerAddress: Address;
558
+ /** Chain to connect to */
559
+ chain?: Chain;
560
+ /** RPC URL (optional, uses default if not provided) */
561
+ rpcUrl?: string;
562
+ }
563
+ interface AspanRouterWriteClientConfig extends AspanRouterClientConfig {
564
+ /** Account for signing transactions (required if walletClient not provided) */
565
+ account?: Account;
566
+ /** External wallet client (for browser environments with wagmi/rainbowkit) */
567
+ walletClient?: WalletClient<Transport, Chain, Account>;
568
+ }
569
+ /**
570
+ * Read-only client for querying AspanRouter state
571
+ */
572
+ declare class AspanRouterReadClient {
573
+ protected readonly publicClient: PublicClient;
574
+ protected readonly routerAddress: Address;
575
+ protected readonly chain: Chain;
576
+ constructor(config: AspanRouterClientConfig);
577
+ /**
578
+ * Get the default LST address
579
+ */
580
+ getDefaultLST(): Promise<Address>;
581
+ /**
582
+ * Check if an input token is supported
583
+ */
584
+ isSupportedInputToken(token: Address): Promise<boolean>;
585
+ /**
586
+ * Check if an LST is supported
587
+ */
588
+ isSupportedLST(lst: Address): Promise<boolean>;
589
+ /**
590
+ * Get the Diamond contract address
591
+ */
592
+ 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
+ /**
602
+ * Preview apUSD mint output for a given LST amount
603
+ */
604
+ previewMintApUSD(lst: Address, lstAmount: bigint): Promise<bigint>;
605
+ /**
606
+ * Preview xBNB mint output for a given LST amount
607
+ */
608
+ previewMintXBNB(lst: Address, lstAmount: bigint): Promise<bigint>;
609
+ /**
610
+ * Preview LST output for redeeming apUSD
611
+ */
612
+ previewRedeemApUSD(lst: Address, apUSDAmount: bigint): Promise<bigint>;
613
+ /**
614
+ * Preview LST output for redeeming xBNB
615
+ */
616
+ previewRedeemXBNB(lst: Address, xBNBAmount: bigint): Promise<bigint>;
617
+ /**
618
+ * Get user's withdrawal request indices
619
+ */
620
+ getUserWithdrawalIndices(user: Address): Promise<bigint[]>;
621
+ /**
622
+ * Get withdrawal request status
623
+ */
624
+ getWithdrawalStatus(requestIndex: bigint): Promise<WithdrawalRequestInfo>;
625
+ getWBNB(): Promise<Address>;
626
+ getUSDT(): Promise<Address>;
627
+ getUSDC(): Promise<Address>;
628
+ getSlisBNB(): Promise<Address>;
629
+ getAsBNB(): Promise<Address>;
630
+ getWclisBNB(): Promise<Address>;
631
+ getApUSD(): Promise<Address>;
632
+ getXBNB(): Promise<Address>;
633
+ }
634
+ /**
635
+ * Full client with write capabilities for AspanRouter
636
+ */
637
+ declare class AspanRouterClient extends AspanRouterReadClient {
638
+ private readonly walletClient;
639
+ constructor(config: AspanRouterWriteClientConfig);
640
+ /**
641
+ * Swap input token to LST and mint apUSD
642
+ */
643
+ swapAndMintApUSD(params: SwapAndMintParams): Promise<Hash>;
644
+ /**
645
+ * Swap input token to LST and mint xBNB
646
+ */
647
+ swapAndMintXBNB(params: SwapAndMintParams): Promise<Hash>;
648
+ /**
649
+ * Stake native BNB directly to LST and mint
650
+ */
651
+ stakeAndMint(params: StakeAndMintParams): Promise<Hash>;
652
+ /**
653
+ * Swap input token and mint apUSD using default LST
654
+ */
655
+ swapAndMintApUSDDefault(params: SwapAndMintDefaultParams): Promise<Hash>;
656
+ /**
657
+ * Swap input token and mint xBNB using default LST
658
+ */
659
+ swapAndMintXBNBDefault(params: SwapAndMintDefaultParams): Promise<Hash>;
660
+ /**
661
+ * Stake native BNB and mint apUSD using default LST
662
+ */
663
+ stakeAndMintApUSD(minMintOut: bigint, value: bigint): Promise<Hash>;
664
+ /**
665
+ * Stake native BNB and mint xBNB using default LST
666
+ */
667
+ stakeAndMintXBNB(minMintOut: bigint, value: bigint): Promise<Hash>;
668
+ /**
669
+ * Mint apUSD by providing LST directly (no swap)
670
+ */
671
+ mintApUSD(params: RouterMintApUSDParams): Promise<Hash>;
672
+ /**
673
+ * Mint xBNB by providing LST directly (no swap)
674
+ */
675
+ mintXBNB(params: RouterMintXBNBParams): Promise<Hash>;
676
+ /**
677
+ * Redeem apUSD for LST (no swap)
678
+ */
679
+ redeemApUSD(params: RouterRedeemApUSDParams): Promise<Hash>;
680
+ /**
681
+ * Redeem xBNB for LST (no swap)
682
+ */
683
+ redeemXBNB(params: RouterRedeemXBNBParams): Promise<Hash>;
684
+ /**
685
+ * Redeem apUSD and swap LST to output token
686
+ */
687
+ redeemApUSDAndSwap(params: RouterRedeemAndSwapParams): Promise<Hash>;
688
+ /**
689
+ * Redeem xBNB and swap LST to output token
690
+ */
691
+ 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
+ /**
701
+ * Redeem apUSD and request native unstake from Lista (starts unbonding period)
702
+ */
703
+ redeemApUSDAndRequestUnstake(apUSDAmount: bigint): Promise<Hash>;
704
+ /**
705
+ * Redeem xBNB and request native unstake from Lista (starts unbonding period)
706
+ */
707
+ redeemXBNBAndRequestUnstake(xBNBAmount: bigint): Promise<Hash>;
708
+ /**
709
+ * Claim BNB after unbonding period completes
710
+ */
711
+ claimUnstake(requestIndex: bigint): Promise<Hash>;
712
+ /**
713
+ * Wait for transaction confirmation
714
+ */
715
+ waitForTransaction(hash: Hash): Promise<viem.TransactionReceipt>;
716
+ }
717
+ /**
718
+ * Create a read-only router client for BSC mainnet
719
+ */
720
+ declare function createRouterReadClient(routerAddress: Address, rpcUrl?: string): AspanRouterReadClient;
721
+ /**
722
+ * Create a full router client for BSC mainnet
723
+ */
724
+ declare function createRouterClient(routerAddress: Address, account: Account, rpcUrl?: string): AspanRouterClient;
725
+ /**
726
+ * Create a read-only router client for BSC testnet
727
+ */
728
+ declare function createRouterTestnetReadClient(routerAddress: Address, rpcUrl?: string): AspanRouterReadClient;
729
+ /**
730
+ * Create a full router client for BSC testnet
731
+ */
732
+ declare function createRouterTestnetClient(routerAddress: Address, account: Account, rpcUrl?: string): AspanRouterClient;
733
+
361
734
  /**
362
735
  * Combined Diamond ABI - includes all facet functions
363
736
  * This ABI is used to interact with the Aspan Diamond contract
@@ -1297,6 +1670,919 @@ declare const DiamondABI: readonly [{
1297
1670
  readonly stateMutability: "view";
1298
1671
  }];
1299
1672
 
1673
+ /**
1674
+ * AspanRouter ABI
1675
+ * Periphery contract for one-click swap+mint operations
1676
+ */
1677
+ declare const RouterABI: readonly [{
1678
+ readonly type: "function";
1679
+ readonly name: "swapAndMintApUSD";
1680
+ readonly inputs: readonly [{
1681
+ readonly name: "swapParams";
1682
+ readonly type: "tuple";
1683
+ readonly components: readonly [{
1684
+ readonly name: "inputToken";
1685
+ readonly type: "address";
1686
+ }, {
1687
+ readonly name: "inputAmount";
1688
+ readonly type: "uint256";
1689
+ }, {
1690
+ readonly name: "targetLST";
1691
+ readonly type: "address";
1692
+ }, {
1693
+ readonly name: "minLSTOut";
1694
+ readonly type: "uint256";
1695
+ }, {
1696
+ readonly name: "poolFee";
1697
+ readonly type: "uint24";
1698
+ }, {
1699
+ readonly name: "useV2";
1700
+ readonly type: "bool";
1701
+ }];
1702
+ }, {
1703
+ readonly name: "mintParams";
1704
+ readonly type: "tuple";
1705
+ readonly components: readonly [{
1706
+ readonly name: "mintXBNB";
1707
+ readonly type: "bool";
1708
+ }, {
1709
+ readonly name: "minMintOut";
1710
+ readonly type: "uint256";
1711
+ }, {
1712
+ readonly name: "recipient";
1713
+ readonly type: "address";
1714
+ }, {
1715
+ readonly name: "deadline";
1716
+ readonly type: "uint256";
1717
+ }];
1718
+ }];
1719
+ readonly outputs: readonly [{
1720
+ readonly name: "lstAmount";
1721
+ readonly type: "uint256";
1722
+ }, {
1723
+ readonly name: "apUSDAmount";
1724
+ readonly type: "uint256";
1725
+ }];
1726
+ readonly stateMutability: "payable";
1727
+ }, {
1728
+ readonly type: "function";
1729
+ readonly name: "swapAndMintXBNB";
1730
+ readonly inputs: readonly [{
1731
+ readonly name: "swapParams";
1732
+ readonly type: "tuple";
1733
+ readonly components: readonly [{
1734
+ readonly name: "inputToken";
1735
+ readonly type: "address";
1736
+ }, {
1737
+ readonly name: "inputAmount";
1738
+ readonly type: "uint256";
1739
+ }, {
1740
+ readonly name: "targetLST";
1741
+ readonly type: "address";
1742
+ }, {
1743
+ readonly name: "minLSTOut";
1744
+ readonly type: "uint256";
1745
+ }, {
1746
+ readonly name: "poolFee";
1747
+ readonly type: "uint24";
1748
+ }, {
1749
+ readonly name: "useV2";
1750
+ readonly type: "bool";
1751
+ }];
1752
+ }, {
1753
+ readonly name: "mintParams";
1754
+ readonly type: "tuple";
1755
+ readonly components: readonly [{
1756
+ readonly name: "mintXBNB";
1757
+ readonly type: "bool";
1758
+ }, {
1759
+ readonly name: "minMintOut";
1760
+ readonly type: "uint256";
1761
+ }, {
1762
+ readonly name: "recipient";
1763
+ readonly type: "address";
1764
+ }, {
1765
+ readonly name: "deadline";
1766
+ readonly type: "uint256";
1767
+ }];
1768
+ }];
1769
+ readonly outputs: readonly [{
1770
+ readonly name: "lstAmount";
1771
+ readonly type: "uint256";
1772
+ }, {
1773
+ readonly name: "xBNBAmount";
1774
+ readonly type: "uint256";
1775
+ }];
1776
+ readonly stateMutability: "payable";
1777
+ }, {
1778
+ readonly type: "function";
1779
+ readonly name: "stakeAndMint";
1780
+ readonly inputs: readonly [{
1781
+ readonly name: "targetLST";
1782
+ readonly type: "address";
1783
+ }, {
1784
+ readonly name: "isXBNB";
1785
+ readonly type: "bool";
1786
+ }, {
1787
+ readonly name: "minMintOut";
1788
+ readonly type: "uint256";
1789
+ }, {
1790
+ readonly name: "deadline";
1791
+ readonly type: "uint256";
1792
+ }];
1793
+ readonly outputs: readonly [{
1794
+ readonly name: "lstAmount";
1795
+ readonly type: "uint256";
1796
+ }, {
1797
+ readonly name: "mintedAmount";
1798
+ readonly type: "uint256";
1799
+ }];
1800
+ readonly stateMutability: "payable";
1801
+ }, {
1802
+ readonly type: "function";
1803
+ readonly name: "swapAndMintApUSDDefault";
1804
+ readonly inputs: readonly [{
1805
+ readonly name: "inputToken";
1806
+ readonly type: "address";
1807
+ }, {
1808
+ readonly name: "inputAmount";
1809
+ readonly type: "uint256";
1810
+ }, {
1811
+ readonly name: "minMintOut";
1812
+ readonly type: "uint256";
1813
+ }, {
1814
+ readonly name: "deadline";
1815
+ readonly type: "uint256";
1816
+ }];
1817
+ readonly outputs: readonly [{
1818
+ readonly name: "apUSDAmount";
1819
+ readonly type: "uint256";
1820
+ }];
1821
+ readonly stateMutability: "payable";
1822
+ }, {
1823
+ readonly type: "function";
1824
+ readonly name: "swapAndMintXBNBDefault";
1825
+ readonly inputs: readonly [{
1826
+ readonly name: "inputToken";
1827
+ readonly type: "address";
1828
+ }, {
1829
+ readonly name: "inputAmount";
1830
+ readonly type: "uint256";
1831
+ }, {
1832
+ readonly name: "minMintOut";
1833
+ readonly type: "uint256";
1834
+ }, {
1835
+ readonly name: "deadline";
1836
+ readonly type: "uint256";
1837
+ }];
1838
+ readonly outputs: readonly [{
1839
+ readonly name: "xBNBAmount";
1840
+ readonly type: "uint256";
1841
+ }];
1842
+ readonly stateMutability: "payable";
1843
+ }, {
1844
+ readonly type: "function";
1845
+ readonly name: "stakeAndMintApUSD";
1846
+ readonly inputs: readonly [{
1847
+ readonly name: "minMintOut";
1848
+ readonly type: "uint256";
1849
+ }];
1850
+ readonly outputs: readonly [{
1851
+ readonly name: "apUSDAmount";
1852
+ readonly type: "uint256";
1853
+ }];
1854
+ readonly stateMutability: "payable";
1855
+ }, {
1856
+ readonly type: "function";
1857
+ readonly name: "stakeAndMintXBNB";
1858
+ readonly inputs: readonly [{
1859
+ readonly name: "minMintOut";
1860
+ readonly type: "uint256";
1861
+ }];
1862
+ readonly outputs: readonly [{
1863
+ readonly name: "xBNBAmount";
1864
+ readonly type: "uint256";
1865
+ }];
1866
+ readonly stateMutability: "payable";
1867
+ }, {
1868
+ readonly type: "function";
1869
+ readonly name: "mintApUSD";
1870
+ readonly inputs: readonly [{
1871
+ readonly name: "lst";
1872
+ readonly type: "address";
1873
+ }, {
1874
+ readonly name: "lstAmount";
1875
+ readonly type: "uint256";
1876
+ }, {
1877
+ readonly name: "minOut";
1878
+ readonly type: "uint256";
1879
+ }];
1880
+ readonly outputs: readonly [{
1881
+ readonly name: "apUSDAmount";
1882
+ readonly type: "uint256";
1883
+ }];
1884
+ readonly stateMutability: "nonpayable";
1885
+ }, {
1886
+ readonly type: "function";
1887
+ readonly name: "mintXBNB";
1888
+ readonly inputs: readonly [{
1889
+ readonly name: "lst";
1890
+ readonly type: "address";
1891
+ }, {
1892
+ readonly name: "lstAmount";
1893
+ readonly type: "uint256";
1894
+ }, {
1895
+ readonly name: "minOut";
1896
+ readonly type: "uint256";
1897
+ }];
1898
+ readonly outputs: readonly [{
1899
+ readonly name: "xBNBAmount";
1900
+ readonly type: "uint256";
1901
+ }];
1902
+ readonly stateMutability: "nonpayable";
1903
+ }, {
1904
+ readonly type: "function";
1905
+ readonly name: "redeemApUSD";
1906
+ readonly inputs: readonly [{
1907
+ readonly name: "lst";
1908
+ readonly type: "address";
1909
+ }, {
1910
+ readonly name: "apUSDAmount";
1911
+ readonly type: "uint256";
1912
+ }, {
1913
+ readonly name: "minOut";
1914
+ readonly type: "uint256";
1915
+ }];
1916
+ readonly outputs: readonly [{
1917
+ readonly name: "lstAmount";
1918
+ readonly type: "uint256";
1919
+ }];
1920
+ readonly stateMutability: "nonpayable";
1921
+ }, {
1922
+ readonly type: "function";
1923
+ readonly name: "redeemXBNB";
1924
+ readonly inputs: readonly [{
1925
+ readonly name: "lst";
1926
+ readonly type: "address";
1927
+ }, {
1928
+ readonly name: "xBNBAmount";
1929
+ readonly type: "uint256";
1930
+ }, {
1931
+ readonly name: "minOut";
1932
+ readonly type: "uint256";
1933
+ }];
1934
+ readonly outputs: readonly [{
1935
+ readonly name: "lstAmount";
1936
+ readonly type: "uint256";
1937
+ }];
1938
+ readonly stateMutability: "nonpayable";
1939
+ }, {
1940
+ readonly type: "function";
1941
+ readonly name: "redeemApUSDAndSwap";
1942
+ readonly inputs: readonly [{
1943
+ readonly name: "lst";
1944
+ readonly type: "address";
1945
+ }, {
1946
+ readonly name: "apUSDAmount";
1947
+ readonly type: "uint256";
1948
+ }, {
1949
+ readonly name: "outputToken";
1950
+ readonly type: "address";
1951
+ }, {
1952
+ readonly name: "minOut";
1953
+ readonly type: "uint256";
1954
+ }, {
1955
+ readonly name: "deadline";
1956
+ readonly type: "uint256";
1957
+ }, {
1958
+ readonly name: "useV2";
1959
+ readonly type: "bool";
1960
+ }, {
1961
+ readonly name: "poolFee";
1962
+ readonly type: "uint24";
1963
+ }];
1964
+ readonly outputs: readonly [{
1965
+ readonly name: "outputAmount";
1966
+ readonly type: "uint256";
1967
+ }];
1968
+ readonly stateMutability: "nonpayable";
1969
+ }, {
1970
+ readonly type: "function";
1971
+ readonly name: "redeemXBNBAndSwap";
1972
+ readonly inputs: readonly [{
1973
+ readonly name: "lst";
1974
+ readonly type: "address";
1975
+ }, {
1976
+ readonly name: "xBNBAmount";
1977
+ readonly type: "uint256";
1978
+ }, {
1979
+ readonly name: "outputToken";
1980
+ readonly type: "address";
1981
+ }, {
1982
+ readonly name: "minOut";
1983
+ readonly type: "uint256";
1984
+ }, {
1985
+ readonly name: "deadline";
1986
+ readonly type: "uint256";
1987
+ }, {
1988
+ readonly name: "useV2";
1989
+ readonly type: "bool";
1990
+ }, {
1991
+ readonly name: "poolFee";
1992
+ readonly type: "uint24";
1993
+ }];
1994
+ readonly outputs: readonly [{
1995
+ readonly name: "outputAmount";
1996
+ readonly type: "uint256";
1997
+ }];
1998
+ 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
+ }, {
2042
+ readonly type: "function";
2043
+ readonly name: "redeemApUSDAndRequestUnstake";
2044
+ readonly inputs: readonly [{
2045
+ readonly name: "apUSDAmount";
2046
+ readonly type: "uint256";
2047
+ }];
2048
+ readonly outputs: readonly [{
2049
+ readonly name: "requestIndex";
2050
+ readonly type: "uint256";
2051
+ }, {
2052
+ readonly name: "slisBNBAmount";
2053
+ readonly type: "uint256";
2054
+ }];
2055
+ readonly stateMutability: "nonpayable";
2056
+ }, {
2057
+ readonly type: "function";
2058
+ readonly name: "redeemXBNBAndRequestUnstake";
2059
+ readonly inputs: readonly [{
2060
+ readonly name: "xBNBAmount";
2061
+ readonly type: "uint256";
2062
+ }];
2063
+ readonly outputs: readonly [{
2064
+ readonly name: "requestIndex";
2065
+ readonly type: "uint256";
2066
+ }, {
2067
+ readonly name: "slisBNBAmount";
2068
+ readonly type: "uint256";
2069
+ }];
2070
+ readonly stateMutability: "nonpayable";
2071
+ }, {
2072
+ readonly type: "function";
2073
+ readonly name: "claimUnstake";
2074
+ readonly inputs: readonly [{
2075
+ readonly name: "requestIndex";
2076
+ readonly type: "uint256";
2077
+ }];
2078
+ readonly outputs: readonly [{
2079
+ readonly name: "bnbAmount";
2080
+ readonly type: "uint256";
2081
+ }];
2082
+ readonly stateMutability: "nonpayable";
2083
+ }, {
2084
+ readonly type: "function";
2085
+ readonly name: "defaultLST";
2086
+ readonly inputs: readonly [];
2087
+ readonly outputs: readonly [{
2088
+ readonly name: "";
2089
+ readonly type: "address";
2090
+ }];
2091
+ readonly stateMutability: "view";
2092
+ }, {
2093
+ readonly type: "function";
2094
+ readonly name: "supportedInputTokens";
2095
+ readonly inputs: readonly [{
2096
+ readonly name: "token";
2097
+ readonly type: "address";
2098
+ }];
2099
+ readonly outputs: readonly [{
2100
+ readonly name: "";
2101
+ readonly type: "bool";
2102
+ }];
2103
+ readonly stateMutability: "view";
2104
+ }, {
2105
+ readonly type: "function";
2106
+ readonly name: "supportedLSTs";
2107
+ readonly inputs: readonly [{
2108
+ readonly name: "lst";
2109
+ readonly type: "address";
2110
+ }];
2111
+ readonly outputs: readonly [{
2112
+ readonly name: "";
2113
+ readonly type: "bool";
2114
+ }];
2115
+ readonly stateMutability: "view";
2116
+ }, {
2117
+ readonly type: "function";
2118
+ readonly name: "diamond";
2119
+ readonly inputs: readonly [];
2120
+ readonly outputs: readonly [{
2121
+ readonly name: "";
2122
+ readonly type: "address";
2123
+ }];
2124
+ readonly stateMutability: "view";
2125
+ }, {
2126
+ readonly type: "function";
2127
+ readonly name: "getExpectedMintOutput";
2128
+ readonly inputs: readonly [{
2129
+ readonly name: "inputToken";
2130
+ readonly type: "address";
2131
+ }, {
2132
+ readonly name: "inputAmount";
2133
+ readonly type: "uint256";
2134
+ }, {
2135
+ readonly name: "targetLST";
2136
+ readonly type: "address";
2137
+ }, {
2138
+ readonly name: "isXBNB";
2139
+ readonly type: "bool";
2140
+ }];
2141
+ readonly outputs: readonly [{
2142
+ readonly name: "expectedLST";
2143
+ readonly type: "uint256";
2144
+ }, {
2145
+ readonly name: "expectedMint";
2146
+ readonly type: "uint256";
2147
+ }];
2148
+ readonly stateMutability: "view";
2149
+ }, {
2150
+ readonly type: "function";
2151
+ readonly name: "getExpectedRedeemOutput";
2152
+ readonly inputs: readonly [{
2153
+ readonly name: "isXBNB";
2154
+ readonly type: "bool";
2155
+ }, {
2156
+ readonly name: "redeemAmount";
2157
+ readonly type: "uint256";
2158
+ }, {
2159
+ readonly name: "lst";
2160
+ readonly type: "address";
2161
+ }, {
2162
+ readonly name: "outputToken";
2163
+ readonly type: "address";
2164
+ }];
2165
+ readonly outputs: readonly [{
2166
+ readonly name: "expectedLST";
2167
+ readonly type: "uint256";
2168
+ }, {
2169
+ readonly name: "expectedOutput";
2170
+ readonly type: "uint256";
2171
+ }];
2172
+ readonly stateMutability: "view";
2173
+ }, {
2174
+ readonly type: "function";
2175
+ readonly name: "previewMintApUSD";
2176
+ readonly inputs: readonly [{
2177
+ readonly name: "lst";
2178
+ readonly type: "address";
2179
+ }, {
2180
+ readonly name: "lstAmount";
2181
+ readonly type: "uint256";
2182
+ }];
2183
+ readonly outputs: readonly [{
2184
+ readonly name: "apUSDAmount";
2185
+ readonly type: "uint256";
2186
+ }];
2187
+ readonly stateMutability: "view";
2188
+ }, {
2189
+ readonly type: "function";
2190
+ readonly name: "previewMintXBNB";
2191
+ readonly inputs: readonly [{
2192
+ readonly name: "lst";
2193
+ readonly type: "address";
2194
+ }, {
2195
+ readonly name: "lstAmount";
2196
+ readonly type: "uint256";
2197
+ }];
2198
+ readonly outputs: readonly [{
2199
+ readonly name: "xBNBAmount";
2200
+ readonly type: "uint256";
2201
+ }];
2202
+ readonly stateMutability: "view";
2203
+ }, {
2204
+ readonly type: "function";
2205
+ readonly name: "previewRedeemApUSD";
2206
+ readonly inputs: readonly [{
2207
+ readonly name: "lst";
2208
+ readonly type: "address";
2209
+ }, {
2210
+ readonly name: "apUSDAmount";
2211
+ readonly type: "uint256";
2212
+ }];
2213
+ readonly outputs: readonly [{
2214
+ readonly name: "lstAmount";
2215
+ readonly type: "uint256";
2216
+ }];
2217
+ readonly stateMutability: "view";
2218
+ }, {
2219
+ readonly type: "function";
2220
+ readonly name: "previewRedeemXBNB";
2221
+ readonly inputs: readonly [{
2222
+ readonly name: "lst";
2223
+ readonly type: "address";
2224
+ }, {
2225
+ readonly name: "xBNBAmount";
2226
+ readonly type: "uint256";
2227
+ }];
2228
+ readonly outputs: readonly [{
2229
+ readonly name: "lstAmount";
2230
+ readonly type: "uint256";
2231
+ }];
2232
+ readonly stateMutability: "view";
2233
+ }, {
2234
+ readonly type: "function";
2235
+ readonly name: "getUserWithdrawalIndices";
2236
+ readonly inputs: readonly [{
2237
+ readonly name: "user";
2238
+ readonly type: "address";
2239
+ }];
2240
+ readonly outputs: readonly [{
2241
+ readonly name: "";
2242
+ readonly type: "uint256[]";
2243
+ }];
2244
+ readonly stateMutability: "view";
2245
+ }, {
2246
+ readonly type: "function";
2247
+ readonly name: "getWithdrawalStatus";
2248
+ readonly inputs: readonly [{
2249
+ readonly name: "requestIndex";
2250
+ readonly type: "uint256";
2251
+ }];
2252
+ readonly outputs: readonly [{
2253
+ readonly name: "isClaimable";
2254
+ readonly type: "bool";
2255
+ }, {
2256
+ readonly name: "bnbAmount";
2257
+ readonly type: "uint256";
2258
+ }];
2259
+ readonly stateMutability: "view";
2260
+ }, {
2261
+ readonly type: "function";
2262
+ readonly name: "wbnb";
2263
+ readonly inputs: readonly [];
2264
+ readonly outputs: readonly [{
2265
+ readonly name: "";
2266
+ readonly type: "address";
2267
+ }];
2268
+ readonly stateMutability: "view";
2269
+ }, {
2270
+ readonly type: "function";
2271
+ readonly name: "usdt";
2272
+ readonly inputs: readonly [];
2273
+ readonly outputs: readonly [{
2274
+ readonly name: "";
2275
+ readonly type: "address";
2276
+ }];
2277
+ readonly stateMutability: "view";
2278
+ }, {
2279
+ readonly type: "function";
2280
+ readonly name: "usdc";
2281
+ readonly inputs: readonly [];
2282
+ readonly outputs: readonly [{
2283
+ readonly name: "";
2284
+ readonly type: "address";
2285
+ }];
2286
+ readonly stateMutability: "view";
2287
+ }, {
2288
+ readonly type: "function";
2289
+ readonly name: "slisBNB";
2290
+ readonly inputs: readonly [];
2291
+ readonly outputs: readonly [{
2292
+ readonly name: "";
2293
+ readonly type: "address";
2294
+ }];
2295
+ readonly stateMutability: "view";
2296
+ }, {
2297
+ readonly type: "function";
2298
+ readonly name: "asBNB";
2299
+ readonly inputs: readonly [];
2300
+ readonly outputs: readonly [{
2301
+ readonly name: "";
2302
+ readonly type: "address";
2303
+ }];
2304
+ readonly stateMutability: "view";
2305
+ }, {
2306
+ readonly type: "function";
2307
+ readonly name: "wclisBNB";
2308
+ readonly inputs: readonly [];
2309
+ readonly outputs: readonly [{
2310
+ readonly name: "";
2311
+ readonly type: "address";
2312
+ }];
2313
+ readonly stateMutability: "view";
2314
+ }, {
2315
+ readonly type: "function";
2316
+ readonly name: "apUSD";
2317
+ readonly inputs: readonly [];
2318
+ readonly outputs: readonly [{
2319
+ readonly name: "";
2320
+ readonly type: "address";
2321
+ }];
2322
+ readonly stateMutability: "view";
2323
+ }, {
2324
+ readonly type: "function";
2325
+ readonly name: "xBNB";
2326
+ readonly inputs: readonly [];
2327
+ readonly outputs: readonly [{
2328
+ readonly name: "";
2329
+ readonly type: "address";
2330
+ }];
2331
+ readonly stateMutability: "view";
2332
+ }, {
2333
+ readonly type: "event";
2334
+ readonly name: "SwapAndMint";
2335
+ readonly inputs: readonly [{
2336
+ readonly name: "user";
2337
+ readonly type: "address";
2338
+ readonly indexed: true;
2339
+ }, {
2340
+ readonly name: "inputToken";
2341
+ readonly type: "address";
2342
+ readonly indexed: true;
2343
+ }, {
2344
+ readonly name: "inputAmount";
2345
+ readonly type: "uint256";
2346
+ readonly indexed: false;
2347
+ }, {
2348
+ readonly name: "targetLST";
2349
+ readonly type: "address";
2350
+ readonly indexed: true;
2351
+ }, {
2352
+ readonly name: "lstAmount";
2353
+ readonly type: "uint256";
2354
+ readonly indexed: false;
2355
+ }, {
2356
+ readonly name: "mintedToken";
2357
+ readonly type: "address";
2358
+ readonly indexed: false;
2359
+ }, {
2360
+ readonly name: "mintedAmount";
2361
+ readonly type: "uint256";
2362
+ readonly indexed: false;
2363
+ }];
2364
+ }, {
2365
+ readonly type: "event";
2366
+ readonly name: "StakeAndMint";
2367
+ readonly inputs: readonly [{
2368
+ readonly name: "user";
2369
+ readonly type: "address";
2370
+ readonly indexed: true;
2371
+ }, {
2372
+ readonly name: "bnbAmount";
2373
+ readonly type: "uint256";
2374
+ readonly indexed: false;
2375
+ }, {
2376
+ readonly name: "targetLST";
2377
+ readonly type: "address";
2378
+ readonly indexed: true;
2379
+ }, {
2380
+ readonly name: "lstAmount";
2381
+ readonly type: "uint256";
2382
+ readonly indexed: false;
2383
+ }, {
2384
+ readonly name: "mintedToken";
2385
+ readonly type: "address";
2386
+ readonly indexed: true;
2387
+ }, {
2388
+ readonly name: "mintedAmount";
2389
+ readonly type: "uint256";
2390
+ readonly indexed: false;
2391
+ }];
2392
+ }, {
2393
+ readonly type: "event";
2394
+ readonly name: "Mint";
2395
+ readonly inputs: readonly [{
2396
+ readonly name: "user";
2397
+ readonly type: "address";
2398
+ readonly indexed: true;
2399
+ }, {
2400
+ readonly name: "lst";
2401
+ readonly type: "address";
2402
+ readonly indexed: true;
2403
+ }, {
2404
+ readonly name: "lstAmount";
2405
+ readonly type: "uint256";
2406
+ readonly indexed: false;
2407
+ }, {
2408
+ readonly name: "mintedToken";
2409
+ readonly type: "address";
2410
+ readonly indexed: true;
2411
+ }, {
2412
+ readonly name: "mintedAmount";
2413
+ readonly type: "uint256";
2414
+ readonly indexed: false;
2415
+ }];
2416
+ }, {
2417
+ readonly type: "event";
2418
+ readonly name: "Redeem";
2419
+ readonly inputs: readonly [{
2420
+ readonly name: "user";
2421
+ readonly type: "address";
2422
+ readonly indexed: true;
2423
+ }, {
2424
+ readonly name: "redeemedToken";
2425
+ readonly type: "address";
2426
+ readonly indexed: true;
2427
+ }, {
2428
+ readonly name: "redeemedAmount";
2429
+ readonly type: "uint256";
2430
+ readonly indexed: false;
2431
+ }, {
2432
+ readonly name: "lst";
2433
+ readonly type: "address";
2434
+ readonly indexed: true;
2435
+ }, {
2436
+ readonly name: "lstAmount";
2437
+ readonly type: "uint256";
2438
+ readonly indexed: false;
2439
+ }];
2440
+ }, {
2441
+ readonly type: "event";
2442
+ readonly name: "RedeemAndSwap";
2443
+ readonly inputs: readonly [{
2444
+ readonly name: "user";
2445
+ readonly type: "address";
2446
+ readonly indexed: true;
2447
+ }, {
2448
+ readonly name: "redeemedToken";
2449
+ readonly type: "address";
2450
+ readonly indexed: false;
2451
+ }, {
2452
+ readonly name: "redeemedAmount";
2453
+ readonly type: "uint256";
2454
+ readonly indexed: false;
2455
+ }, {
2456
+ readonly name: "lst";
2457
+ readonly type: "address";
2458
+ readonly indexed: false;
2459
+ }, {
2460
+ readonly name: "lstAmount";
2461
+ readonly type: "uint256";
2462
+ readonly indexed: false;
2463
+ }, {
2464
+ readonly name: "outputToken";
2465
+ readonly type: "address";
2466
+ readonly indexed: true;
2467
+ }, {
2468
+ readonly name: "outputAmount";
2469
+ readonly type: "uint256";
2470
+ readonly indexed: false;
2471
+ }];
2472
+ }, {
2473
+ readonly type: "event";
2474
+ readonly name: "UnstakeRequested";
2475
+ readonly inputs: readonly [{
2476
+ readonly name: "user";
2477
+ readonly type: "address";
2478
+ readonly indexed: true;
2479
+ }, {
2480
+ readonly name: "requestIndex";
2481
+ readonly type: "uint256";
2482
+ readonly indexed: true;
2483
+ }, {
2484
+ readonly name: "redeemedToken";
2485
+ readonly type: "address";
2486
+ readonly indexed: false;
2487
+ }, {
2488
+ readonly name: "redeemedAmount";
2489
+ readonly type: "uint256";
2490
+ readonly indexed: false;
2491
+ }, {
2492
+ readonly name: "slisBNBAmount";
2493
+ readonly type: "uint256";
2494
+ readonly indexed: false;
2495
+ }];
2496
+ }, {
2497
+ readonly type: "event";
2498
+ readonly name: "UnstakeClaimed";
2499
+ readonly inputs: readonly [{
2500
+ readonly name: "user";
2501
+ readonly type: "address";
2502
+ readonly indexed: true;
2503
+ }, {
2504
+ readonly name: "requestIndex";
2505
+ readonly type: "uint256";
2506
+ readonly indexed: true;
2507
+ }, {
2508
+ readonly name: "bnbAmount";
2509
+ readonly type: "uint256";
2510
+ readonly indexed: false;
2511
+ }];
2512
+ }, {
2513
+ readonly type: "event";
2514
+ readonly name: "DefaultLSTUpdated";
2515
+ readonly inputs: readonly [{
2516
+ readonly name: "oldLST";
2517
+ readonly type: "address";
2518
+ readonly indexed: true;
2519
+ }, {
2520
+ readonly name: "newLST";
2521
+ readonly type: "address";
2522
+ readonly indexed: true;
2523
+ }];
2524
+ }, {
2525
+ readonly type: "error";
2526
+ readonly name: "UnsupportedInputToken";
2527
+ readonly inputs: readonly [];
2528
+ }, {
2529
+ readonly type: "error";
2530
+ readonly name: "UnsupportedLST";
2531
+ readonly inputs: readonly [];
2532
+ }, {
2533
+ readonly type: "error";
2534
+ readonly name: "DeadlineExpired";
2535
+ readonly inputs: readonly [];
2536
+ }, {
2537
+ readonly type: "error";
2538
+ readonly name: "InsufficientOutput";
2539
+ readonly inputs: readonly [];
2540
+ }, {
2541
+ readonly type: "error";
2542
+ readonly name: "ZeroAmount";
2543
+ readonly inputs: readonly [];
2544
+ }, {
2545
+ readonly type: "error";
2546
+ readonly name: "InvalidRecipient";
2547
+ readonly inputs: readonly [];
2548
+ }, {
2549
+ readonly type: "error";
2550
+ readonly name: "SwapFailed";
2551
+ readonly inputs: readonly [];
2552
+ }, {
2553
+ readonly type: "error";
2554
+ readonly name: "MintFailed";
2555
+ readonly inputs: readonly [];
2556
+ }, {
2557
+ readonly type: "error";
2558
+ readonly name: "NativeTransferFailed";
2559
+ readonly inputs: readonly [];
2560
+ }, {
2561
+ readonly type: "error";
2562
+ readonly name: "InvalidPoolFee";
2563
+ readonly inputs: readonly [];
2564
+ }, {
2565
+ readonly type: "error";
2566
+ readonly name: "DefaultLSTNotSet";
2567
+ readonly inputs: readonly [];
2568
+ }, {
2569
+ readonly type: "error";
2570
+ readonly name: "InvalidWithdrawalRequest";
2571
+ readonly inputs: readonly [];
2572
+ }, {
2573
+ readonly type: "error";
2574
+ readonly name: "WithdrawalNotClaimable";
2575
+ readonly inputs: readonly [];
2576
+ }, {
2577
+ readonly type: "error";
2578
+ readonly name: "WithdrawalAlreadyClaimed";
2579
+ readonly inputs: readonly [];
2580
+ }, {
2581
+ readonly type: "error";
2582
+ readonly name: "OnlySlisBNBSupported";
2583
+ readonly inputs: readonly [];
2584
+ }];
2585
+
1300
2586
  /**
1301
2587
  * Aspan SDK
1302
2588
  * TypeScript SDK for interacting with the Aspan Protocol on BNB Chain
@@ -1347,4 +2633,4 @@ declare function formatPriceUSD(price: bigint): string;
1347
2633
  */
1348
2634
  declare function calculateAPY(previousRate: bigint, currentRate: bigint, periodDays: number): number;
1349
2635
 
1350
- export { type ApUSDMintedEvent, type ApUSDRedeemedEvent, AspanClient, type AspanClientConfig, AspanReadClient, 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 RedeemApUSDParams, type RedeemXBNBParams, type StabilityMode2Info, type StabilityModeInfo, type StabilityPoolStats, type TokenAddresses, type TransactionReceipt, type TransactionResult, type UserStabilityPoolPosition, type WithdrawAssetsParams, type WithdrawParams, type WithdrawnEvent, type XBNBMintedEvent, type XBNBRedeemedEvent, type YieldHarvestedEvent, type YieldStats, calculateAPY, createAspanClient, createAspanReadClient, createAspanTestnetClient, createAspanTestnetReadClient, formatAmount, formatCR, formatFeeBPS, formatPriceUSD, parseAmount };
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 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 };