@across-protocol/sdk 4.1.21 → 4.1.23

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.
Files changed (115) hide show
  1. package/dist/cjs/addressAggregator/adapters/bybit.d.ts +10 -0
  2. package/dist/cjs/addressAggregator/adapters/bybit.js +42 -0
  3. package/dist/cjs/addressAggregator/adapters/bybit.js.map +1 -0
  4. package/dist/cjs/addressAggregator/adapters/env.d.ts +8 -0
  5. package/dist/cjs/addressAggregator/adapters/env.js +33 -0
  6. package/dist/cjs/addressAggregator/adapters/env.js.map +1 -0
  7. package/dist/cjs/addressAggregator/adapters/file.d.ts +8 -0
  8. package/dist/cjs/addressAggregator/adapters/file.js +50 -0
  9. package/dist/cjs/addressAggregator/adapters/file.js.map +1 -0
  10. package/dist/cjs/addressAggregator/adapters/index.d.ts +3 -0
  11. package/dist/cjs/addressAggregator/adapters/index.js +8 -0
  12. package/dist/cjs/addressAggregator/adapters/index.js.map +1 -0
  13. package/dist/cjs/addressAggregator/adapters/util.d.ts +4 -0
  14. package/dist/cjs/addressAggregator/adapters/util.js +66 -0
  15. package/dist/cjs/addressAggregator/adapters/util.js.map +1 -0
  16. package/dist/cjs/addressAggregator/index.d.ts +10 -0
  17. package/dist/cjs/addressAggregator/index.js +109 -0
  18. package/dist/cjs/addressAggregator/index.js.map +1 -0
  19. package/dist/cjs/addressAggregator/types.d.ts +6 -0
  20. package/dist/cjs/addressAggregator/types.js +5 -0
  21. package/dist/cjs/addressAggregator/types.js.map +1 -0
  22. package/dist/cjs/clients/SpokePoolClient.js +18 -12
  23. package/dist/cjs/clients/SpokePoolClient.js.map +1 -1
  24. package/dist/cjs/index.d.ts +1 -0
  25. package/dist/cjs/index.js +2 -1
  26. package/dist/cjs/index.js.map +1 -1
  27. package/dist/cjs/utils/LogUtils.d.ts +4 -2
  28. package/dist/cjs/utils/LogUtils.js +10 -1
  29. package/dist/cjs/utils/LogUtils.js.map +1 -1
  30. package/dist/cjs/utils/Multicall.d.ts +4 -0
  31. package/dist/cjs/utils/Multicall.js +33 -4
  32. package/dist/cjs/utils/Multicall.js.map +1 -1
  33. package/dist/cjs/utils/NetworkUtils.d.ts +1 -0
  34. package/dist/cjs/utils/NetworkUtils.js +4 -3
  35. package/dist/cjs/utils/NetworkUtils.js.map +1 -1
  36. package/dist/cjs/utils/SpokeUtils.d.ts +1 -0
  37. package/dist/cjs/utils/SpokeUtils.js +52 -1
  38. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  39. package/dist/esm/addressAggregator/adapters/bybit.d.ts +10 -0
  40. package/dist/esm/addressAggregator/adapters/bybit.js +41 -0
  41. package/dist/esm/addressAggregator/adapters/bybit.js.map +1 -0
  42. package/dist/esm/addressAggregator/adapters/env.d.ts +8 -0
  43. package/dist/esm/addressAggregator/adapters/env.js +30 -0
  44. package/dist/esm/addressAggregator/adapters/env.js.map +1 -0
  45. package/dist/esm/addressAggregator/adapters/file.d.ts +8 -0
  46. package/dist/esm/addressAggregator/adapters/file.js +47 -0
  47. package/dist/esm/addressAggregator/adapters/file.js.map +1 -0
  48. package/dist/esm/addressAggregator/adapters/index.d.ts +3 -0
  49. package/dist/esm/addressAggregator/adapters/index.js +7 -0
  50. package/dist/esm/addressAggregator/adapters/index.js.map +1 -0
  51. package/dist/esm/addressAggregator/adapters/util.d.ts +4 -0
  52. package/dist/esm/addressAggregator/adapters/util.js +60 -0
  53. package/dist/esm/addressAggregator/adapters/util.js.map +1 -0
  54. package/dist/esm/addressAggregator/index.d.ts +10 -0
  55. package/dist/esm/addressAggregator/index.js +107 -0
  56. package/dist/esm/addressAggregator/index.js.map +1 -0
  57. package/dist/esm/addressAggregator/types.d.ts +6 -0
  58. package/dist/esm/addressAggregator/types.js +2 -0
  59. package/dist/esm/addressAggregator/types.js.map +1 -0
  60. package/dist/esm/clients/SpokePoolClient.js +19 -13
  61. package/dist/esm/clients/SpokePoolClient.js.map +1 -1
  62. package/dist/esm/index.d.ts +1 -0
  63. package/dist/esm/index.js +2 -0
  64. package/dist/esm/index.js.map +1 -1
  65. package/dist/esm/utils/LogUtils.d.ts +4 -2
  66. package/dist/esm/utils/LogUtils.js +10 -1
  67. package/dist/esm/utils/LogUtils.js.map +1 -1
  68. package/dist/esm/utils/Multicall.d.ts +4 -0
  69. package/dist/esm/utils/Multicall.js +33 -5
  70. package/dist/esm/utils/Multicall.js.map +1 -1
  71. package/dist/esm/utils/NetworkUtils.d.ts +1 -0
  72. package/dist/esm/utils/NetworkUtils.js +2 -1
  73. package/dist/esm/utils/NetworkUtils.js.map +1 -1
  74. package/dist/esm/utils/SpokeUtils.d.ts +1 -0
  75. package/dist/esm/utils/SpokeUtils.js +51 -0
  76. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  77. package/dist/types/addressAggregator/adapters/bybit.d.ts +11 -0
  78. package/dist/types/addressAggregator/adapters/bybit.d.ts.map +1 -0
  79. package/dist/types/addressAggregator/adapters/env.d.ts +9 -0
  80. package/dist/types/addressAggregator/adapters/env.d.ts.map +1 -0
  81. package/dist/types/addressAggregator/adapters/file.d.ts +9 -0
  82. package/dist/types/addressAggregator/adapters/file.d.ts.map +1 -0
  83. package/dist/types/addressAggregator/adapters/index.d.ts +4 -0
  84. package/dist/types/addressAggregator/adapters/index.d.ts.map +1 -0
  85. package/dist/types/addressAggregator/adapters/util.d.ts +5 -0
  86. package/dist/types/addressAggregator/adapters/util.d.ts.map +1 -0
  87. package/dist/types/addressAggregator/index.d.ts +11 -0
  88. package/dist/types/addressAggregator/index.d.ts.map +1 -0
  89. package/dist/types/addressAggregator/types.d.ts +7 -0
  90. package/dist/types/addressAggregator/types.d.ts.map +1 -0
  91. package/dist/types/clients/SpokePoolClient.d.ts.map +1 -1
  92. package/dist/types/index.d.ts +1 -0
  93. package/dist/types/index.d.ts.map +1 -1
  94. package/dist/types/utils/LogUtils.d.ts +4 -2
  95. package/dist/types/utils/LogUtils.d.ts.map +1 -1
  96. package/dist/types/utils/Multicall.d.ts +4 -0
  97. package/dist/types/utils/Multicall.d.ts.map +1 -1
  98. package/dist/types/utils/NetworkUtils.d.ts +1 -0
  99. package/dist/types/utils/NetworkUtils.d.ts.map +1 -1
  100. package/dist/types/utils/SpokeUtils.d.ts +1 -0
  101. package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
  102. package/package.json +4 -4
  103. package/src/addressAggregator/adapters/bybit.ts +32 -0
  104. package/src/addressAggregator/adapters/env.ts +30 -0
  105. package/src/addressAggregator/adapters/file.ts +39 -0
  106. package/src/addressAggregator/adapters/index.ts +3 -0
  107. package/src/addressAggregator/adapters/util.ts +47 -0
  108. package/src/addressAggregator/index.ts +86 -0
  109. package/src/addressAggregator/types.ts +8 -0
  110. package/src/clients/SpokePoolClient.ts +11 -18
  111. package/src/index.ts +1 -0
  112. package/src/utils/LogUtils.ts +3 -2
  113. package/src/utils/Multicall.ts +29 -1
  114. package/src/utils/NetworkUtils.ts +2 -1
  115. package/src/utils/SpokeUtils.ts +48 -1
@@ -1,4 +1,6 @@
1
- import { Logger } from "winston";
1
+ import winston from "winston";
2
+ export declare class Logger extends winston.Logger {
3
+ }
2
4
  export type DefaultLogLevels = "debug" | "info" | "warn" | "error";
3
5
  type LogParamType = {
4
6
  level: DefaultLogLevels;
@@ -9,5 +11,5 @@ type LogParamType = {
9
11
  };
10
12
  data?: Record<string | number, unknown>;
11
13
  };
12
- export declare function formattedLog(logger: Logger | undefined, { level, message, at: { location, function: fnName }, data }: LogParamType): void;
14
+ export declare function formattedLog(logger: winston.Logger | undefined, { level, message, at: { location, function: fnName }, data }: LogParamType): void;
13
15
  export {};
@@ -1,7 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formattedLog = void 0;
3
+ exports.formattedLog = exports.Logger = void 0;
4
4
  var tslib_1 = require("tslib");
5
+ var winston_1 = tslib_1.__importDefault(require("winston"));
6
+ var Logger = (function (_super) {
7
+ tslib_1.__extends(Logger, _super);
8
+ function Logger() {
9
+ return _super !== null && _super.apply(this, arguments) || this;
10
+ }
11
+ return Logger;
12
+ }(winston_1.default.Logger));
13
+ exports.Logger = Logger;
5
14
  function formattedLog(logger, _a) {
6
15
  var level = _a.level, message = _a.message, _b = _a.at, location = _b.location, fnName = _b.function, data = _a.data;
7
16
  if (logger) {
@@ -1 +1 @@
1
- {"version":3,"file":"LogUtils.js","sourceRoot":"","sources":["../../../src/utils/LogUtils.ts"],"names":[],"mappings":";;;;AAcA,SAAgB,YAAY,CAC1B,MAA0B,EAC1B,EAA0E;QAAxE,KAAK,WAAA,EAAE,OAAO,aAAA,EAAE,UAAkC,EAA5B,QAAQ,cAAA,EAAY,MAAM,cAAA,EAAI,IAAI,UAAA;IAE1D,IAAI,MAAM,EAAE;QACV,MAAM,CAAC,KAAK,CAAC,oBACX,EAAE,EAAE,UAAG,QAAQ,cAAI,MAAM,CAAE,EAC3B,OAAO,SAAA,IACJ,IAAI,EACP,CAAC;KACJ;AACH,CAAC;AAXD,oCAWC"}
1
+ {"version":3,"file":"LogUtils.js","sourceRoot":"","sources":["../../../src/utils/LogUtils.ts"],"names":[],"mappings":";;;;AAAA,4DAA8B;AAE9B;IAA4B,kCAAc;IAA1C;;IAA4C,CAAC;IAAD,aAAC;AAAD,CAAC,AAA7C,CAA4B,iBAAO,CAAC,MAAM,GAAG;AAAhC,wBAAM;AAanB,SAAgB,YAAY,CAC1B,MAAkC,EAClC,EAA0E;QAAxE,KAAK,WAAA,EAAE,OAAO,aAAA,EAAE,UAAkC,EAA5B,QAAQ,cAAA,EAAY,MAAM,cAAA,EAAI,IAAI,UAAA;IAE1D,IAAI,MAAM,EAAE;QACV,MAAM,CAAC,KAAK,CAAC,oBACX,EAAE,EAAE,UAAG,QAAQ,cAAI,MAAM,CAAE,EAC3B,OAAO,SAAA,IACJ,IAAI,EACP,CAAC;KACJ;AACH,CAAC;AAXD,oCAWC"}
@@ -11,4 +11,8 @@ export type Call3 = {
11
11
  export declare function getMulticallAddress(chainId: number): string | undefined;
12
12
  export declare function getMulticall3(chainId: number, signerOrProvider: Signer | Provider): Multicall3 | undefined;
13
13
  export declare function aggregate(multicall3: Contract, calls: Call3[], blockTag?: BlockTag): Promise<Result[]>;
14
+ export declare function blockAndAggregate(multicall3: Contract, calls: Call3[], blockTag?: BlockTag): Promise<{
15
+ blockNumber: number;
16
+ returnData: Result[];
17
+ }>;
14
18
  export {};
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  var _a;
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.aggregate = exports.getMulticall3 = exports.getMulticallAddress = void 0;
4
+ exports.blockAndAggregate = exports.aggregate = exports.getMulticall3 = exports.getMulticallAddress = void 0;
5
5
  var tslib_1 = require("tslib");
6
6
  var constants_1 = require("@across-protocol/constants");
7
7
  var NetworkUtils_1 = require("./NetworkUtils");
@@ -11,7 +11,7 @@ var NON_DETERMINISTIC_MULTICALL_ADDRESSES = (_a = {},
11
11
  _a[constants_1.CHAIN_IDs.ZK_SYNC] = "0xF9cda624FBC7e059355ce98a31693d299FACd963",
12
12
  _a[constants_1.CHAIN_IDs.LENS_SEPOLIA] = "0x8A44EDE8a6843a997bC0Cc4659e4dB1Da8f91116",
13
13
  _a);
14
- var DETERMINISTIC_MULTICALL_CHAINS = [
14
+ var DETERMINISTIC_MULTICALL_CHAINS = tslib_1.__spreadArray([
15
15
  constants_1.CHAIN_IDs.ALEPH_ZERO,
16
16
  constants_1.CHAIN_IDs.ARBITRUM,
17
17
  constants_1.CHAIN_IDs.LINEA,
@@ -21,8 +21,8 @@ var DETERMINISTIC_MULTICALL_CHAINS = [
21
21
  constants_1.CHAIN_IDs.POLYGON_AMOY,
22
22
  constants_1.CHAIN_IDs.SCROLL_SEPOLIA,
23
23
  constants_1.CHAIN_IDs.SEPOLIA,
24
- constants_1.CHAIN_IDs.ARBITRUM_SEPOLIA,
25
- ];
24
+ constants_1.CHAIN_IDs.ARBITRUM_SEPOLIA
25
+ ], Object.keys(NetworkUtils_1.hreNetworks).map(Number), true);
26
26
  function getMulticallAddress(chainId) {
27
27
  if ((0, NetworkUtils_1.chainIsOPStack)(chainId) || DETERMINISTIC_MULTICALL_CHAINS.includes(chainId)) {
28
28
  return DETERMINISTIC_MULTICALL_ADDRESS;
@@ -63,4 +63,33 @@ function aggregate(multicall3, calls, blockTag) {
63
63
  });
64
64
  }
65
65
  exports.aggregate = aggregate;
66
+ function blockAndAggregate(multicall3, calls, blockTag) {
67
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
68
+ var inputs, _a, blockNumber, _returnData, returnData;
69
+ return tslib_1.__generator(this, function (_b) {
70
+ switch (_b.label) {
71
+ case 0:
72
+ inputs = calls.map(function (_a) {
73
+ var contract = _a.contract, method = _a.method, args = _a.args;
74
+ return ({
75
+ target: contract.address,
76
+ callData: contract.interface.encodeFunctionData(method, args),
77
+ });
78
+ });
79
+ return [4, multicall3.callStatic.blockAndAggregate(inputs, {
80
+ blockTag: blockTag,
81
+ })];
82
+ case 1:
83
+ _a = _b.sent(), blockNumber = _a.blockNumber, _returnData = _a.returnData;
84
+ returnData = _returnData.map(function (_a, idx) {
85
+ var returnData = _a.returnData;
86
+ var _b = calls[idx], contract = _b.contract, method = _b.method;
87
+ return contract.interface.decodeFunctionResult(method, returnData);
88
+ });
89
+ return [2, { blockNumber: blockNumber.toNumber(), returnData: returnData }];
90
+ }
91
+ });
92
+ });
93
+ }
94
+ exports.blockAndAggregate = blockAndAggregate;
66
95
  //# sourceMappingURL=Multicall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Multicall.js","sourceRoot":"","sources":["../../../src/utils/Multicall.ts"],"names":[],"mappings":";;;;;AACA,wDAAuD;AACvD,+CAAgD;AAEhD,6CAAkE;AAalE,IAAM,+BAA+B,GAAG,4CAA4C,CAAC;AAErF,IAAM,qCAAqC;IACzC,GAAC,qBAAS,CAAC,OAAO,IAAG,4CAA4C;IACjE,GAAC,qBAAS,CAAC,YAAY,IAAG,4CAA4C;OACvE,CAAC;AAGF,IAAM,8BAA8B,GAAG;IACrC,qBAAS,CAAC,UAAU;IACpB,qBAAS,CAAC,QAAQ;IAClB,qBAAS,CAAC,KAAK;IACf,qBAAS,CAAC,OAAO;IACjB,qBAAS,CAAC,OAAO;IACjB,qBAAS,CAAC,MAAM;IAEhB,qBAAS,CAAC,YAAY;IACtB,qBAAS,CAAC,cAAc;IACxB,qBAAS,CAAC,OAAO;IACjB,qBAAS,CAAC,gBAAgB;CAC3B,CAAC;AAEF,SAAgB,mBAAmB,CAAC,OAAe;IACjD,IAAI,IAAA,6BAAc,EAAC,OAAO,CAAC,IAAI,8BAA8B,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;QAC/E,OAAO,+BAA+B,CAAC;KACxC;IACD,OAAO,qCAAqC,CAAC,OAAO,CAAC,CAAC;AACxD,CAAC;AALD,kDAKC;AAED,SAAgB,aAAa,CAAC,OAAe,EAAE,gBAAmC;IAChF,IAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,+BAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAChE,CAAC;AAPD,sCAOC;AAED,SAAsB,SAAS,CAAC,UAAoB,EAAE,KAAc,EAAE,QAAmB;;;;;;oBACjF,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,UAAC,EAA0B;4BAAxB,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,IAAI,UAAA;wBAAO,OAAA,CAAC;4BACxD,MAAM,EAAE,QAAQ,CAAC,OAAO;4BACxB,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC;yBAC9D,CAAC;oBAHuD,CAGvD,CAAC,CAAC;oBAEgB,WAAO,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,QAAQ,UAAA,EAAE,CAAoC,EAAA;;oBAA7G,KAAc,SAA+F,EAA1G,OAAO,QAAA;oBAEhB,WAAO,OAAO,CAAC,GAAG,CAAC,UAAC,MAAM,EAAE,GAAG;4BACvB,IAAA,KAAuB,KAAK,CAAC,GAAG,CAAC,EAA/B,QAAQ,cAAA,EAAE,MAAM,YAAe,CAAC;4BACxC,OAAO,QAAQ,CAAC,SAAS,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;wBACjE,CAAC,CAAC,EAAC;;;;CACJ;AAZD,8BAYC"}
1
+ {"version":3,"file":"Multicall.js","sourceRoot":"","sources":["../../../src/utils/Multicall.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ export declare const hreNetworks: Record<number, string>;
1
2
  export declare function getNetworkName(networkId: number | string): string;
2
3
  export declare function getNativeTokenSymbol(chainId: number | string): string;
3
4
  export declare function chainIsProd(chainId: number): boolean;
@@ -1,15 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getOriginFromURL = exports.chainRequiresL1ToL2Finalization = exports.chainIsCCTPEnabled = exports.chainIsEvm = exports.chainIsL1 = exports.chainIsLinea = exports.chainIsLens = exports.chainIsAlephZero = exports.chainIsArbitrum = exports.chainIsOrbit = exports.chainIsZkStack = exports.chainIsOPStack = exports.chainIsMatic = exports.chainIsTestnet = exports.chainIsProd = exports.getNativeTokenSymbol = exports.getNetworkName = void 0;
3
+ exports.getOriginFromURL = exports.chainRequiresL1ToL2Finalization = exports.chainIsCCTPEnabled = exports.chainIsEvm = exports.chainIsL1 = exports.chainIsLinea = exports.chainIsLens = exports.chainIsAlephZero = exports.chainIsArbitrum = exports.chainIsOrbit = exports.chainIsZkStack = exports.chainIsOPStack = exports.chainIsMatic = exports.chainIsTestnet = exports.chainIsProd = exports.getNativeTokenSymbol = exports.getNetworkName = exports.hreNetworks = void 0;
4
4
  var constants_1 = require("../constants");
5
- var hreNetworks = {
5
+ exports.hreNetworks = {
6
6
  666: "Hardhat1",
7
7
  1337: "Hardhat2",
8
+ 31337: "HardhatNetwork",
8
9
  };
9
10
  function getNetworkName(networkId) {
10
11
  var _a, _b, _c;
11
12
  networkId = Number(networkId);
12
- return (_c = (_b = (_a = constants_1.PUBLIC_NETWORKS[networkId]) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : hreNetworks[networkId]) !== null && _c !== void 0 ? _c : "unknown";
13
+ return (_c = (_b = (_a = constants_1.PUBLIC_NETWORKS[networkId]) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : exports.hreNetworks[networkId]) !== null && _c !== void 0 ? _c : "unknown";
13
14
  }
14
15
  exports.getNetworkName = getNetworkName;
15
16
  function getNativeTokenSymbol(chainId) {
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkUtils.js","sourceRoot":"","sources":["../../../src/utils/NetworkUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NetworkUtils.js","sourceRoot":"","sources":["../../../src/utils/NetworkUtils.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ export declare function getRelayDataHash(relayData: RelayData, destinationChainI
26
26
  export declare function getRelayHashFromEvent(e: RelayData & {
27
27
  destinationChainId: number;
28
28
  }): string;
29
+ export declare function findDepositBlock(spokePool: Contract, depositId: BigNumber, lowBlock: number, highBlock?: number): Promise<number | undefined>;
29
30
  export declare function isUnsafeDepositId(depositId: BigNumber): boolean;
30
31
  export declare function relayFillStatus(spokePool: Contract, relayData: RelayData, blockTag?: number | "latest", destinationChainId?: number): Promise<FillStatus>;
31
32
  export declare function fillStatusArray(spokePool: Contract, relayData: RelayData[], blockTag?: BlockTag): Promise<(FillStatus | undefined)[]>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMessageHash = exports.isZeroAddress = exports.findFillEvent = exports.findFillBlock = exports.fillStatusArray = exports.relayFillStatus = exports.isUnsafeDepositId = exports.getRelayHashFromEvent = exports.getRelayDataHash = exports.getDepositIdAtBlock = exports.getBlockRangeForDepositId = exports.validateFillForDeposit = exports.getRelayEventKey = exports.populateV3Relay = void 0;
3
+ exports.getMessageHash = exports.isZeroAddress = exports.findFillEvent = exports.findFillBlock = exports.fillStatusArray = exports.relayFillStatus = exports.isUnsafeDepositId = exports.findDepositBlock = exports.getRelayHashFromEvent = exports.getRelayDataHash = exports.getDepositIdAtBlock = exports.getBlockRangeForDepositId = exports.validateFillForDeposit = exports.getRelayEventKey = exports.populateV3Relay = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var assert_1 = tslib_1.__importDefault(require("assert"));
6
6
  var ethers_1 = require("ethers");
@@ -10,6 +10,7 @@ var ArrayUtils_1 = require("./ArrayUtils");
10
10
  var BigNumberUtils_1 = require("./BigNumberUtils");
11
11
  var common_1 = require("./common");
12
12
  var DepositUtils_1 = require("./DepositUtils");
13
+ var Multicall_1 = require("./Multicall");
13
14
  var TypeGuards_1 = require("./TypeGuards");
14
15
  var NetworkUtils_1 = require("./NetworkUtils");
15
16
  var EventUtils_1 = require("./EventUtils");
@@ -218,6 +219,56 @@ function getRelayHashFromEvent(e) {
218
219
  return getRelayDataHash(e, e.destinationChainId);
219
220
  }
220
221
  exports.getRelayHashFromEvent = getRelayHashFromEvent;
222
+ function findDepositBlock(spokePool, depositId, lowBlock, highBlock) {
223
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
224
+ var chainId, multicall3, _a, _nDepositsLow, _b, _highBlock, returnData, nDepositsLow, nDepositsHigh, midBlock, nDeposits, _c;
225
+ return tslib_1.__generator(this, function (_d) {
226
+ switch (_d.label) {
227
+ case 0:
228
+ if (isUnsafeDepositId(depositId)) {
229
+ throw new Error("Cannot binary search for depositId ".concat(depositId));
230
+ }
231
+ return [4, spokePool.provider.getNetwork()];
232
+ case 1:
233
+ chainId = (_d.sent()).chainId;
234
+ multicall3 = (0, Multicall_1.getMulticall3)(chainId, spokePool.provider);
235
+ (0, assert_1.default)(multicall3, "No multicall3 defined for chain ".concat(chainId));
236
+ return [4, Promise.all([
237
+ spokePool.numberOfDeposits({ blockTag: lowBlock }),
238
+ (0, Multicall_1.blockAndAggregate)(multicall3, [{ contract: spokePool, method: "numberOfDeposits" }], highBlock),
239
+ ])];
240
+ case 2:
241
+ _a = _d.sent(), _nDepositsLow = _a[0], _b = _a[1], _highBlock = _b.blockNumber, returnData = _b.returnData;
242
+ highBlock = _highBlock;
243
+ (0, assert_1.default)(highBlock > lowBlock, "Block numbers out of range (".concat(lowBlock, " >= ").concat(highBlock, ")"));
244
+ nDepositsLow = (0, BigNumberUtils_1.toBN)(_nDepositsLow);
245
+ nDepositsHigh = (0, BigNumberUtils_1.toBN)(returnData.at(0));
246
+ if (nDepositsLow.gt(depositId) || nDepositsHigh.lte(depositId)) {
247
+ return [2, undefined];
248
+ }
249
+ _d.label = 3;
250
+ case 3:
251
+ midBlock = Math.floor((highBlock + lowBlock) / 2);
252
+ _c = BigNumberUtils_1.toBN;
253
+ return [4, spokePool.numberOfDeposits({ blockTag: midBlock })];
254
+ case 4:
255
+ nDeposits = _c.apply(void 0, [_d.sent()]);
256
+ if (nDeposits.gt(depositId)) {
257
+ highBlock = midBlock;
258
+ }
259
+ else {
260
+ lowBlock = midBlock + 1;
261
+ }
262
+ _d.label = 5;
263
+ case 5:
264
+ if (lowBlock < highBlock) return [3, 3];
265
+ _d.label = 6;
266
+ case 6: return [2, lowBlock];
267
+ }
268
+ });
269
+ });
270
+ }
271
+ exports.findDepositBlock = findDepositBlock;
221
272
  function isUnsafeDepositId(depositId) {
222
273
  var maxSafeDepositId = BigNumberUtils_1.BigNumber.from(constants_1.MAX_SAFE_DEPOSIT_ID);
223
274
  return maxSafeDepositId.lt(depositId);
@@ -1 +1 @@
1
- {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SpokeUtils.js","sourceRoot":"","sources":["../../../src/utils/SpokeUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { AddressListAdapter } from "../types";
2
+ import { Logger } from "./util";
3
+ export declare class AddressList implements AddressListAdapter {
4
+ readonly url: string;
5
+ readonly timeout = 2000;
6
+ readonly retries = 1;
7
+ readonly name = "bybit";
8
+ constructor(url?: string);
9
+ update(logger?: Logger): Promise<string[]>;
10
+ }
@@ -0,0 +1,41 @@
1
+ import { __awaiter, __generator, __spreadArray } from "tslib";
2
+ import { array, defaulted, string, type } from "superstruct";
3
+ import { logError, fetch } from "./util";
4
+ var DEFAULT_URL = "https://hackscan.hackbounty.io/public/hack-address.json";
5
+ // This type is a bit message and unweildy. Additional fields representing new chains may be added without notification.
6
+ var bybitResponse = type({
7
+ "0221": type({
8
+ eth: defaulted(array(string()), []),
9
+ bsc: defaulted(array(string()), []),
10
+ arbi: defaulted(array(string()), []),
11
+ }),
12
+ });
13
+ var AddressList = /** @class */ (function () {
14
+ function AddressList(url) {
15
+ if (url === void 0) { url = DEFAULT_URL; }
16
+ this.url = url;
17
+ this.timeout = 2000; // ms
18
+ this.retries = 1;
19
+ this.name = "bybit";
20
+ }
21
+ AddressList.prototype.update = function (logger) {
22
+ return __awaiter(this, void 0, void 0, function () {
23
+ var response;
24
+ return __generator(this, function (_a) {
25
+ switch (_a.label) {
26
+ case 0: return [4 /*yield*/, fetch(this.name, this.url, this.timeout, this.retries)];
27
+ case 1:
28
+ response = _a.sent();
29
+ if (!bybitResponse.is(response)) {
30
+ // nb. don't log the response because it might be very large.
31
+ return [2 /*return*/, logError(this.name, "Failed to validate response", logger)];
32
+ }
33
+ return [2 /*return*/, __spreadArray(__spreadArray(__spreadArray([], response["0221"].eth, true), response["0221"].bsc, true), response["0221"].arbi, true)];
34
+ }
35
+ });
36
+ });
37
+ };
38
+ return AddressList;
39
+ }());
40
+ export { AddressList };
41
+ //# sourceMappingURL=bybit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bybit.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/bybit.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAU,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEjD,IAAM,WAAW,GAAG,yDAAyD,CAAC;AAE9E,wHAAwH;AACxH,IAAM,aAAa,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,IAAI,CAAC;QACX,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;KACrC,CAAC;CACH,CAAC,CAAC;AAEH;IAKE,qBAAqB,GAAiB;QAAjB,oBAAA,EAAA,iBAAiB;QAAjB,QAAG,GAAH,GAAG,CAAc;QAJ7B,YAAO,GAAG,IAAI,CAAC,CAAC,KAAK;QACrB,YAAO,GAAG,CAAC,CAAC;QACZ,SAAI,GAAG,OAAO,CAAC;IAEiB,CAAC;IAEpC,4BAAM,GAAZ,UAAa,MAAe;;;;;4BACT,qBAAM,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,EAAA;;wBAAvE,QAAQ,GAAG,SAA4D;wBAC7E,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE;4BAC/B,6DAA6D;4BAC7D,sBAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,6BAA6B,EAAE,MAAM,CAAC,EAAC;yBACnE;wBAED,oEAAW,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,SAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,SAAK,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,SAAE;;;;KACrF;IACH,kBAAC;AAAD,CAAC,AAhBD,IAgBC"}
@@ -0,0 +1,8 @@
1
+ import { AddressListAdapter } from "../types";
2
+ import { Logger } from "./util";
3
+ export declare class AddressList implements AddressListAdapter {
4
+ readonly envVar: string;
5
+ readonly name = "process.env";
6
+ constructor(envVar?: string);
7
+ update(logger?: Logger): Promise<string[]>;
8
+ }
@@ -0,0 +1,30 @@
1
+ import { array, defaulted, string } from "superstruct";
2
+ import { logError } from "./util";
3
+ var envConfig = defaulted(array(string()), []);
4
+ var AddressList = /** @class */ (function () {
5
+ function AddressList(envVar) {
6
+ if (envVar === void 0) { envVar = "ACROSS_IGNORED_ADDRESSES"; }
7
+ this.envVar = envVar;
8
+ this.name = "process.env";
9
+ }
10
+ AddressList.prototype.update = function (logger) {
11
+ var config = process.env[this.envVar];
12
+ if (!config) {
13
+ return Promise.resolve([]);
14
+ }
15
+ var addresses;
16
+ try {
17
+ addresses = JSON.parse(config);
18
+ if (!envConfig.is(addresses)) {
19
+ return logError(this.name, "Address format validation failure.", logger);
20
+ }
21
+ }
22
+ catch (err) {
23
+ return logError(this.name, err, logger);
24
+ }
25
+ return Promise.resolve(addresses);
26
+ };
27
+ return AddressList;
28
+ }());
29
+ export { AddressList };
30
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAU,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE1C,IAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAEjD;IAGE,qBAAqB,MAAmC;QAAnC,uBAAA,EAAA,mCAAmC;QAAnC,WAAM,GAAN,MAAM,CAA6B;QAF/C,SAAI,GAAG,aAAa,CAAC;IAE6B,CAAC;IAE5D,4BAAM,GAAN,UAAO,MAAe;QACpB,IAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,EAAE;YACX,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;SAC5B;QAED,IAAI,SAAkB,CAAC;QACvB,IAAI;YACF,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE;gBAC5B,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,oCAAoC,EAAE,MAAM,CAAC,CAAC;aAC1E;SACF;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;SACzC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IACH,kBAAC;AAAD,CAAC,AAvBD,IAuBC"}
@@ -0,0 +1,8 @@
1
+ import { AddressListAdapter } from "../types";
2
+ import { Logger } from "./util";
3
+ export declare class AddressList implements AddressListAdapter {
4
+ readonly path: string;
5
+ readonly name: string;
6
+ constructor(path?: string);
7
+ update(logger?: Logger): Promise<string[]>;
8
+ }
@@ -0,0 +1,47 @@
1
+ import { __awaiter, __generator } from "tslib";
2
+ import { readFile } from "node:fs/promises";
3
+ import { array, defaulted, string } from "superstruct";
4
+ import { logError } from "./util";
5
+ var fileConfig = defaulted(array(string()), []);
6
+ var AddressList = /** @class */ (function () {
7
+ function AddressList(path) {
8
+ if (path === void 0) { path = "./addresses.json"; }
9
+ this.path = path;
10
+ this.name = "fs:".concat(path);
11
+ }
12
+ AddressList.prototype.update = function (logger) {
13
+ return __awaiter(this, void 0, void 0, function () {
14
+ var data, err_1, addresses;
15
+ return __generator(this, function (_a) {
16
+ switch (_a.label) {
17
+ case 0:
18
+ _a.trys.push([0, 2, , 3]);
19
+ return [4 /*yield*/, readFile(this.path, { encoding: "utf8" })];
20
+ case 1:
21
+ data = _a.sent();
22
+ return [3 /*break*/, 3];
23
+ case 2:
24
+ err_1 = _a.sent();
25
+ return [2 /*return*/, logError(this.name, err_1, logger)];
26
+ case 3:
27
+ if (!data) {
28
+ return [2 /*return*/, logError(this.name, "No addresses found in \"".concat(this.path, "\""), logger)];
29
+ }
30
+ try {
31
+ addresses = JSON.parse(data);
32
+ if (!fileConfig.is(addresses)) {
33
+ return [2 /*return*/, logError(this.name, "Address format validation failure.", logger)];
34
+ }
35
+ }
36
+ catch (err) {
37
+ return [2 /*return*/, logError(this.name, err, logger)];
38
+ }
39
+ return [2 /*return*/, Promise.resolve(addresses)];
40
+ }
41
+ });
42
+ });
43
+ };
44
+ return AddressList;
45
+ }());
46
+ export { AddressList };
47
+ //# sourceMappingURL=file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/file.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAU,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAE1C,IAAM,UAAU,GAAG,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AAElD;IAGE,qBAAqB,IAAyB;QAAzB,qBAAA,EAAA,yBAAyB;QAAzB,SAAI,GAAJ,IAAI,CAAqB;QAC5C,IAAI,CAAC,IAAI,GAAG,aAAM,IAAI,CAAE,CAAC;IAC3B,CAAC;IAEK,4BAAM,GAAZ,UAAa,MAAe;;;;;;;wBAGjB,qBAAM,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAA;;wBAAtD,IAAI,GAAG,SAA+C,CAAC;;;;wBAEvD,sBAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAG,EAAE,MAAM,CAAC,EAAC;;wBAG1C,IAAI,CAAC,IAAI,EAAE;4BACT,sBAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,kCAA0B,IAAI,CAAC,IAAI,OAAG,EAAE,MAAM,CAAC,EAAC;yBAC5E;wBAGD,IAAI;4BACF,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;4BAC7B,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE;gCAC7B,sBAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,oCAAoC,EAAE,MAAM,CAAC,EAAC;6BAC1E;yBACF;wBAAC,OAAO,GAAG,EAAE;4BACZ,sBAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAC;yBACzC;wBAED,sBAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAC;;;;KACnC;IACH,kBAAC;AAAD,CAAC,AA/BD,IA+BC"}
@@ -0,0 +1,3 @@
1
+ export * as bybit from "./bybit";
2
+ export * as processEnv from "./env";
3
+ export * as fs from "./file";
@@ -0,0 +1,7 @@
1
+ import * as bybit_1 from "./bybit";
2
+ export { bybit_1 as bybit };
3
+ import * as processEnv_1 from "./env";
4
+ export { processEnv_1 as processEnv };
5
+ import * as fs_1 from "./file";
6
+ export { fs_1 as fs };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/index.ts"],"names":[],"mappings":"yBAAuB,SAAS;oBAApB,KAAK;8BACW,OAAO;yBAAvB,UAAU;sBACF,QAAQ;iBAAhB,EAAE"}
@@ -0,0 +1,4 @@
1
+ import { Logger } from "../../utils";
2
+ export { Logger } from "../../utils";
3
+ export declare function logError(name: string, error: unknown, logger?: Logger): Promise<string[]>;
4
+ export declare function fetch(name: string, url: string, timeout?: number, retries?: number): Promise<unknown>;
@@ -0,0 +1,60 @@
1
+ import { __awaiter, __generator } from "tslib";
2
+ import axios from "axios";
3
+ export { Logger } from "../../utils";
4
+ var _a = process.env.ACROSS_USER_AGENT, ACROSS_USER_AGENT = _a === void 0 ? "across-protocol" : _a;
5
+ function sleep(ms) {
6
+ return new Promise(function (r) { return setTimeout(r, ms); });
7
+ }
8
+ export function logError(name, error, logger) {
9
+ var reason;
10
+ if (error instanceof Error) {
11
+ reason = error.message;
12
+ }
13
+ else {
14
+ reason = typeof error === "string" ? error : "unknown error";
15
+ }
16
+ logger === null || logger === void 0 ? void 0 : logger.warn({
17
+ at: "".concat(name, "::update"),
18
+ message: "Failed to read addresses from ".concat(name, "."),
19
+ reason: reason,
20
+ });
21
+ return Promise.resolve([]);
22
+ }
23
+ export function fetch(name, url, timeout, retries) {
24
+ if (timeout === void 0) { timeout = 2000; }
25
+ if (retries === void 0) { retries = 1; }
26
+ return __awaiter(this, void 0, void 0, function () {
27
+ var args, errs, tries, err_1, errMsg;
28
+ return __generator(this, function (_a) {
29
+ switch (_a.label) {
30
+ case 0:
31
+ args = {
32
+ headers: { "User-Agent": ACROSS_USER_AGENT },
33
+ timeout: timeout,
34
+ };
35
+ errs = [];
36
+ tries = 0;
37
+ _a.label = 1;
38
+ case 1:
39
+ _a.trys.push([1, 3, , 6]);
40
+ return [4 /*yield*/, axios(url, args)];
41
+ case 2: return [2 /*return*/, (_a.sent()).data];
42
+ case 3:
43
+ err_1 = _a.sent();
44
+ errMsg = axios.isAxiosError(err_1) || err_1 instanceof Error ? err_1.message : "unknown error";
45
+ errs.push(errMsg);
46
+ if (!(++tries <= retries)) return [3 /*break*/, 5];
47
+ return [4 /*yield*/, sleep(Math.pow(1.5, tries) * 1000)];
48
+ case 4:
49
+ _a.sent(); // simple backoff
50
+ _a.label = 5;
51
+ case 5: return [3 /*break*/, 6];
52
+ case 6:
53
+ if (tries <= retries) return [3 /*break*/, 1];
54
+ _a.label = 7;
55
+ case 7: throw new Error("".concat(name, " retrieval failure (").concat(errs.join(", "), ")"));
56
+ }
57
+ });
58
+ });
59
+ }
60
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/addressAggregator/adapters/util.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE7B,IAAA,KAA0C,OAAO,CAAC,GAAG,kBAAhB,EAArC,iBAAiB,mBAAG,iBAAiB,KAAA,CAAiB;AAE9D,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,EAAjB,CAAiB,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,KAAc,EAAE,MAAe;IACpE,IAAI,MAAc,CAAC;IACnB,IAAI,KAAK,YAAY,KAAK,EAAE;QAC1B,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC;KACxB;SAAM;QACL,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC;KAC9D;IAED,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,CAAC;QACX,EAAE,EAAE,UAAG,IAAI,aAAU;QACrB,OAAO,EAAE,wCAAiC,IAAI,MAAG;QACjD,MAAM,QAAA;KACP,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAgB,KAAK,CAAC,IAAY,EAAE,GAAW,EAAE,OAAc,EAAE,OAAW;IAA3B,wBAAA,EAAA,cAAc;IAAE,wBAAA,EAAA,WAAW;;;;;;oBAC1E,IAAI,GAAG;wBACX,OAAO,EAAE,EAAE,YAAY,EAAE,iBAAiB,EAAE;wBAC5C,OAAO,SAAA;qBACR,CAAC;oBAEI,IAAI,GAAa,EAAE,CAAC;oBACtB,KAAK,GAAG,CAAC,CAAC;;;;oBAGF,qBAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,EAAA;wBAA9B,sBAAO,CAAC,SAAsB,CAAC,CAAC,IAAI,EAAC;;;oBAE/B,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,KAAG,CAAC,IAAI,KAAG,YAAY,KAAK,CAAC,CAAC,CAAC,KAAG,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;oBAC/F,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;yBACd,CAAA,EAAE,KAAK,IAAI,OAAO,CAAA,EAAlB,wBAAkB;oBAAE,qBAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,EAAA;;oBAAxC,SAAwC,CAAC,CAAC,iBAAiB;;;;wBAE9E,KAAK,IAAI,OAAO;;wBAEzB,MAAM,IAAI,KAAK,CAAC,UAAG,IAAI,iCAAuB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAG,CAAC,CAAC;;;;CACnE"}
@@ -0,0 +1,10 @@
1
+ import { Logger } from "../utils";
2
+ import { AddressListAdapter } from "./types";
3
+ export * as adapters from "./adapters";
4
+ export declare class AddressAggregator {
5
+ readonly adapters: AddressListAdapter[];
6
+ protected readonly logger?: Logger | undefined;
7
+ constructor(adapters: AddressListAdapter[], logger?: Logger | undefined);
8
+ static sources(): string[];
9
+ update(): Promise<Set<string>>;
10
+ }