hermes-swap 0.0.11 → 0.0.12
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 +2 -0
- package/dist/cjs/abis/quoter.d.ts +80 -0
- package/dist/cjs/abis/quoter.js +524 -0
- package/dist/cjs/bridge/index.d.ts +0 -0
- package/dist/cjs/bridge/index.js +0 -0
- package/dist/cjs/dex/index.d.ts +0 -0
- package/dist/cjs/dex/index.js +0 -0
- package/dist/cjs/index.d.ts +13 -2
- package/dist/cjs/index.js +128 -3
- package/dist/cjs/types.d.ts +194 -0
- package/dist/cjs/types.js +190 -0
- package/dist/esm/abis/quoter.d.ts +80 -0
- package/dist/esm/abis/quoter.js +381 -0
- package/dist/esm/bridge/index.d.ts +0 -0
- package/dist/esm/bridge/index.js +0 -0
- package/dist/esm/dex/index.d.ts +0 -0
- package/dist/esm/dex/index.js +5 -0
- package/dist/esm/index.d.ts +13 -2
- package/dist/esm/index.js +244 -4
- package/dist/esm/types.d.ts +194 -0
- package/dist/esm/types.js +175 -1
- package/package.json +5 -1
package/dist/cjs/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
4
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
7
|
var __export = (target, all) => {
|
|
6
8
|
for (var name in all)
|
|
@@ -14,6 +16,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
14
16
|
}
|
|
15
17
|
return to;
|
|
16
18
|
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
17
27
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
28
|
|
|
19
29
|
// src/index.ts
|
|
@@ -22,13 +32,72 @@ __export(src_exports, {
|
|
|
22
32
|
default: () => src_default
|
|
23
33
|
});
|
|
24
34
|
module.exports = __toCommonJS(src_exports);
|
|
35
|
+
var import_types = require("./types");
|
|
36
|
+
var import_ethers = require("ethers");
|
|
37
|
+
var import_ethers2 = require("ethers");
|
|
38
|
+
var import_quoter = __toESM(require("./abis/quoter"));
|
|
25
39
|
var Hermes = class {
|
|
26
|
-
constructor() {
|
|
40
|
+
constructor(config) {
|
|
41
|
+
this.providerMap = /* @__PURE__ */ new Map();
|
|
42
|
+
this.walletMap = /* @__PURE__ */ new Map();
|
|
43
|
+
this.quoterAddressMap = /* @__PURE__ */ new Map();
|
|
44
|
+
this.aggregatorAddressMap = /* @__PURE__ */ new Map();
|
|
45
|
+
this.executorMap = /* @__PURE__ */ new Map();
|
|
46
|
+
this.config = config;
|
|
47
|
+
for (const [chainName, rpc] of Object.entries(this.config.rpc)) {
|
|
48
|
+
const provider = new import_ethers.ethers.JsonRpcProvider(rpc.url);
|
|
49
|
+
this.providerMap.set(chainName, provider);
|
|
50
|
+
if (rpc.privateKey) {
|
|
51
|
+
this.walletMap.set(chainName, new import_ethers.ethers.Wallet(rpc.privateKey));
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
for (const [chainName, quoterAddress] of Object.entries(this.config.quoterAddress)) {
|
|
55
|
+
this.quoterAddressMap.set(chainName, quoterAddress);
|
|
56
|
+
}
|
|
57
|
+
for (const [chainName, aggregatorAddress] of Object.entries(this.config.aggregatorAddress)) {
|
|
58
|
+
this.aggregatorAddressMap.set(chainName, aggregatorAddress);
|
|
59
|
+
}
|
|
60
|
+
for (const [chainName, executorPrivateKey] of Object.entries(this.config.executorMap)) {
|
|
61
|
+
const provider = this.providerMap.get(chainName);
|
|
62
|
+
const executor = new import_ethers.ethers.Wallet(executorPrivateKey, provider);
|
|
63
|
+
this.executorMap.set(chainName, executor);
|
|
64
|
+
}
|
|
27
65
|
}
|
|
28
|
-
expect(params) {
|
|
29
|
-
|
|
66
|
+
async expect(params) {
|
|
67
|
+
this.validateParams(params);
|
|
68
|
+
const tokenPair = this.getTokenPair(params.chain, params.fromToken, params.toToken);
|
|
69
|
+
if (!tokenPair) {
|
|
70
|
+
throw new Error(`Token pair not found for chain: ${params.chain}`);
|
|
71
|
+
}
|
|
72
|
+
const address = this.getQuoterAddress(params.chain);
|
|
73
|
+
console.log("quoter address: ", address);
|
|
74
|
+
const provider = this.providerMap.get(params.chain);
|
|
75
|
+
if (!provider) {
|
|
76
|
+
throw new Error(`Provider not found for chain: ${params.chain}`);
|
|
77
|
+
}
|
|
78
|
+
if (!tokenPair.path.length) {
|
|
79
|
+
throw new Error(`Quote path not configured for chain: ${params.chain} from: ${params.fromToken} to: ${params.toToken}`);
|
|
80
|
+
}
|
|
81
|
+
console.log("dex type: ", params.dexType);
|
|
82
|
+
const quoteParams = tokenPair.path.map((pathItem) => ({
|
|
83
|
+
dexType: params.dexType ?? pathItem.dexType,
|
|
84
|
+
pool: pathItem.pool,
|
|
85
|
+
fromCoin: pathItem.fromCoin,
|
|
86
|
+
toCoin: pathItem.toCoin,
|
|
87
|
+
extra: pathItem.extra ?? params.extra ?? "0x"
|
|
88
|
+
}));
|
|
89
|
+
const executorWallet = this.executorMap.get(params.chain);
|
|
90
|
+
if (!executorWallet) {
|
|
91
|
+
throw new Error(`Executor wallet not configured for chain: ${params.chain}`);
|
|
92
|
+
}
|
|
93
|
+
console.log("wallet address: ", executorWallet.address);
|
|
94
|
+
const quoter = new import_ethers2.Contract(address, import_quoter.default, executorWallet);
|
|
95
|
+
console.log("executor address: ", await quoter.executor());
|
|
96
|
+
const amountOutList = await quoter.multiQuote(params.amount, quoteParams);
|
|
97
|
+
return amountOutList.length ? amountOutList[amountOutList.length - 1] : BigInt(0);
|
|
30
98
|
}
|
|
31
99
|
swap(params) {
|
|
100
|
+
this.validateParams(params);
|
|
32
101
|
const receipt = {
|
|
33
102
|
fromToken: params.fromToken,
|
|
34
103
|
toToken: params.toToken,
|
|
@@ -37,6 +106,7 @@ var Hermes = class {
|
|
|
37
106
|
return Promise.resolve(receipt);
|
|
38
107
|
}
|
|
39
108
|
bridge(params) {
|
|
109
|
+
this.validateParams(params);
|
|
40
110
|
const receipt = {
|
|
41
111
|
fromToken: params.fromToken,
|
|
42
112
|
toToken: params.toToken,
|
|
@@ -45,8 +115,63 @@ var Hermes = class {
|
|
|
45
115
|
return Promise.resolve(receipt);
|
|
46
116
|
}
|
|
47
117
|
swapAndBridge(params) {
|
|
118
|
+
this.validateParams(params);
|
|
48
119
|
const receipt = {};
|
|
49
120
|
return Promise.resolve(receipt);
|
|
50
121
|
}
|
|
122
|
+
validateParams(params) {
|
|
123
|
+
if (!params.chain) {
|
|
124
|
+
throw new Error("Chain not found");
|
|
125
|
+
}
|
|
126
|
+
const provider = this.providerMap.get(params.chain);
|
|
127
|
+
if (!provider) {
|
|
128
|
+
throw new Error("Provider not found");
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
getAllTokenPair() {
|
|
132
|
+
return {
|
|
133
|
+
[import_types.ChainNameEnum.ETH]: [
|
|
134
|
+
{ from: import_types.AddressConst.weth.eth, to: import_types.AddressConst.usdt.eth, path: [] },
|
|
135
|
+
// fx
|
|
136
|
+
{
|
|
137
|
+
from: import_types.AddressConst.weth.eth,
|
|
138
|
+
to: import_types.AddressConst.feth.eth,
|
|
139
|
+
path: [
|
|
140
|
+
{
|
|
141
|
+
dexType: "f(x)",
|
|
142
|
+
pool: "0xe7b9c7c9cA85340b8c06fb805f7775e3015108dB",
|
|
143
|
+
fromCoin: import_types.AddressConst.weth.eth,
|
|
144
|
+
toCoin: import_types.AddressConst.feth.eth,
|
|
145
|
+
extra: "0x"
|
|
146
|
+
}
|
|
147
|
+
]
|
|
148
|
+
}
|
|
149
|
+
]
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
getTokenPair(chain, from, to) {
|
|
153
|
+
const tokenPairMap = this.getAllTokenPair();
|
|
154
|
+
const tokenPairList = tokenPairMap[chain];
|
|
155
|
+
if (!tokenPairList) {
|
|
156
|
+
throw new Error(`Token pair not found for chain: ${chain}`);
|
|
157
|
+
}
|
|
158
|
+
const tokenPair = tokenPairList.find((item) => item.from.toLocaleLowerCase() === from.toLocaleLowerCase() && item.to.toLocaleLowerCase() === to.toLocaleLowerCase());
|
|
159
|
+
if (!tokenPair) {
|
|
160
|
+
throw new Error(`Token pair not found for chain: ${chain} from: ${from} to: ${to}`);
|
|
161
|
+
}
|
|
162
|
+
return tokenPair;
|
|
163
|
+
}
|
|
164
|
+
getQuoterAddress(chain) {
|
|
165
|
+
if (this.quoterAddressMap.has(chain)) {
|
|
166
|
+
return this.quoterAddressMap.get(chain);
|
|
167
|
+
}
|
|
168
|
+
throw new Error(`Quoter address not found for chain: ${chain}`);
|
|
169
|
+
}
|
|
170
|
+
getAggregatorAddress(chain) {
|
|
171
|
+
if (this.aggregatorAddressMap.has(chain)) {
|
|
172
|
+
return this.aggregatorAddressMap.get(chain);
|
|
173
|
+
}
|
|
174
|
+
throw new Error(`Aggregator address not found for chain: ${chain}`);
|
|
175
|
+
}
|
|
51
176
|
};
|
|
52
177
|
var src_default = Hermes;
|
package/dist/cjs/types.d.ts
CHANGED
|
@@ -1,19 +1,35 @@
|
|
|
1
|
+
import type { BytesLike } from 'ethers';
|
|
2
|
+
export interface IConfig {
|
|
3
|
+
rpc: Record<string, IRpcConfig>;
|
|
4
|
+
quoterAddress: Record<string, string>;
|
|
5
|
+
aggregatorAddress: Record<string, string>;
|
|
6
|
+
executorMap: Record<string, string>;
|
|
7
|
+
}
|
|
1
8
|
export interface IExpectParams {
|
|
9
|
+
chain: ChainNameEnum;
|
|
10
|
+
dexType?: string;
|
|
2
11
|
fromToken: string;
|
|
3
12
|
toToken: string;
|
|
4
13
|
amount: bigint;
|
|
14
|
+
extra?: BytesLike;
|
|
5
15
|
}
|
|
6
16
|
export interface ISwapParams {
|
|
17
|
+
chain: ChainNameEnum;
|
|
18
|
+
user: string;
|
|
7
19
|
fromToken: string;
|
|
8
20
|
toToken: string;
|
|
9
21
|
amount: bigint;
|
|
10
22
|
}
|
|
11
23
|
export interface IBridgeParams {
|
|
24
|
+
chain: ChainNameEnum;
|
|
25
|
+
user: string;
|
|
12
26
|
fromToken: string;
|
|
13
27
|
toToken: string;
|
|
14
28
|
amount: bigint;
|
|
15
29
|
}
|
|
16
30
|
export interface ISwapAndBridgeParams {
|
|
31
|
+
chain: ChainNameEnum;
|
|
32
|
+
user: string;
|
|
17
33
|
swapParams: ISwapParams;
|
|
18
34
|
bridgeParams: IBridgeParams;
|
|
19
35
|
}
|
|
@@ -22,3 +38,181 @@ export interface IReceipt {
|
|
|
22
38
|
toToken?: string;
|
|
23
39
|
amount?: bigint;
|
|
24
40
|
}
|
|
41
|
+
export declare enum DexType {
|
|
42
|
+
FX = "f(x)"
|
|
43
|
+
}
|
|
44
|
+
export declare enum ChainNameEnum {
|
|
45
|
+
ETH = "ETH",// Ethereum Mainnet
|
|
46
|
+
ARB = "ARB",// Arbitrum One
|
|
47
|
+
BSC = "BSC",// BNB Smart Chain Mainnet
|
|
48
|
+
POL = "POL",// Polygon Mainnet
|
|
49
|
+
OP = "OP",// Optimism
|
|
50
|
+
BASE = "BASE",// Base
|
|
51
|
+
XPLA = "XPLA",// XPLA Mainnet
|
|
52
|
+
TELOS = "TELOS",// Telos EVM Mainnet
|
|
53
|
+
OKT = "OKT",// OKXChain Mainnet
|
|
54
|
+
VIC = "VIC",// Viction
|
|
55
|
+
GNOSIS = "GNOSIS",// Gnosis
|
|
56
|
+
FUSE = "FUSE",// Fuse Mainnet
|
|
57
|
+
MANTA = "MANTA",// Manta Pacific Mainnet
|
|
58
|
+
OPBNB = "OPBNB",// opBNB Mainnet
|
|
59
|
+
FTM = "FTM",// Fantom Opera
|
|
60
|
+
ORDERLY = "ORDERLY",// Orderly Mainnet
|
|
61
|
+
ASTAR = "ASTAR",// Astar
|
|
62
|
+
CFX = "CFX",// Conflux eSpace
|
|
63
|
+
METIS = "METIS",// Metis Andromeda Mainnet
|
|
64
|
+
POLZK = "POLZK",// Polygon zkEVM
|
|
65
|
+
CORE = "CORE",// Core Blockchain Mainnet
|
|
66
|
+
MOON = "MOON",// Moonbeam
|
|
67
|
+
MOVR = "MOVR",// Moonriver
|
|
68
|
+
TENET = "TENET",// Tenet
|
|
69
|
+
KAVA = "KAVA",// Kava
|
|
70
|
+
BEAM = "BEAM",// Beam
|
|
71
|
+
MNT = "MNT",// Mantle
|
|
72
|
+
EON = "EON",// Horizen EON Mainnet
|
|
73
|
+
KLAY = "KLAY",// Kaia Mainnet
|
|
74
|
+
NOVA = "NOVA",// Arbitrum Nova
|
|
75
|
+
CELO = "CELO",// Celo Mainnet
|
|
76
|
+
AVAX = "AVAX",// Avalanche C-Chain
|
|
77
|
+
LINEA = "LINEA",// Linea
|
|
78
|
+
SCROLL = "SCROLL",// Scroll
|
|
79
|
+
LOOT = "LOOT",// Loot Mainnet
|
|
80
|
+
ZORA = "ZORA",// Zora
|
|
81
|
+
AURORA = "AURORA",// Aurora Mainnet
|
|
82
|
+
NOTALLOW = "NOTALLOW",// Not Allowed Chain
|
|
83
|
+
SOL = "SOL",// Solana Mainnet
|
|
84
|
+
SWIMMER = "SWIMMER",// Swimmer
|
|
85
|
+
DFK = "DFK",// DFK
|
|
86
|
+
HARMONY = "HARMONY",// Harmony
|
|
87
|
+
DEXALOT = "DEXALOT",// Dexalot
|
|
88
|
+
INTAIN = "INTAIN",// Intain
|
|
89
|
+
GOERLI = "GOERLI",// Goerli
|
|
90
|
+
CANTO = "CANTO",// Canto
|
|
91
|
+
ZKSYNC = "ZKSYNC",// zkSync
|
|
92
|
+
SHRAPNEL = "SHRAPNEL",// Shrapnel
|
|
93
|
+
DOS = "DOS",// DOS
|
|
94
|
+
ZKPOLYGON = "ZKPOLYGON",// Polygon zkEVM
|
|
95
|
+
SEPOLIA = "SEPOLIA",// Sepolia
|
|
96
|
+
METER = "METER",// Meter
|
|
97
|
+
HUBBLE = "HUBBLE",// Hubble
|
|
98
|
+
ZKCONSENSYS = "ZKCONSENSYS",// Linea
|
|
99
|
+
TOMO = "TOMO",// Tomo
|
|
100
|
+
MERITCIRCLE = "MERITCIRCLE",// Merit Circle
|
|
101
|
+
LIF3 = "LIF3",// LIF3
|
|
102
|
+
SHIMMER = "SHIMMER",// Shimmer
|
|
103
|
+
BB1 = "BB1",// BB1
|
|
104
|
+
RARIBLE = "RARIBLE",// Rarible
|
|
105
|
+
XAI = "XAI",// XAI
|
|
106
|
+
REAL = "REAL",// Real
|
|
107
|
+
TILTYARD = "TILTYARD",// Tiltyard
|
|
108
|
+
FRAXTAL = "FRAXTAL",// Fraxtal
|
|
109
|
+
TRON = "TRON",// Tron
|
|
110
|
+
ZKATANA = "ZKATANA",// zkAtana
|
|
111
|
+
BLAST = "BLAST",// Blast
|
|
112
|
+
MODE = "MODE",// Mode
|
|
113
|
+
MASA = "MASA",// Masa
|
|
114
|
+
HOMEVERSE = "HOMEVERSE",// Homeverse
|
|
115
|
+
MERLIN = "MERLIN",// Merlin
|
|
116
|
+
DEGEN = "DEGEN",// Degen
|
|
117
|
+
SKALE = "SKALE",// Skale
|
|
118
|
+
XLAYER = "XLAYER",// XLayer
|
|
119
|
+
SANKO = "SANKO",// Sanko
|
|
120
|
+
BOB = "BOB",// Bob
|
|
121
|
+
SEI = "SEI",// Sei
|
|
122
|
+
EBI = "EBI",// EBI
|
|
123
|
+
CYBER = "CYBER",// Cyber
|
|
124
|
+
IOTA = "IOTA",// IOTA
|
|
125
|
+
KINTO = "KINTO",// Kinto
|
|
126
|
+
JOC = "JOC",// JOC
|
|
127
|
+
TAIKO = "TAIKO",// Taiko
|
|
128
|
+
XCHAIN = "XCHAIN",// XChain
|
|
129
|
+
ETHERLINK = "ETHERLINK",// Etherlink
|
|
130
|
+
BOUNCEBIT = "BOUNCEBIT",// BounceBit
|
|
131
|
+
GRAVITY = "GRAVITY",// Gravity
|
|
132
|
+
FLARE = "FLARE",// Flare
|
|
133
|
+
ZKLINK = "ZKLINK",// zkLink
|
|
134
|
+
PEAQ = "PEAQ",// PEAQ
|
|
135
|
+
ZIRCUIT = "ZIRCUIT",// Zircuit
|
|
136
|
+
LIGHTLINK = "LIGHTLINK",// Lightlink
|
|
137
|
+
APTOS = "APTOS",// Aptos
|
|
138
|
+
CODEX = "CODEX",// Codex
|
|
139
|
+
LYRA = "LYRA",// Lyra
|
|
140
|
+
APE = "APE",// Ape
|
|
141
|
+
REYA = "REYA",// Reya
|
|
142
|
+
BITLAYER = "BITLAYER",// Bitlayer
|
|
143
|
+
DM2VERSE = "DM2VERSE",// DM2Verse
|
|
144
|
+
INITIA = "INITIA",// Initia
|
|
145
|
+
MOVEMENT = "MOVEMENT",// Movement
|
|
146
|
+
HEDERA = "HEDERA",// Hedera
|
|
147
|
+
PLUME = "PLUME",// Plume
|
|
148
|
+
WORLDCHAIN = "WORLDCHAIN",// Worldcoin
|
|
149
|
+
UNICHAIN = "UNICHAIN",// Unichain
|
|
150
|
+
LISK = "LISK",// Lisk
|
|
151
|
+
MORPH = "MORPH",// Morph
|
|
152
|
+
ABSTRACT = "ABSTRACT",// Abstract
|
|
153
|
+
SUPERPOSITION = "SUPERPOSITION",// Superposition
|
|
154
|
+
EDU = "EDU",// Edu
|
|
155
|
+
HEMI = "HEMI",// Hemi
|
|
156
|
+
ISLANDER = "ISLANDER",// Islander
|
|
157
|
+
MP1 = "MP1",// MP1
|
|
158
|
+
SONIC = "SONIC",// Sonic
|
|
159
|
+
ROOTSTOCK = "ROOTSTOCK",// Rootstock
|
|
160
|
+
SOPHON = "SOPHON",// Sophon
|
|
161
|
+
SWELL = "SWELL",// Swell
|
|
162
|
+
FLOW = "FLOW",// Flow
|
|
163
|
+
BL4 = "BL4",// BL4
|
|
164
|
+
BL5 = "BL5",// BL5
|
|
165
|
+
INK = "INK",// Ink
|
|
166
|
+
SONEIUM = "SONEIUM",// Soneium
|
|
167
|
+
SPACE = "SPACE",// Space
|
|
168
|
+
GLUE = "GLUE",// Glue
|
|
169
|
+
CRONOSEVM = "CRONOSEVM",// Cronos EVM
|
|
170
|
+
CRONOSZKEVM = "CRONOSZKEVM",// Cronos zkEVM
|
|
171
|
+
GOAT = "GOAT",// Goat
|
|
172
|
+
BERA = "BERA",// Bera
|
|
173
|
+
BAHAMUT = "BAHAMUT",// Bahamut
|
|
174
|
+
STORY = "STORY",// Story
|
|
175
|
+
XDC = "XDC",// XDC
|
|
176
|
+
CONCRETE = "CONCRETE",// Concrete
|
|
177
|
+
HYPERLIQUID = "HYPERLIQUID",// Hyperliquid
|
|
178
|
+
NIBIRUBURNED = "NIBIRUBURNED",// Nibiru Burned
|
|
179
|
+
NIBIRU = "NIBIRU",// Nibiru
|
|
180
|
+
PLUMEPHOENIX = "PLUMEPHOENIX",// Plume Phoenix
|
|
181
|
+
GUNZ = "GUNZ",// Gunz
|
|
182
|
+
ANIMECHAIN = "ANIMECHAIN",// Animechain
|
|
183
|
+
LENS = "LENS",// Lens
|
|
184
|
+
SUBTENSOREVM = "SUBTENSOREVM",// Subtensor EVM
|
|
185
|
+
KATANA = "KATANA",// Katana
|
|
186
|
+
BOTANIX = "BOTANIX",// Botanix
|
|
187
|
+
TAC = "TAC",// TAC
|
|
188
|
+
SILICON = "SILICON",// Silicon
|
|
189
|
+
SOMNIA = "SOMNIA",// Somnia
|
|
190
|
+
PLACEHOLDER0 = "PLACEHOLDER0",// Placeholder0
|
|
191
|
+
CAMP = "CAMP",// Camp
|
|
192
|
+
CONVERGE = "CONVERGE",// Converge
|
|
193
|
+
HUMANITY = "HUMANITY",// Humanity
|
|
194
|
+
PLASMA = "PLASMA",// Plasma
|
|
195
|
+
APEXFUSIONNEXUS = "APEXFUSIONNEXUS",// Apex Fusion Nexus
|
|
196
|
+
PGN = "PGN",// PGN
|
|
197
|
+
BEVM = "BEVM"
|
|
198
|
+
}
|
|
199
|
+
export interface IRpcConfig {
|
|
200
|
+
url: string;
|
|
201
|
+
privateKey?: string;
|
|
202
|
+
}
|
|
203
|
+
export declare const AddressConst: {
|
|
204
|
+
weth: {
|
|
205
|
+
eth: string;
|
|
206
|
+
};
|
|
207
|
+
usdt: {
|
|
208
|
+
eth: string;
|
|
209
|
+
};
|
|
210
|
+
feth: {
|
|
211
|
+
eth: string;
|
|
212
|
+
};
|
|
213
|
+
xeth: {
|
|
214
|
+
eth: string;
|
|
215
|
+
};
|
|
216
|
+
};
|
|
217
|
+
export interface IExpectPayload {
|
|
218
|
+
}
|
package/dist/cjs/types.js
CHANGED
|
@@ -2,6 +2,10 @@ var __defProp = Object.defineProperty;
|
|
|
2
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
5
9
|
var __copyProps = (to, from, except, desc) => {
|
|
6
10
|
if (from && typeof from === "object" || typeof from === "function") {
|
|
7
11
|
for (let key of __getOwnPropNames(from))
|
|
@@ -14,4 +18,190 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
14
18
|
|
|
15
19
|
// src/types.ts
|
|
16
20
|
var types_exports = {};
|
|
21
|
+
__export(types_exports, {
|
|
22
|
+
AddressConst: () => AddressConst,
|
|
23
|
+
ChainNameEnum: () => ChainNameEnum,
|
|
24
|
+
DexType: () => DexType
|
|
25
|
+
});
|
|
17
26
|
module.exports = __toCommonJS(types_exports);
|
|
27
|
+
var DexType = /* @__PURE__ */ ((DexType2) => {
|
|
28
|
+
DexType2["FX"] = "f(x)";
|
|
29
|
+
return DexType2;
|
|
30
|
+
})(DexType || {});
|
|
31
|
+
var ChainNameEnum = /* @__PURE__ */ ((ChainNameEnum2) => {
|
|
32
|
+
ChainNameEnum2["ETH"] = "ETH";
|
|
33
|
+
ChainNameEnum2["ARB"] = "ARB";
|
|
34
|
+
ChainNameEnum2["BSC"] = "BSC";
|
|
35
|
+
ChainNameEnum2["POL"] = "POL";
|
|
36
|
+
ChainNameEnum2["OP"] = "OP";
|
|
37
|
+
ChainNameEnum2["BASE"] = "BASE";
|
|
38
|
+
ChainNameEnum2["XPLA"] = "XPLA";
|
|
39
|
+
ChainNameEnum2["TELOS"] = "TELOS";
|
|
40
|
+
ChainNameEnum2["OKT"] = "OKT";
|
|
41
|
+
ChainNameEnum2["VIC"] = "VIC";
|
|
42
|
+
ChainNameEnum2["GNOSIS"] = "GNOSIS";
|
|
43
|
+
ChainNameEnum2["FUSE"] = "FUSE";
|
|
44
|
+
ChainNameEnum2["MANTA"] = "MANTA";
|
|
45
|
+
ChainNameEnum2["OPBNB"] = "OPBNB";
|
|
46
|
+
ChainNameEnum2["FTM"] = "FTM";
|
|
47
|
+
ChainNameEnum2["ORDERLY"] = "ORDERLY";
|
|
48
|
+
ChainNameEnum2["ASTAR"] = "ASTAR";
|
|
49
|
+
ChainNameEnum2["CFX"] = "CFX";
|
|
50
|
+
ChainNameEnum2["METIS"] = "METIS";
|
|
51
|
+
ChainNameEnum2["POLZK"] = "POLZK";
|
|
52
|
+
ChainNameEnum2["CORE"] = "CORE";
|
|
53
|
+
ChainNameEnum2["MOON"] = "MOON";
|
|
54
|
+
ChainNameEnum2["MOVR"] = "MOVR";
|
|
55
|
+
ChainNameEnum2["TENET"] = "TENET";
|
|
56
|
+
ChainNameEnum2["KAVA"] = "KAVA";
|
|
57
|
+
ChainNameEnum2["BEAM"] = "BEAM";
|
|
58
|
+
ChainNameEnum2["MNT"] = "MNT";
|
|
59
|
+
ChainNameEnum2["EON"] = "EON";
|
|
60
|
+
ChainNameEnum2["KLAY"] = "KLAY";
|
|
61
|
+
ChainNameEnum2["NOVA"] = "NOVA";
|
|
62
|
+
ChainNameEnum2["CELO"] = "CELO";
|
|
63
|
+
ChainNameEnum2["AVAX"] = "AVAX";
|
|
64
|
+
ChainNameEnum2["LINEA"] = "LINEA";
|
|
65
|
+
ChainNameEnum2["SCROLL"] = "SCROLL";
|
|
66
|
+
ChainNameEnum2["LOOT"] = "LOOT";
|
|
67
|
+
ChainNameEnum2["ZORA"] = "ZORA";
|
|
68
|
+
ChainNameEnum2["AURORA"] = "AURORA";
|
|
69
|
+
ChainNameEnum2["NOTALLOW"] = "NOTALLOW";
|
|
70
|
+
ChainNameEnum2["SOL"] = "SOL";
|
|
71
|
+
ChainNameEnum2["SWIMMER"] = "SWIMMER";
|
|
72
|
+
ChainNameEnum2["DFK"] = "DFK";
|
|
73
|
+
ChainNameEnum2["HARMONY"] = "HARMONY";
|
|
74
|
+
ChainNameEnum2["DEXALOT"] = "DEXALOT";
|
|
75
|
+
ChainNameEnum2["INTAIN"] = "INTAIN";
|
|
76
|
+
ChainNameEnum2["GOERLI"] = "GOERLI";
|
|
77
|
+
ChainNameEnum2["CANTO"] = "CANTO";
|
|
78
|
+
ChainNameEnum2["ZKSYNC"] = "ZKSYNC";
|
|
79
|
+
ChainNameEnum2["SHRAPNEL"] = "SHRAPNEL";
|
|
80
|
+
ChainNameEnum2["DOS"] = "DOS";
|
|
81
|
+
ChainNameEnum2["ZKPOLYGON"] = "ZKPOLYGON";
|
|
82
|
+
ChainNameEnum2["SEPOLIA"] = "SEPOLIA";
|
|
83
|
+
ChainNameEnum2["METER"] = "METER";
|
|
84
|
+
ChainNameEnum2["HUBBLE"] = "HUBBLE";
|
|
85
|
+
ChainNameEnum2["ZKCONSENSYS"] = "ZKCONSENSYS";
|
|
86
|
+
ChainNameEnum2["TOMO"] = "TOMO";
|
|
87
|
+
ChainNameEnum2["MERITCIRCLE"] = "MERITCIRCLE";
|
|
88
|
+
ChainNameEnum2["LIF3"] = "LIF3";
|
|
89
|
+
ChainNameEnum2["SHIMMER"] = "SHIMMER";
|
|
90
|
+
ChainNameEnum2["BB1"] = "BB1";
|
|
91
|
+
ChainNameEnum2["RARIBLE"] = "RARIBLE";
|
|
92
|
+
ChainNameEnum2["XAI"] = "XAI";
|
|
93
|
+
ChainNameEnum2["REAL"] = "REAL";
|
|
94
|
+
ChainNameEnum2["TILTYARD"] = "TILTYARD";
|
|
95
|
+
ChainNameEnum2["FRAXTAL"] = "FRAXTAL";
|
|
96
|
+
ChainNameEnum2["TRON"] = "TRON";
|
|
97
|
+
ChainNameEnum2["ZKATANA"] = "ZKATANA";
|
|
98
|
+
ChainNameEnum2["BLAST"] = "BLAST";
|
|
99
|
+
ChainNameEnum2["MODE"] = "MODE";
|
|
100
|
+
ChainNameEnum2["MASA"] = "MASA";
|
|
101
|
+
ChainNameEnum2["HOMEVERSE"] = "HOMEVERSE";
|
|
102
|
+
ChainNameEnum2["MERLIN"] = "MERLIN";
|
|
103
|
+
ChainNameEnum2["DEGEN"] = "DEGEN";
|
|
104
|
+
ChainNameEnum2["SKALE"] = "SKALE";
|
|
105
|
+
ChainNameEnum2["XLAYER"] = "XLAYER";
|
|
106
|
+
ChainNameEnum2["SANKO"] = "SANKO";
|
|
107
|
+
ChainNameEnum2["BOB"] = "BOB";
|
|
108
|
+
ChainNameEnum2["SEI"] = "SEI";
|
|
109
|
+
ChainNameEnum2["EBI"] = "EBI";
|
|
110
|
+
ChainNameEnum2["CYBER"] = "CYBER";
|
|
111
|
+
ChainNameEnum2["IOTA"] = "IOTA";
|
|
112
|
+
ChainNameEnum2["KINTO"] = "KINTO";
|
|
113
|
+
ChainNameEnum2["JOC"] = "JOC";
|
|
114
|
+
ChainNameEnum2["TAIKO"] = "TAIKO";
|
|
115
|
+
ChainNameEnum2["XCHAIN"] = "XCHAIN";
|
|
116
|
+
ChainNameEnum2["ETHERLINK"] = "ETHERLINK";
|
|
117
|
+
ChainNameEnum2["BOUNCEBIT"] = "BOUNCEBIT";
|
|
118
|
+
ChainNameEnum2["GRAVITY"] = "GRAVITY";
|
|
119
|
+
ChainNameEnum2["FLARE"] = "FLARE";
|
|
120
|
+
ChainNameEnum2["ZKLINK"] = "ZKLINK";
|
|
121
|
+
ChainNameEnum2["PEAQ"] = "PEAQ";
|
|
122
|
+
ChainNameEnum2["ZIRCUIT"] = "ZIRCUIT";
|
|
123
|
+
ChainNameEnum2["LIGHTLINK"] = "LIGHTLINK";
|
|
124
|
+
ChainNameEnum2["APTOS"] = "APTOS";
|
|
125
|
+
ChainNameEnum2["CODEX"] = "CODEX";
|
|
126
|
+
ChainNameEnum2["LYRA"] = "LYRA";
|
|
127
|
+
ChainNameEnum2["APE"] = "APE";
|
|
128
|
+
ChainNameEnum2["REYA"] = "REYA";
|
|
129
|
+
ChainNameEnum2["BITLAYER"] = "BITLAYER";
|
|
130
|
+
ChainNameEnum2["DM2VERSE"] = "DM2VERSE";
|
|
131
|
+
ChainNameEnum2["INITIA"] = "INITIA";
|
|
132
|
+
ChainNameEnum2["MOVEMENT"] = "MOVEMENT";
|
|
133
|
+
ChainNameEnum2["HEDERA"] = "HEDERA";
|
|
134
|
+
ChainNameEnum2["PLUME"] = "PLUME";
|
|
135
|
+
ChainNameEnum2["WORLDCHAIN"] = "WORLDCHAIN";
|
|
136
|
+
ChainNameEnum2["UNICHAIN"] = "UNICHAIN";
|
|
137
|
+
ChainNameEnum2["LISK"] = "LISK";
|
|
138
|
+
ChainNameEnum2["MORPH"] = "MORPH";
|
|
139
|
+
ChainNameEnum2["ABSTRACT"] = "ABSTRACT";
|
|
140
|
+
ChainNameEnum2["SUPERPOSITION"] = "SUPERPOSITION";
|
|
141
|
+
ChainNameEnum2["EDU"] = "EDU";
|
|
142
|
+
ChainNameEnum2["HEMI"] = "HEMI";
|
|
143
|
+
ChainNameEnum2["ISLANDER"] = "ISLANDER";
|
|
144
|
+
ChainNameEnum2["MP1"] = "MP1";
|
|
145
|
+
ChainNameEnum2["SONIC"] = "SONIC";
|
|
146
|
+
ChainNameEnum2["ROOTSTOCK"] = "ROOTSTOCK";
|
|
147
|
+
ChainNameEnum2["SOPHON"] = "SOPHON";
|
|
148
|
+
ChainNameEnum2["SWELL"] = "SWELL";
|
|
149
|
+
ChainNameEnum2["FLOW"] = "FLOW";
|
|
150
|
+
ChainNameEnum2["BL4"] = "BL4";
|
|
151
|
+
ChainNameEnum2["BL5"] = "BL5";
|
|
152
|
+
ChainNameEnum2["INK"] = "INK";
|
|
153
|
+
ChainNameEnum2["SONEIUM"] = "SONEIUM";
|
|
154
|
+
ChainNameEnum2["SPACE"] = "SPACE";
|
|
155
|
+
ChainNameEnum2["GLUE"] = "GLUE";
|
|
156
|
+
ChainNameEnum2["CRONOSEVM"] = "CRONOSEVM";
|
|
157
|
+
ChainNameEnum2["CRONOSZKEVM"] = "CRONOSZKEVM";
|
|
158
|
+
ChainNameEnum2["GOAT"] = "GOAT";
|
|
159
|
+
ChainNameEnum2["BERA"] = "BERA";
|
|
160
|
+
ChainNameEnum2["BAHAMUT"] = "BAHAMUT";
|
|
161
|
+
ChainNameEnum2["STORY"] = "STORY";
|
|
162
|
+
ChainNameEnum2["XDC"] = "XDC";
|
|
163
|
+
ChainNameEnum2["CONCRETE"] = "CONCRETE";
|
|
164
|
+
ChainNameEnum2["HYPERLIQUID"] = "HYPERLIQUID";
|
|
165
|
+
ChainNameEnum2["NIBIRUBURNED"] = "NIBIRUBURNED";
|
|
166
|
+
ChainNameEnum2["NIBIRU"] = "NIBIRU";
|
|
167
|
+
ChainNameEnum2["PLUMEPHOENIX"] = "PLUMEPHOENIX";
|
|
168
|
+
ChainNameEnum2["GUNZ"] = "GUNZ";
|
|
169
|
+
ChainNameEnum2["ANIMECHAIN"] = "ANIMECHAIN";
|
|
170
|
+
ChainNameEnum2["LENS"] = "LENS";
|
|
171
|
+
ChainNameEnum2["SUBTENSOREVM"] = "SUBTENSOREVM";
|
|
172
|
+
ChainNameEnum2["KATANA"] = "KATANA";
|
|
173
|
+
ChainNameEnum2["BOTANIX"] = "BOTANIX";
|
|
174
|
+
ChainNameEnum2["TAC"] = "TAC";
|
|
175
|
+
ChainNameEnum2["SILICON"] = "SILICON";
|
|
176
|
+
ChainNameEnum2["SOMNIA"] = "SOMNIA";
|
|
177
|
+
ChainNameEnum2["PLACEHOLDER0"] = "PLACEHOLDER0";
|
|
178
|
+
ChainNameEnum2["CAMP"] = "CAMP";
|
|
179
|
+
ChainNameEnum2["CONVERGE"] = "CONVERGE";
|
|
180
|
+
ChainNameEnum2["HUMANITY"] = "HUMANITY";
|
|
181
|
+
ChainNameEnum2["PLASMA"] = "PLASMA";
|
|
182
|
+
ChainNameEnum2["APEXFUSIONNEXUS"] = "APEXFUSIONNEXUS";
|
|
183
|
+
ChainNameEnum2["PGN"] = "PGN";
|
|
184
|
+
ChainNameEnum2["BEVM"] = "BEVM";
|
|
185
|
+
return ChainNameEnum2;
|
|
186
|
+
})(ChainNameEnum || {});
|
|
187
|
+
var AddressConst = {
|
|
188
|
+
weth: {
|
|
189
|
+
eth: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"
|
|
190
|
+
},
|
|
191
|
+
usdt: {
|
|
192
|
+
eth: ""
|
|
193
|
+
},
|
|
194
|
+
// fx
|
|
195
|
+
feth: {
|
|
196
|
+
eth: "0x53805A76E1f5ebbFE7115F16f9c87C2f7e633726"
|
|
197
|
+
},
|
|
198
|
+
xeth: {
|
|
199
|
+
eth: "0xe063F04f280c60aECa68b38341C2eEcBeC703ae2"
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
203
|
+
0 && (module.exports = {
|
|
204
|
+
AddressConst,
|
|
205
|
+
ChainNameEnum,
|
|
206
|
+
DexType
|
|
207
|
+
});
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
declare const QuoterAbi: ({
|
|
2
|
+
type: string;
|
|
3
|
+
inputs: {
|
|
4
|
+
name: string;
|
|
5
|
+
type: string;
|
|
6
|
+
internalType: string;
|
|
7
|
+
}[];
|
|
8
|
+
stateMutability: string;
|
|
9
|
+
name?: undefined;
|
|
10
|
+
outputs?: undefined;
|
|
11
|
+
anonymous?: undefined;
|
|
12
|
+
} | {
|
|
13
|
+
type: string;
|
|
14
|
+
name: string;
|
|
15
|
+
inputs: ({
|
|
16
|
+
name: string;
|
|
17
|
+
type: string;
|
|
18
|
+
internalType: string;
|
|
19
|
+
components?: undefined;
|
|
20
|
+
} | {
|
|
21
|
+
name: string;
|
|
22
|
+
type: string;
|
|
23
|
+
internalType: string;
|
|
24
|
+
components: {
|
|
25
|
+
name: string;
|
|
26
|
+
type: string;
|
|
27
|
+
internalType: string;
|
|
28
|
+
}[];
|
|
29
|
+
})[];
|
|
30
|
+
outputs: {
|
|
31
|
+
name: string;
|
|
32
|
+
type: string;
|
|
33
|
+
internalType: string;
|
|
34
|
+
}[];
|
|
35
|
+
stateMutability: string;
|
|
36
|
+
anonymous?: undefined;
|
|
37
|
+
} | {
|
|
38
|
+
type: string;
|
|
39
|
+
name: string;
|
|
40
|
+
inputs: {
|
|
41
|
+
name: string;
|
|
42
|
+
type: string;
|
|
43
|
+
internalType: string;
|
|
44
|
+
components: ({
|
|
45
|
+
name: string;
|
|
46
|
+
type: string;
|
|
47
|
+
internalType: string;
|
|
48
|
+
components?: undefined;
|
|
49
|
+
} | {
|
|
50
|
+
name: string;
|
|
51
|
+
type: string;
|
|
52
|
+
internalType: string;
|
|
53
|
+
components: {
|
|
54
|
+
name: string;
|
|
55
|
+
type: string;
|
|
56
|
+
internalType: string;
|
|
57
|
+
}[];
|
|
58
|
+
})[];
|
|
59
|
+
}[];
|
|
60
|
+
outputs: {
|
|
61
|
+
name: string;
|
|
62
|
+
type: string;
|
|
63
|
+
internalType: string;
|
|
64
|
+
}[];
|
|
65
|
+
stateMutability: string;
|
|
66
|
+
anonymous?: undefined;
|
|
67
|
+
} | {
|
|
68
|
+
type: string;
|
|
69
|
+
name: string;
|
|
70
|
+
inputs: {
|
|
71
|
+
name: string;
|
|
72
|
+
type: string;
|
|
73
|
+
indexed: boolean;
|
|
74
|
+
internalType: string;
|
|
75
|
+
}[];
|
|
76
|
+
anonymous: boolean;
|
|
77
|
+
stateMutability?: undefined;
|
|
78
|
+
outputs?: undefined;
|
|
79
|
+
})[];
|
|
80
|
+
export default QuoterAbi;
|