@across-protocol/sdk 4.3.113 → 4.3.114-alpha.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/arch/svm/SpokeUtils.d.ts +16 -23
- package/dist/cjs/arch/svm/SpokeUtils.js.map +1 -1
- package/dist/cjs/arch/svm/utils.d.ts +3 -8
- package/dist/cjs/arch/svm/utils.js.map +1 -1
- package/dist/cjs/gasPriceOracle/adapters/solana.js.map +1 -1
- package/dist/cjs/index.d.ts +0 -1
- package/dist/cjs/index.js +1 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +3 -3
- package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +1 -1
- package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
- package/dist/esm/arch/svm/SpokeUtils.d.ts +16 -23
- package/dist/esm/arch/svm/SpokeUtils.js.map +1 -1
- package/dist/esm/arch/svm/utils.d.ts +3 -8
- package/dist/esm/arch/svm/utils.js.map +1 -1
- package/dist/esm/gasPriceOracle/adapters/solana.js +1 -1
- package/dist/esm/gasPriceOracle/adapters/solana.js.map +1 -1
- package/dist/esm/index.d.ts +0 -1
- package/dist/esm/index.js +0 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +3 -3
- package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +3 -3
- package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +1 -1
- package/dist/types/arch/svm/SpokeUtils.d.ts +16 -23
- package/dist/types/arch/svm/SpokeUtils.d.ts.map +1 -1
- package/dist/types/arch/svm/utils.d.ts +3 -8
- package/dist/types/arch/svm/utils.d.ts.map +1 -1
- package/dist/types/gasPriceOracle/adapters/solana.d.ts.map +1 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +3 -3
- package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts.map +1 -1
- package/package.json +17 -8
- package/src/arch/svm/SpokeUtils.ts +25 -24
- package/src/arch/svm/utils.ts +6 -3
- package/src/gasPriceOracle/adapters/solana.ts +8 -3
- package/src/index.ts +0 -1
- package/src/relayFeeCalculator/chain-queries/svmQuery.ts +5 -5
- package/dist/cjs/pool/TransactionManager.d.ts +0 -12
- package/dist/cjs/pool/TransactionManager.js +0 -121
- package/dist/cjs/pool/TransactionManager.js.map +0 -1
- package/dist/cjs/pool/index.d.ts +0 -1
- package/dist/cjs/pool/index.js +0 -5
- package/dist/cjs/pool/index.js.map +0 -1
- package/dist/cjs/pool/poolClient.d.ts +0 -228
- package/dist/cjs/pool/poolClient.js +0 -869
- package/dist/cjs/pool/poolClient.js.map +0 -1
- package/dist/cjs/pool/uma/across/constants.d.ts +0 -2
- package/dist/cjs/pool/uma/across/constants.js +0 -6
- package/dist/cjs/pool/uma/across/constants.js.map +0 -1
- package/dist/cjs/pool/uma/across/index.d.ts +0 -2
- package/dist/cjs/pool/uma/across/index.js +0 -8
- package/dist/cjs/pool/uma/across/index.js.map +0 -1
- package/dist/cjs/pool/uma/across/transactionManager.d.ts +0 -12
- package/dist/cjs/pool/uma/across/transactionManager.js +0 -121
- package/dist/cjs/pool/uma/across/transactionManager.js.map +0 -1
- package/dist/cjs/pool/uma/clients/erc20/client.d.ts +0 -26
- package/dist/cjs/pool/uma/clients/erc20/client.js +0 -38
- package/dist/cjs/pool/uma/clients/erc20/client.js.map +0 -1
- package/dist/cjs/pool/uma/clients/erc20/index.d.ts +0 -1
- package/dist/cjs/pool/uma/clients/erc20/index.js +0 -5
- package/dist/cjs/pool/uma/clients/erc20/index.js.map +0 -1
- package/dist/cjs/pool/uma/clients/index.d.ts +0 -1
- package/dist/cjs/pool/uma/clients/index.js +0 -6
- package/dist/cjs/pool/uma/clients/index.js.map +0 -1
- package/dist/cjs/pool/uma/index.d.ts +0 -13
- package/dist/cjs/pool/uma/index.js +0 -9
- package/dist/cjs/pool/uma/index.js.map +0 -1
- package/dist/cjs/pool/uma/oracle/index.d.ts +0 -1
- package/dist/cjs/pool/uma/oracle/index.js +0 -6
- package/dist/cjs/pool/uma/oracle/index.js.map +0 -1
- package/dist/cjs/pool/uma/oracle/utils.d.ts +0 -7
- package/dist/cjs/pool/uma/oracle/utils.js +0 -20
- package/dist/cjs/pool/uma/oracle/utils.js.map +0 -1
- package/dist/cjs/pool/uma/utils.d.ts +0 -17
- package/dist/cjs/pool/uma/utils.js +0 -69
- package/dist/cjs/pool/uma/utils.js.map +0 -1
- package/dist/esm/pool/TransactionManager.d.ts +0 -12
- package/dist/esm/pool/TransactionManager.js +0 -122
- package/dist/esm/pool/TransactionManager.js.map +0 -1
- package/dist/esm/pool/index.d.ts +0 -1
- package/dist/esm/pool/index.js +0 -2
- package/dist/esm/pool/index.js.map +0 -1
- package/dist/esm/pool/poolClient.d.ts +0 -238
- package/dist/esm/pool/poolClient.js +0 -899
- package/dist/esm/pool/poolClient.js.map +0 -1
- package/dist/esm/pool/uma/across/constants.d.ts +0 -2
- package/dist/esm/pool/uma/across/constants.js +0 -3
- package/dist/esm/pool/uma/across/constants.js.map +0 -1
- package/dist/esm/pool/uma/across/index.d.ts +0 -2
- package/dist/esm/pool/uma/across/index.js +0 -4
- package/dist/esm/pool/uma/across/index.js.map +0 -1
- package/dist/esm/pool/uma/across/transactionManager.d.ts +0 -12
- package/dist/esm/pool/uma/across/transactionManager.js +0 -122
- package/dist/esm/pool/uma/across/transactionManager.js.map +0 -1
- package/dist/esm/pool/uma/clients/erc20/client.d.ts +0 -26
- package/dist/esm/pool/uma/clients/erc20/client.js +0 -35
- package/dist/esm/pool/uma/clients/erc20/client.js.map +0 -1
- package/dist/esm/pool/uma/clients/erc20/index.d.ts +0 -1
- package/dist/esm/pool/uma/clients/erc20/index.js +0 -2
- package/dist/esm/pool/uma/clients/erc20/index.js.map +0 -1
- package/dist/esm/pool/uma/clients/index.d.ts +0 -1
- package/dist/esm/pool/uma/clients/index.js +0 -3
- package/dist/esm/pool/uma/clients/index.js.map +0 -1
- package/dist/esm/pool/uma/index.d.ts +0 -13
- package/dist/esm/pool/uma/index.js +0 -9
- package/dist/esm/pool/uma/index.js.map +0 -1
- package/dist/esm/pool/uma/oracle/index.d.ts +0 -1
- package/dist/esm/pool/uma/oracle/index.js +0 -3
- package/dist/esm/pool/uma/oracle/index.js.map +0 -1
- package/dist/esm/pool/uma/oracle/utils.d.ts +0 -23
- package/dist/esm/pool/uma/oracle/utils.js +0 -33
- package/dist/esm/pool/uma/oracle/utils.js.map +0 -1
- package/dist/esm/pool/uma/utils.d.ts +0 -17
- package/dist/esm/pool/uma/utils.js +0 -68
- package/dist/esm/pool/uma/utils.js.map +0 -1
- package/dist/types/pool/TransactionManager.d.ts +0 -13
- package/dist/types/pool/TransactionManager.d.ts.map +0 -1
- package/dist/types/pool/index.d.ts +0 -2
- package/dist/types/pool/index.d.ts.map +0 -1
- package/dist/types/pool/poolClient.d.ts +0 -239
- package/dist/types/pool/poolClient.d.ts.map +0 -1
- package/dist/types/pool/uma/across/constants.d.ts +0 -3
- package/dist/types/pool/uma/across/constants.d.ts.map +0 -1
- package/dist/types/pool/uma/across/index.d.ts +0 -3
- package/dist/types/pool/uma/across/index.d.ts.map +0 -1
- package/dist/types/pool/uma/across/transactionManager.d.ts +0 -13
- package/dist/types/pool/uma/across/transactionManager.d.ts.map +0 -1
- package/dist/types/pool/uma/clients/erc20/client.d.ts +0 -27
- package/dist/types/pool/uma/clients/erc20/client.d.ts.map +0 -1
- package/dist/types/pool/uma/clients/erc20/index.d.ts +0 -2
- package/dist/types/pool/uma/clients/erc20/index.d.ts.map +0 -1
- package/dist/types/pool/uma/clients/index.d.ts +0 -2
- package/dist/types/pool/uma/clients/index.d.ts.map +0 -1
- package/dist/types/pool/uma/index.d.ts +0 -14
- package/dist/types/pool/uma/index.d.ts.map +0 -1
- package/dist/types/pool/uma/oracle/index.d.ts +0 -2
- package/dist/types/pool/uma/oracle/index.d.ts.map +0 -1
- package/dist/types/pool/uma/oracle/utils.d.ts +0 -24
- package/dist/types/pool/uma/oracle/utils.d.ts.map +0 -1
- package/dist/types/pool/uma/utils.d.ts +0 -18
- package/dist/types/pool/uma/utils.d.ts.map +0 -1
- package/src/pool/TransactionManager.ts +0 -73
- package/src/pool/index.ts +0 -1
- package/src/pool/poolClient.ts +0 -849
- package/src/pool/uma/across/constants.ts +0 -2
- package/src/pool/uma/across/index.ts +0 -2
- package/src/pool/uma/across/transactionManager.ts +0 -73
- package/src/pool/uma/clients/erc20/README.md +0 -29
- package/src/pool/uma/clients/erc20/client.e2e.ts +0 -26
- package/src/pool/uma/clients/erc20/client.ts +0 -67
- package/src/pool/uma/clients/erc20/index.ts +0 -1
- package/src/pool/uma/clients/index.ts +0 -1
- package/src/pool/uma/index.ts +0 -33
- package/src/pool/uma/oracle/index.ts +0 -2
- package/src/pool/uma/oracle/utils.ts +0 -38
- package/src/pool/uma/utils.test.ts +0 -24
- package/src/pool/uma/utils.ts +0 -53
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import assert from "assert";
|
|
2
2
|
import {
|
|
3
|
-
getComputeUnitEstimateForTransactionMessageFactory,
|
|
4
3
|
TransactionSigner,
|
|
5
4
|
fetchEncodedAccount,
|
|
6
5
|
isSome,
|
|
@@ -9,8 +8,9 @@ import {
|
|
|
9
8
|
appendTransactionMessageInstruction,
|
|
10
9
|
compileTransaction,
|
|
11
10
|
getBase64EncodedWireTransaction,
|
|
12
|
-
type
|
|
11
|
+
type TransactionMessage,
|
|
13
12
|
type TransactionMessageWithBlockhashLifetime,
|
|
13
|
+
type TransactionMessageWithFeePayer,
|
|
14
14
|
} from "@solana/kit";
|
|
15
15
|
import {
|
|
16
16
|
SVMProvider,
|
|
@@ -33,7 +33,7 @@ import { Logger, QueryInterface, getDefaultRelayer } from "../relayFeeCalculator
|
|
|
33
33
|
import { SymbolMappingType } from "./";
|
|
34
34
|
import { TOKEN_PROGRAM_ADDRESS } from "@solana-program/token";
|
|
35
35
|
import { TOKEN_2022_PROGRAM_ADDRESS, getTokenSize, fetchMint, Extension } from "@solana-program/token-2022";
|
|
36
|
-
import { getSetComputeUnitLimitInstruction } from "@solana-program/compute-budget";
|
|
36
|
+
import { getSetComputeUnitLimitInstruction, estimateComputeUnitLimitFactory } from "@solana-program/compute-budget";
|
|
37
37
|
import { arch } from "../..";
|
|
38
38
|
|
|
39
39
|
/**
|
|
@@ -64,7 +64,7 @@ export class SvmQuery implements QueryInterface {
|
|
|
64
64
|
readonly fixedGasPrice?: BigNumberish,
|
|
65
65
|
readonly coingeckoBaseCurrency: string = "eth"
|
|
66
66
|
) {
|
|
67
|
-
this.computeUnitEstimator =
|
|
67
|
+
this.computeUnitEstimator = estimateComputeUnitLimitFactory({
|
|
68
68
|
rpc: provider,
|
|
69
69
|
});
|
|
70
70
|
}
|
|
@@ -224,7 +224,7 @@ export class SvmQuery implements QueryInterface {
|
|
|
224
224
|
signer: TransactionSigner,
|
|
225
225
|
repaymentChainId: number,
|
|
226
226
|
repaymentAddress: Address
|
|
227
|
-
): Promise<
|
|
227
|
+
): Promise<TransactionMessage & TransactionMessageWithBlockhashLifetime & TransactionMessageWithFeePayer> {
|
|
228
228
|
return await getFillRelayTx(this.spokePool, this.provider, relayData, signer, repaymentChainId, repaymentAddress);
|
|
229
229
|
}
|
|
230
230
|
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Signer } from "ethers";
|
|
2
|
-
import { TransactionRequest, TransactionReceipt } from "@ethersproject/abstract-provider";
|
|
3
|
-
type Config = {
|
|
4
|
-
confirmations?: number;
|
|
5
|
-
};
|
|
6
|
-
export type Emit = (event: string, key: string, data: TransactionReceipt | string | TransactionRequest | Error) => void;
|
|
7
|
-
declare const _default: (config: Config, signer: Signer, emit?: Emit) => {
|
|
8
|
-
request: (unsignedTx: TransactionRequest) => string;
|
|
9
|
-
isMined: (key: string) => TransactionReceipt | undefined;
|
|
10
|
-
update: () => Promise<void>;
|
|
11
|
-
};
|
|
12
|
-
export default _default;
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var tslib_1 = require("tslib");
|
|
4
|
-
var assert_1 = tslib_1.__importDefault(require("assert"));
|
|
5
|
-
function makeKey(tx) {
|
|
6
|
-
return JSON.stringify(Object.entries(tx).map(function (_a) {
|
|
7
|
-
var key = _a[0], value = _a[1];
|
|
8
|
-
return [key, (value || "").toString()];
|
|
9
|
-
}));
|
|
10
|
-
}
|
|
11
|
-
exports.default = (function (config, signer, emit) {
|
|
12
|
-
if (emit === void 0) { emit = function () { return null; }; }
|
|
13
|
-
(0, assert_1.default)(signer.provider, "signer requires a provider, use signer.connect(provider)");
|
|
14
|
-
var _a = config.confirmations, confirmations = _a === void 0 ? 3 : _a;
|
|
15
|
-
var requests = new Map();
|
|
16
|
-
var submissions = new Map();
|
|
17
|
-
var mined = new Map();
|
|
18
|
-
function request(unsignedTx) {
|
|
19
|
-
var populated = unsignedTx;
|
|
20
|
-
var key = makeKey(populated);
|
|
21
|
-
(0, assert_1.default)(!requests.has(key), "Transaction already in progress");
|
|
22
|
-
requests.set(key, populated);
|
|
23
|
-
return key;
|
|
24
|
-
}
|
|
25
|
-
function processRequest(key) {
|
|
26
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
27
|
-
var request, sent, err_1;
|
|
28
|
-
return tslib_1.__generator(this, function (_a) {
|
|
29
|
-
switch (_a.label) {
|
|
30
|
-
case 0:
|
|
31
|
-
request = requests.get(key);
|
|
32
|
-
(0, assert_1.default)(request, "invalid request");
|
|
33
|
-
requests.delete(key);
|
|
34
|
-
_a.label = 1;
|
|
35
|
-
case 1:
|
|
36
|
-
_a.trys.push([1, 3, , 4]);
|
|
37
|
-
return [4, signer.sendTransaction(request)];
|
|
38
|
-
case 2:
|
|
39
|
-
sent = _a.sent();
|
|
40
|
-
submissions.set(key, sent.hash);
|
|
41
|
-
emit("submitted", key, sent.hash);
|
|
42
|
-
return [3, 4];
|
|
43
|
-
case 3:
|
|
44
|
-
err_1 = _a.sent();
|
|
45
|
-
emit("error", key, err_1);
|
|
46
|
-
return [3, 4];
|
|
47
|
-
case 4: return [2];
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
function processSubmission(key) {
|
|
53
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
54
|
-
var hash, receipt;
|
|
55
|
-
return tslib_1.__generator(this, function (_a) {
|
|
56
|
-
switch (_a.label) {
|
|
57
|
-
case 0:
|
|
58
|
-
hash = submissions.get(key);
|
|
59
|
-
(0, assert_1.default)(hash, "invalid submission");
|
|
60
|
-
(0, assert_1.default)(signer.provider, "signer requires a provider, use signer.connect(provider)");
|
|
61
|
-
return [4, signer.provider.getTransactionReceipt(hash).catch(function () { return undefined; })];
|
|
62
|
-
case 1:
|
|
63
|
-
receipt = _a.sent();
|
|
64
|
-
if (receipt == null)
|
|
65
|
-
return [2];
|
|
66
|
-
if (receipt.confirmations < confirmations)
|
|
67
|
-
return [2];
|
|
68
|
-
submissions.delete(key);
|
|
69
|
-
mined.set(key, receipt);
|
|
70
|
-
emit("mined", key, receipt);
|
|
71
|
-
return [2];
|
|
72
|
-
}
|
|
73
|
-
});
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
function isMined(key) {
|
|
77
|
-
return mined.get(key);
|
|
78
|
-
}
|
|
79
|
-
function update() {
|
|
80
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
81
|
-
var _i, _a, key, _b, _c, key;
|
|
82
|
-
return tslib_1.__generator(this, function (_d) {
|
|
83
|
-
switch (_d.label) {
|
|
84
|
-
case 0:
|
|
85
|
-
_i = 0, _a = Object.keys(requests);
|
|
86
|
-
_d.label = 1;
|
|
87
|
-
case 1:
|
|
88
|
-
if (!(_i < _a.length)) return [3, 4];
|
|
89
|
-
key = _a[_i];
|
|
90
|
-
return [4, processRequest(key)];
|
|
91
|
-
case 2:
|
|
92
|
-
_d.sent();
|
|
93
|
-
_d.label = 3;
|
|
94
|
-
case 3:
|
|
95
|
-
_i++;
|
|
96
|
-
return [3, 1];
|
|
97
|
-
case 4:
|
|
98
|
-
_b = 0, _c = Object.keys(submissions);
|
|
99
|
-
_d.label = 5;
|
|
100
|
-
case 5:
|
|
101
|
-
if (!(_b < _c.length)) return [3, 8];
|
|
102
|
-
key = _c[_b];
|
|
103
|
-
return [4, processSubmission(key)];
|
|
104
|
-
case 6:
|
|
105
|
-
_d.sent();
|
|
106
|
-
_d.label = 7;
|
|
107
|
-
case 7:
|
|
108
|
-
_b++;
|
|
109
|
-
return [3, 5];
|
|
110
|
-
case 8: return [2];
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
});
|
|
114
|
-
}
|
|
115
|
-
return {
|
|
116
|
-
request: request,
|
|
117
|
-
isMined: isMined,
|
|
118
|
-
update: update,
|
|
119
|
-
};
|
|
120
|
-
});
|
|
121
|
-
//# sourceMappingURL=TransactionManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TransactionManager.js","sourceRoot":"","sources":["../../../src/pool/TransactionManager.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/pool/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./poolClient";
|
package/dist/cjs/pool/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pool/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6B"}
|
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
import * as uma from "./uma";
|
|
2
|
-
import { BigNumber, BigNumberish } from "../utils";
|
|
3
|
-
import { Signer } from "ethers";
|
|
4
|
-
import type { Overrides } from "@ethersproject/contracts";
|
|
5
|
-
import { TransactionRequest, TransactionReceipt, Log } from "@ethersproject/abstract-provider";
|
|
6
|
-
import { Provider, Block } from "@ethersproject/providers";
|
|
7
|
-
import { hubPool } from "../contracts";
|
|
8
|
-
import { AcceleratingDistributor, MerkleDistributor } from "../typechain";
|
|
9
|
-
export type { Provider };
|
|
10
|
-
export type Awaited<T> = T extends PromiseLike<infer U> ? U : T;
|
|
11
|
-
export type Config = {
|
|
12
|
-
chainId?: number;
|
|
13
|
-
hubPoolAddress: string;
|
|
14
|
-
acceleratingDistributorAddress: string;
|
|
15
|
-
merkleDistributorAddress: string;
|
|
16
|
-
wethAddress: string;
|
|
17
|
-
configStoreAddress: string;
|
|
18
|
-
confirmations?: number;
|
|
19
|
-
blockDelta?: number;
|
|
20
|
-
hasArchive?: boolean;
|
|
21
|
-
hubPoolStartBlock?: number;
|
|
22
|
-
};
|
|
23
|
-
export type Dependencies = {
|
|
24
|
-
provider: Provider;
|
|
25
|
-
};
|
|
26
|
-
export type StakeData = {
|
|
27
|
-
cumulativeBalance: BigNumber;
|
|
28
|
-
amountAirdropped: BigNumber;
|
|
29
|
-
};
|
|
30
|
-
export type Pool = {
|
|
31
|
-
address: string;
|
|
32
|
-
totalPoolSize: string;
|
|
33
|
-
l1Token: string;
|
|
34
|
-
lpToken: string;
|
|
35
|
-
liquidReserves: string;
|
|
36
|
-
exchangeRateCurrent: string;
|
|
37
|
-
exchangeRatePrevious: string;
|
|
38
|
-
estimatedApy: string;
|
|
39
|
-
estimatedApr: string;
|
|
40
|
-
blocksElapsed: number;
|
|
41
|
-
secondsElapsed: number;
|
|
42
|
-
utilizedReserves: string;
|
|
43
|
-
projectedApr: string;
|
|
44
|
-
liquidityUtilizationCurrent: string;
|
|
45
|
-
};
|
|
46
|
-
export type User = {
|
|
47
|
-
address: string;
|
|
48
|
-
poolAddress: string;
|
|
49
|
-
lpTokens: string;
|
|
50
|
-
positionValue: string;
|
|
51
|
-
totalDeposited: string;
|
|
52
|
-
feesEarned: string;
|
|
53
|
-
};
|
|
54
|
-
export type Transaction = {
|
|
55
|
-
id: string;
|
|
56
|
-
state: "requested" | "submitted" | "mined" | "error";
|
|
57
|
-
toAddress: string;
|
|
58
|
-
fromAddress: string;
|
|
59
|
-
type: "Add Liquidity" | "Remove Liquidity";
|
|
60
|
-
description: string;
|
|
61
|
-
request?: TransactionRequest;
|
|
62
|
-
hash?: string;
|
|
63
|
-
receipt?: TransactionReceipt;
|
|
64
|
-
error?: Error;
|
|
65
|
-
};
|
|
66
|
-
export type Token = {
|
|
67
|
-
decimals: string;
|
|
68
|
-
symbol: string;
|
|
69
|
-
name: string;
|
|
70
|
-
};
|
|
71
|
-
export type State = {
|
|
72
|
-
pools: Record<string, Pool>;
|
|
73
|
-
users: Record<string, Record<string, User>>;
|
|
74
|
-
transactions: Record<string, Transaction>;
|
|
75
|
-
error?: Error;
|
|
76
|
-
};
|
|
77
|
-
export type EmitState = (path: string[], data: Pool | User | Transaction | Error) => void;
|
|
78
|
-
export type PooledToken = {
|
|
79
|
-
lpToken: string;
|
|
80
|
-
isEnabled: boolean;
|
|
81
|
-
lastLpFeeUpdate: number;
|
|
82
|
-
utilizedReserves: BigNumber;
|
|
83
|
-
liquidReserves: BigNumber;
|
|
84
|
-
undistributedLpFees: BigNumber;
|
|
85
|
-
};
|
|
86
|
-
type EventIdParams = {
|
|
87
|
-
blockNumber: number;
|
|
88
|
-
transactionIndex: number;
|
|
89
|
-
logIndex: number;
|
|
90
|
-
};
|
|
91
|
-
export declare class PoolEventState {
|
|
92
|
-
private contract;
|
|
93
|
-
private startBlock;
|
|
94
|
-
private seen;
|
|
95
|
-
private iface;
|
|
96
|
-
private events;
|
|
97
|
-
constructor(contract: hubPool.Instance, startBlock?: number);
|
|
98
|
-
private makeId;
|
|
99
|
-
hasEvent(params: EventIdParams): boolean;
|
|
100
|
-
private addEvent;
|
|
101
|
-
private filterSeen;
|
|
102
|
-
private processEvent;
|
|
103
|
-
private processEvents;
|
|
104
|
-
read(endBlock: number, l1TokenAddress?: string, userAddress?: string): Promise<hubPool.EventState>;
|
|
105
|
-
makeEventFromLog: (log: Log) => uma.SerializableEvent;
|
|
106
|
-
getL1TokenFromReceipt(receipt: TransactionReceipt): string;
|
|
107
|
-
readTxReceipt(receipt: TransactionReceipt): hubPool.EventState;
|
|
108
|
-
}
|
|
109
|
-
declare class UserState {
|
|
110
|
-
private contract;
|
|
111
|
-
private userAddress;
|
|
112
|
-
private startBlock;
|
|
113
|
-
private acceleratingDistributorContractAddress;
|
|
114
|
-
private seen;
|
|
115
|
-
private events;
|
|
116
|
-
constructor(contract: uma.clients.erc20.Instance, userAddress: string, startBlock?: number, acceleratingDistributorContractAddress?: string);
|
|
117
|
-
private makeId;
|
|
118
|
-
hasEvent(params: EventIdParams): boolean;
|
|
119
|
-
private addEvent;
|
|
120
|
-
private filterSeen;
|
|
121
|
-
readEvents(endBlock: number): Promise<uma.clients.erc20.Transfer[]>;
|
|
122
|
-
read(endBlock: number): Promise<{
|
|
123
|
-
transferEvents: import("@uma/contracts-node").TypedEventEthers<any>[];
|
|
124
|
-
balanceTransferred: string;
|
|
125
|
-
address: string;
|
|
126
|
-
balanceOf: BigNumber;
|
|
127
|
-
}>;
|
|
128
|
-
}
|
|
129
|
-
export declare function calculateRemoval(amountWei: BigNumber, percentWei: BigNumber): {
|
|
130
|
-
receive: string;
|
|
131
|
-
remain: string;
|
|
132
|
-
};
|
|
133
|
-
export declare function previewRemoval(values: {
|
|
134
|
-
positionValue: BigNumberish;
|
|
135
|
-
feesEarned: BigNumberish;
|
|
136
|
-
totalDeposited: BigNumberish;
|
|
137
|
-
}, percentFloat: number): {
|
|
138
|
-
position: {
|
|
139
|
-
receive: string;
|
|
140
|
-
remain: string;
|
|
141
|
-
};
|
|
142
|
-
fees: {
|
|
143
|
-
receive: string;
|
|
144
|
-
remain: string;
|
|
145
|
-
};
|
|
146
|
-
total: {
|
|
147
|
-
receive: string;
|
|
148
|
-
remain: string;
|
|
149
|
-
};
|
|
150
|
-
};
|
|
151
|
-
export declare class ReadPoolClient {
|
|
152
|
-
private address;
|
|
153
|
-
private provider;
|
|
154
|
-
private poolState;
|
|
155
|
-
private contract;
|
|
156
|
-
constructor(address: string, provider: Provider);
|
|
157
|
-
read(tokenAddress: string, latestBlock: number): Promise<{
|
|
158
|
-
lpToken: string;
|
|
159
|
-
isEnabled: boolean;
|
|
160
|
-
lastLpFeeUpdate: number;
|
|
161
|
-
utilizedReserves: BigNumber;
|
|
162
|
-
liquidReserves: BigNumber;
|
|
163
|
-
undistributedLpFees: BigNumber;
|
|
164
|
-
address: string;
|
|
165
|
-
l1Token: string;
|
|
166
|
-
latestBlock: number;
|
|
167
|
-
previousBlock: number | undefined;
|
|
168
|
-
exchangeRatePrevious: BigNumber;
|
|
169
|
-
exchangeRateCurrent: BigNumber;
|
|
170
|
-
liquidityUtilizationCurrent: BigNumber;
|
|
171
|
-
}>;
|
|
172
|
-
}
|
|
173
|
-
export declare function validateWithdraw(pool: Pool, user: User, lpTokenAmount: BigNumberish): {
|
|
174
|
-
lpTokenAmount: BigNumberish;
|
|
175
|
-
l1TokensToReturn: string;
|
|
176
|
-
};
|
|
177
|
-
export declare class Client {
|
|
178
|
-
readonly config: Config;
|
|
179
|
-
readonly deps: Dependencies;
|
|
180
|
-
private emit;
|
|
181
|
-
private transactionManagers;
|
|
182
|
-
private hubPool;
|
|
183
|
-
private acceleratingDistributor;
|
|
184
|
-
private merkleDistributor;
|
|
185
|
-
readonly state: State;
|
|
186
|
-
private poolEvents;
|
|
187
|
-
private erc20s;
|
|
188
|
-
private intervalStarted;
|
|
189
|
-
private configStoreClient;
|
|
190
|
-
private exchangeRateTable;
|
|
191
|
-
private userServices;
|
|
192
|
-
constructor(config: Config, deps: Dependencies, emit: EmitState);
|
|
193
|
-
getOrCreateErc20Contract(address: string): uma.clients.erc20.Instance;
|
|
194
|
-
getOrCreatePoolContract(): hubPool.Instance;
|
|
195
|
-
createHubPoolContract(signerOrProvider: Signer | Provider): hubPool.Instance;
|
|
196
|
-
private getOrCreatePoolEvents;
|
|
197
|
-
createAcceleratingDistributorContract(signerOrProvider: Signer | Provider): AcceleratingDistributor;
|
|
198
|
-
createMerkleDistributorContract(signerOrProvider: Signer | Provider): MerkleDistributor;
|
|
199
|
-
getOrCreateAcceleratingDistributorContract(): AcceleratingDistributor;
|
|
200
|
-
getOrCreateMerkleDistributorContract(): MerkleDistributor;
|
|
201
|
-
private getOrCreateUserService;
|
|
202
|
-
private updateExchangeRateTable;
|
|
203
|
-
resolveStakingData(lpToken: string, l1TokenAddress: string, userState: Awaited<ReturnType<UserState["read"]>>): Promise<StakeData>;
|
|
204
|
-
calculateLpTransferValue(l1TokenAddress: string, userState: Awaited<ReturnType<UserState["read"]>>): Promise<BigNumber>;
|
|
205
|
-
private getOrCreateTransactionManager;
|
|
206
|
-
addEthLiquidity(signer: Signer, l1TokenAmount: BigNumberish, overrides?: Overrides): Promise<string>;
|
|
207
|
-
addTokenLiquidity(signer: Signer, l1Token: string, l1TokenAmount: BigNumberish, overrides?: Overrides): Promise<string>;
|
|
208
|
-
validateWithdraw(l1Token: string, userAddress: string, lpAmount: BigNumberish): Promise<{
|
|
209
|
-
lpTokenAmount: BigNumberish;
|
|
210
|
-
l1TokensToReturn: string;
|
|
211
|
-
}>;
|
|
212
|
-
removeTokenLiquidity(signer: Signer, l1Token: string, lpTokenAmount: BigNumberish, overrides?: Overrides): Promise<string>;
|
|
213
|
-
removeEthliquidity(signer: Signer, lpTokenAmount: BigNumberish, overrides?: Overrides): Promise<string>;
|
|
214
|
-
getPoolState(l1TokenAddress: string): Pool;
|
|
215
|
-
hasPoolState(l1TokenAddress: string): boolean;
|
|
216
|
-
setUserState(l1TokenAddress: string, userAddress: string, state: User): User;
|
|
217
|
-
getUserState(l1TokenAddress: string, userAddress: string): User;
|
|
218
|
-
hasUserState(l1TokenAddress: string, userAddress: string): boolean;
|
|
219
|
-
hasTxState(id: string): boolean;
|
|
220
|
-
getTxState(id: string): Transaction;
|
|
221
|
-
private updateAndEmitUser;
|
|
222
|
-
private updateUserWithTransaction;
|
|
223
|
-
updateUser(userAddress: string, l1TokenAddress: string): Promise<void>;
|
|
224
|
-
updatePool(l1TokenAddress: string, overrideLatestBlock?: Block): Promise<void>;
|
|
225
|
-
updateTransactions(): Promise<void>;
|
|
226
|
-
startInterval(delayMs?: number): void;
|
|
227
|
-
stopInterval(): void;
|
|
228
|
-
}
|