@sentio/sdk 1.25.3 → 1.26.1

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 (55) hide show
  1. package/lib/aptos/aptos-processor.d.ts +24 -3
  2. package/lib/aptos/aptos-processor.js +70 -20
  3. package/lib/aptos/aptos-processor.js.map +1 -1
  4. package/lib/aptos/context.d.ts +10 -3
  5. package/lib/aptos/context.js +34 -2
  6. package/lib/aptos/context.js.map +1 -1
  7. package/lib/aptos/index.d.ts +1 -1
  8. package/lib/aptos/index.js +2 -1
  9. package/lib/aptos/index.js.map +1 -1
  10. package/lib/aptos/network.d.ts +1 -2
  11. package/lib/aptos/network.js +1 -1
  12. package/lib/aptos/network.js.map +1 -1
  13. package/lib/core/context.d.ts +2 -5
  14. package/lib/core/context.js +8 -11
  15. package/lib/core/context.js.map +1 -1
  16. package/lib/core/event-tracker.js +1 -1
  17. package/lib/core/event-tracker.js.map +1 -1
  18. package/lib/core/exporter.d.ts +14 -0
  19. package/lib/core/exporter.js +27 -0
  20. package/lib/core/exporter.js.map +1 -0
  21. package/lib/core/logger.js +1 -1
  22. package/lib/core/logger.js.map +1 -1
  23. package/lib/core/meter.js +2 -2
  24. package/lib/core/meter.js.map +1 -1
  25. package/lib/gen/processor/protos/processor.d.ts +54 -9
  26. package/lib/gen/processor/protos/processor.js +317 -25
  27. package/lib/gen/processor/protos/processor.js.map +1 -1
  28. package/lib/processor-state.d.ts +4 -0
  29. package/lib/processor-state.js +2 -0
  30. package/lib/processor-state.js.map +1 -1
  31. package/lib/service.d.ts +4 -0
  32. package/lib/service.js +58 -17
  33. package/lib/service.js.map +1 -1
  34. package/lib/tests/aptos.test.js +25 -0
  35. package/lib/tests/aptos.test.js.map +1 -1
  36. package/lib/tests/erc20.js +7 -0
  37. package/lib/tests/erc20.js.map +1 -1
  38. package/lib/tests/souffl3.js +5 -1
  39. package/lib/tests/souffl3.js.map +1 -1
  40. package/package.json +1 -1
  41. package/src/aptos/aptos-processor.ts +98 -19
  42. package/src/aptos/context.ts +33 -3
  43. package/src/aptos/index.ts +1 -1
  44. package/src/aptos/network.ts +2 -4
  45. package/src/core/context.ts +10 -20
  46. package/src/core/event-tracker.ts +1 -1
  47. package/src/core/exporter.ts +33 -0
  48. package/src/core/logger.ts +1 -1
  49. package/src/core/meter.ts +2 -2
  50. package/src/gen/processor/protos/processor.ts +403 -38
  51. package/src/processor-state.ts +5 -0
  52. package/src/service.ts +65 -19
  53. package/src/tests/aptos.test.ts +28 -0
  54. package/src/tests/erc20.ts +7 -0
  55. package/src/tests/souffl3.ts +6 -1
@@ -144,6 +144,7 @@ export interface ProcessConfigResponse {
144
144
  accountConfigs: AccountConfig[];
145
145
  metricConfigs: MetricConfig[];
146
146
  eventTrackingConfigs: EventTrackingConfig[];
147
+ exportConfigs: ExportConfig[];
147
148
  }
148
149
 
149
150
  export interface ContractConfig {
@@ -212,6 +213,43 @@ export interface EventTrackingConfig {
212
213
  retentionConfig: RetentionConfig | undefined;
213
214
  }
214
215
 
216
+ export interface ExportConfig {
217
+ exportName: string;
218
+ exportType: ExportConfig_ExportType;
219
+ exportUrl: string;
220
+ }
221
+
222
+ export enum ExportConfig_ExportType {
223
+ WEBHOOK = 0,
224
+ UNRECOGNIZED = -1,
225
+ }
226
+
227
+ export function exportConfig_ExportTypeFromJSON(
228
+ object: any
229
+ ): ExportConfig_ExportType {
230
+ switch (object) {
231
+ case 0:
232
+ case "WEBHOOK":
233
+ return ExportConfig_ExportType.WEBHOOK;
234
+ case -1:
235
+ case "UNRECOGNIZED":
236
+ default:
237
+ return ExportConfig_ExportType.UNRECOGNIZED;
238
+ }
239
+ }
240
+
241
+ export function exportConfig_ExportTypeToJSON(
242
+ object: ExportConfig_ExportType
243
+ ): string {
244
+ switch (object) {
245
+ case ExportConfig_ExportType.WEBHOOK:
246
+ return "WEBHOOK";
247
+ case ExportConfig_ExportType.UNRECOGNIZED:
248
+ default:
249
+ return "UNRECOGNIZED";
250
+ }
251
+ }
252
+
215
253
  export interface MetricConfig {
216
254
  name: string;
217
255
  description: string;
@@ -224,12 +262,19 @@ export interface AccountConfig {
224
262
  chainId: string;
225
263
  address: string;
226
264
  startBlock: Long;
227
- aptosOnVersionConfigs: AptosOnVersionConfig[];
265
+ onIntervalConfigs: OnIntervalConfig[];
266
+ onAptosIntervalConfigs: AptosOnIntervalConfig[];
228
267
  }
229
268
 
230
- export interface AptosOnVersionConfig {
269
+ export interface OnIntervalConfig {
231
270
  handlerId: number;
232
- step: number;
271
+ minutes: number;
272
+ slot: number;
273
+ }
274
+
275
+ export interface AptosOnIntervalConfig {
276
+ intervalConfig: OnIntervalConfig | undefined;
277
+ type: string;
233
278
  }
234
279
 
235
280
  export interface ContractInfo {
@@ -360,6 +405,7 @@ export interface ProcessResult {
360
405
  counters: CounterResult[];
361
406
  logs: LogResult[];
362
407
  events: EventTrackingResult[];
408
+ exports: ExportResult[];
363
409
  }
364
410
 
365
411
  export interface DataDescriptor {
@@ -431,6 +477,12 @@ export interface EventTrackingResult {
431
477
  runtimeInfo: RuntimeInfo | undefined;
432
478
  }
433
479
 
480
+ export interface ExportResult {
481
+ metadata: RecordMetaData | undefined;
482
+ payload: string;
483
+ runtimeInfo: RuntimeInfo | undefined;
484
+ }
485
+
434
486
  function createBaseProjectConfig(): ProjectConfig {
435
487
  return { name: "", version: "" };
436
488
  }
@@ -545,6 +597,7 @@ function createBaseProcessConfigResponse(): ProcessConfigResponse {
545
597
  accountConfigs: [],
546
598
  metricConfigs: [],
547
599
  eventTrackingConfigs: [],
600
+ exportConfigs: [],
548
601
  };
549
602
  }
550
603
 
@@ -571,6 +624,9 @@ export const ProcessConfigResponse = {
571
624
  for (const v of message.eventTrackingConfigs) {
572
625
  EventTrackingConfig.encode(v!, writer.uint32(50).fork()).ldelim();
573
626
  }
627
+ for (const v of message.exportConfigs) {
628
+ ExportConfig.encode(v!, writer.uint32(58).fork()).ldelim();
629
+ }
574
630
  return writer;
575
631
  },
576
632
 
@@ -612,6 +668,11 @@ export const ProcessConfigResponse = {
612
668
  EventTrackingConfig.decode(reader, reader.uint32())
613
669
  );
614
670
  break;
671
+ case 7:
672
+ message.exportConfigs.push(
673
+ ExportConfig.decode(reader, reader.uint32())
674
+ );
675
+ break;
615
676
  default:
616
677
  reader.skipType(tag & 7);
617
678
  break;
@@ -642,6 +703,9 @@ export const ProcessConfigResponse = {
642
703
  EventTrackingConfig.fromJSON(e)
643
704
  )
644
705
  : [],
706
+ exportConfigs: Array.isArray(object?.exportConfigs)
707
+ ? object.exportConfigs.map((e: any) => ExportConfig.fromJSON(e))
708
+ : [],
645
709
  };
646
710
  },
647
711
 
@@ -686,6 +750,13 @@ export const ProcessConfigResponse = {
686
750
  } else {
687
751
  obj.eventTrackingConfigs = [];
688
752
  }
753
+ if (message.exportConfigs) {
754
+ obj.exportConfigs = message.exportConfigs.map((e) =>
755
+ e ? ExportConfig.toJSON(e) : undefined
756
+ );
757
+ } else {
758
+ obj.exportConfigs = [];
759
+ }
689
760
  return obj;
690
761
  },
691
762
 
@@ -710,6 +781,8 @@ export const ProcessConfigResponse = {
710
781
  object.eventTrackingConfigs?.map((e) =>
711
782
  EventTrackingConfig.fromPartial(e)
712
783
  ) || [];
784
+ message.exportConfigs =
785
+ object.exportConfigs?.map((e) => ExportConfig.fromPartial(e)) || [];
713
786
  return message;
714
787
  },
715
788
  };
@@ -1222,6 +1295,79 @@ export const EventTrackingConfig = {
1222
1295
  },
1223
1296
  };
1224
1297
 
1298
+ function createBaseExportConfig(): ExportConfig {
1299
+ return { exportName: "", exportType: 0, exportUrl: "" };
1300
+ }
1301
+
1302
+ export const ExportConfig = {
1303
+ encode(
1304
+ message: ExportConfig,
1305
+ writer: _m0.Writer = _m0.Writer.create()
1306
+ ): _m0.Writer {
1307
+ if (message.exportName !== "") {
1308
+ writer.uint32(10).string(message.exportName);
1309
+ }
1310
+ if (message.exportType !== 0) {
1311
+ writer.uint32(16).int32(message.exportType);
1312
+ }
1313
+ if (message.exportUrl !== "") {
1314
+ writer.uint32(26).string(message.exportUrl);
1315
+ }
1316
+ return writer;
1317
+ },
1318
+
1319
+ decode(input: _m0.Reader | Uint8Array, length?: number): ExportConfig {
1320
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1321
+ let end = length === undefined ? reader.len : reader.pos + length;
1322
+ const message = createBaseExportConfig();
1323
+ while (reader.pos < end) {
1324
+ const tag = reader.uint32();
1325
+ switch (tag >>> 3) {
1326
+ case 1:
1327
+ message.exportName = reader.string();
1328
+ break;
1329
+ case 2:
1330
+ message.exportType = reader.int32() as any;
1331
+ break;
1332
+ case 3:
1333
+ message.exportUrl = reader.string();
1334
+ break;
1335
+ default:
1336
+ reader.skipType(tag & 7);
1337
+ break;
1338
+ }
1339
+ }
1340
+ return message;
1341
+ },
1342
+
1343
+ fromJSON(object: any): ExportConfig {
1344
+ return {
1345
+ exportName: isSet(object.exportName) ? String(object.exportName) : "",
1346
+ exportType: isSet(object.exportType)
1347
+ ? exportConfig_ExportTypeFromJSON(object.exportType)
1348
+ : 0,
1349
+ exportUrl: isSet(object.exportUrl) ? String(object.exportUrl) : "",
1350
+ };
1351
+ },
1352
+
1353
+ toJSON(message: ExportConfig): unknown {
1354
+ const obj: any = {};
1355
+ message.exportName !== undefined && (obj.exportName = message.exportName);
1356
+ message.exportType !== undefined &&
1357
+ (obj.exportType = exportConfig_ExportTypeToJSON(message.exportType));
1358
+ message.exportUrl !== undefined && (obj.exportUrl = message.exportUrl);
1359
+ return obj;
1360
+ },
1361
+
1362
+ fromPartial(object: DeepPartial<ExportConfig>): ExportConfig {
1363
+ const message = createBaseExportConfig();
1364
+ message.exportName = object.exportName ?? "";
1365
+ message.exportType = object.exportType ?? 0;
1366
+ message.exportUrl = object.exportUrl ?? "";
1367
+ return message;
1368
+ },
1369
+ };
1370
+
1225
1371
  function createBaseMetricConfig(): MetricConfig {
1226
1372
  return {
1227
1373
  name: "",
@@ -1325,7 +1471,8 @@ function createBaseAccountConfig(): AccountConfig {
1325
1471
  chainId: "",
1326
1472
  address: "",
1327
1473
  startBlock: Long.UZERO,
1328
- aptosOnVersionConfigs: [],
1474
+ onIntervalConfigs: [],
1475
+ onAptosIntervalConfigs: [],
1329
1476
  };
1330
1477
  }
1331
1478
 
@@ -1343,8 +1490,11 @@ export const AccountConfig = {
1343
1490
  if (!message.startBlock.isZero()) {
1344
1491
  writer.uint32(24).uint64(message.startBlock);
1345
1492
  }
1346
- for (const v of message.aptosOnVersionConfigs) {
1347
- AptosOnVersionConfig.encode(v!, writer.uint32(34).fork()).ldelim();
1493
+ for (const v of message.onIntervalConfigs) {
1494
+ OnIntervalConfig.encode(v!, writer.uint32(34).fork()).ldelim();
1495
+ }
1496
+ for (const v of message.onAptosIntervalConfigs) {
1497
+ AptosOnIntervalConfig.encode(v!, writer.uint32(42).fork()).ldelim();
1348
1498
  }
1349
1499
  return writer;
1350
1500
  },
@@ -1366,8 +1516,13 @@ export const AccountConfig = {
1366
1516
  message.startBlock = reader.uint64() as Long;
1367
1517
  break;
1368
1518
  case 4:
1369
- message.aptosOnVersionConfigs.push(
1370
- AptosOnVersionConfig.decode(reader, reader.uint32())
1519
+ message.onIntervalConfigs.push(
1520
+ OnIntervalConfig.decode(reader, reader.uint32())
1521
+ );
1522
+ break;
1523
+ case 5:
1524
+ message.onAptosIntervalConfigs.push(
1525
+ AptosOnIntervalConfig.decode(reader, reader.uint32())
1371
1526
  );
1372
1527
  break;
1373
1528
  default:
@@ -1385,9 +1540,12 @@ export const AccountConfig = {
1385
1540
  startBlock: isSet(object.startBlock)
1386
1541
  ? Long.fromValue(object.startBlock)
1387
1542
  : Long.UZERO,
1388
- aptosOnVersionConfigs: Array.isArray(object?.aptosOnVersionConfigs)
1389
- ? object.aptosOnVersionConfigs.map((e: any) =>
1390
- AptosOnVersionConfig.fromJSON(e)
1543
+ onIntervalConfigs: Array.isArray(object?.onIntervalConfigs)
1544
+ ? object.onIntervalConfigs.map((e: any) => OnIntervalConfig.fromJSON(e))
1545
+ : [],
1546
+ onAptosIntervalConfigs: Array.isArray(object?.onAptosIntervalConfigs)
1547
+ ? object.onAptosIntervalConfigs.map((e: any) =>
1548
+ AptosOnIntervalConfig.fromJSON(e)
1391
1549
  )
1392
1550
  : [],
1393
1551
  };
@@ -1399,12 +1557,19 @@ export const AccountConfig = {
1399
1557
  message.address !== undefined && (obj.address = message.address);
1400
1558
  message.startBlock !== undefined &&
1401
1559
  (obj.startBlock = (message.startBlock || Long.UZERO).toString());
1402
- if (message.aptosOnVersionConfigs) {
1403
- obj.aptosOnVersionConfigs = message.aptosOnVersionConfigs.map((e) =>
1404
- e ? AptosOnVersionConfig.toJSON(e) : undefined
1560
+ if (message.onIntervalConfigs) {
1561
+ obj.onIntervalConfigs = message.onIntervalConfigs.map((e) =>
1562
+ e ? OnIntervalConfig.toJSON(e) : undefined
1405
1563
  );
1406
1564
  } else {
1407
- obj.aptosOnVersionConfigs = [];
1565
+ obj.onIntervalConfigs = [];
1566
+ }
1567
+ if (message.onAptosIntervalConfigs) {
1568
+ obj.onAptosIntervalConfigs = message.onAptosIntervalConfigs.map((e) =>
1569
+ e ? AptosOnIntervalConfig.toJSON(e) : undefined
1570
+ );
1571
+ } else {
1572
+ obj.onAptosIntervalConfigs = [];
1408
1573
  }
1409
1574
  return obj;
1410
1575
  },
@@ -1417,39 +1582,42 @@ export const AccountConfig = {
1417
1582
  object.startBlock !== undefined && object.startBlock !== null
1418
1583
  ? Long.fromValue(object.startBlock)
1419
1584
  : Long.UZERO;
1420
- message.aptosOnVersionConfigs =
1421
- object.aptosOnVersionConfigs?.map((e) =>
1422
- AptosOnVersionConfig.fromPartial(e)
1585
+ message.onIntervalConfigs =
1586
+ object.onIntervalConfigs?.map((e) => OnIntervalConfig.fromPartial(e)) ||
1587
+ [];
1588
+ message.onAptosIntervalConfigs =
1589
+ object.onAptosIntervalConfigs?.map((e) =>
1590
+ AptosOnIntervalConfig.fromPartial(e)
1423
1591
  ) || [];
1424
1592
  return message;
1425
1593
  },
1426
1594
  };
1427
1595
 
1428
- function createBaseAptosOnVersionConfig(): AptosOnVersionConfig {
1429
- return { handlerId: 0, step: 0 };
1596
+ function createBaseOnIntervalConfig(): OnIntervalConfig {
1597
+ return { handlerId: 0, minutes: 0, slot: 0 };
1430
1598
  }
1431
1599
 
1432
- export const AptosOnVersionConfig = {
1600
+ export const OnIntervalConfig = {
1433
1601
  encode(
1434
- message: AptosOnVersionConfig,
1602
+ message: OnIntervalConfig,
1435
1603
  writer: _m0.Writer = _m0.Writer.create()
1436
1604
  ): _m0.Writer {
1437
1605
  if (message.handlerId !== 0) {
1438
1606
  writer.uint32(8).int32(message.handlerId);
1439
1607
  }
1440
- if (message.step !== 0) {
1441
- writer.uint32(16).int32(message.step);
1608
+ if (message.minutes !== 0) {
1609
+ writer.uint32(16).int32(message.minutes);
1610
+ }
1611
+ if (message.slot !== 0) {
1612
+ writer.uint32(24).int32(message.slot);
1442
1613
  }
1443
1614
  return writer;
1444
1615
  },
1445
1616
 
1446
- decode(
1447
- input: _m0.Reader | Uint8Array,
1448
- length?: number
1449
- ): AptosOnVersionConfig {
1617
+ decode(input: _m0.Reader | Uint8Array, length?: number): OnIntervalConfig {
1450
1618
  const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1451
1619
  let end = length === undefined ? reader.len : reader.pos + length;
1452
- const message = createBaseAptosOnVersionConfig();
1620
+ const message = createBaseOnIntervalConfig();
1453
1621
  while (reader.pos < end) {
1454
1622
  const tag = reader.uint32();
1455
1623
  switch (tag >>> 3) {
@@ -1457,7 +1625,10 @@ export const AptosOnVersionConfig = {
1457
1625
  message.handlerId = reader.int32();
1458
1626
  break;
1459
1627
  case 2:
1460
- message.step = reader.int32();
1628
+ message.minutes = reader.int32();
1629
+ break;
1630
+ case 3:
1631
+ message.slot = reader.int32();
1461
1632
  break;
1462
1633
  default:
1463
1634
  reader.skipType(tag & 7);
@@ -1467,25 +1638,109 @@ export const AptosOnVersionConfig = {
1467
1638
  return message;
1468
1639
  },
1469
1640
 
1470
- fromJSON(object: any): AptosOnVersionConfig {
1641
+ fromJSON(object: any): OnIntervalConfig {
1471
1642
  return {
1472
1643
  handlerId: isSet(object.handlerId) ? Number(object.handlerId) : 0,
1473
- step: isSet(object.step) ? Number(object.step) : 0,
1644
+ minutes: isSet(object.minutes) ? Number(object.minutes) : 0,
1645
+ slot: isSet(object.slot) ? Number(object.slot) : 0,
1474
1646
  };
1475
1647
  },
1476
1648
 
1477
- toJSON(message: AptosOnVersionConfig): unknown {
1649
+ toJSON(message: OnIntervalConfig): unknown {
1478
1650
  const obj: any = {};
1479
1651
  message.handlerId !== undefined &&
1480
1652
  (obj.handlerId = Math.round(message.handlerId));
1481
- message.step !== undefined && (obj.step = Math.round(message.step));
1653
+ message.minutes !== undefined &&
1654
+ (obj.minutes = Math.round(message.minutes));
1655
+ message.slot !== undefined && (obj.slot = Math.round(message.slot));
1482
1656
  return obj;
1483
1657
  },
1484
1658
 
1485
- fromPartial(object: DeepPartial<AptosOnVersionConfig>): AptosOnVersionConfig {
1486
- const message = createBaseAptosOnVersionConfig();
1659
+ fromPartial(object: DeepPartial<OnIntervalConfig>): OnIntervalConfig {
1660
+ const message = createBaseOnIntervalConfig();
1487
1661
  message.handlerId = object.handlerId ?? 0;
1488
- message.step = object.step ?? 0;
1662
+ message.minutes = object.minutes ?? 0;
1663
+ message.slot = object.slot ?? 0;
1664
+ return message;
1665
+ },
1666
+ };
1667
+
1668
+ function createBaseAptosOnIntervalConfig(): AptosOnIntervalConfig {
1669
+ return { intervalConfig: undefined, type: "" };
1670
+ }
1671
+
1672
+ export const AptosOnIntervalConfig = {
1673
+ encode(
1674
+ message: AptosOnIntervalConfig,
1675
+ writer: _m0.Writer = _m0.Writer.create()
1676
+ ): _m0.Writer {
1677
+ if (message.intervalConfig !== undefined) {
1678
+ OnIntervalConfig.encode(
1679
+ message.intervalConfig,
1680
+ writer.uint32(10).fork()
1681
+ ).ldelim();
1682
+ }
1683
+ if (message.type !== "") {
1684
+ writer.uint32(18).string(message.type);
1685
+ }
1686
+ return writer;
1687
+ },
1688
+
1689
+ decode(
1690
+ input: _m0.Reader | Uint8Array,
1691
+ length?: number
1692
+ ): AptosOnIntervalConfig {
1693
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1694
+ let end = length === undefined ? reader.len : reader.pos + length;
1695
+ const message = createBaseAptosOnIntervalConfig();
1696
+ while (reader.pos < end) {
1697
+ const tag = reader.uint32();
1698
+ switch (tag >>> 3) {
1699
+ case 1:
1700
+ message.intervalConfig = OnIntervalConfig.decode(
1701
+ reader,
1702
+ reader.uint32()
1703
+ );
1704
+ break;
1705
+ case 2:
1706
+ message.type = reader.string();
1707
+ break;
1708
+ default:
1709
+ reader.skipType(tag & 7);
1710
+ break;
1711
+ }
1712
+ }
1713
+ return message;
1714
+ },
1715
+
1716
+ fromJSON(object: any): AptosOnIntervalConfig {
1717
+ return {
1718
+ intervalConfig: isSet(object.intervalConfig)
1719
+ ? OnIntervalConfig.fromJSON(object.intervalConfig)
1720
+ : undefined,
1721
+ type: isSet(object.type) ? String(object.type) : "",
1722
+ };
1723
+ },
1724
+
1725
+ toJSON(message: AptosOnIntervalConfig): unknown {
1726
+ const obj: any = {};
1727
+ message.intervalConfig !== undefined &&
1728
+ (obj.intervalConfig = message.intervalConfig
1729
+ ? OnIntervalConfig.toJSON(message.intervalConfig)
1730
+ : undefined);
1731
+ message.type !== undefined && (obj.type = message.type);
1732
+ return obj;
1733
+ },
1734
+
1735
+ fromPartial(
1736
+ object: DeepPartial<AptosOnIntervalConfig>
1737
+ ): AptosOnIntervalConfig {
1738
+ const message = createBaseAptosOnIntervalConfig();
1739
+ message.intervalConfig =
1740
+ object.intervalConfig !== undefined && object.intervalConfig !== null
1741
+ ? OnIntervalConfig.fromPartial(object.intervalConfig)
1742
+ : undefined;
1743
+ message.type = object.type ?? "";
1489
1744
  return message;
1490
1745
  },
1491
1746
  };
@@ -3254,7 +3509,7 @@ export const RawBlock = {
3254
3509
  };
3255
3510
 
3256
3511
  function createBaseProcessResult(): ProcessResult {
3257
- return { gauges: [], counters: [], logs: [], events: [] };
3512
+ return { gauges: [], counters: [], logs: [], events: [], exports: [] };
3258
3513
  }
3259
3514
 
3260
3515
  export const ProcessResult = {
@@ -3274,6 +3529,9 @@ export const ProcessResult = {
3274
3529
  for (const v of message.events) {
3275
3530
  EventTrackingResult.encode(v!, writer.uint32(34).fork()).ldelim();
3276
3531
  }
3532
+ for (const v of message.exports) {
3533
+ ExportResult.encode(v!, writer.uint32(42).fork()).ldelim();
3534
+ }
3277
3535
  return writer;
3278
3536
  },
3279
3537
 
@@ -3298,6 +3556,9 @@ export const ProcessResult = {
3298
3556
  EventTrackingResult.decode(reader, reader.uint32())
3299
3557
  );
3300
3558
  break;
3559
+ case 5:
3560
+ message.exports.push(ExportResult.decode(reader, reader.uint32()));
3561
+ break;
3301
3562
  default:
3302
3563
  reader.skipType(tag & 7);
3303
3564
  break;
@@ -3320,6 +3581,9 @@ export const ProcessResult = {
3320
3581
  events: Array.isArray(object?.events)
3321
3582
  ? object.events.map((e: any) => EventTrackingResult.fromJSON(e))
3322
3583
  : [],
3584
+ exports: Array.isArray(object?.exports)
3585
+ ? object.exports.map((e: any) => ExportResult.fromJSON(e))
3586
+ : [],
3323
3587
  };
3324
3588
  },
3325
3589
 
@@ -3351,6 +3615,13 @@ export const ProcessResult = {
3351
3615
  } else {
3352
3616
  obj.events = [];
3353
3617
  }
3618
+ if (message.exports) {
3619
+ obj.exports = message.exports.map((e) =>
3620
+ e ? ExportResult.toJSON(e) : undefined
3621
+ );
3622
+ } else {
3623
+ obj.exports = [];
3624
+ }
3354
3625
  return obj;
3355
3626
  },
3356
3627
 
@@ -3363,6 +3634,8 @@ export const ProcessResult = {
3363
3634
  message.logs = object.logs?.map((e) => LogResult.fromPartial(e)) || [];
3364
3635
  message.events =
3365
3636
  object.events?.map((e) => EventTrackingResult.fromPartial(e)) || [];
3637
+ message.exports =
3638
+ object.exports?.map((e) => ExportResult.fromPartial(e)) || [];
3366
3639
  return message;
3367
3640
  },
3368
3641
  };
@@ -4388,6 +4661,98 @@ export const EventTrackingResult = {
4388
4661
  },
4389
4662
  };
4390
4663
 
4664
+ function createBaseExportResult(): ExportResult {
4665
+ return { metadata: undefined, payload: "", runtimeInfo: undefined };
4666
+ }
4667
+
4668
+ export const ExportResult = {
4669
+ encode(
4670
+ message: ExportResult,
4671
+ writer: _m0.Writer = _m0.Writer.create()
4672
+ ): _m0.Writer {
4673
+ if (message.metadata !== undefined) {
4674
+ RecordMetaData.encode(
4675
+ message.metadata,
4676
+ writer.uint32(10).fork()
4677
+ ).ldelim();
4678
+ }
4679
+ if (message.payload !== "") {
4680
+ writer.uint32(18).string(message.payload);
4681
+ }
4682
+ if (message.runtimeInfo !== undefined) {
4683
+ RuntimeInfo.encode(
4684
+ message.runtimeInfo,
4685
+ writer.uint32(26).fork()
4686
+ ).ldelim();
4687
+ }
4688
+ return writer;
4689
+ },
4690
+
4691
+ decode(input: _m0.Reader | Uint8Array, length?: number): ExportResult {
4692
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
4693
+ let end = length === undefined ? reader.len : reader.pos + length;
4694
+ const message = createBaseExportResult();
4695
+ while (reader.pos < end) {
4696
+ const tag = reader.uint32();
4697
+ switch (tag >>> 3) {
4698
+ case 1:
4699
+ message.metadata = RecordMetaData.decode(reader, reader.uint32());
4700
+ break;
4701
+ case 2:
4702
+ message.payload = reader.string();
4703
+ break;
4704
+ case 3:
4705
+ message.runtimeInfo = RuntimeInfo.decode(reader, reader.uint32());
4706
+ break;
4707
+ default:
4708
+ reader.skipType(tag & 7);
4709
+ break;
4710
+ }
4711
+ }
4712
+ return message;
4713
+ },
4714
+
4715
+ fromJSON(object: any): ExportResult {
4716
+ return {
4717
+ metadata: isSet(object.metadata)
4718
+ ? RecordMetaData.fromJSON(object.metadata)
4719
+ : undefined,
4720
+ payload: isSet(object.payload) ? String(object.payload) : "",
4721
+ runtimeInfo: isSet(object.runtimeInfo)
4722
+ ? RuntimeInfo.fromJSON(object.runtimeInfo)
4723
+ : undefined,
4724
+ };
4725
+ },
4726
+
4727
+ toJSON(message: ExportResult): unknown {
4728
+ const obj: any = {};
4729
+ message.metadata !== undefined &&
4730
+ (obj.metadata = message.metadata
4731
+ ? RecordMetaData.toJSON(message.metadata)
4732
+ : undefined);
4733
+ message.payload !== undefined && (obj.payload = message.payload);
4734
+ message.runtimeInfo !== undefined &&
4735
+ (obj.runtimeInfo = message.runtimeInfo
4736
+ ? RuntimeInfo.toJSON(message.runtimeInfo)
4737
+ : undefined);
4738
+ return obj;
4739
+ },
4740
+
4741
+ fromPartial(object: DeepPartial<ExportResult>): ExportResult {
4742
+ const message = createBaseExportResult();
4743
+ message.metadata =
4744
+ object.metadata !== undefined && object.metadata !== null
4745
+ ? RecordMetaData.fromPartial(object.metadata)
4746
+ : undefined;
4747
+ message.payload = object.payload ?? "";
4748
+ message.runtimeInfo =
4749
+ object.runtimeInfo !== undefined && object.runtimeInfo !== null
4750
+ ? RuntimeInfo.fromPartial(object.runtimeInfo)
4751
+ : undefined;
4752
+ return message;
4753
+ },
4754
+ };
4755
+
4391
4756
  export type ProcessorDefinition = typeof ProcessorDefinition;
4392
4757
  export const ProcessorDefinition = {
4393
4758
  name: "Processor",
@@ -14,6 +14,8 @@ import { TemplateInstance } from './gen'
14
14
  import { Provider } from '@ethersproject/providers'
15
15
  import { EventTracker } from './core'
16
16
  import { Metric } from './core/meter'
17
+ import { AptosAccountProcessor } from './aptos/aptos-processor'
18
+ import { Exporter } from './core/exporter'
17
19
 
18
20
  export class ProcessorState {
19
21
  // from abiName_address_chainId => contract wrapper
@@ -34,8 +36,11 @@ export class ProcessorState {
34
36
  suiProcessors: SuiBaseProcessor[] = []
35
37
 
36
38
  aptosProcessors: AptosBaseProcessor[] = []
39
+ aptosAccountProcessors: AptosAccountProcessor[] = []
37
40
 
38
41
  eventTrackers: EventTracker[] = []
39
42
 
43
+ exporters: Exporter[] = []
44
+
40
45
  metrics: Metric[] = []
41
46
  }