voxelithic-interfaces 0.6.0 → 0.7.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 +11 -3
- package/dist/abi.d.ts +484 -0
- package/dist/abi.js +1 -0
- package/dist/addresses.d.ts +13 -2
- package/dist/addresses.js +13 -2
- package/package.json +3 -2
- package/src/abi.ts +2 -0
- package/src/addresses.ts +15 -2
- package/tsconfig.json +13 -0
package/README.md
CHANGED
|
@@ -49,10 +49,12 @@ The full picture of what else carries these tickers is at
|
|
|
49
49
|
| `CHAIN_ID` | 4663 |
|
|
50
50
|
| `ROUTER`, `QUOTER` | Uniswap v3 style venues, deployed and verified |
|
|
51
51
|
| `ROUTER_V4`, `QUOTER_V4` | Uniswap v4 singleton branch |
|
|
52
|
+
| `ROUTER_SPLIT` | splits one order across pools of both families in a single transaction |
|
|
52
53
|
| `UNISWAP_V4_SINGLETON` | the v4 pool manager |
|
|
53
54
|
| `TREASURY` | fee recipient; everything it receives is swapped into VOXEL and burned |
|
|
55
|
+
| `VOXEL`, `BURN_SINK` | the bought-back token and the address it is burned to |
|
|
54
56
|
| `TOKENS`, `SYMBOLS`, `addressOf` | canonical token set |
|
|
55
|
-
| `VoxRouterABI`, `VoxQuoterABI`, `VoxRouterV4ABI`, `VoxQuoterV4ABI` | ABIs taken from the Foundry build artifacts, not retyped |
|
|
57
|
+
| `VoxRouterABI`, `VoxQuoterABI`, `VoxRouterV4ABI`, `VoxQuoterV4ABI`, `VoxRouterMixedABI`, `VoxTreasuryV2ABI` | ABIs taken from the Foundry build artifacts, not retyped |
|
|
56
58
|
| `Hop`, `Route`, `Quote`, `PoolKey` | request and response shapes |
|
|
57
59
|
|
|
58
60
|
## Or skip the install
|
|
@@ -105,11 +107,17 @@ fails the run. Both are wired into CI on every push.
|
|
|
105
107
|
| VoxQuoter | `0x9616627E871c96e38cb21b9551F62Ed93366bE1B` |
|
|
106
108
|
| VoxRouterV4 | `0x290b9b46308f7a3B80A5F62214B426d3bfAfaab5` |
|
|
107
109
|
| VoxQuoterV4 | `0x5858F06894623eF4862103A747074E5AA3436d4F` |
|
|
108
|
-
|
|
|
110
|
+
| VoxRouterMixed | `0xda61673A51d6EA2c02C335185399Ddb818bdBC6f` |
|
|
111
|
+
| VoxTreasuryV2 | `0x25A99c317f3125Fc6cd245197028f49CfF56612E` |
|
|
109
112
|
|
|
110
|
-
All
|
|
113
|
+
All six are verified on
|
|
111
114
|
[Blockscout](https://robinhoodchain.blockscout.com/address/0x87cD7EbE8c213455e5e5a8554657D5f294a82e64).
|
|
112
115
|
|
|
116
|
+
`VoxTreasuryV2` replaces the treasury at `0xDfC6004E…`, which routed buybacks
|
|
117
|
+
through the v3 router. There is exactly one v3 pool holding VOXEL on this chain
|
|
118
|
+
and it is empty, so that contract could never complete a buyback. The old
|
|
119
|
+
address stays on chain but no longer receives the fee.
|
|
120
|
+
|
|
113
121
|
## License
|
|
114
122
|
|
|
115
123
|
MIT
|
package/dist/abi.d.ts
CHANGED
|
@@ -1659,3 +1659,487 @@ export declare const VoxRouterMixedABI: readonly [{
|
|
|
1659
1659
|
readonly name: "ZeroAmount";
|
|
1660
1660
|
readonly inputs: readonly [];
|
|
1661
1661
|
}];
|
|
1662
|
+
export declare const VoxTreasuryV2ABI: readonly [{
|
|
1663
|
+
readonly type: "constructor";
|
|
1664
|
+
readonly inputs: readonly [{
|
|
1665
|
+
readonly name: "routerV4";
|
|
1666
|
+
readonly type: "address";
|
|
1667
|
+
readonly internalType: "address";
|
|
1668
|
+
}, {
|
|
1669
|
+
readonly name: "routerSplit";
|
|
1670
|
+
readonly type: "address";
|
|
1671
|
+
readonly internalType: "address";
|
|
1672
|
+
}, {
|
|
1673
|
+
readonly name: "voxel";
|
|
1674
|
+
readonly type: "address";
|
|
1675
|
+
readonly internalType: "address";
|
|
1676
|
+
}, {
|
|
1677
|
+
readonly name: "sink";
|
|
1678
|
+
readonly type: "address";
|
|
1679
|
+
readonly internalType: "address";
|
|
1680
|
+
}, {
|
|
1681
|
+
readonly name: "executor_";
|
|
1682
|
+
readonly type: "address";
|
|
1683
|
+
readonly internalType: "address";
|
|
1684
|
+
}];
|
|
1685
|
+
readonly stateMutability: "nonpayable";
|
|
1686
|
+
}, {
|
|
1687
|
+
readonly type: "function";
|
|
1688
|
+
readonly name: "ROUTER_SPLIT";
|
|
1689
|
+
readonly inputs: readonly [];
|
|
1690
|
+
readonly outputs: readonly [{
|
|
1691
|
+
readonly name: "";
|
|
1692
|
+
readonly type: "address";
|
|
1693
|
+
readonly internalType: "address";
|
|
1694
|
+
}];
|
|
1695
|
+
readonly stateMutability: "view";
|
|
1696
|
+
}, {
|
|
1697
|
+
readonly type: "function";
|
|
1698
|
+
readonly name: "ROUTER_V4";
|
|
1699
|
+
readonly inputs: readonly [];
|
|
1700
|
+
readonly outputs: readonly [{
|
|
1701
|
+
readonly name: "";
|
|
1702
|
+
readonly type: "address";
|
|
1703
|
+
readonly internalType: "address";
|
|
1704
|
+
}];
|
|
1705
|
+
readonly stateMutability: "view";
|
|
1706
|
+
}, {
|
|
1707
|
+
readonly type: "function";
|
|
1708
|
+
readonly name: "SINK";
|
|
1709
|
+
readonly inputs: readonly [];
|
|
1710
|
+
readonly outputs: readonly [{
|
|
1711
|
+
readonly name: "";
|
|
1712
|
+
readonly type: "address";
|
|
1713
|
+
readonly internalType: "address";
|
|
1714
|
+
}];
|
|
1715
|
+
readonly stateMutability: "view";
|
|
1716
|
+
}, {
|
|
1717
|
+
readonly type: "function";
|
|
1718
|
+
readonly name: "VOXEL";
|
|
1719
|
+
readonly inputs: readonly [];
|
|
1720
|
+
readonly outputs: readonly [{
|
|
1721
|
+
readonly name: "";
|
|
1722
|
+
readonly type: "address";
|
|
1723
|
+
readonly internalType: "address";
|
|
1724
|
+
}];
|
|
1725
|
+
readonly stateMutability: "view";
|
|
1726
|
+
}, {
|
|
1727
|
+
readonly type: "function";
|
|
1728
|
+
readonly name: "acceptOwnership";
|
|
1729
|
+
readonly inputs: readonly [];
|
|
1730
|
+
readonly outputs: readonly [];
|
|
1731
|
+
readonly stateMutability: "nonpayable";
|
|
1732
|
+
}, {
|
|
1733
|
+
readonly type: "function";
|
|
1734
|
+
readonly name: "allowedPool";
|
|
1735
|
+
readonly inputs: readonly [{
|
|
1736
|
+
readonly name: "";
|
|
1737
|
+
readonly type: "bytes32";
|
|
1738
|
+
readonly internalType: "bytes32";
|
|
1739
|
+
}];
|
|
1740
|
+
readonly outputs: readonly [{
|
|
1741
|
+
readonly name: "";
|
|
1742
|
+
readonly type: "bool";
|
|
1743
|
+
readonly internalType: "bool";
|
|
1744
|
+
}];
|
|
1745
|
+
readonly stateMutability: "view";
|
|
1746
|
+
}, {
|
|
1747
|
+
readonly type: "function";
|
|
1748
|
+
readonly name: "burnVoxel";
|
|
1749
|
+
readonly inputs: readonly [];
|
|
1750
|
+
readonly outputs: readonly [{
|
|
1751
|
+
readonly name: "amount";
|
|
1752
|
+
readonly type: "uint256";
|
|
1753
|
+
readonly internalType: "uint256";
|
|
1754
|
+
}];
|
|
1755
|
+
readonly stateMutability: "nonpayable";
|
|
1756
|
+
}, {
|
|
1757
|
+
readonly type: "function";
|
|
1758
|
+
readonly name: "buybackSplit";
|
|
1759
|
+
readonly inputs: readonly [{
|
|
1760
|
+
readonly name: "tokenIn";
|
|
1761
|
+
readonly type: "address";
|
|
1762
|
+
readonly internalType: "address";
|
|
1763
|
+
}, {
|
|
1764
|
+
readonly name: "minOut";
|
|
1765
|
+
readonly type: "uint256";
|
|
1766
|
+
readonly internalType: "uint256";
|
|
1767
|
+
}, {
|
|
1768
|
+
readonly name: "deadline";
|
|
1769
|
+
readonly type: "uint256";
|
|
1770
|
+
readonly internalType: "uint256";
|
|
1771
|
+
}, {
|
|
1772
|
+
readonly name: "legs3";
|
|
1773
|
+
readonly type: "tuple[]";
|
|
1774
|
+
readonly internalType: "struct IVoxRouterMixed.LegV3[]";
|
|
1775
|
+
readonly components: readonly [{
|
|
1776
|
+
readonly name: "amountIn";
|
|
1777
|
+
readonly type: "uint256";
|
|
1778
|
+
readonly internalType: "uint256";
|
|
1779
|
+
}, {
|
|
1780
|
+
readonly name: "hops";
|
|
1781
|
+
readonly type: "tuple[]";
|
|
1782
|
+
readonly internalType: "struct IVoxRouterMixed.HopV3[]";
|
|
1783
|
+
readonly components: readonly [{
|
|
1784
|
+
readonly name: "kind";
|
|
1785
|
+
readonly type: "uint8";
|
|
1786
|
+
readonly internalType: "uint8";
|
|
1787
|
+
}, {
|
|
1788
|
+
readonly name: "pool";
|
|
1789
|
+
readonly type: "address";
|
|
1790
|
+
readonly internalType: "address";
|
|
1791
|
+
}, {
|
|
1792
|
+
readonly name: "zeroForOne";
|
|
1793
|
+
readonly type: "bool";
|
|
1794
|
+
readonly internalType: "bool";
|
|
1795
|
+
}, {
|
|
1796
|
+
readonly name: "feePpm";
|
|
1797
|
+
readonly type: "uint24";
|
|
1798
|
+
readonly internalType: "uint24";
|
|
1799
|
+
}];
|
|
1800
|
+
}];
|
|
1801
|
+
}, {
|
|
1802
|
+
readonly name: "legs4";
|
|
1803
|
+
readonly type: "tuple[]";
|
|
1804
|
+
readonly internalType: "struct IVoxRouterMixed.LegV4[]";
|
|
1805
|
+
readonly components: readonly [{
|
|
1806
|
+
readonly name: "amountIn";
|
|
1807
|
+
readonly type: "uint256";
|
|
1808
|
+
readonly internalType: "uint256";
|
|
1809
|
+
}, {
|
|
1810
|
+
readonly name: "hops";
|
|
1811
|
+
readonly type: "tuple[]";
|
|
1812
|
+
readonly internalType: "struct IVoxRouterMixed.HopV4[]";
|
|
1813
|
+
readonly components: readonly [{
|
|
1814
|
+
readonly name: "key";
|
|
1815
|
+
readonly type: "tuple";
|
|
1816
|
+
readonly internalType: "struct PoolKey";
|
|
1817
|
+
readonly components: readonly [{
|
|
1818
|
+
readonly name: "currency0";
|
|
1819
|
+
readonly type: "address";
|
|
1820
|
+
readonly internalType: "address";
|
|
1821
|
+
}, {
|
|
1822
|
+
readonly name: "currency1";
|
|
1823
|
+
readonly type: "address";
|
|
1824
|
+
readonly internalType: "address";
|
|
1825
|
+
}, {
|
|
1826
|
+
readonly name: "fee";
|
|
1827
|
+
readonly type: "uint24";
|
|
1828
|
+
readonly internalType: "uint24";
|
|
1829
|
+
}, {
|
|
1830
|
+
readonly name: "tickSpacing";
|
|
1831
|
+
readonly type: "int24";
|
|
1832
|
+
readonly internalType: "int24";
|
|
1833
|
+
}, {
|
|
1834
|
+
readonly name: "hooks";
|
|
1835
|
+
readonly type: "address";
|
|
1836
|
+
readonly internalType: "address";
|
|
1837
|
+
}];
|
|
1838
|
+
}, {
|
|
1839
|
+
readonly name: "zeroForOne";
|
|
1840
|
+
readonly type: "bool";
|
|
1841
|
+
readonly internalType: "bool";
|
|
1842
|
+
}];
|
|
1843
|
+
}];
|
|
1844
|
+
}];
|
|
1845
|
+
readonly outputs: readonly [{
|
|
1846
|
+
readonly name: "voxelBurned";
|
|
1847
|
+
readonly type: "uint256";
|
|
1848
|
+
readonly internalType: "uint256";
|
|
1849
|
+
}];
|
|
1850
|
+
readonly stateMutability: "nonpayable";
|
|
1851
|
+
}, {
|
|
1852
|
+
readonly type: "function";
|
|
1853
|
+
readonly name: "buybackV4";
|
|
1854
|
+
readonly inputs: readonly [{
|
|
1855
|
+
readonly name: "amountIn";
|
|
1856
|
+
readonly type: "uint256";
|
|
1857
|
+
readonly internalType: "uint256";
|
|
1858
|
+
}, {
|
|
1859
|
+
readonly name: "minOut";
|
|
1860
|
+
readonly type: "uint256";
|
|
1861
|
+
readonly internalType: "uint256";
|
|
1862
|
+
}, {
|
|
1863
|
+
readonly name: "deadline";
|
|
1864
|
+
readonly type: "uint256";
|
|
1865
|
+
readonly internalType: "uint256";
|
|
1866
|
+
}, {
|
|
1867
|
+
readonly name: "hops";
|
|
1868
|
+
readonly type: "tuple[]";
|
|
1869
|
+
readonly internalType: "struct IVoxRouterV4.Hop[]";
|
|
1870
|
+
readonly components: readonly [{
|
|
1871
|
+
readonly name: "key";
|
|
1872
|
+
readonly type: "tuple";
|
|
1873
|
+
readonly internalType: "struct PoolKey";
|
|
1874
|
+
readonly components: readonly [{
|
|
1875
|
+
readonly name: "currency0";
|
|
1876
|
+
readonly type: "address";
|
|
1877
|
+
readonly internalType: "address";
|
|
1878
|
+
}, {
|
|
1879
|
+
readonly name: "currency1";
|
|
1880
|
+
readonly type: "address";
|
|
1881
|
+
readonly internalType: "address";
|
|
1882
|
+
}, {
|
|
1883
|
+
readonly name: "fee";
|
|
1884
|
+
readonly type: "uint24";
|
|
1885
|
+
readonly internalType: "uint24";
|
|
1886
|
+
}, {
|
|
1887
|
+
readonly name: "tickSpacing";
|
|
1888
|
+
readonly type: "int24";
|
|
1889
|
+
readonly internalType: "int24";
|
|
1890
|
+
}, {
|
|
1891
|
+
readonly name: "hooks";
|
|
1892
|
+
readonly type: "address";
|
|
1893
|
+
readonly internalType: "address";
|
|
1894
|
+
}];
|
|
1895
|
+
}, {
|
|
1896
|
+
readonly name: "zeroForOne";
|
|
1897
|
+
readonly type: "bool";
|
|
1898
|
+
readonly internalType: "bool";
|
|
1899
|
+
}];
|
|
1900
|
+
}];
|
|
1901
|
+
readonly outputs: readonly [{
|
|
1902
|
+
readonly name: "voxelBurned";
|
|
1903
|
+
readonly type: "uint256";
|
|
1904
|
+
readonly internalType: "uint256";
|
|
1905
|
+
}];
|
|
1906
|
+
readonly stateMutability: "nonpayable";
|
|
1907
|
+
}, {
|
|
1908
|
+
readonly type: "function";
|
|
1909
|
+
readonly name: "executor";
|
|
1910
|
+
readonly inputs: readonly [];
|
|
1911
|
+
readonly outputs: readonly [{
|
|
1912
|
+
readonly name: "";
|
|
1913
|
+
readonly type: "address";
|
|
1914
|
+
readonly internalType: "address";
|
|
1915
|
+
}];
|
|
1916
|
+
readonly stateMutability: "view";
|
|
1917
|
+
}, {
|
|
1918
|
+
readonly type: "function";
|
|
1919
|
+
readonly name: "owner";
|
|
1920
|
+
readonly inputs: readonly [];
|
|
1921
|
+
readonly outputs: readonly [{
|
|
1922
|
+
readonly name: "";
|
|
1923
|
+
readonly type: "address";
|
|
1924
|
+
readonly internalType: "address";
|
|
1925
|
+
}];
|
|
1926
|
+
readonly stateMutability: "view";
|
|
1927
|
+
}, {
|
|
1928
|
+
readonly type: "function";
|
|
1929
|
+
readonly name: "pendingOwner";
|
|
1930
|
+
readonly inputs: readonly [];
|
|
1931
|
+
readonly outputs: readonly [{
|
|
1932
|
+
readonly name: "";
|
|
1933
|
+
readonly type: "address";
|
|
1934
|
+
readonly internalType: "address";
|
|
1935
|
+
}];
|
|
1936
|
+
readonly stateMutability: "view";
|
|
1937
|
+
}, {
|
|
1938
|
+
readonly type: "function";
|
|
1939
|
+
readonly name: "poolIdV3";
|
|
1940
|
+
readonly inputs: readonly [{
|
|
1941
|
+
readonly name: "pool";
|
|
1942
|
+
readonly type: "address";
|
|
1943
|
+
readonly internalType: "address";
|
|
1944
|
+
}];
|
|
1945
|
+
readonly outputs: readonly [{
|
|
1946
|
+
readonly name: "";
|
|
1947
|
+
readonly type: "bytes32";
|
|
1948
|
+
readonly internalType: "bytes32";
|
|
1949
|
+
}];
|
|
1950
|
+
readonly stateMutability: "pure";
|
|
1951
|
+
}, {
|
|
1952
|
+
readonly type: "function";
|
|
1953
|
+
readonly name: "poolIdV4";
|
|
1954
|
+
readonly inputs: readonly [{
|
|
1955
|
+
readonly name: "key";
|
|
1956
|
+
readonly type: "tuple";
|
|
1957
|
+
readonly internalType: "struct PoolKey";
|
|
1958
|
+
readonly components: readonly [{
|
|
1959
|
+
readonly name: "currency0";
|
|
1960
|
+
readonly type: "address";
|
|
1961
|
+
readonly internalType: "address";
|
|
1962
|
+
}, {
|
|
1963
|
+
readonly name: "currency1";
|
|
1964
|
+
readonly type: "address";
|
|
1965
|
+
readonly internalType: "address";
|
|
1966
|
+
}, {
|
|
1967
|
+
readonly name: "fee";
|
|
1968
|
+
readonly type: "uint24";
|
|
1969
|
+
readonly internalType: "uint24";
|
|
1970
|
+
}, {
|
|
1971
|
+
readonly name: "tickSpacing";
|
|
1972
|
+
readonly type: "int24";
|
|
1973
|
+
readonly internalType: "int24";
|
|
1974
|
+
}, {
|
|
1975
|
+
readonly name: "hooks";
|
|
1976
|
+
readonly type: "address";
|
|
1977
|
+
readonly internalType: "address";
|
|
1978
|
+
}];
|
|
1979
|
+
}];
|
|
1980
|
+
readonly outputs: readonly [{
|
|
1981
|
+
readonly name: "";
|
|
1982
|
+
readonly type: "bytes32";
|
|
1983
|
+
readonly internalType: "bytes32";
|
|
1984
|
+
}];
|
|
1985
|
+
readonly stateMutability: "pure";
|
|
1986
|
+
}, {
|
|
1987
|
+
readonly type: "function";
|
|
1988
|
+
readonly name: "setExecutor";
|
|
1989
|
+
readonly inputs: readonly [{
|
|
1990
|
+
readonly name: "executor_";
|
|
1991
|
+
readonly type: "address";
|
|
1992
|
+
readonly internalType: "address";
|
|
1993
|
+
}];
|
|
1994
|
+
readonly outputs: readonly [];
|
|
1995
|
+
readonly stateMutability: "nonpayable";
|
|
1996
|
+
}, {
|
|
1997
|
+
readonly type: "function";
|
|
1998
|
+
readonly name: "setPoolsAllowed";
|
|
1999
|
+
readonly inputs: readonly [{
|
|
2000
|
+
readonly name: "ids";
|
|
2001
|
+
readonly type: "bytes32[]";
|
|
2002
|
+
readonly internalType: "bytes32[]";
|
|
2003
|
+
}, {
|
|
2004
|
+
readonly name: "allowed";
|
|
2005
|
+
readonly type: "bool";
|
|
2006
|
+
readonly internalType: "bool";
|
|
2007
|
+
}];
|
|
2008
|
+
readonly outputs: readonly [];
|
|
2009
|
+
readonly stateMutability: "nonpayable";
|
|
2010
|
+
}, {
|
|
2011
|
+
readonly type: "function";
|
|
2012
|
+
readonly name: "totalBurned";
|
|
2013
|
+
readonly inputs: readonly [];
|
|
2014
|
+
readonly outputs: readonly [{
|
|
2015
|
+
readonly name: "";
|
|
2016
|
+
readonly type: "uint256";
|
|
2017
|
+
readonly internalType: "uint256";
|
|
2018
|
+
}];
|
|
2019
|
+
readonly stateMutability: "view";
|
|
2020
|
+
}, {
|
|
2021
|
+
readonly type: "function";
|
|
2022
|
+
readonly name: "transferOwnership";
|
|
2023
|
+
readonly inputs: readonly [{
|
|
2024
|
+
readonly name: "to";
|
|
2025
|
+
readonly type: "address";
|
|
2026
|
+
readonly internalType: "address";
|
|
2027
|
+
}];
|
|
2028
|
+
readonly outputs: readonly [];
|
|
2029
|
+
readonly stateMutability: "nonpayable";
|
|
2030
|
+
}, {
|
|
2031
|
+
readonly type: "event";
|
|
2032
|
+
readonly name: "BoughtBack";
|
|
2033
|
+
readonly inputs: readonly [{
|
|
2034
|
+
readonly name: "tokenIn";
|
|
2035
|
+
readonly type: "address";
|
|
2036
|
+
readonly indexed: true;
|
|
2037
|
+
readonly internalType: "address";
|
|
2038
|
+
}, {
|
|
2039
|
+
readonly name: "amountIn";
|
|
2040
|
+
readonly type: "uint256";
|
|
2041
|
+
readonly indexed: false;
|
|
2042
|
+
readonly internalType: "uint256";
|
|
2043
|
+
}, {
|
|
2044
|
+
readonly name: "voxelBurned";
|
|
2045
|
+
readonly type: "uint256";
|
|
2046
|
+
readonly indexed: false;
|
|
2047
|
+
readonly internalType: "uint256";
|
|
2048
|
+
}, {
|
|
2049
|
+
readonly name: "family";
|
|
2050
|
+
readonly type: "uint8";
|
|
2051
|
+
readonly indexed: false;
|
|
2052
|
+
readonly internalType: "uint8";
|
|
2053
|
+
}];
|
|
2054
|
+
readonly anonymous: false;
|
|
2055
|
+
}, {
|
|
2056
|
+
readonly type: "event";
|
|
2057
|
+
readonly name: "ExecutorSet";
|
|
2058
|
+
readonly inputs: readonly [{
|
|
2059
|
+
readonly name: "executor";
|
|
2060
|
+
readonly type: "address";
|
|
2061
|
+
readonly indexed: true;
|
|
2062
|
+
readonly internalType: "address";
|
|
2063
|
+
}];
|
|
2064
|
+
readonly anonymous: false;
|
|
2065
|
+
}, {
|
|
2066
|
+
readonly type: "event";
|
|
2067
|
+
readonly name: "OwnerSet";
|
|
2068
|
+
readonly inputs: readonly [{
|
|
2069
|
+
readonly name: "owner";
|
|
2070
|
+
readonly type: "address";
|
|
2071
|
+
readonly indexed: true;
|
|
2072
|
+
readonly internalType: "address";
|
|
2073
|
+
}];
|
|
2074
|
+
readonly anonymous: false;
|
|
2075
|
+
}, {
|
|
2076
|
+
readonly type: "event";
|
|
2077
|
+
readonly name: "OwnerTransferStarted";
|
|
2078
|
+
readonly inputs: readonly [{
|
|
2079
|
+
readonly name: "from";
|
|
2080
|
+
readonly type: "address";
|
|
2081
|
+
readonly indexed: true;
|
|
2082
|
+
readonly internalType: "address";
|
|
2083
|
+
}, {
|
|
2084
|
+
readonly name: "to";
|
|
2085
|
+
readonly type: "address";
|
|
2086
|
+
readonly indexed: true;
|
|
2087
|
+
readonly internalType: "address";
|
|
2088
|
+
}];
|
|
2089
|
+
readonly anonymous: false;
|
|
2090
|
+
}, {
|
|
2091
|
+
readonly type: "event";
|
|
2092
|
+
readonly name: "PoolAllowed";
|
|
2093
|
+
readonly inputs: readonly [{
|
|
2094
|
+
readonly name: "id";
|
|
2095
|
+
readonly type: "bytes32";
|
|
2096
|
+
readonly indexed: true;
|
|
2097
|
+
readonly internalType: "bytes32";
|
|
2098
|
+
}, {
|
|
2099
|
+
readonly name: "allowed";
|
|
2100
|
+
readonly type: "bool";
|
|
2101
|
+
readonly indexed: false;
|
|
2102
|
+
readonly internalType: "bool";
|
|
2103
|
+
}];
|
|
2104
|
+
readonly anonymous: false;
|
|
2105
|
+
}, {
|
|
2106
|
+
readonly type: "error";
|
|
2107
|
+
readonly name: "NoHops";
|
|
2108
|
+
readonly inputs: readonly [];
|
|
2109
|
+
}, {
|
|
2110
|
+
readonly type: "error";
|
|
2111
|
+
readonly name: "NotExecutor";
|
|
2112
|
+
readonly inputs: readonly [];
|
|
2113
|
+
}, {
|
|
2114
|
+
readonly type: "error";
|
|
2115
|
+
readonly name: "NotOwner";
|
|
2116
|
+
readonly inputs: readonly [];
|
|
2117
|
+
}, {
|
|
2118
|
+
readonly type: "error";
|
|
2119
|
+
readonly name: "NothingBought";
|
|
2120
|
+
readonly inputs: readonly [];
|
|
2121
|
+
}, {
|
|
2122
|
+
readonly type: "error";
|
|
2123
|
+
readonly name: "PoolNotAllowed";
|
|
2124
|
+
readonly inputs: readonly [{
|
|
2125
|
+
readonly name: "id";
|
|
2126
|
+
readonly type: "bytes32";
|
|
2127
|
+
readonly internalType: "bytes32";
|
|
2128
|
+
}];
|
|
2129
|
+
}, {
|
|
2130
|
+
readonly type: "error";
|
|
2131
|
+
readonly name: "TokenIsVoxel";
|
|
2132
|
+
readonly inputs: readonly [];
|
|
2133
|
+
}, {
|
|
2134
|
+
readonly type: "error";
|
|
2135
|
+
readonly name: "TransferFailed";
|
|
2136
|
+
readonly inputs: readonly [];
|
|
2137
|
+
}, {
|
|
2138
|
+
readonly type: "error";
|
|
2139
|
+
readonly name: "ZeroAddress";
|
|
2140
|
+
readonly inputs: readonly [];
|
|
2141
|
+
}, {
|
|
2142
|
+
readonly type: "error";
|
|
2143
|
+
readonly name: "ZeroAmount";
|
|
2144
|
+
readonly inputs: readonly [];
|
|
2145
|
+
}];
|
package/dist/abi.js
CHANGED
|
@@ -5,3 +5,4 @@ export const VoxQuoterABI = [{ "type": "fallback", "stateMutability": "nonpayabl
|
|
|
5
5
|
export const VoxRouterV4ABI = [{ "type": "constructor", "inputs": [{ "name": "poolManager", "type": "address", "internalType": "address" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "MAX_FEE_BPS", "inputs": [], "outputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }], "stateMutability": "view" }, { "type": "function", "name": "MAX_HOPS", "inputs": [], "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], "stateMutability": "view" }, { "type": "function", "name": "acceptOwnership", "inputs": [], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "feeBps", "inputs": [], "outputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }], "stateMutability": "view" }, { "type": "function", "name": "feeRecipient", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "manager", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "contract IPoolManagerV4" }], "stateMutability": "view" }, { "type": "function", "name": "owner", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "pendingOwner", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "rescue", "inputs": [{ "name": "token", "type": "address", "internalType": "address" }, { "name": "to", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "setFee", "inputs": [{ "name": "bps", "type": "uint16", "internalType": "uint16" }, { "name": "recipient", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "swapExactIn", "inputs": [{ "name": "hops", "type": "tuple[]", "internalType": "struct VoxRouterV4.Hop[]", "components": [{ "name": "key", "type": "tuple", "internalType": "struct PoolKey", "components": [{ "name": "currency0", "type": "address", "internalType": "address" }, { "name": "currency1", "type": "address", "internalType": "address" }, { "name": "fee", "type": "uint24", "internalType": "uint24" }, { "name": "tickSpacing", "type": "int24", "internalType": "int24" }, { "name": "hooks", "type": "address", "internalType": "address" }] }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }] }, { "name": "amountIn", "type": "uint256", "internalType": "uint256" }, { "name": "minOut", "type": "uint256", "internalType": "uint256" }, { "name": "deadline", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "outToUser", "type": "uint256", "internalType": "uint256" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "transferOwnership", "inputs": [{ "name": "to", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "unlockCallback", "inputs": [{ "name": "data", "type": "bytes", "internalType": "bytes" }], "outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }], "stateMutability": "nonpayable" }, { "type": "event", "name": "FeeSet", "inputs": [{ "name": "feeBps", "type": "uint16", "indexed": false, "internalType": "uint16" }, { "name": "feeRecipient", "type": "address", "indexed": false, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "OwnerSet", "inputs": [{ "name": "owner", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "OwnerTransferStarted", "inputs": [{ "name": "from", "type": "address", "indexed": true, "internalType": "address" }, { "name": "to", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "Rescued", "inputs": [{ "name": "token", "type": "address", "indexed": true, "internalType": "address" }, { "name": "to", "type": "address", "indexed": true, "internalType": "address" }, { "name": "amount", "type": "uint256", "indexed": false, "internalType": "uint256" }], "anonymous": false }, { "type": "event", "name": "RouteExecuted", "inputs": [{ "name": "user", "type": "address", "indexed": true, "internalType": "address" }, { "name": "tokenIn", "type": "address", "indexed": true, "internalType": "address" }, { "name": "tokenOut", "type": "address", "indexed": true, "internalType": "address" }, { "name": "amountIn", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "amountOut", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "venueCount", "type": "uint8", "indexed": false, "internalType": "uint8" }], "anonymous": false }, { "type": "error", "name": "AmountTooLarge", "inputs": [] }, { "type": "error", "name": "BadDelta", "inputs": [{ "name": "delta", "type": "int256", "internalType": "int256" }] }, { "type": "error", "name": "CircularPath", "inputs": [] }, { "type": "error", "name": "Expired", "inputs": [{ "name": "deadline", "type": "uint256", "internalType": "uint256" }, { "name": "nowTs", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "FeeTooHigh", "inputs": [{ "name": "bps", "type": "uint16", "internalType": "uint16" }] }, { "type": "error", "name": "HooksNotSupported", "inputs": [{ "name": "hooks", "type": "address", "internalType": "address" }] }, { "type": "error", "name": "NativeNotSupported", "inputs": [] }, { "type": "error", "name": "NoHops", "inputs": [] }, { "type": "error", "name": "NotAContract", "inputs": [{ "name": "target", "type": "address", "internalType": "address" }] }, { "type": "error", "name": "NotOwner", "inputs": [] }, { "type": "error", "name": "PartialFill", "inputs": [{ "name": "paid", "type": "uint256", "internalType": "uint256" }, { "name": "wanted", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "PathBroken", "inputs": [{ "name": "hopIndex", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "Reentered", "inputs": [] }, { "type": "error", "name": "TooManyHops", "inputs": [{ "name": "given", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "TransferFailed", "inputs": [] }, { "type": "error", "name": "UnexpectedCallback", "inputs": [{ "name": "caller", "type": "address", "internalType": "address" }] }, { "type": "error", "name": "VoxSlippage", "inputs": [{ "name": "received", "type": "uint256", "internalType": "uint256" }, { "name": "minOut", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "ZeroAddress", "inputs": [] }, { "type": "error", "name": "ZeroAmount", "inputs": [] }];
|
|
6
6
|
export const VoxQuoterV4ABI = [{ "type": "constructor", "inputs": [{ "name": "poolManager", "type": "address", "internalType": "address" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "manager", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "contract IPoolManagerV4" }], "stateMutability": "view" }, { "type": "function", "name": "quoteExactIn", "inputs": [{ "name": "key", "type": "tuple", "internalType": "struct PoolKey", "components": [{ "name": "currency0", "type": "address", "internalType": "address" }, { "name": "currency1", "type": "address", "internalType": "address" }, { "name": "fee", "type": "uint24", "internalType": "uint24" }, { "name": "tickSpacing", "type": "int24", "internalType": "int24" }, { "name": "hooks", "type": "address", "internalType": "address" }] }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }, { "name": "amountIn", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "amountOut", "type": "uint256", "internalType": "uint256" }, { "name": "amountPaid", "type": "uint256", "internalType": "uint256" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "quoteMany", "inputs": [{ "name": "legs", "type": "tuple[]", "internalType": "struct VoxQuoterV4.Leg[]", "components": [{ "name": "key", "type": "tuple", "internalType": "struct PoolKey", "components": [{ "name": "currency0", "type": "address", "internalType": "address" }, { "name": "currency1", "type": "address", "internalType": "address" }, { "name": "fee", "type": "uint24", "internalType": "uint24" }, { "name": "tickSpacing", "type": "int24", "internalType": "int24" }, { "name": "hooks", "type": "address", "internalType": "address" }] }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }] }, { "name": "amountIn", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "outs", "type": "uint256[]", "internalType": "uint256[]" }, { "name": "paids", "type": "uint256[]", "internalType": "uint256[]" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "quotePath", "inputs": [{ "name": "path", "type": "tuple[]", "internalType": "struct VoxQuoterV4.Leg[]", "components": [{ "name": "key", "type": "tuple", "internalType": "struct PoolKey", "components": [{ "name": "currency0", "type": "address", "internalType": "address" }, { "name": "currency1", "type": "address", "internalType": "address" }, { "name": "fee", "type": "uint24", "internalType": "uint24" }, { "name": "tickSpacing", "type": "int24", "internalType": "int24" }, { "name": "hooks", "type": "address", "internalType": "address" }] }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }] }, { "name": "amountIn", "type": "uint256", "internalType": "uint256" }], "outputs": [{ "name": "amountOut", "type": "uint256", "internalType": "uint256" }, { "name": "amountPaid", "type": "uint256", "internalType": "uint256" }, { "name": "hopsFilled", "type": "uint256", "internalType": "uint256" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "unlockCallback", "inputs": [{ "name": "data", "type": "bytes", "internalType": "bytes" }], "outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }], "stateMutability": "nonpayable" }, { "type": "error", "name": "BadDelta", "inputs": [{ "name": "delta", "type": "int256", "internalType": "int256" }] }, { "type": "error", "name": "ManagerDidNotRevert", "inputs": [] }, { "type": "error", "name": "QuoteFailed", "inputs": [{ "name": "reason", "type": "bytes", "internalType": "bytes" }] }, { "type": "error", "name": "QuoteResult", "inputs": [{ "name": "amountOut", "type": "uint256", "internalType": "uint256" }, { "name": "amountPaid", "type": "uint256", "internalType": "uint256" }, { "name": "hopsFilled", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "UnexpectedCallback", "inputs": [{ "name": "caller", "type": "address", "internalType": "address" }] }];
|
|
7
7
|
export const VoxRouterMixedABI = [{ "type": "constructor", "inputs": [{ "name": "poolManager", "type": "address", "internalType": "address" }], "stateMutability": "nonpayable" }, { "type": "fallback", "stateMutability": "nonpayable" }, { "type": "function", "name": "MAX_FEE_BPS", "inputs": [], "outputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }], "stateMutability": "view" }, { "type": "function", "name": "MAX_HOPS_PER_LEG", "inputs": [], "outputs": [{ "name": "", "type": "uint8", "internalType": "uint8" }], "stateMutability": "view" }, { "type": "function", "name": "MAX_LEGS", "inputs": [], "outputs": [{ "name": "", "type": "uint8", "internalType": "uint8" }], "stateMutability": "view" }, { "type": "function", "name": "MAX_TOTAL_HOPS", "inputs": [], "outputs": [{ "name": "", "type": "uint8", "internalType": "uint8" }], "stateMutability": "view" }, { "type": "function", "name": "acceptOwnership", "inputs": [], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "feeBps", "inputs": [], "outputs": [{ "name": "", "type": "uint16", "internalType": "uint16" }], "stateMutability": "view" }, { "type": "function", "name": "feeRecipient", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "manager", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "contract IPoolManagerV4" }], "stateMutability": "view" }, { "type": "function", "name": "owner", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "pendingOwner", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "rescue", "inputs": [{ "name": "token", "type": "address", "internalType": "address" }, { "name": "to", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "setFee", "inputs": [{ "name": "bps", "type": "uint16", "internalType": "uint16" }, { "name": "recipient", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "swapExactInSplit", "inputs": [{ "name": "tokenIn", "type": "address", "internalType": "address" }, { "name": "tokenOut", "type": "address", "internalType": "address" }, { "name": "minOut", "type": "uint256", "internalType": "uint256" }, { "name": "deadline", "type": "uint256", "internalType": "uint256" }, { "name": "legs3", "type": "tuple[]", "internalType": "struct VoxRouterMixed.LegV3[]", "components": [{ "name": "amountIn", "type": "uint256", "internalType": "uint256" }, { "name": "hops", "type": "tuple[]", "internalType": "struct VoxRouterMixed.HopV3[]", "components": [{ "name": "kind", "type": "uint8", "internalType": "uint8" }, { "name": "pool", "type": "address", "internalType": "address" }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }, { "name": "feePpm", "type": "uint24", "internalType": "uint24" }] }] }, { "name": "legs4", "type": "tuple[]", "internalType": "struct VoxRouterMixed.LegV4[]", "components": [{ "name": "amountIn", "type": "uint256", "internalType": "uint256" }, { "name": "hops", "type": "tuple[]", "internalType": "struct VoxRouterMixed.HopV4[]", "components": [{ "name": "key", "type": "tuple", "internalType": "struct PoolKey", "components": [{ "name": "currency0", "type": "address", "internalType": "address" }, { "name": "currency1", "type": "address", "internalType": "address" }, { "name": "fee", "type": "uint24", "internalType": "uint24" }, { "name": "tickSpacing", "type": "int24", "internalType": "int24" }, { "name": "hooks", "type": "address", "internalType": "address" }] }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }] }] }], "outputs": [{ "name": "outToUser", "type": "uint256", "internalType": "uint256" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "transferOwnership", "inputs": [{ "name": "to", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "uniswapV3SwapCallback", "inputs": [{ "name": "amount0Delta", "type": "int256", "internalType": "int256" }, { "name": "amount1Delta", "type": "int256", "internalType": "int256" }, { "name": "", "type": "bytes", "internalType": "bytes" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "unlockCallback", "inputs": [{ "name": "data", "type": "bytes", "internalType": "bytes" }], "outputs": [{ "name": "", "type": "bytes", "internalType": "bytes" }], "stateMutability": "nonpayable" }, { "type": "event", "name": "FeeSet", "inputs": [{ "name": "feeBps", "type": "uint16", "indexed": false, "internalType": "uint16" }, { "name": "feeRecipient", "type": "address", "indexed": false, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "OwnerSet", "inputs": [{ "name": "owner", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "OwnerTransferStarted", "inputs": [{ "name": "from", "type": "address", "indexed": true, "internalType": "address" }, { "name": "to", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "Rescued", "inputs": [{ "name": "token", "type": "address", "indexed": true, "internalType": "address" }, { "name": "to", "type": "address", "indexed": true, "internalType": "address" }, { "name": "amount", "type": "uint256", "indexed": false, "internalType": "uint256" }], "anonymous": false }, { "type": "event", "name": "RouteExecuted", "inputs": [{ "name": "user", "type": "address", "indexed": true, "internalType": "address" }, { "name": "tokenIn", "type": "address", "indexed": true, "internalType": "address" }, { "name": "tokenOut", "type": "address", "indexed": true, "internalType": "address" }, { "name": "amountIn", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "amountOut", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "venueCount", "type": "uint8", "indexed": false, "internalType": "uint8" }], "anonymous": false }, { "type": "event", "name": "SplitExecuted", "inputs": [{ "name": "user", "type": "address", "indexed": true, "internalType": "address" }, { "name": "legsV3", "type": "uint8", "indexed": false, "internalType": "uint8" }, { "name": "legsV4", "type": "uint8", "indexed": false, "internalType": "uint8" }, { "name": "amountIn", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "amountOut", "type": "uint256", "indexed": false, "internalType": "uint256" }], "anonymous": false }, { "type": "error", "name": "AmountTooLarge", "inputs": [] }, { "type": "error", "name": "BadDelta", "inputs": [{ "name": "delta", "type": "int256", "internalType": "int256" }] }, { "type": "error", "name": "BadHops", "inputs": [] }, { "type": "error", "name": "BadLegs", "inputs": [] }, { "type": "error", "name": "CallbackOverdraw", "inputs": [{ "name": "owed", "type": "uint256", "internalType": "uint256" }, { "name": "allowed", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "Expired", "inputs": [{ "name": "deadline", "type": "uint256", "internalType": "uint256" }, { "name": "nowTs", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "FeeTooHigh", "inputs": [{ "name": "bps", "type": "uint16", "internalType": "uint16" }] }, { "type": "error", "name": "HooksNotSupported", "inputs": [{ "name": "hooks", "type": "address", "internalType": "address" }] }, { "type": "error", "name": "NativeNotSupported", "inputs": [] }, { "type": "error", "name": "NotAContract", "inputs": [{ "name": "target", "type": "address", "internalType": "address" }] }, { "type": "error", "name": "NotOwner", "inputs": [] }, { "type": "error", "name": "PartialFill", "inputs": [{ "name": "paid", "type": "uint256", "internalType": "uint256" }, { "name": "wanted", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "Reentered", "inputs": [] }, { "type": "error", "name": "RouteMismatch", "inputs": [{ "name": "got", "type": "address", "internalType": "address" }, { "name": "want", "type": "address", "internalType": "address" }] }, { "type": "error", "name": "SameToken", "inputs": [] }, { "type": "error", "name": "TransferFailed", "inputs": [] }, { "type": "error", "name": "UnexpectedCallback", "inputs": [{ "name": "caller", "type": "address", "internalType": "address" }] }, { "type": "error", "name": "UnsupportedVenue", "inputs": [{ "name": "kind", "type": "uint8", "internalType": "uint8" }] }, { "type": "error", "name": "VoxSlippage", "inputs": [{ "name": "received", "type": "uint256", "internalType": "uint256" }, { "name": "minOut", "type": "uint256", "internalType": "uint256" }] }, { "type": "error", "name": "ZeroAddress", "inputs": [] }, { "type": "error", "name": "ZeroAmount", "inputs": [] }];
|
|
8
|
+
export const VoxTreasuryV2ABI = [{ "type": "constructor", "inputs": [{ "name": "routerV4", "type": "address", "internalType": "address" }, { "name": "routerSplit", "type": "address", "internalType": "address" }, { "name": "voxel", "type": "address", "internalType": "address" }, { "name": "sink", "type": "address", "internalType": "address" }, { "name": "executor_", "type": "address", "internalType": "address" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "ROUTER_SPLIT", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "ROUTER_V4", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "SINK", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "VOXEL", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "acceptOwnership", "inputs": [], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "allowedPool", "inputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], "outputs": [{ "name": "", "type": "bool", "internalType": "bool" }], "stateMutability": "view" }, { "type": "function", "name": "burnVoxel", "inputs": [], "outputs": [{ "name": "amount", "type": "uint256", "internalType": "uint256" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "buybackSplit", "inputs": [{ "name": "tokenIn", "type": "address", "internalType": "address" }, { "name": "minOut", "type": "uint256", "internalType": "uint256" }, { "name": "deadline", "type": "uint256", "internalType": "uint256" }, { "name": "legs3", "type": "tuple[]", "internalType": "struct IVoxRouterMixed.LegV3[]", "components": [{ "name": "amountIn", "type": "uint256", "internalType": "uint256" }, { "name": "hops", "type": "tuple[]", "internalType": "struct IVoxRouterMixed.HopV3[]", "components": [{ "name": "kind", "type": "uint8", "internalType": "uint8" }, { "name": "pool", "type": "address", "internalType": "address" }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }, { "name": "feePpm", "type": "uint24", "internalType": "uint24" }] }] }, { "name": "legs4", "type": "tuple[]", "internalType": "struct IVoxRouterMixed.LegV4[]", "components": [{ "name": "amountIn", "type": "uint256", "internalType": "uint256" }, { "name": "hops", "type": "tuple[]", "internalType": "struct IVoxRouterMixed.HopV4[]", "components": [{ "name": "key", "type": "tuple", "internalType": "struct PoolKey", "components": [{ "name": "currency0", "type": "address", "internalType": "address" }, { "name": "currency1", "type": "address", "internalType": "address" }, { "name": "fee", "type": "uint24", "internalType": "uint24" }, { "name": "tickSpacing", "type": "int24", "internalType": "int24" }, { "name": "hooks", "type": "address", "internalType": "address" }] }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }] }] }], "outputs": [{ "name": "voxelBurned", "type": "uint256", "internalType": "uint256" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "buybackV4", "inputs": [{ "name": "amountIn", "type": "uint256", "internalType": "uint256" }, { "name": "minOut", "type": "uint256", "internalType": "uint256" }, { "name": "deadline", "type": "uint256", "internalType": "uint256" }, { "name": "hops", "type": "tuple[]", "internalType": "struct IVoxRouterV4.Hop[]", "components": [{ "name": "key", "type": "tuple", "internalType": "struct PoolKey", "components": [{ "name": "currency0", "type": "address", "internalType": "address" }, { "name": "currency1", "type": "address", "internalType": "address" }, { "name": "fee", "type": "uint24", "internalType": "uint24" }, { "name": "tickSpacing", "type": "int24", "internalType": "int24" }, { "name": "hooks", "type": "address", "internalType": "address" }] }, { "name": "zeroForOne", "type": "bool", "internalType": "bool" }] }], "outputs": [{ "name": "voxelBurned", "type": "uint256", "internalType": "uint256" }], "stateMutability": "nonpayable" }, { "type": "function", "name": "executor", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "owner", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "pendingOwner", "inputs": [], "outputs": [{ "name": "", "type": "address", "internalType": "address" }], "stateMutability": "view" }, { "type": "function", "name": "poolIdV3", "inputs": [{ "name": "pool", "type": "address", "internalType": "address" }], "outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], "stateMutability": "pure" }, { "type": "function", "name": "poolIdV4", "inputs": [{ "name": "key", "type": "tuple", "internalType": "struct PoolKey", "components": [{ "name": "currency0", "type": "address", "internalType": "address" }, { "name": "currency1", "type": "address", "internalType": "address" }, { "name": "fee", "type": "uint24", "internalType": "uint24" }, { "name": "tickSpacing", "type": "int24", "internalType": "int24" }, { "name": "hooks", "type": "address", "internalType": "address" }] }], "outputs": [{ "name": "", "type": "bytes32", "internalType": "bytes32" }], "stateMutability": "pure" }, { "type": "function", "name": "setExecutor", "inputs": [{ "name": "executor_", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "setPoolsAllowed", "inputs": [{ "name": "ids", "type": "bytes32[]", "internalType": "bytes32[]" }, { "name": "allowed", "type": "bool", "internalType": "bool" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "function", "name": "totalBurned", "inputs": [], "outputs": [{ "name": "", "type": "uint256", "internalType": "uint256" }], "stateMutability": "view" }, { "type": "function", "name": "transferOwnership", "inputs": [{ "name": "to", "type": "address", "internalType": "address" }], "outputs": [], "stateMutability": "nonpayable" }, { "type": "event", "name": "BoughtBack", "inputs": [{ "name": "tokenIn", "type": "address", "indexed": true, "internalType": "address" }, { "name": "amountIn", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "voxelBurned", "type": "uint256", "indexed": false, "internalType": "uint256" }, { "name": "family", "type": "uint8", "indexed": false, "internalType": "uint8" }], "anonymous": false }, { "type": "event", "name": "ExecutorSet", "inputs": [{ "name": "executor", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "OwnerSet", "inputs": [{ "name": "owner", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "OwnerTransferStarted", "inputs": [{ "name": "from", "type": "address", "indexed": true, "internalType": "address" }, { "name": "to", "type": "address", "indexed": true, "internalType": "address" }], "anonymous": false }, { "type": "event", "name": "PoolAllowed", "inputs": [{ "name": "id", "type": "bytes32", "indexed": true, "internalType": "bytes32" }, { "name": "allowed", "type": "bool", "indexed": false, "internalType": "bool" }], "anonymous": false }, { "type": "error", "name": "NoHops", "inputs": [] }, { "type": "error", "name": "NotExecutor", "inputs": [] }, { "type": "error", "name": "NotOwner", "inputs": [] }, { "type": "error", "name": "NothingBought", "inputs": [] }, { "type": "error", "name": "PoolNotAllowed", "inputs": [{ "name": "id", "type": "bytes32", "internalType": "bytes32" }] }, { "type": "error", "name": "TokenIsVoxel", "inputs": [] }, { "type": "error", "name": "TransferFailed", "inputs": [] }, { "type": "error", "name": "ZeroAddress", "inputs": [] }, { "type": "error", "name": "ZeroAmount", "inputs": [] }];
|
package/dist/addresses.d.ts
CHANGED
|
@@ -5,5 +5,16 @@ export declare const ROUTER_V4: "0x290b9b46308f7a3B80A5F62214B426d3bfAfaab5";
|
|
|
5
5
|
export declare const QUOTER_V4: "0x5858F06894623eF4862103A747074E5AA3436d4F";
|
|
6
6
|
export declare const ROUTER_SPLIT: "0xda61673A51d6EA2c02C335185399Ddb818bdBC6f";
|
|
7
7
|
export declare const UNISWAP_V4_SINGLETON: "0x8366a39CC670B4001A1121B8F6A443A643e40951";
|
|
8
|
-
/**
|
|
9
|
-
export declare const
|
|
8
|
+
/** Выкупаемый и сжигаемый токен. Торгуется только в пулах четвёртой версии. */
|
|
9
|
+
export declare const VOXEL: "0xA01Bc586CD5F4f253BfAB4e44400c52dbC18bC50";
|
|
10
|
+
/** Адрес сжигания. Приватного ключа к нему не существует. */
|
|
11
|
+
export declare const BURN_SINK: "0x000000000000000000000000000000000000dEaD";
|
|
12
|
+
/**
|
|
13
|
+
* Получатель комиссии. Всё, что сюда приходит, выкупает VOXEL и сжигает его.
|
|
14
|
+
*
|
|
15
|
+
* Заменяет казну по адресу 0xDfC6004E…, которая ходила роутером третьей версии.
|
|
16
|
+
* Пул третьей версии с VOXEL на цепи один и пустой, поэтому та казна не могла
|
|
17
|
+
* исполнить свою единственную функцию. Эта покупает роутером v4 и сплит-роутером.
|
|
18
|
+
* Старый контракт остаётся в чейне, но комиссию больше не получает.
|
|
19
|
+
*/
|
|
20
|
+
export declare const TREASURY: "0x25A99c317f3125Fc6cd245197028f49CfF56612E";
|
package/dist/addresses.js
CHANGED
|
@@ -9,5 +9,16 @@ export const ROUTER_SPLIT = '0xda61673A51d6EA2c02C335185399Ddb818bdBC6f';
|
|
|
9
9
|
/* Проверено вызовом manager() у обоих наших v4-роутеров. По прежнему адресу
|
|
10
10
|
в этом пакете кода не было вовсе — константа указывала в пустоту. */
|
|
11
11
|
export const UNISWAP_V4_SINGLETON = '0x8366a39CC670B4001A1121B8F6A443A643e40951';
|
|
12
|
-
/**
|
|
13
|
-
export const
|
|
12
|
+
/** Выкупаемый и сжигаемый токен. Торгуется только в пулах четвёртой версии. */
|
|
13
|
+
export const VOXEL = '0xA01Bc586CD5F4f253BfAB4e44400c52dbC18bC50';
|
|
14
|
+
/** Адрес сжигания. Приватного ключа к нему не существует. */
|
|
15
|
+
export const BURN_SINK = '0x000000000000000000000000000000000000dEaD';
|
|
16
|
+
/**
|
|
17
|
+
* Получатель комиссии. Всё, что сюда приходит, выкупает VOXEL и сжигает его.
|
|
18
|
+
*
|
|
19
|
+
* Заменяет казну по адресу 0xDfC6004E…, которая ходила роутером третьей версии.
|
|
20
|
+
* Пул третьей версии с VOXEL на цепи один и пустой, поэтому та казна не могла
|
|
21
|
+
* исполнить свою единственную функцию. Эта покупает роутером v4 и сплит-роутером.
|
|
22
|
+
* Старый контракт остаётся в чейне, но комиссию больше не получает.
|
|
23
|
+
*/
|
|
24
|
+
export const TREASURY = '0x25A99c317f3125Fc6cd245197028f49CfF56612E';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "voxelithic-interfaces",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "TypeScript types, contract ABIs and verified addresses for Voxelithic on Robinhood Chain (4663)",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"robinhood-chain",
|
|
@@ -30,7 +30,8 @@
|
|
|
30
30
|
"dist",
|
|
31
31
|
"src",
|
|
32
32
|
"README.md",
|
|
33
|
-
"LICENSE"
|
|
33
|
+
"LICENSE",
|
|
34
|
+
"tsconfig.json"
|
|
34
35
|
],
|
|
35
36
|
"engines": {
|
|
36
37
|
"node": ">=18"
|
package/src/abi.ts
CHANGED
|
@@ -10,3 +10,5 @@ export const VoxRouterV4ABI = [{"type":"constructor","inputs":[{"name":"poolMana
|
|
|
10
10
|
export const VoxQuoterV4ABI = [{"type":"constructor","inputs":[{"name":"poolManager","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"manager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IPoolManagerV4"}],"stateMutability":"view"},{"type":"function","name":"quoteExactIn","inputs":[{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"address"},{"name":"currency1","type":"address","internalType":"address"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"address"}]},{"name":"zeroForOne","type":"bool","internalType":"bool"},{"name":"amountIn","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"amountOut","type":"uint256","internalType":"uint256"},{"name":"amountPaid","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"quoteMany","inputs":[{"name":"legs","type":"tuple[]","internalType":"struct VoxQuoterV4.Leg[]","components":[{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"address"},{"name":"currency1","type":"address","internalType":"address"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"address"}]},{"name":"zeroForOne","type":"bool","internalType":"bool"}]},{"name":"amountIn","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"outs","type":"uint256[]","internalType":"uint256[]"},{"name":"paids","type":"uint256[]","internalType":"uint256[]"}],"stateMutability":"nonpayable"},{"type":"function","name":"quotePath","inputs":[{"name":"path","type":"tuple[]","internalType":"struct VoxQuoterV4.Leg[]","components":[{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"address"},{"name":"currency1","type":"address","internalType":"address"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"address"}]},{"name":"zeroForOne","type":"bool","internalType":"bool"}]},{"name":"amountIn","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"amountOut","type":"uint256","internalType":"uint256"},{"name":"amountPaid","type":"uint256","internalType":"uint256"},{"name":"hopsFilled","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"unlockCallback","inputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"nonpayable"},{"type":"error","name":"BadDelta","inputs":[{"name":"delta","type":"int256","internalType":"int256"}]},{"type":"error","name":"ManagerDidNotRevert","inputs":[]},{"type":"error","name":"QuoteFailed","inputs":[{"name":"reason","type":"bytes","internalType":"bytes"}]},{"type":"error","name":"QuoteResult","inputs":[{"name":"amountOut","type":"uint256","internalType":"uint256"},{"name":"amountPaid","type":"uint256","internalType":"uint256"},{"name":"hopsFilled","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"UnexpectedCallback","inputs":[{"name":"caller","type":"address","internalType":"address"}]}] as const
|
|
11
11
|
|
|
12
12
|
export const VoxRouterMixedABI = [{"type":"constructor","inputs":[{"name":"poolManager","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"fallback","stateMutability":"nonpayable"},{"type":"function","name":"MAX_FEE_BPS","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"MAX_HOPS_PER_LEG","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"MAX_LEGS","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"MAX_TOTAL_HOPS","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"acceptOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"feeBps","inputs":[],"outputs":[{"name":"","type":"uint16","internalType":"uint16"}],"stateMutability":"view"},{"type":"function","name":"feeRecipient","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"manager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract IPoolManagerV4"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"rescue","inputs":[{"name":"token","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setFee","inputs":[{"name":"bps","type":"uint16","internalType":"uint16"},{"name":"recipient","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"swapExactInSplit","inputs":[{"name":"tokenIn","type":"address","internalType":"address"},{"name":"tokenOut","type":"address","internalType":"address"},{"name":"minOut","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"legs3","type":"tuple[]","internalType":"struct VoxRouterMixed.LegV3[]","components":[{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"hops","type":"tuple[]","internalType":"struct VoxRouterMixed.HopV3[]","components":[{"name":"kind","type":"uint8","internalType":"uint8"},{"name":"pool","type":"address","internalType":"address"},{"name":"zeroForOne","type":"bool","internalType":"bool"},{"name":"feePpm","type":"uint24","internalType":"uint24"}]}]},{"name":"legs4","type":"tuple[]","internalType":"struct VoxRouterMixed.LegV4[]","components":[{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"hops","type":"tuple[]","internalType":"struct VoxRouterMixed.HopV4[]","components":[{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"address"},{"name":"currency1","type":"address","internalType":"address"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"address"}]},{"name":"zeroForOne","type":"bool","internalType":"bool"}]}]}],"outputs":[{"name":"outToUser","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferOwnership","inputs":[{"name":"to","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"uniswapV3SwapCallback","inputs":[{"name":"amount0Delta","type":"int256","internalType":"int256"},{"name":"amount1Delta","type":"int256","internalType":"int256"},{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"unlockCallback","inputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"nonpayable"},{"type":"event","name":"FeeSet","inputs":[{"name":"feeBps","type":"uint16","indexed":false,"internalType":"uint16"},{"name":"feeRecipient","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnerSet","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnerTransferStarted","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Rescued","inputs":[{"name":"token","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"RouteExecuted","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"tokenIn","type":"address","indexed":true,"internalType":"address"},{"name":"tokenOut","type":"address","indexed":true,"internalType":"address"},{"name":"amountIn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amountOut","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"venueCount","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"SplitExecuted","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"legsV3","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"legsV4","type":"uint8","indexed":false,"internalType":"uint8"},{"name":"amountIn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"amountOut","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"AmountTooLarge","inputs":[]},{"type":"error","name":"BadDelta","inputs":[{"name":"delta","type":"int256","internalType":"int256"}]},{"type":"error","name":"BadHops","inputs":[]},{"type":"error","name":"BadLegs","inputs":[]},{"type":"error","name":"CallbackOverdraw","inputs":[{"name":"owed","type":"uint256","internalType":"uint256"},{"name":"allowed","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Expired","inputs":[{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"nowTs","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FeeTooHigh","inputs":[{"name":"bps","type":"uint16","internalType":"uint16"}]},{"type":"error","name":"HooksNotSupported","inputs":[{"name":"hooks","type":"address","internalType":"address"}]},{"type":"error","name":"NativeNotSupported","inputs":[]},{"type":"error","name":"NotAContract","inputs":[{"name":"target","type":"address","internalType":"address"}]},{"type":"error","name":"NotOwner","inputs":[]},{"type":"error","name":"PartialFill","inputs":[{"name":"paid","type":"uint256","internalType":"uint256"},{"name":"wanted","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Reentered","inputs":[]},{"type":"error","name":"RouteMismatch","inputs":[{"name":"got","type":"address","internalType":"address"},{"name":"want","type":"address","internalType":"address"}]},{"type":"error","name":"SameToken","inputs":[]},{"type":"error","name":"TransferFailed","inputs":[]},{"type":"error","name":"UnexpectedCallback","inputs":[{"name":"caller","type":"address","internalType":"address"}]},{"type":"error","name":"UnsupportedVenue","inputs":[{"name":"kind","type":"uint8","internalType":"uint8"}]},{"type":"error","name":"VoxSlippage","inputs":[{"name":"received","type":"uint256","internalType":"uint256"},{"name":"minOut","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"ZeroAddress","inputs":[]},{"type":"error","name":"ZeroAmount","inputs":[]}] as const
|
|
13
|
+
|
|
14
|
+
export const VoxTreasuryV2ABI = [{"type":"constructor","inputs":[{"name":"routerV4","type":"address","internalType":"address"},{"name":"routerSplit","type":"address","internalType":"address"},{"name":"voxel","type":"address","internalType":"address"},{"name":"sink","type":"address","internalType":"address"},{"name":"executor_","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"type":"function","name":"ROUTER_SPLIT","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"ROUTER_V4","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SINK","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"VOXEL","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"acceptOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"allowedPool","inputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"burnVoxel","inputs":[],"outputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"buybackSplit","inputs":[{"name":"tokenIn","type":"address","internalType":"address"},{"name":"minOut","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"legs3","type":"tuple[]","internalType":"struct IVoxRouterMixed.LegV3[]","components":[{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"hops","type":"tuple[]","internalType":"struct IVoxRouterMixed.HopV3[]","components":[{"name":"kind","type":"uint8","internalType":"uint8"},{"name":"pool","type":"address","internalType":"address"},{"name":"zeroForOne","type":"bool","internalType":"bool"},{"name":"feePpm","type":"uint24","internalType":"uint24"}]}]},{"name":"legs4","type":"tuple[]","internalType":"struct IVoxRouterMixed.LegV4[]","components":[{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"hops","type":"tuple[]","internalType":"struct IVoxRouterMixed.HopV4[]","components":[{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"address"},{"name":"currency1","type":"address","internalType":"address"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"address"}]},{"name":"zeroForOne","type":"bool","internalType":"bool"}]}]}],"outputs":[{"name":"voxelBurned","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"buybackV4","inputs":[{"name":"amountIn","type":"uint256","internalType":"uint256"},{"name":"minOut","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"hops","type":"tuple[]","internalType":"struct IVoxRouterV4.Hop[]","components":[{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"address"},{"name":"currency1","type":"address","internalType":"address"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"address"}]},{"name":"zeroForOne","type":"bool","internalType":"bool"}]}],"outputs":[{"name":"voxelBurned","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"executor","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"pendingOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"poolIdV3","inputs":[{"name":"pool","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"pure"},{"type":"function","name":"poolIdV4","inputs":[{"name":"key","type":"tuple","internalType":"struct PoolKey","components":[{"name":"currency0","type":"address","internalType":"address"},{"name":"currency1","type":"address","internalType":"address"},{"name":"fee","type":"uint24","internalType":"uint24"},{"name":"tickSpacing","type":"int24","internalType":"int24"},{"name":"hooks","type":"address","internalType":"address"}]}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"pure"},{"type":"function","name":"setExecutor","inputs":[{"name":"executor_","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setPoolsAllowed","inputs":[{"name":"ids","type":"bytes32[]","internalType":"bytes32[]"},{"name":"allowed","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"totalBurned","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transferOwnership","inputs":[{"name":"to","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"BoughtBack","inputs":[{"name":"tokenIn","type":"address","indexed":true,"internalType":"address"},{"name":"amountIn","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"voxelBurned","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"family","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"ExecutorSet","inputs":[{"name":"executor","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnerSet","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"OwnerTransferStarted","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"PoolAllowed","inputs":[{"name":"id","type":"bytes32","indexed":true,"internalType":"bytes32"},{"name":"allowed","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"error","name":"NoHops","inputs":[]},{"type":"error","name":"NotExecutor","inputs":[]},{"type":"error","name":"NotOwner","inputs":[]},{"type":"error","name":"NothingBought","inputs":[]},{"type":"error","name":"PoolNotAllowed","inputs":[{"name":"id","type":"bytes32","internalType":"bytes32"}]},{"type":"error","name":"TokenIsVoxel","inputs":[]},{"type":"error","name":"TransferFailed","inputs":[]},{"type":"error","name":"ZeroAddress","inputs":[]},{"type":"error","name":"ZeroAmount","inputs":[]}] as const
|
package/src/addresses.ts
CHANGED
|
@@ -12,5 +12,18 @@ export const ROUTER_SPLIT = '0xda61673A51d6EA2c02C335185399Ddb818bdBC6f' as cons
|
|
|
12
12
|
в этом пакете кода не было вовсе — константа указывала в пустоту. */
|
|
13
13
|
export const UNISWAP_V4_SINGLETON = '0x8366a39CC670B4001A1121B8F6A443A643e40951' as const
|
|
14
14
|
|
|
15
|
-
/**
|
|
16
|
-
export const
|
|
15
|
+
/** Выкупаемый и сжигаемый токен. Торгуется только в пулах четвёртой версии. */
|
|
16
|
+
export const VOXEL = '0xA01Bc586CD5F4f253BfAB4e44400c52dbC18bC50' as const
|
|
17
|
+
|
|
18
|
+
/** Адрес сжигания. Приватного ключа к нему не существует. */
|
|
19
|
+
export const BURN_SINK = '0x000000000000000000000000000000000000dEaD' as const
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Получатель комиссии. Всё, что сюда приходит, выкупает VOXEL и сжигает его.
|
|
23
|
+
*
|
|
24
|
+
* Заменяет казну по адресу 0xDfC6004E…, которая ходила роутером третьей версии.
|
|
25
|
+
* Пул третьей версии с VOXEL на цепи один и пустой, поэтому та казна не могла
|
|
26
|
+
* исполнить свою единственную функцию. Эта покупает роутером v4 и сплит-роутером.
|
|
27
|
+
* Старый контракт остаётся в чейне, но комиссию больше не получает.
|
|
28
|
+
*/
|
|
29
|
+
export const TREASURY = '0x25A99c317f3125Fc6cd245197028f49CfF56612E' as const
|
package/tsconfig.json
ADDED