@across-protocol/sdk 3.3.32 → 3.4.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/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +10 -10
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.d.ts +2 -1
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js +2 -2
- package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +6 -4
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js +21 -13
- package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/linea-viem.d.ts +2 -1
- package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +16 -10
- package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/linea.d.ts +2 -1
- package/dist/cjs/gasPriceOracle/adapters/linea.js +2 -2
- package/dist/cjs/gasPriceOracle/adapters/linea.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/polygon.d.ts +21 -1
- package/dist/cjs/gasPriceOracle/adapters/polygon.js +45 -5
- package/dist/cjs/gasPriceOracle/adapters/polygon.js.map +1 -1
- package/dist/cjs/gasPriceOracle/oracle.d.ts +11 -3
- package/dist/cjs/gasPriceOracle/oracle.js +29 -27
- package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
- package/dist/cjs/providers/types.d.ts +3 -3
- package/dist/cjs/relayFeeCalculator/chain-queries/alephZero.d.ts +0 -229
- package/dist/cjs/relayFeeCalculator/chain-queries/alephZero.js +2 -12
- package/dist/cjs/relayFeeCalculator/chain-queries/alephZero.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +10 -5
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +55 -11
- package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.d.ts +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +4 -5
- package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.d.ts +0 -229
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.js +2 -12
- package/dist/cjs/relayFeeCalculator/chain-queries/polygon.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +1 -1
- package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/cjs/utils/common.d.ts +1 -8
- package/dist/cjs/utils/common.js +1 -83
- package/dist/cjs/utils/common.js.map +1 -1
- package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +10 -10
- package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +10 -1
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js +10 -4
- package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +19 -6
- package/dist/esm/gasPriceOracle/adapters/ethereum.js +38 -16
- package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/linea-viem.d.ts +19 -1
- package/dist/esm/gasPriceOracle/adapters/linea-viem.js +33 -10
- package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/linea.d.ts +2 -1
- package/dist/esm/gasPriceOracle/adapters/linea.js +6 -2
- package/dist/esm/gasPriceOracle/adapters/linea.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/polygon.d.ts +27 -1
- package/dist/esm/gasPriceOracle/adapters/polygon.js +49 -5
- package/dist/esm/gasPriceOracle/adapters/polygon.js.map +1 -1
- package/dist/esm/gasPriceOracle/oracle.d.ts +16 -8
- package/dist/esm/gasPriceOracle/oracle.js +35 -33
- package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
- package/dist/esm/providers/types.d.ts +3 -3
- package/dist/esm/relayFeeCalculator/chain-queries/alephZero.d.ts +0 -229
- package/dist/esm/relayFeeCalculator/chain-queries/alephZero.js +3 -13
- package/dist/esm/relayFeeCalculator/chain-queries/alephZero.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +21 -7
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +68 -15
- package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/factory.d.ts +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js +4 -5
- package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.d.ts +0 -229
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.js +3 -13
- package/dist/esm/relayFeeCalculator/chain-queries/polygon.js.map +1 -1
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +1 -1
- package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
- package/dist/esm/utils/common.d.ts +1 -19
- package/dist/esm/utils/common.js +3 -95
- package/dist/esm/utils/common.js.map +1 -1
- package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +10 -10
- package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +10 -1
- package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +19 -6
- package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts +19 -1
- package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/linea.d.ts +2 -1
- package/dist/types/gasPriceOracle/adapters/linea.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/polygon.d.ts +27 -1
- package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/oracle.d.ts +16 -8
- package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
- package/dist/types/providers/types.d.ts +3 -3
- package/dist/types/relayFeeCalculator/chain-queries/alephZero.d.ts +0 -229
- package/dist/types/relayFeeCalculator/chain-queries/alephZero.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +21 -7
- package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/polygon.d.ts +0 -229
- package/dist/types/relayFeeCalculator/chain-queries/polygon.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +1 -1
- package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
- package/dist/types/utils/common.d.ts +1 -19
- package/dist/types/utils/common.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/gasPriceOracle/adapters/arbitrum.ts +13 -6
- package/src/gasPriceOracle/adapters/ethereum.ts +43 -12
- package/src/gasPriceOracle/adapters/linea-viem.ts +32 -6
- package/src/gasPriceOracle/adapters/linea.ts +7 -2
- package/src/gasPriceOracle/adapters/polygon.ts +46 -5
- package/src/gasPriceOracle/oracle.ts +53 -28
- package/src/relayFeeCalculator/chain-queries/alephZero.ts +1 -29
- package/src/relayFeeCalculator/chain-queries/baseQuery.ts +73 -20
- package/src/relayFeeCalculator/chain-queries/factory.ts +6 -6
- package/src/relayFeeCalculator/chain-queries/polygon.ts +1 -29
- package/src/relayFeeCalculator/relayFeeCalculator.ts +6 -1
- package/src/utils/common.ts +2 -92
- package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.d.ts +0 -3
- package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.js +0 -21
- package/dist/cjs/gasPriceOracle/adapters/arbitrum-viem.js.map +0 -1
- package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.d.ts +0 -4
- package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.js +0 -26
- package/dist/cjs/gasPriceOracle/adapters/ethereum-viem.js.map +0 -1
- package/dist/cjs/gasPriceOracle/adapters/polygon-viem.d.ts +0 -3
- package/dist/cjs/gasPriceOracle/adapters/polygon-viem.js +0 -84
- package/dist/cjs/gasPriceOracle/adapters/polygon-viem.js.map +0 -1
- package/dist/cjs/package.json +0 -1
- package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.d.ts +0 -3
- package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.js +0 -20
- package/dist/esm/gasPriceOracle/adapters/arbitrum-viem.js.map +0 -1
- package/dist/esm/gasPriceOracle/adapters/ethereum-viem.d.ts +0 -4
- package/dist/esm/gasPriceOracle/adapters/ethereum-viem.js +0 -21
- package/dist/esm/gasPriceOracle/adapters/ethereum-viem.js.map +0 -1
- package/dist/esm/gasPriceOracle/adapters/polygon-viem.d.ts +0 -3
- package/dist/esm/gasPriceOracle/adapters/polygon-viem.js +0 -82
- package/dist/esm/gasPriceOracle/adapters/polygon-viem.js.map +0 -1
- package/dist/esm/package.json +0 -1
- package/dist/types/gasPriceOracle/adapters/arbitrum-viem.d.ts +0 -4
- package/dist/types/gasPriceOracle/adapters/arbitrum-viem.d.ts.map +0 -1
- package/dist/types/gasPriceOracle/adapters/ethereum-viem.d.ts +0 -5
- package/dist/types/gasPriceOracle/adapters/ethereum-viem.d.ts.map +0 -1
- package/dist/types/gasPriceOracle/adapters/polygon-viem.d.ts +0 -4
- package/dist/types/gasPriceOracle/adapters/polygon-viem.d.ts.map +0 -1
- package/src/gasPriceOracle/adapters/arbitrum-viem.ts +0 -13
- package/src/gasPriceOracle/adapters/ethereum-viem.ts +0 -19
- package/src/gasPriceOracle/adapters/polygon-viem.ts +0 -86
|
@@ -1,233 +1,4 @@
|
|
|
1
|
-
import { Logger } from "../relayFeeCalculator";
|
|
2
|
-
import { providers } from "ethers";
|
|
3
1
|
import { QueryBase } from "./baseQuery";
|
|
4
2
|
export declare class PolygonQueries extends QueryBase {
|
|
5
|
-
constructor(provider: providers.Provider, symbolMapping?: {
|
|
6
|
-
ACX: {
|
|
7
|
-
name: string;
|
|
8
|
-
symbol: string;
|
|
9
|
-
decimals: number;
|
|
10
|
-
addresses: {
|
|
11
|
-
[x: number]: string;
|
|
12
|
-
};
|
|
13
|
-
coingeckoId: string;
|
|
14
|
-
};
|
|
15
|
-
ARB: {
|
|
16
|
-
name: string;
|
|
17
|
-
symbol: string;
|
|
18
|
-
decimals: number;
|
|
19
|
-
addresses: {
|
|
20
|
-
[x: number]: string;
|
|
21
|
-
};
|
|
22
|
-
coingeckoId: string;
|
|
23
|
-
};
|
|
24
|
-
AZERO: {
|
|
25
|
-
name: string;
|
|
26
|
-
symbol: string;
|
|
27
|
-
decimals: number;
|
|
28
|
-
addresses: {
|
|
29
|
-
[x: number]: string;
|
|
30
|
-
};
|
|
31
|
-
coingeckoId: string;
|
|
32
|
-
};
|
|
33
|
-
BAL: {
|
|
34
|
-
name: string;
|
|
35
|
-
symbol: string;
|
|
36
|
-
decimals: number;
|
|
37
|
-
addresses: {
|
|
38
|
-
[x: number]: string;
|
|
39
|
-
};
|
|
40
|
-
coingeckoId: string;
|
|
41
|
-
};
|
|
42
|
-
BADGER: {
|
|
43
|
-
name: string;
|
|
44
|
-
symbol: string;
|
|
45
|
-
decimals: number;
|
|
46
|
-
addresses: {
|
|
47
|
-
[x: number]: string;
|
|
48
|
-
};
|
|
49
|
-
coingeckoId: string;
|
|
50
|
-
};
|
|
51
|
-
BOBA: {
|
|
52
|
-
name: string;
|
|
53
|
-
symbol: string;
|
|
54
|
-
decimals: number;
|
|
55
|
-
addresses: {
|
|
56
|
-
[x: number]: string;
|
|
57
|
-
};
|
|
58
|
-
coingeckoId: string;
|
|
59
|
-
};
|
|
60
|
-
DAI: {
|
|
61
|
-
name: string;
|
|
62
|
-
symbol: string;
|
|
63
|
-
decimals: number;
|
|
64
|
-
addresses: {
|
|
65
|
-
[x: number]: string;
|
|
66
|
-
};
|
|
67
|
-
coingeckoId: string;
|
|
68
|
-
};
|
|
69
|
-
ETH: {
|
|
70
|
-
name: string;
|
|
71
|
-
symbol: string;
|
|
72
|
-
decimals: number;
|
|
73
|
-
addresses: {
|
|
74
|
-
[x: number]: string;
|
|
75
|
-
};
|
|
76
|
-
coingeckoId: string;
|
|
77
|
-
};
|
|
78
|
-
GHO: {
|
|
79
|
-
name: string;
|
|
80
|
-
symbol: string;
|
|
81
|
-
decimals: number;
|
|
82
|
-
addresses: {
|
|
83
|
-
[x: number]: string;
|
|
84
|
-
};
|
|
85
|
-
coingeckoId: string;
|
|
86
|
-
};
|
|
87
|
-
LSK: {
|
|
88
|
-
name: string;
|
|
89
|
-
symbol: string;
|
|
90
|
-
decimals: number;
|
|
91
|
-
addresses: {
|
|
92
|
-
[x: number]: string;
|
|
93
|
-
};
|
|
94
|
-
coingeckoId: string;
|
|
95
|
-
};
|
|
96
|
-
MATIC: {
|
|
97
|
-
name: string;
|
|
98
|
-
symbol: string;
|
|
99
|
-
decimals: number;
|
|
100
|
-
addresses: {
|
|
101
|
-
[x: number]: string;
|
|
102
|
-
};
|
|
103
|
-
coingeckoId: string;
|
|
104
|
-
};
|
|
105
|
-
OP: {
|
|
106
|
-
name: string;
|
|
107
|
-
symbol: string;
|
|
108
|
-
decimals: number;
|
|
109
|
-
addresses: {
|
|
110
|
-
[x: number]: string;
|
|
111
|
-
};
|
|
112
|
-
coingeckoId: string;
|
|
113
|
-
};
|
|
114
|
-
POOL: {
|
|
115
|
-
name: string;
|
|
116
|
-
symbol: string;
|
|
117
|
-
decimals: number;
|
|
118
|
-
addresses: {
|
|
119
|
-
[x: number]: string;
|
|
120
|
-
};
|
|
121
|
-
coingeckoId: string;
|
|
122
|
-
};
|
|
123
|
-
SNX: {
|
|
124
|
-
name: string;
|
|
125
|
-
symbol: string;
|
|
126
|
-
decimals: number;
|
|
127
|
-
addresses: {
|
|
128
|
-
[x: number]: string;
|
|
129
|
-
};
|
|
130
|
-
coingeckoId: string;
|
|
131
|
-
};
|
|
132
|
-
UMA: {
|
|
133
|
-
name: string;
|
|
134
|
-
symbol: string;
|
|
135
|
-
decimals: number;
|
|
136
|
-
addresses: {
|
|
137
|
-
[x: number]: string;
|
|
138
|
-
};
|
|
139
|
-
coingeckoId: string;
|
|
140
|
-
};
|
|
141
|
-
USDB: {
|
|
142
|
-
name: string;
|
|
143
|
-
symbol: string;
|
|
144
|
-
decimals: number;
|
|
145
|
-
addresses: {
|
|
146
|
-
[x: number]: string;
|
|
147
|
-
};
|
|
148
|
-
coingeckoId: string;
|
|
149
|
-
};
|
|
150
|
-
USDC: {
|
|
151
|
-
name: string;
|
|
152
|
-
symbol: string;
|
|
153
|
-
decimals: number;
|
|
154
|
-
addresses: {
|
|
155
|
-
[x: number]: string;
|
|
156
|
-
};
|
|
157
|
-
coingeckoId: string;
|
|
158
|
-
};
|
|
159
|
-
"USDC.e": {
|
|
160
|
-
name: string;
|
|
161
|
-
symbol: string;
|
|
162
|
-
decimals: number;
|
|
163
|
-
addresses: {
|
|
164
|
-
[x: number]: string;
|
|
165
|
-
};
|
|
166
|
-
coingeckoId: string;
|
|
167
|
-
};
|
|
168
|
-
USDbC: {
|
|
169
|
-
name: string;
|
|
170
|
-
symbol: string;
|
|
171
|
-
decimals: number;
|
|
172
|
-
addresses: {
|
|
173
|
-
[x: number]: string;
|
|
174
|
-
};
|
|
175
|
-
coingeckoId: string;
|
|
176
|
-
};
|
|
177
|
-
USDzC: {
|
|
178
|
-
name: string;
|
|
179
|
-
symbol: string;
|
|
180
|
-
decimals: number;
|
|
181
|
-
addresses: {
|
|
182
|
-
[x: number]: string;
|
|
183
|
-
};
|
|
184
|
-
coingeckoId: string;
|
|
185
|
-
};
|
|
186
|
-
USDT: {
|
|
187
|
-
name: string;
|
|
188
|
-
symbol: string;
|
|
189
|
-
decimals: number;
|
|
190
|
-
addresses: {
|
|
191
|
-
[x: number]: string;
|
|
192
|
-
};
|
|
193
|
-
coingeckoId: string;
|
|
194
|
-
};
|
|
195
|
-
WAZERO: {
|
|
196
|
-
name: string;
|
|
197
|
-
symbol: string;
|
|
198
|
-
decimals: number;
|
|
199
|
-
addresses: {
|
|
200
|
-
[x: number]: string;
|
|
201
|
-
};
|
|
202
|
-
coingeckoId: string;
|
|
203
|
-
};
|
|
204
|
-
WBTC: {
|
|
205
|
-
name: string;
|
|
206
|
-
symbol: string;
|
|
207
|
-
decimals: number;
|
|
208
|
-
addresses: {
|
|
209
|
-
[x: number]: string;
|
|
210
|
-
};
|
|
211
|
-
coingeckoId: string;
|
|
212
|
-
};
|
|
213
|
-
WETH: {
|
|
214
|
-
name: string;
|
|
215
|
-
symbol: string;
|
|
216
|
-
decimals: number;
|
|
217
|
-
addresses: {
|
|
218
|
-
[x: number]: string;
|
|
219
|
-
};
|
|
220
|
-
coingeckoId: string;
|
|
221
|
-
};
|
|
222
|
-
WMATIC: {
|
|
223
|
-
name: string;
|
|
224
|
-
symbol: string;
|
|
225
|
-
decimals: number;
|
|
226
|
-
addresses: {
|
|
227
|
-
[x: number]: string;
|
|
228
|
-
};
|
|
229
|
-
coingeckoId: string;
|
|
230
|
-
};
|
|
231
|
-
}, spokePoolAddress?: string | undefined, simulatedRelayerAddress?: string, coingeckoProApiKey?: string, logger?: Logger, gasMarkup?: number);
|
|
232
3
|
getTokenPrice(tokenSymbol: string): Promise<number>;
|
|
233
4
|
}
|
|
@@ -2,23 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PolygonQueries = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
|
-
var assert_1 = tslib_1.__importDefault(require("assert"));
|
|
6
|
-
var DeploymentUtils_1 = require("../../utils/DeploymentUtils");
|
|
7
|
-
var relayFeeCalculator_1 = require("../relayFeeCalculator");
|
|
8
5
|
var constants_1 = require("../../constants");
|
|
9
6
|
var Coingecko_1 = require("../../coingecko/Coingecko");
|
|
10
|
-
var utils_1 = require("../../utils");
|
|
11
7
|
var baseQuery_1 = require("./baseQuery");
|
|
12
8
|
var PolygonQueries = (function (_super) {
|
|
13
9
|
tslib_1.__extends(PolygonQueries, _super);
|
|
14
|
-
function PolygonQueries(
|
|
15
|
-
|
|
16
|
-
if (spokePoolAddress === void 0) { spokePoolAddress = (0, DeploymentUtils_1.getDeployedAddress)("SpokePool", constants_1.CHAIN_IDs.POLYGON); }
|
|
17
|
-
if (simulatedRelayerAddress === void 0) { simulatedRelayerAddress = constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS; }
|
|
18
|
-
if (logger === void 0) { logger = relayFeeCalculator_1.DEFAULT_LOGGER; }
|
|
19
|
-
if (gasMarkup === void 0) { gasMarkup = 0; }
|
|
20
|
-
(0, assert_1.default)((0, utils_1.isDefined)(spokePoolAddress));
|
|
21
|
-
return _super.call(this, provider, symbolMapping, spokePoolAddress, simulatedRelayerAddress, gasMarkup, logger, coingeckoProApiKey, undefined, "usd") || this;
|
|
10
|
+
function PolygonQueries() {
|
|
11
|
+
return _super !== null && _super.apply(this, arguments) || this;
|
|
22
12
|
}
|
|
23
13
|
PolygonQueries.prototype.getTokenPrice = function (tokenSymbol) {
|
|
24
14
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygon.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/polygon.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"polygon.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/polygon.ts"],"names":[],"mappings":";;;;AAAA,6CAA4C;AAC5C,uDAAsD;AACtD,yCAAwC;AAExC;IAAoC,0CAAS;IAA7C;;IAeA,CAAC;IAdgB,sCAAa,GAA5B,UAA6B,WAAmB;;;;;;wBAC9C,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;4BAAE,MAAM,IAAI,KAAK,CAAC,UAAG,WAAW,+BAA4B,CAAC,CAAC;wBAC5F,iBAAiB,GAAG,qBAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;wBACvD,WAAM,iBAAiB,CAAC,yBAAyB,CACtE,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,qBAAS,CAAC,OAAO,CAAC,EAC5D,KAAK,CACN,EAAA;;wBAHK,KAAiB,SAGtB,EAHQ,UAAU,QAAA;wBAKI,WAAM,iBAAiB,CAAC,yBAAyB,CACtE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,qBAAS,CAAC,OAAO,CAAC,EACxD,KAAK,CACN,EAAA;;wBAHK,KAAiB,SAGtB,EAHQ,UAAU,QAAA;wBAInB,WAAO,MAAM,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAC;;;;KACxF;IACH,qBAAC;AAAD,CAAC,AAfD,CAAoC,qBAAS,GAe5C;AAfY,wCAAc"}
|
|
@@ -5,7 +5,7 @@ export interface QueryInterface {
|
|
|
5
5
|
getGasCosts: (deposit: Deposit, relayer: string, options?: Partial<{
|
|
6
6
|
gasPrice: BigNumberish;
|
|
7
7
|
gasUnits: BigNumberish;
|
|
8
|
-
|
|
8
|
+
baseFeeMultiplier: BigNumber;
|
|
9
9
|
transport: Transport;
|
|
10
10
|
}>) => Promise<TransactionCostEstimate>;
|
|
11
11
|
getTokenPrice: (tokenSymbol: string) => Promise<number>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":";;;;AAAA,0DAA4B;AAC5B,0CAAoF;AAEpF,kCAekB;
|
|
1
|
+
{"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import { L2Provider } from "@eth-optimism/sdk/dist/interfaces/l2-provider";
|
|
2
1
|
import Decimal from "decimal.js";
|
|
3
|
-
import { ethers
|
|
2
|
+
import { ethers } from "ethers";
|
|
4
3
|
import { BigNumber, BigNumberish, BN } from "./BigNumberUtils";
|
|
5
|
-
import { Transport } from "viem";
|
|
6
4
|
export type Decimalish = string | number | Decimal;
|
|
7
5
|
export declare const AddressZero = "0x0000000000000000000000000000000000000000";
|
|
8
6
|
export declare const MAX_BIG_INT: ethers.BigNumber;
|
|
@@ -26,9 +24,4 @@ export type TransactionCostEstimate = {
|
|
|
26
24
|
tokenGasCost: BigNumber;
|
|
27
25
|
gasPrice: BigNumber;
|
|
28
26
|
};
|
|
29
|
-
export declare function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, options?: Partial<{
|
|
30
|
-
gasPrice: BigNumberish;
|
|
31
|
-
gasUnits: BigNumberish;
|
|
32
|
-
transport: Transport;
|
|
33
|
-
}>): Promise<TransactionCostEstimate>;
|
|
34
27
|
export declare function randomAddress(): string;
|
package/dist/cjs/utils/common.js
CHANGED
|
@@ -1,18 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.randomAddress = exports.
|
|
3
|
+
exports.randomAddress = exports.retry = exports.delay = exports.getSamplesBetween = exports.calcApr = exports.calcPeriodicCompoundInterest = exports.calcContinuousCompoundInterest = exports.percent = exports.calculateGasFees = exports.gasCost = exports.nativeToToken = exports.fixedPointAdjustment = exports.max = exports.min = exports.fromWei = exports.toBNWei = exports.MAX_BIG_INT = exports.AddressZero = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
|
-
var l2_provider_1 = require("@eth-optimism/sdk/dist/l2-provider");
|
|
6
|
-
var assert_1 = tslib_1.__importDefault(require("assert"));
|
|
7
5
|
var decimal_js_1 = tslib_1.__importDefault(require("decimal.js"));
|
|
8
6
|
var ethers_1 = require("ethers");
|
|
9
|
-
var gasPriceOracle_1 = require("../gasPriceOracle");
|
|
10
7
|
var BigNumberUtils_1 = require("./BigNumberUtils");
|
|
11
8
|
var FormattingUtils_1 = require("./FormattingUtils");
|
|
12
|
-
var NetworkUtils_1 = require("./NetworkUtils");
|
|
13
|
-
var constants_1 = require("@across-protocol/constants");
|
|
14
|
-
var linea_1 = require("viem/linea");
|
|
15
|
-
var util_1 = require("../gasPriceOracle/util");
|
|
16
9
|
exports.AddressZero = ethers_1.ethers.constants.AddressZero;
|
|
17
10
|
exports.MAX_BIG_INT = BigNumberUtils_1.BigNumber.from(Number.MAX_SAFE_INTEGER.toString());
|
|
18
11
|
var toBNWei = function (num, decimals) { return (0, BigNumberUtils_1.parseUnits)(num.toString(), decimals); };
|
|
@@ -113,81 +106,6 @@ function retry(call, times, delayS) {
|
|
|
113
106
|
return promiseChain;
|
|
114
107
|
}
|
|
115
108
|
exports.retry = retry;
|
|
116
|
-
function estimateTotalGasRequiredByUnsignedTransaction(unsignedTx, senderAddress, provider, options) {
|
|
117
|
-
if (options === void 0) { options = {}; }
|
|
118
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
119
|
-
var _a, _gasPrice, gasUnits, transport, chainId, voidSigner, queries, _b, nativeGasCost, gasPrice, tokenGasCost, populatedTransaction, l1GasCost, l2GasCost, baseFeePerGas, priorityFeePerGas;
|
|
120
|
-
var _c;
|
|
121
|
-
return tslib_1.__generator(this, function (_d) {
|
|
122
|
-
switch (_d.label) {
|
|
123
|
-
case 0:
|
|
124
|
-
_a = options || {}, _gasPrice = _a.gasPrice, gasUnits = _a.gasUnits, transport = _a.transport;
|
|
125
|
-
return [4, provider.getNetwork()];
|
|
126
|
-
case 1:
|
|
127
|
-
chainId = (_d.sent()).chainId;
|
|
128
|
-
voidSigner = new ethers_1.VoidSigner(senderAddress, provider);
|
|
129
|
-
queries = [
|
|
130
|
-
gasUnits ? Promise.resolve(BigNumberUtils_1.BigNumber.from(gasUnits)) : voidSigner.estimateGas(unsignedTx),
|
|
131
|
-
_gasPrice ? Promise.resolve({ maxFeePerGas: _gasPrice }) : (0, gasPriceOracle_1.getGasPriceEstimate)(provider, chainId, transport),
|
|
132
|
-
];
|
|
133
|
-
return [4, Promise.all(queries)];
|
|
134
|
-
case 2:
|
|
135
|
-
_b = _d.sent(), nativeGasCost = _b[0], gasPrice = _b[1].maxFeePerGas;
|
|
136
|
-
(0, assert_1.default)(nativeGasCost.gt(BigNumberUtils_1.bnZero), "Gas cost should not be 0");
|
|
137
|
-
if (!(0, NetworkUtils_1.chainIsOPStack)(chainId)) return [3, 5];
|
|
138
|
-
(0, assert_1.default)((0, l2_provider_1.isL2Provider)(provider), "Unexpected provider for chain ID ".concat(chainId, "."));
|
|
139
|
-
return [4, voidSigner.populateTransaction(tslib_1.__assign(tslib_1.__assign({}, unsignedTx), { gasLimit: nativeGasCost }))];
|
|
140
|
-
case 3:
|
|
141
|
-
populatedTransaction = _d.sent();
|
|
142
|
-
return [4, provider.estimateL1GasCost(populatedTransaction)];
|
|
143
|
-
case 4:
|
|
144
|
-
l1GasCost = _d.sent();
|
|
145
|
-
l2GasCost = nativeGasCost.mul(gasPrice);
|
|
146
|
-
tokenGasCost = l1GasCost.add(l2GasCost);
|
|
147
|
-
return [3, 8];
|
|
148
|
-
case 5:
|
|
149
|
-
if (!(chainId === constants_1.CHAIN_IDs.LINEA && process.env["NEW_GAS_PRICE_ORACLE_".concat(chainId)] === "true")) return [3, 7];
|
|
150
|
-
baseFeePerGas = void 0, priorityFeePerGas = void 0;
|
|
151
|
-
return [4, getLineaGasFees(chainId, transport, unsignedTx)];
|
|
152
|
-
case 6:
|
|
153
|
-
(_c = _d.sent(), nativeGasCost = _c.gasLimit, baseFeePerGas = _c.baseFeePerGas, priorityFeePerGas = _c.priorityFeePerGas);
|
|
154
|
-
gasPrice = baseFeePerGas.add(priorityFeePerGas);
|
|
155
|
-
_d.label = 7;
|
|
156
|
-
case 7:
|
|
157
|
-
tokenGasCost = nativeGasCost.mul(gasPrice);
|
|
158
|
-
_d.label = 8;
|
|
159
|
-
case 8: return [2, {
|
|
160
|
-
nativeGasCost: nativeGasCost,
|
|
161
|
-
tokenGasCost: tokenGasCost,
|
|
162
|
-
gasPrice: tokenGasCost.div(nativeGasCost),
|
|
163
|
-
}];
|
|
164
|
-
}
|
|
165
|
-
});
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
exports.estimateTotalGasRequiredByUnsignedTransaction = estimateTotalGasRequiredByUnsignedTransaction;
|
|
169
|
-
function getLineaGasFees(chainId, transport, unsignedTx) {
|
|
170
|
-
var _a;
|
|
171
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
172
|
-
var _b, gasLimit, baseFeePerGas, priorityFeePerGas;
|
|
173
|
-
return tslib_1.__generator(this, function (_c) {
|
|
174
|
-
switch (_c.label) {
|
|
175
|
-
case 0: return [4, (0, linea_1.estimateGas)((0, util_1.getPublicClient)(chainId, transport), {
|
|
176
|
-
account: unsignedTx.from,
|
|
177
|
-
to: unsignedTx.to,
|
|
178
|
-
value: BigInt(((_a = unsignedTx.value) === null || _a === void 0 ? void 0 : _a.toString()) || "1"),
|
|
179
|
-
})];
|
|
180
|
-
case 1:
|
|
181
|
-
_b = _c.sent(), gasLimit = _b.gasLimit, baseFeePerGas = _b.baseFeePerGas, priorityFeePerGas = _b.priorityFeePerGas;
|
|
182
|
-
return [2, {
|
|
183
|
-
gasLimit: BigNumberUtils_1.BigNumber.from(gasLimit.toString()),
|
|
184
|
-
baseFeePerGas: BigNumberUtils_1.BigNumber.from(baseFeePerGas.toString()),
|
|
185
|
-
priorityFeePerGas: BigNumberUtils_1.BigNumber.from(priorityFeePerGas.toString()),
|
|
186
|
-
}];
|
|
187
|
-
}
|
|
188
|
-
});
|
|
189
|
-
});
|
|
190
|
-
}
|
|
191
109
|
function randomAddress() {
|
|
192
110
|
return ethers_1.ethers.utils.getAddress(ethers_1.ethers.utils.hexlify(ethers_1.ethers.utils.randomBytes(20)));
|
|
193
111
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/utils/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
3
3
|
bundleDepositsV3: Record<string, Record<string, {
|
|
4
4
|
blockNumber: number;
|
|
5
5
|
transactionIndex: number;
|
|
6
|
-
transactionHash: string;
|
|
7
6
|
logIndex: number;
|
|
7
|
+
transactionHash: string;
|
|
8
8
|
message: string;
|
|
9
9
|
originChainId: number;
|
|
10
10
|
inputToken: string;
|
|
@@ -32,8 +32,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
32
32
|
fills: {
|
|
33
33
|
blockNumber: number;
|
|
34
34
|
transactionIndex: number;
|
|
35
|
-
transactionHash: string;
|
|
36
35
|
logIndex: number;
|
|
36
|
+
transactionHash: string;
|
|
37
37
|
message: string;
|
|
38
38
|
originChainId: number;
|
|
39
39
|
inputToken: string;
|
|
@@ -65,8 +65,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
65
65
|
bundleSlowFillsV3: Record<string, Record<string, {
|
|
66
66
|
blockNumber: number;
|
|
67
67
|
transactionIndex: number;
|
|
68
|
-
transactionHash: string;
|
|
69
68
|
logIndex: number;
|
|
69
|
+
transactionHash: string;
|
|
70
70
|
message: string;
|
|
71
71
|
originChainId: number;
|
|
72
72
|
inputToken: string;
|
|
@@ -94,8 +94,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
94
94
|
expiredDepositsToRefundV3: Record<string, Record<string, {
|
|
95
95
|
blockNumber: number;
|
|
96
96
|
transactionIndex: number;
|
|
97
|
-
transactionHash: string;
|
|
98
97
|
logIndex: number;
|
|
98
|
+
transactionHash: string;
|
|
99
99
|
message: string;
|
|
100
100
|
originChainId: number;
|
|
101
101
|
inputToken: string;
|
|
@@ -122,8 +122,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
122
122
|
unexecutableSlowFills: Record<string, Record<string, {
|
|
123
123
|
blockNumber: number;
|
|
124
124
|
transactionIndex: number;
|
|
125
|
-
transactionHash: string;
|
|
126
125
|
logIndex: number;
|
|
126
|
+
transactionHash: string;
|
|
127
127
|
message: string;
|
|
128
128
|
originChainId: number;
|
|
129
129
|
inputToken: string;
|
|
@@ -152,8 +152,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
152
152
|
bundleDepositsV3: import("superstruct").Struct<Record<string, Record<string, {
|
|
153
153
|
blockNumber: number;
|
|
154
154
|
transactionIndex: number;
|
|
155
|
-
transactionHash: string;
|
|
156
155
|
logIndex: number;
|
|
156
|
+
transactionHash: string;
|
|
157
157
|
message: string;
|
|
158
158
|
originChainId: number;
|
|
159
159
|
inputToken: string;
|
|
@@ -180,8 +180,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
180
180
|
expiredDepositsToRefundV3: import("superstruct").Struct<Record<string, Record<string, {
|
|
181
181
|
blockNumber: number;
|
|
182
182
|
transactionIndex: number;
|
|
183
|
-
transactionHash: string;
|
|
184
183
|
logIndex: number;
|
|
184
|
+
transactionHash: string;
|
|
185
185
|
message: string;
|
|
186
186
|
originChainId: number;
|
|
187
187
|
inputToken: string;
|
|
@@ -208,8 +208,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
208
208
|
unexecutableSlowFills: import("superstruct").Struct<Record<string, Record<string, {
|
|
209
209
|
blockNumber: number;
|
|
210
210
|
transactionIndex: number;
|
|
211
|
-
transactionHash: string;
|
|
212
211
|
logIndex: number;
|
|
212
|
+
transactionHash: string;
|
|
213
213
|
message: string;
|
|
214
214
|
originChainId: number;
|
|
215
215
|
inputToken: string;
|
|
@@ -237,8 +237,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
237
237
|
bundleSlowFillsV3: import("superstruct").Struct<Record<string, Record<string, {
|
|
238
238
|
blockNumber: number;
|
|
239
239
|
transactionIndex: number;
|
|
240
|
-
transactionHash: string;
|
|
241
240
|
logIndex: number;
|
|
241
|
+
transactionHash: string;
|
|
242
242
|
message: string;
|
|
243
243
|
originChainId: number;
|
|
244
244
|
inputToken: string;
|
|
@@ -267,8 +267,8 @@ export declare const BundleDataSS: import("superstruct").Struct<{
|
|
|
267
267
|
fills: {
|
|
268
268
|
blockNumber: number;
|
|
269
269
|
transactionIndex: number;
|
|
270
|
-
transactionHash: string;
|
|
271
270
|
logIndex: number;
|
|
271
|
+
transactionHash: string;
|
|
272
272
|
message: string;
|
|
273
273
|
originChainId: number;
|
|
274
274
|
inputToken: string;
|
|
@@ -1,3 +1,12 @@
|
|
|
1
1
|
import { providers } from "ethers";
|
|
2
2
|
import { GasPriceEstimate } from "../types";
|
|
3
|
-
|
|
3
|
+
import { GasPriceEstimateOptions } from "../oracle";
|
|
4
|
+
/**
|
|
5
|
+
* @notice Return Arbitrum orbit gas fees
|
|
6
|
+
* @dev Arbitrum Nitro implements EIP-1559 pricing, but the priority fee is always refunded to the caller.
|
|
7
|
+
* Reference: https://docs.arbitrum.io/how-arbitrum-works/gas-fees so we hardcode the priority fee
|
|
8
|
+
* to 1 wei.
|
|
9
|
+
* @param provider Ethers Provider
|
|
10
|
+
* @returns GasPriceEstimate
|
|
11
|
+
*/
|
|
12
|
+
export declare function eip1559(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
import { __awaiter, __generator } from "tslib";
|
|
2
2
|
import { bnOne } from "../../utils";
|
|
3
3
|
import * as ethereum from "./ethereum";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
/**
|
|
5
|
+
* @notice Return Arbitrum orbit gas fees
|
|
6
|
+
* @dev Arbitrum Nitro implements EIP-1559 pricing, but the priority fee is always refunded to the caller.
|
|
7
|
+
* Reference: https://docs.arbitrum.io/how-arbitrum-works/gas-fees so we hardcode the priority fee
|
|
8
|
+
* to 1 wei.
|
|
9
|
+
* @param provider Ethers Provider
|
|
10
|
+
* @returns GasPriceEstimate
|
|
11
|
+
*/
|
|
12
|
+
export function eip1559(provider, opts) {
|
|
7
13
|
return __awaiter(this, void 0, void 0, function () {
|
|
8
14
|
var _a, _maxFeePerGas, maxPriorityFeePerGas, maxFeePerGas;
|
|
9
15
|
return __generator(this, function (_b) {
|
|
10
16
|
switch (_b.label) {
|
|
11
|
-
case 0: return [4 /*yield*/, ethereum.eip1559(provider,
|
|
17
|
+
case 0: return [4 /*yield*/, ethereum.eip1559(provider, opts)];
|
|
12
18
|
case 1:
|
|
13
19
|
_a = _b.sent(), _maxFeePerGas = _a.maxFeePerGas, maxPriorityFeePerGas = _a.maxPriorityFeePerGas;
|
|
14
20
|
maxFeePerGas = _maxFeePerGas.sub(maxPriorityFeePerGas).add(bnOne);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arbitrum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/arbitrum.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"arbitrum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/arbitrum.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AAGvC;;;;;;;GAOG;AACH,MAAM,UAAgB,OAAO,CAAC,QAA4B,EAAE,IAA6B;;;;;wBACzB,qBAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;oBAA9F,KAAwD,SAAsC,EAA9E,aAAa,kBAAA,EAAE,oBAAoB,0BAAA;oBAInD,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAExE,sBAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,YAAY,cAAA,EAAE,EAAC;;;;CACtD"}
|
|
@@ -1,23 +1,36 @@
|
|
|
1
1
|
import { providers } from "ethers";
|
|
2
|
+
import { BigNumber } from "../../utils";
|
|
2
3
|
import { GasPriceEstimate } from "../types";
|
|
4
|
+
import { GasPriceEstimateOptions } from "../oracle";
|
|
3
5
|
/**
|
|
6
|
+
* @dev If GAS_PRICE_EIP1559_RAW_${chainId}=true, then constructs total fee by adding
|
|
7
|
+
* eth_getBlock("pending").baseFee to eth_maxPriorityFeePerGas, otherwise calls the ethers provider's
|
|
8
|
+
* getFeeData() method which adds eth_getBlock("latest").baseFee to a hardcoded priority fee of 1.5 gwei.
|
|
4
9
|
* @param provider ethers RPC provider instance.
|
|
5
|
-
* @param chainId Chain ID of provider instance.
|
|
6
10
|
* @returns Promise of gas price estimate object.
|
|
7
11
|
*/
|
|
8
|
-
export declare function eip1559(provider: providers.Provider,
|
|
12
|
+
export declare function eip1559(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
|
|
9
13
|
/**
|
|
10
14
|
* @note Performs direct RPC calls to retrieve the RPC-suggested priority fee for the next block.
|
|
15
|
+
* @dev Constructs total fee by adding eth_getBlock("pending").baseFee to eth_maxPriorityFeePerGas
|
|
11
16
|
* @param provider ethers RPC provider instance.
|
|
12
17
|
* @param chainId Chain ID of the provider instance.
|
|
13
18
|
* @returns Promise of gas price estimate object.
|
|
14
19
|
*/
|
|
15
|
-
export declare function eip1559Raw(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
|
|
20
|
+
export declare function eip1559Raw(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
|
|
16
21
|
/**
|
|
17
|
-
* @
|
|
22
|
+
* @notice Returns fee data using provider's getFeeData() method.
|
|
23
|
+
* @note Resolves priority gas pricing poorly, because the priority fee is hardcoded to 1.5 Gwei in ethers v5's
|
|
24
|
+
* getFeeData() method
|
|
25
|
+
* @dev TODO: Remove this function soon. See note above about slowly rolling out eip1559Raw.
|
|
18
26
|
* @param provider ethers RPC provider instance.
|
|
19
27
|
* @param chainId Chain ID of the provider instance.
|
|
20
28
|
* @returns Promise of gas price estimate object.
|
|
21
29
|
*/
|
|
22
|
-
export declare function eip1559Bad(provider: providers.Provider, chainId: number): Promise<GasPriceEstimate>;
|
|
23
|
-
|
|
30
|
+
export declare function eip1559Bad(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
|
|
31
|
+
/**
|
|
32
|
+
* @notice Returns result of eth_gasPrice RPC call
|
|
33
|
+
* @dev Its recommended to use the eip1559Raw method over this one where possible as it will be more accurate.
|
|
34
|
+
* @returns GasPriceEstimate
|
|
35
|
+
*/
|
|
36
|
+
export declare function legacy(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
|