@twin.org/engine-types 0.0.1-next.38 → 0.0.1-next.39

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 (26) hide show
  1. package/dist/cjs/index.cjs +166 -0
  2. package/dist/esm/index.mjs +185 -25
  3. package/dist/types/components/dataProcessing.d.ts +35 -0
  4. package/dist/types/index.d.ts +7 -0
  5. package/dist/types/models/IEngineConfig.d.ts +17 -2
  6. package/dist/types/models/config/dataConverterConnectorConfig.d.ts +11 -0
  7. package/dist/types/models/config/dataExtractorConnectorConfig.d.ts +8 -0
  8. package/dist/types/models/config/dataProcessingComponentConfig.d.ts +9 -0
  9. package/dist/types/models/types/dataConverterConnectorType.d.ts +17 -0
  10. package/dist/types/models/types/dataExtractorConnectorType.d.ts +13 -0
  11. package/dist/types/models/types/dataProcessingComponentType.d.ts +13 -0
  12. package/docs/reference/functions/initialiseDataConverterConnector.md +41 -0
  13. package/docs/reference/functions/initialiseDataExtractorConnector.md +41 -0
  14. package/docs/reference/functions/initialiseDataProcessingComponent.md +41 -0
  15. package/docs/reference/index.md +12 -0
  16. package/docs/reference/interfaces/IEngineConfig.md +20 -2
  17. package/docs/reference/type-aliases/DataConverterConnectorConfig.md +5 -0
  18. package/docs/reference/type-aliases/DataConverterConnectorType.md +5 -0
  19. package/docs/reference/type-aliases/DataExtractorConnectorConfig.md +15 -0
  20. package/docs/reference/type-aliases/DataExtractorConnectorType.md +5 -0
  21. package/docs/reference/type-aliases/DataProcessingComponentConfig.md +15 -0
  22. package/docs/reference/type-aliases/DataProcessingComponentType.md +5 -0
  23. package/docs/reference/variables/DataConverterConnectorType.md +19 -0
  24. package/docs/reference/variables/DataExtractorConnectorType.md +13 -0
  25. package/docs/reference/variables/DataProcessingComponentType.md +13 -0
  26. package/package.json +6 -2
@@ -28,6 +28,10 @@ var blobStorageConnectorIpfs = require('@twin.org/blob-storage-connector-ipfs');
28
28
  var blobStorageConnectorMemory = require('@twin.org/blob-storage-connector-memory');
29
29
  var blobStorageModels = require('@twin.org/blob-storage-models');
30
30
  var blobStorageService = require('@twin.org/blob-storage-service');
31
+ var dataProcessingConverters = require('@twin.org/data-processing-converters');
32
+ var dataProcessingExtractors = require('@twin.org/data-processing-extractors');
33
+ var dataProcessingModels = require('@twin.org/data-processing-models');
34
+ var dataProcessingService = require('@twin.org/data-processing-service');
31
35
  var eventBusConnectorLocal = require('@twin.org/event-bus-connector-local');
32
36
  var eventBusModels = require('@twin.org/event-bus-models');
33
37
  var eventBusService = require('@twin.org/event-bus-service');
@@ -742,6 +746,162 @@ function initialiseBlobStorageComponent(engineCore, context, instanceConfig, ove
742
746
  return finalInstanceType;
743
747
  }
744
748
 
749
+ // Copyright 2024 IOTA Stiftung.
750
+ // SPDX-License-Identifier: Apache-2.0.
751
+ /**
752
+ * Data converter connector types.
753
+ */
754
+ // eslint-disable-next-line @typescript-eslint/naming-convention
755
+ const DataConverterConnectorType = {
756
+ /**
757
+ * JSON.
758
+ */
759
+ Json: "json",
760
+ /**
761
+ * Xml.
762
+ */
763
+ Xml: "xml"
764
+ };
765
+
766
+ // Copyright 2024 IOTA Stiftung.
767
+ // SPDX-License-Identifier: Apache-2.0.
768
+ /**
769
+ * Data extractor connector types.
770
+ */
771
+ // eslint-disable-next-line @typescript-eslint/naming-convention
772
+ const DataExtractorConnectorType = {
773
+ /**
774
+ * JSON Path.
775
+ */
776
+ JsonPath: "json-path"
777
+ };
778
+
779
+ // Copyright 2024 IOTA Stiftung.
780
+ // SPDX-License-Identifier: Apache-2.0.
781
+ /**
782
+ * Data processing component types.
783
+ */
784
+ // eslint-disable-next-line @typescript-eslint/naming-convention
785
+ const DataProcessingComponentType = {
786
+ /**
787
+ * Service.
788
+ */
789
+ Service: "service"
790
+ };
791
+
792
+ // Copyright 2024 IOTA Stiftung.
793
+ // SPDX-License-Identifier: Apache-2.0.
794
+ /**
795
+ * Initialise the data converter connector.
796
+ * @param engineCore The engine core.
797
+ * @param context The context for the engine.
798
+ * @param instanceConfig The instance config.
799
+ * @param overrideInstanceType The instance type to override the default.
800
+ * @returns The name of the instance created.
801
+ * @throws GeneralError if the connector type is unknown.
802
+ */
803
+ function initialiseDataConverterConnector(engineCore, context, instanceConfig, overrideInstanceType) {
804
+ engineCore.logInfo(core.I18n.formatMessage("engineCore.configuring", {
805
+ element: `Data Converter Connector: ${instanceConfig.type}`
806
+ }));
807
+ const type = instanceConfig.type;
808
+ let connector;
809
+ let instanceType;
810
+ if (type === DataConverterConnectorType.Json) {
811
+ connector = new dataProcessingConverters.JsonConverterConnector();
812
+ instanceType = dataProcessingConverters.JsonConverterConnector.NAMESPACE;
813
+ }
814
+ else if (type === DataConverterConnectorType.Xml) {
815
+ connector = new dataProcessingConverters.XmlConverterConnector();
816
+ instanceType = dataProcessingConverters.XmlConverterConnector.NAMESPACE;
817
+ }
818
+ else {
819
+ throw new core.GeneralError("engineCore", "connectorUnknownType", {
820
+ type,
821
+ connectorType: "dataConverterConnector"
822
+ });
823
+ }
824
+ const finalInstanceType = overrideInstanceType ?? instanceType;
825
+ context.componentInstances.push({
826
+ instanceType: finalInstanceType,
827
+ component: connector
828
+ });
829
+ dataProcessingModels.DataConverterConnectorFactory.register(finalInstanceType, () => connector);
830
+ return finalInstanceType;
831
+ }
832
+ /**
833
+ * Initialise the data extractor connector.
834
+ * @param engineCore The engine core.
835
+ * @param context The context for the engine.
836
+ * @param instanceConfig The instance config.
837
+ * @param overrideInstanceType The instance type to override the default.
838
+ * @returns The name of the instance created.
839
+ * @throws GeneralError if the connector type is unknown.
840
+ */
841
+ function initialiseDataExtractorConnector(engineCore, context, instanceConfig, overrideInstanceType) {
842
+ engineCore.logInfo(core.I18n.formatMessage("engineCore.configuring", {
843
+ element: `Data Extractor Connector: ${instanceConfig.type}`
844
+ }));
845
+ const type = instanceConfig.type;
846
+ let connector;
847
+ let instanceType;
848
+ if (type === DataExtractorConnectorType.JsonPath) {
849
+ connector = new dataProcessingExtractors.JsonPathExtractorConnector();
850
+ instanceType = dataProcessingExtractors.JsonPathExtractorConnector.NAMESPACE;
851
+ }
852
+ else {
853
+ throw new core.GeneralError("engineCore", "connectorUnknownType", {
854
+ type,
855
+ connectorType: "dataExtractorConnector"
856
+ });
857
+ }
858
+ const finalInstanceType = overrideInstanceType ?? instanceType;
859
+ context.componentInstances.push({
860
+ instanceType: finalInstanceType,
861
+ component: connector
862
+ });
863
+ dataProcessingModels.DataExtractorConnectorFactory.register(finalInstanceType, () => connector);
864
+ return finalInstanceType;
865
+ }
866
+ /**
867
+ * Initialise the data processing component.
868
+ * @param engineCore The engine core.
869
+ * @param context The context for the engine.
870
+ * @param instanceConfig The instance config.
871
+ * @param overrideInstanceType The instance type to override the default.
872
+ * @returns The name of the instance created.
873
+ * @throws GeneralError if the component type is unknown.
874
+ */
875
+ function initialiseDataProcessingComponent(engineCore, context, instanceConfig, overrideInstanceType) {
876
+ engineCore.logInfo(core.I18n.formatMessage("engineCore.configuring", {
877
+ element: `Data Processing Component: ${instanceConfig.type}`
878
+ }));
879
+ const type = instanceConfig.type;
880
+ let component;
881
+ let instanceType;
882
+ if (type === DataProcessingComponentType.Service) {
883
+ dataProcessingService.initSchema();
884
+ initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.extractionRuleGroupStorageConnectorType, "ExtractionRuleGroup");
885
+ component = new dataProcessingService.DataProcessingService({
886
+ ...instanceConfig.options
887
+ });
888
+ instanceType = dataProcessingService.DataProcessingService.NAMESPACE;
889
+ }
890
+ else {
891
+ throw new core.GeneralError("engineCore", "componentUnknownType", {
892
+ type,
893
+ componentType: "dataProcessingComponent"
894
+ });
895
+ }
896
+ const finalInstanceType = overrideInstanceType ?? instanceType;
897
+ context.componentInstances.push({
898
+ instanceType: finalInstanceType,
899
+ component
900
+ });
901
+ core.ComponentFactory.register(finalInstanceType, () => component);
902
+ return finalInstanceType;
903
+ }
904
+
745
905
  // Copyright 2024 IOTA Stiftung.
746
906
  // SPDX-License-Identifier: Apache-2.0.
747
907
  /**
@@ -2180,6 +2340,9 @@ exports.AuditableItemStreamComponentType = AuditableItemStreamComponentType;
2180
2340
  exports.BackgroundTaskConnectorType = BackgroundTaskConnectorType;
2181
2341
  exports.BlobStorageComponentType = BlobStorageComponentType;
2182
2342
  exports.BlobStorageConnectorType = BlobStorageConnectorType;
2343
+ exports.DataConverterConnectorType = DataConverterConnectorType;
2344
+ exports.DataExtractorConnectorType = DataExtractorConnectorType;
2345
+ exports.DataProcessingComponentType = DataProcessingComponentType;
2183
2346
  exports.DltConfigType = DltConfigType;
2184
2347
  exports.EntityStorageComponentType = EntityStorageComponentType;
2185
2348
  exports.EntityStorageConnectorType = EntityStorageConnectorType;
@@ -2213,6 +2376,9 @@ exports.initialiseAuditableItemStreamComponent = initialiseAuditableItemStreamCo
2213
2376
  exports.initialiseBackgroundTaskConnector = initialiseBackgroundTaskConnector;
2214
2377
  exports.initialiseBlobStorageComponent = initialiseBlobStorageComponent;
2215
2378
  exports.initialiseBlobStorageConnector = initialiseBlobStorageConnector;
2379
+ exports.initialiseDataConverterConnector = initialiseDataConverterConnector;
2380
+ exports.initialiseDataExtractorConnector = initialiseDataExtractorConnector;
2381
+ exports.initialiseDataProcessingComponent = initialiseDataProcessingComponent;
2216
2382
  exports.initialiseEntityStorageComponent = initialiseEntityStorageComponent;
2217
2383
  exports.initialiseEntityStorageConnector = initialiseEntityStorageConnector;
2218
2384
  exports.initialiseEventBusComponent = initialiseEventBusComponent;
@@ -26,40 +26,44 @@ import { IpfsBlobStorageConnector } from '@twin.org/blob-storage-connector-ipfs'
26
26
  import { MemoryBlobStorageConnector } from '@twin.org/blob-storage-connector-memory';
27
27
  import { BlobStorageConnectorFactory } from '@twin.org/blob-storage-models';
28
28
  import { initSchema as initSchema$3, BlobStorageService } from '@twin.org/blob-storage-service';
29
+ import { JsonConverterConnector, XmlConverterConnector } from '@twin.org/data-processing-converters';
30
+ import { JsonPathExtractorConnector } from '@twin.org/data-processing-extractors';
31
+ import { DataConverterConnectorFactory, DataExtractorConnectorFactory } from '@twin.org/data-processing-models';
32
+ import { initSchema as initSchema$4, DataProcessingService } from '@twin.org/data-processing-service';
29
33
  import { LocalEventBusConnector } from '@twin.org/event-bus-connector-local';
30
34
  import { EventBusConnectorFactory } from '@twin.org/event-bus-models';
31
35
  import { EventBusService } from '@twin.org/event-bus-service';
32
- import { EntityStorageFaucetConnector, EntityStorageWalletConnector, initSchema as initSchema$d } from '@twin.org/wallet-connector-entity-storage';
36
+ import { EntityStorageFaucetConnector, EntityStorageWalletConnector, initSchema as initSchema$e } from '@twin.org/wallet-connector-entity-storage';
33
37
  import { IotaFaucetConnector, IotaWalletConnector } from '@twin.org/wallet-connector-iota';
34
38
  import { IotaRebasedFaucetConnector, IotaRebasedWalletConnector } from '@twin.org/wallet-connector-iota-rebased';
35
39
  import { FaucetConnectorFactory, WalletConnectorFactory } from '@twin.org/wallet-models';
36
- import { initSchema as initSchema$4, EntityStorageIdentityConnector, EntityStorageIdentityProfileConnector, EntityStorageIdentityResolverConnector } from '@twin.org/identity-connector-entity-storage';
40
+ import { initSchema as initSchema$5, EntityStorageIdentityConnector, EntityStorageIdentityProfileConnector, EntityStorageIdentityResolverConnector } from '@twin.org/identity-connector-entity-storage';
37
41
  import { IotaIdentityConnector, IotaIdentityResolverConnector } from '@twin.org/identity-connector-iota';
38
42
  import { IotaRebasedIdentityConnector, IotaRebasedIdentityResolverConnector } from '@twin.org/identity-connector-iota-rebased';
39
43
  import { IdentityConnectorFactory, IdentityProfileConnectorFactory, IdentityResolverConnectorFactory } from '@twin.org/identity-models';
40
44
  import { IdentityService, IdentityProfileService, IdentityResolverService } from '@twin.org/identity-service';
41
- import { initSchema as initSchema$5, ImmutableProofService } from '@twin.org/immutable-proof-service';
42
- import { initSchema as initSchema$6, EntityStorageImmutableStorageConnector } from '@twin.org/immutable-storage-connector-entity-storage';
45
+ import { initSchema as initSchema$6, ImmutableProofService } from '@twin.org/immutable-proof-service';
46
+ import { initSchema as initSchema$7, EntityStorageImmutableStorageConnector } from '@twin.org/immutable-storage-connector-entity-storage';
43
47
  import { IotaImmutableStorageConnector } from '@twin.org/immutable-storage-connector-iota';
44
48
  import { IotaRebasedImmutableStorageConnector } from '@twin.org/immutable-storage-connector-iota-rebased';
45
49
  import { ImmutableStorageConnectorFactory } from '@twin.org/immutable-storage-models';
46
50
  import { ConsoleLoggingConnector } from '@twin.org/logging-connector-console';
47
- import { initSchema as initSchema$7, EntityStorageLoggingConnector } from '@twin.org/logging-connector-entity-storage';
51
+ import { initSchema as initSchema$8, EntityStorageLoggingConnector } from '@twin.org/logging-connector-entity-storage';
48
52
  import { MultiLoggingConnector, LoggingConnectorFactory } from '@twin.org/logging-models';
49
53
  import { LoggingService } from '@twin.org/logging-service';
50
54
  import { AwsMessagingEmailConnector, AwsMessagingSmsConnector, AwsMessagingPushNotificationConnector } from '@twin.org/messaging-connector-aws';
51
- import { initSchema as initSchema$8, EntityStorageMessagingEmailConnector, EntityStorageMessagingSmsConnector, EntityStorageMessagingPushNotificationConnector } from '@twin.org/messaging-connector-entity-storage';
55
+ import { initSchema as initSchema$9, EntityStorageMessagingEmailConnector, EntityStorageMessagingSmsConnector, EntityStorageMessagingPushNotificationConnector } from '@twin.org/messaging-connector-entity-storage';
52
56
  import { MessagingEmailConnectorFactory, MessagingSmsConnectorFactory, MessagingPushNotificationsConnectorFactory } from '@twin.org/messaging-models';
53
- import { initSchema as initSchema$9, MessagingService } from '@twin.org/messaging-service';
54
- import { initSchema as initSchema$a, EntityStorageNftConnector } from '@twin.org/nft-connector-entity-storage';
57
+ import { initSchema as initSchema$a, MessagingService } from '@twin.org/messaging-service';
58
+ import { initSchema as initSchema$b, EntityStorageNftConnector } from '@twin.org/nft-connector-entity-storage';
55
59
  import { IotaNftConnector } from '@twin.org/nft-connector-iota';
56
60
  import { IotaRebasedNftConnector } from '@twin.org/nft-connector-iota-rebased';
57
61
  import { NftConnectorFactory } from '@twin.org/nft-models';
58
62
  import { NftService } from '@twin.org/nft-service';
59
- import { initSchema as initSchema$b, EntityStorageTelemetryConnector } from '@twin.org/telemetry-connector-entity-storage';
63
+ import { initSchema as initSchema$c, EntityStorageTelemetryConnector } from '@twin.org/telemetry-connector-entity-storage';
60
64
  import { TelemetryConnectorFactory } from '@twin.org/telemetry-models';
61
65
  import { TelemetryService } from '@twin.org/telemetry-service';
62
- import { initSchema as initSchema$c, EntityStorageVaultConnector } from '@twin.org/vault-connector-entity-storage';
66
+ import { initSchema as initSchema$d, EntityStorageVaultConnector } from '@twin.org/vault-connector-entity-storage';
63
67
  import { HashicorpVaultConnector } from '@twin.org/vault-connector-hashicorp';
64
68
  import { VaultConnectorFactory } from '@twin.org/vault-models';
65
69
 
@@ -740,6 +744,162 @@ function initialiseBlobStorageComponent(engineCore, context, instanceConfig, ove
740
744
  return finalInstanceType;
741
745
  }
742
746
 
747
+ // Copyright 2024 IOTA Stiftung.
748
+ // SPDX-License-Identifier: Apache-2.0.
749
+ /**
750
+ * Data converter connector types.
751
+ */
752
+ // eslint-disable-next-line @typescript-eslint/naming-convention
753
+ const DataConverterConnectorType = {
754
+ /**
755
+ * JSON.
756
+ */
757
+ Json: "json",
758
+ /**
759
+ * Xml.
760
+ */
761
+ Xml: "xml"
762
+ };
763
+
764
+ // Copyright 2024 IOTA Stiftung.
765
+ // SPDX-License-Identifier: Apache-2.0.
766
+ /**
767
+ * Data extractor connector types.
768
+ */
769
+ // eslint-disable-next-line @typescript-eslint/naming-convention
770
+ const DataExtractorConnectorType = {
771
+ /**
772
+ * JSON Path.
773
+ */
774
+ JsonPath: "json-path"
775
+ };
776
+
777
+ // Copyright 2024 IOTA Stiftung.
778
+ // SPDX-License-Identifier: Apache-2.0.
779
+ /**
780
+ * Data processing component types.
781
+ */
782
+ // eslint-disable-next-line @typescript-eslint/naming-convention
783
+ const DataProcessingComponentType = {
784
+ /**
785
+ * Service.
786
+ */
787
+ Service: "service"
788
+ };
789
+
790
+ // Copyright 2024 IOTA Stiftung.
791
+ // SPDX-License-Identifier: Apache-2.0.
792
+ /**
793
+ * Initialise the data converter connector.
794
+ * @param engineCore The engine core.
795
+ * @param context The context for the engine.
796
+ * @param instanceConfig The instance config.
797
+ * @param overrideInstanceType The instance type to override the default.
798
+ * @returns The name of the instance created.
799
+ * @throws GeneralError if the connector type is unknown.
800
+ */
801
+ function initialiseDataConverterConnector(engineCore, context, instanceConfig, overrideInstanceType) {
802
+ engineCore.logInfo(I18n.formatMessage("engineCore.configuring", {
803
+ element: `Data Converter Connector: ${instanceConfig.type}`
804
+ }));
805
+ const type = instanceConfig.type;
806
+ let connector;
807
+ let instanceType;
808
+ if (type === DataConverterConnectorType.Json) {
809
+ connector = new JsonConverterConnector();
810
+ instanceType = JsonConverterConnector.NAMESPACE;
811
+ }
812
+ else if (type === DataConverterConnectorType.Xml) {
813
+ connector = new XmlConverterConnector();
814
+ instanceType = XmlConverterConnector.NAMESPACE;
815
+ }
816
+ else {
817
+ throw new GeneralError("engineCore", "connectorUnknownType", {
818
+ type,
819
+ connectorType: "dataConverterConnector"
820
+ });
821
+ }
822
+ const finalInstanceType = overrideInstanceType ?? instanceType;
823
+ context.componentInstances.push({
824
+ instanceType: finalInstanceType,
825
+ component: connector
826
+ });
827
+ DataConverterConnectorFactory.register(finalInstanceType, () => connector);
828
+ return finalInstanceType;
829
+ }
830
+ /**
831
+ * Initialise the data extractor connector.
832
+ * @param engineCore The engine core.
833
+ * @param context The context for the engine.
834
+ * @param instanceConfig The instance config.
835
+ * @param overrideInstanceType The instance type to override the default.
836
+ * @returns The name of the instance created.
837
+ * @throws GeneralError if the connector type is unknown.
838
+ */
839
+ function initialiseDataExtractorConnector(engineCore, context, instanceConfig, overrideInstanceType) {
840
+ engineCore.logInfo(I18n.formatMessage("engineCore.configuring", {
841
+ element: `Data Extractor Connector: ${instanceConfig.type}`
842
+ }));
843
+ const type = instanceConfig.type;
844
+ let connector;
845
+ let instanceType;
846
+ if (type === DataExtractorConnectorType.JsonPath) {
847
+ connector = new JsonPathExtractorConnector();
848
+ instanceType = JsonPathExtractorConnector.NAMESPACE;
849
+ }
850
+ else {
851
+ throw new GeneralError("engineCore", "connectorUnknownType", {
852
+ type,
853
+ connectorType: "dataExtractorConnector"
854
+ });
855
+ }
856
+ const finalInstanceType = overrideInstanceType ?? instanceType;
857
+ context.componentInstances.push({
858
+ instanceType: finalInstanceType,
859
+ component: connector
860
+ });
861
+ DataExtractorConnectorFactory.register(finalInstanceType, () => connector);
862
+ return finalInstanceType;
863
+ }
864
+ /**
865
+ * Initialise the data processing component.
866
+ * @param engineCore The engine core.
867
+ * @param context The context for the engine.
868
+ * @param instanceConfig The instance config.
869
+ * @param overrideInstanceType The instance type to override the default.
870
+ * @returns The name of the instance created.
871
+ * @throws GeneralError if the component type is unknown.
872
+ */
873
+ function initialiseDataProcessingComponent(engineCore, context, instanceConfig, overrideInstanceType) {
874
+ engineCore.logInfo(I18n.formatMessage("engineCore.configuring", {
875
+ element: `Data Processing Component: ${instanceConfig.type}`
876
+ }));
877
+ const type = instanceConfig.type;
878
+ let component;
879
+ let instanceType;
880
+ if (type === DataProcessingComponentType.Service) {
881
+ initSchema$4();
882
+ initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.extractionRuleGroupStorageConnectorType, "ExtractionRuleGroup");
883
+ component = new DataProcessingService({
884
+ ...instanceConfig.options
885
+ });
886
+ instanceType = DataProcessingService.NAMESPACE;
887
+ }
888
+ else {
889
+ throw new GeneralError("engineCore", "componentUnknownType", {
890
+ type,
891
+ componentType: "dataProcessingComponent"
892
+ });
893
+ }
894
+ const finalInstanceType = overrideInstanceType ?? instanceType;
895
+ context.componentInstances.push({
896
+ instanceType: finalInstanceType,
897
+ component
898
+ });
899
+ ComponentFactory.register(finalInstanceType, () => component);
900
+ return finalInstanceType;
901
+ }
902
+
743
903
  // Copyright 2024 IOTA Stiftung.
744
904
  // SPDX-License-Identifier: Apache-2.0.
745
905
  /**
@@ -994,7 +1154,7 @@ function initialiseIdentityConnector(engineCore, context, instanceConfig, overri
994
1154
  instanceType = IotaRebasedIdentityConnector.NAMESPACE;
995
1155
  }
996
1156
  else if (type === IdentityConnectorType.EntityStorage) {
997
- initSchema$4({ includeProfile: false });
1157
+ initSchema$5({ includeProfile: false });
998
1158
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.didDocumentEntityStorageType, "IdentityDocument");
999
1159
  connector = new EntityStorageIdentityConnector({
1000
1160
  vaultConnectorType: context.defaultTypes.vaultConnector,
@@ -1090,7 +1250,7 @@ function initialiseIdentityProfileConnector(engineCore, context, instanceConfig,
1090
1250
  let connector;
1091
1251
  let instanceType;
1092
1252
  if (type === IdentityProfileConnectorType.EntityStorage) {
1093
- initSchema$4({ includeDocument: false });
1253
+ initSchema$5({ includeDocument: false });
1094
1254
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.profileEntityStorageType, "IdentityProfile");
1095
1255
  connector = new EntityStorageIdentityProfileConnector(instanceConfig.options);
1096
1256
  instanceType = EntityStorageIdentityProfileConnector.NAMESPACE;
@@ -1222,7 +1382,7 @@ function initialiseIdentityResolverConnector(engineCore, context, instanceConfig
1222
1382
  instanceType = IotaRebasedIdentityResolverConnector.NAMESPACE;
1223
1383
  }
1224
1384
  else if (type === IdentityResolverConnectorType.EntityStorage) {
1225
- initSchema$4({ includeProfile: false });
1385
+ initSchema$5({ includeProfile: false });
1226
1386
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.didDocumentEntityStorageType, "IdentityDocument");
1227
1387
  connector = new EntityStorageIdentityResolverConnector({
1228
1388
  vaultConnectorType: context.defaultTypes.vaultConnector,
@@ -1305,7 +1465,7 @@ function initialiseImmutableProofComponent(engineCore, context, instanceConfig,
1305
1465
  let component;
1306
1466
  let instanceType;
1307
1467
  if (type === ImmutableProofComponentType.Service) {
1308
- initSchema$5();
1468
+ initSchema$6();
1309
1469
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.immutableProofEntityStorageType, "ImmutableProof");
1310
1470
  component = new ImmutableProofService({
1311
1471
  vaultConnectorType: context.defaultTypes.vaultConnector,
@@ -1396,7 +1556,7 @@ function initialiseImmutableStorageConnector(engineCore, context, instanceConfig
1396
1556
  instanceType = IotaRebasedImmutableStorageConnector.NAMESPACE;
1397
1557
  }
1398
1558
  else if (type === ImmutableStorageConnectorType.EntityStorage) {
1399
- initSchema$6();
1559
+ initSchema$7();
1400
1560
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.immutableStorageEntityStorageType, "ImmutableItem");
1401
1561
  connector = new EntityStorageImmutableStorageConnector(instanceConfig.options);
1402
1562
  instanceType = EntityStorageImmutableStorageConnector.NAMESPACE;
@@ -1473,7 +1633,7 @@ function initialiseLoggingConnector(engineCore, context, instanceConfig, overrid
1473
1633
  instanceType = ConsoleLoggingConnector.NAMESPACE;
1474
1634
  }
1475
1635
  else if (type === LoggingConnectorType.EntityStorage) {
1476
- initSchema$7();
1636
+ initSchema$8();
1477
1637
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.logEntryStorageConnectorType, "LogEntry");
1478
1638
  connector = new EntityStorageLoggingConnector(instanceConfig.options);
1479
1639
  instanceType = EntityStorageLoggingConnector.NAMESPACE;
@@ -1611,7 +1771,7 @@ function initialiseMessagingEmailConnector(engineCore, context, instanceConfig,
1611
1771
  let connector;
1612
1772
  let instanceType;
1613
1773
  if (type === MessagingEmailConnectorType.EntityStorage) {
1614
- initSchema$8({ email: true, sms: false, pushNotification: false });
1774
+ initSchema$9({ email: true, sms: false, pushNotification: false });
1615
1775
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.messagingEmailEntryStorageConnectorType, "EmailEntry");
1616
1776
  connector = new EntityStorageMessagingEmailConnector({
1617
1777
  loggingConnectorType: context.defaultTypes.loggingConnector,
@@ -1654,7 +1814,7 @@ function initialiseMessagingSmsConnector(engineCore, context, instanceConfig, ov
1654
1814
  let connector;
1655
1815
  let instanceType;
1656
1816
  if (type === MessagingSmsConnectorType.EntityStorage) {
1657
- initSchema$8({ email: false, sms: true, pushNotification: false });
1817
+ initSchema$9({ email: false, sms: true, pushNotification: false });
1658
1818
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.messagingSmsEntryStorageConnectorType, "SmsEntry");
1659
1819
  connector = new EntityStorageMessagingSmsConnector({
1660
1820
  loggingConnectorType: context.defaultTypes.loggingConnector,
@@ -1697,7 +1857,7 @@ function initialiseMessagingPushNotificationConnector(engineCore, context, insta
1697
1857
  let connector;
1698
1858
  let instanceType;
1699
1859
  if (type === MessagingPushNotificationConnectorType.EntityStorage) {
1700
- initSchema$8({ email: false, sms: false, pushNotification: true });
1860
+ initSchema$9({ email: false, sms: false, pushNotification: true });
1701
1861
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.messagingDeviceEntryStorageConnectorType, "PushNotificationDeviceEntry");
1702
1862
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.messagingMessageEntryStorageConnectorType, "PushNotificationMessageEntry");
1703
1863
  connector = new EntityStorageMessagingPushNotificationConnector({
@@ -1741,7 +1901,7 @@ function initialiseMessagingComponent(engineCore, context, instanceConfig, overr
1741
1901
  let component;
1742
1902
  let instanceType;
1743
1903
  if (type === MessagingComponentType.Service) {
1744
- initSchema$9();
1904
+ initSchema$a();
1745
1905
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.templateEntryStorageConnectorType, "TemplateEntry");
1746
1906
  component = new MessagingService({
1747
1907
  messagingEmailConnectorType: context.defaultTypes.messagingEmailConnector,
@@ -1816,7 +1976,7 @@ function initialiseNftConnector(engineCore, context, instanceConfig, overrideIns
1816
1976
  let connector;
1817
1977
  let instanceType;
1818
1978
  if (type === NftConnectorType.EntityStorage) {
1819
- initSchema$a();
1979
+ initSchema$b();
1820
1980
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.nftEntityStorageType, "Nft");
1821
1981
  connector = new EntityStorageNftConnector(instanceConfig.options);
1822
1982
  instanceType = EntityStorageNftConnector.NAMESPACE;
@@ -1929,7 +2089,7 @@ function initialiseTelemetryConnector(engineCore, context, instanceConfig, overr
1929
2089
  let connector;
1930
2090
  let instanceType;
1931
2091
  if (type === TelemetryConnectorType.EntityStorage) {
1932
- initSchema$b();
2092
+ initSchema$c();
1933
2093
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.telemetryMetricStorageConnectorType, "TelemetryMetric");
1934
2094
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.telemetryMetricValueStorageConnectorType, "TelemetryMetricValue");
1935
2095
  connector = new EntityStorageTelemetryConnector({
@@ -2020,7 +2180,7 @@ function initialiseVaultConnector(engineCore, context, instanceConfig, overrideI
2020
2180
  let connector;
2021
2181
  let instanceType;
2022
2182
  if (type === VaultConnectorType.EntityStorage) {
2023
- initSchema$c();
2183
+ initSchema$d();
2024
2184
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.vaultKeyEntityStorageType, "VaultKey");
2025
2185
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.vaultSecretEntityStorageType, "VaultSecret");
2026
2186
  connector = new EntityStorageVaultConnector(instanceConfig.options);
@@ -2142,7 +2302,7 @@ function initialiseWalletStorage(engineCore, context, instanceConfig, overrideIn
2142
2302
  const type = instanceConfig.type;
2143
2303
  if (type === WalletConnectorType.Iota) ;
2144
2304
  else if (type === WalletConnectorType.EntityStorage) {
2145
- initSchema$d();
2305
+ initSchema$e();
2146
2306
  initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.walletAddressEntityStorageType, "WalletAddress");
2147
2307
  }
2148
2308
  else {
@@ -2171,4 +2331,4 @@ const DltConfigType = {
2171
2331
  IotaRebased: "iota-rebased"
2172
2332
  };
2173
2333
 
2174
- export { AttestationComponentType, AttestationConnectorType, AuditableItemGraphComponentType, AuditableItemStreamComponentType, BackgroundTaskConnectorType, BlobStorageComponentType, BlobStorageConnectorType, DltConfigType, EntityStorageComponentType, EntityStorageConnectorType, EventBusComponentType, EventBusConnectorType, FaucetConnectorType, IdentityComponentType, IdentityConnectorType, IdentityProfileComponentType, IdentityProfileConnectorType, IdentityResolverComponentType, IdentityResolverConnectorType, ImmutableProofComponentType, ImmutableStorageConnectorType, LoggingComponentType, LoggingConnectorType, MessagingComponentType, MessagingEmailConnectorType, MessagingPushNotificationConnectorType, MessagingSmsConnectorType, NftComponentType, NftConnectorType, TelemetryComponentType, TelemetryConnectorType, VaultConnectorType, WalletConnectorType, initialiseAttestationComponent, initialiseAttestationConnector, initialiseAuditableItemGraphComponent, initialiseAuditableItemStreamComponent, initialiseBackgroundTaskConnector, initialiseBlobStorageComponent, initialiseBlobStorageConnector, initialiseEntityStorageComponent, initialiseEntityStorageConnector, initialiseEventBusComponent, initialiseEventBusConnector, initialiseFaucetConnector, initialiseIdentityComponent, initialiseIdentityConnector, initialiseIdentityProfileComponent, initialiseIdentityProfileConnector, initialiseIdentityResolverComponent, initialiseIdentityResolverConnector, initialiseImmutableProofComponent, initialiseImmutableStorageConnector, initialiseLoggingComponent, initialiseLoggingConnector, initialiseMessagingComponent, initialiseMessagingEmailConnector, initialiseMessagingPushNotificationConnector, initialiseMessagingSmsConnector, initialiseNftComponent, initialiseNftConnector, initialiseTelemetryComponent, initialiseTelemetryConnector, initialiseVaultConnector, initialiseWalletConnector, initialiseWalletStorage };
2334
+ export { AttestationComponentType, AttestationConnectorType, AuditableItemGraphComponentType, AuditableItemStreamComponentType, BackgroundTaskConnectorType, BlobStorageComponentType, BlobStorageConnectorType, DataConverterConnectorType, DataExtractorConnectorType, DataProcessingComponentType, DltConfigType, EntityStorageComponentType, EntityStorageConnectorType, EventBusComponentType, EventBusConnectorType, FaucetConnectorType, IdentityComponentType, IdentityConnectorType, IdentityProfileComponentType, IdentityProfileConnectorType, IdentityResolverComponentType, IdentityResolverConnectorType, ImmutableProofComponentType, ImmutableStorageConnectorType, LoggingComponentType, LoggingConnectorType, MessagingComponentType, MessagingEmailConnectorType, MessagingPushNotificationConnectorType, MessagingSmsConnectorType, NftComponentType, NftConnectorType, TelemetryComponentType, TelemetryConnectorType, VaultConnectorType, WalletConnectorType, initialiseAttestationComponent, initialiseAttestationConnector, initialiseAuditableItemGraphComponent, initialiseAuditableItemStreamComponent, initialiseBackgroundTaskConnector, initialiseBlobStorageComponent, initialiseBlobStorageConnector, initialiseDataConverterConnector, initialiseDataExtractorConnector, initialiseDataProcessingComponent, initialiseEntityStorageComponent, initialiseEntityStorageConnector, initialiseEventBusComponent, initialiseEventBusConnector, initialiseFaucetConnector, initialiseIdentityComponent, initialiseIdentityConnector, initialiseIdentityProfileComponent, initialiseIdentityProfileConnector, initialiseIdentityResolverComponent, initialiseIdentityResolverConnector, initialiseImmutableProofComponent, initialiseImmutableStorageConnector, initialiseLoggingComponent, initialiseLoggingConnector, initialiseMessagingComponent, initialiseMessagingEmailConnector, initialiseMessagingPushNotificationConnector, initialiseMessagingSmsConnector, initialiseNftComponent, initialiseNftConnector, initialiseTelemetryComponent, initialiseTelemetryConnector, initialiseVaultConnector, initialiseWalletConnector, initialiseWalletStorage };
@@ -0,0 +1,35 @@
1
+ import type { IEngineCore, IEngineCoreContext } from "@twin.org/engine-models";
2
+ import type { DataConverterConnectorConfig } from "../models/config/dataConverterConnectorConfig";
3
+ import type { DataExtractorConnectorConfig } from "../models/config/dataExtractorConnectorConfig";
4
+ import type { DataProcessingComponentConfig } from "../models/config/dataProcessingComponentConfig";
5
+ import type { IEngineConfig } from "../models/IEngineConfig";
6
+ /**
7
+ * Initialise the data converter connector.
8
+ * @param engineCore The engine core.
9
+ * @param context The context for the engine.
10
+ * @param instanceConfig The instance config.
11
+ * @param overrideInstanceType The instance type to override the default.
12
+ * @returns The name of the instance created.
13
+ * @throws GeneralError if the connector type is unknown.
14
+ */
15
+ export declare function initialiseDataConverterConnector(engineCore: IEngineCore<IEngineConfig>, context: IEngineCoreContext<IEngineConfig>, instanceConfig: DataConverterConnectorConfig, overrideInstanceType?: string): string | undefined;
16
+ /**
17
+ * Initialise the data extractor connector.
18
+ * @param engineCore The engine core.
19
+ * @param context The context for the engine.
20
+ * @param instanceConfig The instance config.
21
+ * @param overrideInstanceType The instance type to override the default.
22
+ * @returns The name of the instance created.
23
+ * @throws GeneralError if the connector type is unknown.
24
+ */
25
+ export declare function initialiseDataExtractorConnector(engineCore: IEngineCore<IEngineConfig>, context: IEngineCoreContext<IEngineConfig>, instanceConfig: DataExtractorConnectorConfig, overrideInstanceType?: string): string | undefined;
26
+ /**
27
+ * Initialise the data processing component.
28
+ * @param engineCore The engine core.
29
+ * @param context The context for the engine.
30
+ * @param instanceConfig The instance config.
31
+ * @param overrideInstanceType The instance type to override the default.
32
+ * @returns The name of the instance created.
33
+ * @throws GeneralError if the component type is unknown.
34
+ */
35
+ export declare function initialiseDataProcessingComponent(engineCore: IEngineCore<IEngineConfig>, context: IEngineCoreContext<IEngineConfig>, instanceConfig: DataProcessingComponentConfig, overrideInstanceType?: string): string | undefined;
@@ -3,6 +3,7 @@ export * from "./components/auditableItemGraph";
3
3
  export * from "./components/auditableItemStream";
4
4
  export * from "./components/backgroundTask";
5
5
  export * from "./components/blobStorage";
6
+ export * from "./components/dataProcessing";
6
7
  export * from "./components/entityStorage";
7
8
  export * from "./components/eventBus";
8
9
  export * from "./components/faucet";
@@ -24,6 +25,9 @@ export * from "./models/config/auditableItemStreamComponentConfig";
24
25
  export * from "./models/config/backgroundTaskConnectorConfig";
25
26
  export * from "./models/config/blobStorageComponentConfig";
26
27
  export * from "./models/config/blobStorageConnectorConfig";
28
+ export * from "./models/config/dataConverterConnectorConfig";
29
+ export * from "./models/config/dataExtractorConnectorConfig";
30
+ export * from "./models/config/dataProcessingComponentConfig";
27
31
  export * from "./models/config/dltConfig";
28
32
  export * from "./models/config/entityStorageComponentConfig";
29
33
  export * from "./models/config/entityStorageConnectorConfig";
@@ -58,6 +62,9 @@ export * from "./models/types/auditableItemStreamComponentType";
58
62
  export * from "./models/types/backgroundTaskConnectorType";
59
63
  export * from "./models/types/blobStorageComponentType";
60
64
  export * from "./models/types/blobStorageConnectorType";
65
+ export * from "./models/types/dataConverterConnectorType";
66
+ export * from "./models/types/dataExtractorConnectorType";
67
+ export * from "./models/types/dataProcessingComponentType";
61
68
  export * from "./models/types/dltConfigType";
62
69
  export * from "./models/types/entityStorageComponentType";
63
70
  export * from "./models/types/entityStorageConnectorType";
@@ -6,6 +6,9 @@ import type { AuditableItemStreamComponentConfig } from "./config/auditableItemS
6
6
  import type { BackgroundTaskConnectorConfig } from "./config/backgroundTaskConnectorConfig";
7
7
  import type { BlobStorageComponentConfig } from "./config/blobStorageComponentConfig";
8
8
  import type { BlobStorageConnectorConfig } from "./config/blobStorageConnectorConfig";
9
+ import type { DataConverterConnectorConfig } from "./config/dataConverterConnectorConfig";
10
+ import type { DataExtractorConnectorConfig } from "./config/dataExtractorConnectorConfig";
11
+ import type { DataProcessingComponentConfig } from "./config/dataProcessingComponentConfig";
9
12
  import type { DltConfig } from "./config/dltConfig";
10
13
  import type { EntityStorageComponentConfig } from "./config/entityStorageComponentConfig";
11
14
  import type { EntityStorageConnectorConfig } from "./config/entityStorageConnectorConfig";
@@ -162,7 +165,7 @@ export interface IEngineConfig extends IEngineCoreConfig {
162
165
  */
163
166
  attestationConnector?: IEngineCoreTypeConfig<AttestationConnectorConfig>[];
164
167
  /**
165
- * Attestation component profile options which can be overridden by individual components by specifying types other than default.
168
+ * Attestation component options which can be overridden by individual components by specifying types other than default.
166
169
  */
167
170
  attestationComponent?: IEngineCoreTypeConfig<AttestationComponentConfig>[];
168
171
  /**
@@ -170,8 +173,20 @@ export interface IEngineConfig extends IEngineCoreConfig {
170
173
  */
171
174
  auditableItemGraphComponent?: IEngineCoreTypeConfig<AuditableItemGraphComponentConfig>[];
172
175
  /**
173
- * Auditable item stream component profile options which can be overridden by individual components by specifying types other than default.
176
+ * Auditable item stream component options which can be overridden by individual components by specifying types other than default.
174
177
  */
175
178
  auditableItemStreamComponent?: IEngineCoreTypeConfig<AuditableItemStreamComponentConfig>[];
179
+ /**
180
+ * Data converter connector options which can be overridden by individual components by specifying types other than default.
181
+ */
182
+ dataConverterConnector?: IEngineCoreTypeConfig<DataConverterConnectorConfig>[];
183
+ /**
184
+ * Data extractor connector options which can be overridden by individual components by specifying types other than default.
185
+ */
186
+ dataExtractorConnector?: IEngineCoreTypeConfig<DataExtractorConnectorConfig>[];
187
+ /**
188
+ * Date processing options which can be overridden by individual components by specifying types other than default.
189
+ */
190
+ dataProcessingComponent?: IEngineCoreTypeConfig<DataProcessingComponentConfig>[];
176
191
  };
177
192
  }
@@ -0,0 +1,11 @@
1
+ import type { DataConverterConnectorType } from "../types/dataConverterConnectorType";
2
+ /**
3
+ * Data converter connector config types.
4
+ */
5
+ export type DataConverterConnectorConfig = {
6
+ type: typeof DataConverterConnectorType.Json;
7
+ options?: never;
8
+ } | {
9
+ type: typeof DataConverterConnectorType.Xml;
10
+ options?: never;
11
+ };
@@ -0,0 +1,8 @@
1
+ import type { DataExtractorConnectorType } from "../types/dataExtractorConnectorType";
2
+ /**
3
+ * Data extractor connector config types.
4
+ */
5
+ export type DataExtractorConnectorConfig = {
6
+ type: typeof DataExtractorConnectorType.JsonPath;
7
+ options?: never;
8
+ };
@@ -0,0 +1,9 @@
1
+ import type { IDataProcessingServiceConstructorOptions } from "@twin.org/data-processing-service";
2
+ import type { DataProcessingComponentType } from "../types/dataProcessingComponentType";
3
+ /**
4
+ * Data processing component config types.
5
+ */
6
+ export type DataProcessingComponentConfig = {
7
+ type: typeof DataProcessingComponentType.Service;
8
+ options?: IDataProcessingServiceConstructorOptions;
9
+ };
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Data converter connector types.
3
+ */
4
+ export declare const DataConverterConnectorType: {
5
+ /**
6
+ * JSON.
7
+ */
8
+ readonly Json: "json";
9
+ /**
10
+ * Xml.
11
+ */
12
+ readonly Xml: "xml";
13
+ };
14
+ /**
15
+ * Data converter connector types.
16
+ */
17
+ export type DataConverterConnectorType = (typeof DataConverterConnectorType)[keyof typeof DataConverterConnectorType];
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Data extractor connector types.
3
+ */
4
+ export declare const DataExtractorConnectorType: {
5
+ /**
6
+ * JSON Path.
7
+ */
8
+ readonly JsonPath: "json-path";
9
+ };
10
+ /**
11
+ * Data extractor connector types.
12
+ */
13
+ export type DataExtractorConnectorType = (typeof DataExtractorConnectorType)[keyof typeof DataExtractorConnectorType];
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Data processing component types.
3
+ */
4
+ export declare const DataProcessingComponentType: {
5
+ /**
6
+ * Service.
7
+ */
8
+ readonly Service: "service";
9
+ };
10
+ /**
11
+ * Data processing component types.
12
+ */
13
+ export type DataProcessingComponentType = (typeof DataProcessingComponentType)[keyof typeof DataProcessingComponentType];
@@ -0,0 +1,41 @@
1
+ # Function: initialiseDataConverterConnector()
2
+
3
+ > **initialiseDataConverterConnector**(`engineCore`, `context`, `instanceConfig`, `overrideInstanceType`?): `string` \| `undefined`
4
+
5
+ Initialise the data converter connector.
6
+
7
+ ## Parameters
8
+
9
+ ### engineCore
10
+
11
+ `IEngineCore`\<[`IEngineConfig`](../interfaces/IEngineConfig.md)\>
12
+
13
+ The engine core.
14
+
15
+ ### context
16
+
17
+ `IEngineCoreContext`\<[`IEngineConfig`](../interfaces/IEngineConfig.md)\>
18
+
19
+ The context for the engine.
20
+
21
+ ### instanceConfig
22
+
23
+ [`DataConverterConnectorConfig`](../type-aliases/DataConverterConnectorConfig.md)
24
+
25
+ The instance config.
26
+
27
+ ### overrideInstanceType?
28
+
29
+ `string`
30
+
31
+ The instance type to override the default.
32
+
33
+ ## Returns
34
+
35
+ `string` \| `undefined`
36
+
37
+ The name of the instance created.
38
+
39
+ ## Throws
40
+
41
+ GeneralError if the connector type is unknown.
@@ -0,0 +1,41 @@
1
+ # Function: initialiseDataExtractorConnector()
2
+
3
+ > **initialiseDataExtractorConnector**(`engineCore`, `context`, `instanceConfig`, `overrideInstanceType`?): `string` \| `undefined`
4
+
5
+ Initialise the data extractor connector.
6
+
7
+ ## Parameters
8
+
9
+ ### engineCore
10
+
11
+ `IEngineCore`\<[`IEngineConfig`](../interfaces/IEngineConfig.md)\>
12
+
13
+ The engine core.
14
+
15
+ ### context
16
+
17
+ `IEngineCoreContext`\<[`IEngineConfig`](../interfaces/IEngineConfig.md)\>
18
+
19
+ The context for the engine.
20
+
21
+ ### instanceConfig
22
+
23
+ [`DataExtractorConnectorConfig`](../type-aliases/DataExtractorConnectorConfig.md)
24
+
25
+ The instance config.
26
+
27
+ ### overrideInstanceType?
28
+
29
+ `string`
30
+
31
+ The instance type to override the default.
32
+
33
+ ## Returns
34
+
35
+ `string` \| `undefined`
36
+
37
+ The name of the instance created.
38
+
39
+ ## Throws
40
+
41
+ GeneralError if the connector type is unknown.
@@ -0,0 +1,41 @@
1
+ # Function: initialiseDataProcessingComponent()
2
+
3
+ > **initialiseDataProcessingComponent**(`engineCore`, `context`, `instanceConfig`, `overrideInstanceType`?): `string` \| `undefined`
4
+
5
+ Initialise the data processing component.
6
+
7
+ ## Parameters
8
+
9
+ ### engineCore
10
+
11
+ `IEngineCore`\<[`IEngineConfig`](../interfaces/IEngineConfig.md)\>
12
+
13
+ The engine core.
14
+
15
+ ### context
16
+
17
+ `IEngineCoreContext`\<[`IEngineConfig`](../interfaces/IEngineConfig.md)\>
18
+
19
+ The context for the engine.
20
+
21
+ ### instanceConfig
22
+
23
+ [`DataProcessingComponentConfig`](../type-aliases/DataProcessingComponentConfig.md)
24
+
25
+ The instance config.
26
+
27
+ ### overrideInstanceType?
28
+
29
+ `string`
30
+
31
+ The instance type to override the default.
32
+
33
+ ## Returns
34
+
35
+ `string` \| `undefined`
36
+
37
+ The name of the instance created.
38
+
39
+ ## Throws
40
+
41
+ GeneralError if the component type is unknown.
@@ -13,6 +13,9 @@
13
13
  - [BackgroundTaskConnectorConfig](type-aliases/BackgroundTaskConnectorConfig.md)
14
14
  - [BlobStorageComponentConfig](type-aliases/BlobStorageComponentConfig.md)
15
15
  - [BlobStorageConnectorConfig](type-aliases/BlobStorageConnectorConfig.md)
16
+ - [DataConverterConnectorConfig](type-aliases/DataConverterConnectorConfig.md)
17
+ - [DataExtractorConnectorConfig](type-aliases/DataExtractorConnectorConfig.md)
18
+ - [DataProcessingComponentConfig](type-aliases/DataProcessingComponentConfig.md)
16
19
  - [DltConfig](type-aliases/DltConfig.md)
17
20
  - [EntityStorageComponentConfig](type-aliases/EntityStorageComponentConfig.md)
18
21
  - [EntityStorageConnectorConfig](type-aliases/EntityStorageConnectorConfig.md)
@@ -46,6 +49,9 @@
46
49
  - [BackgroundTaskConnectorType](type-aliases/BackgroundTaskConnectorType.md)
47
50
  - [BlobStorageComponentType](type-aliases/BlobStorageComponentType.md)
48
51
  - [BlobStorageConnectorType](type-aliases/BlobStorageConnectorType.md)
52
+ - [DataConverterConnectorType](type-aliases/DataConverterConnectorType.md)
53
+ - [DataExtractorConnectorType](type-aliases/DataExtractorConnectorType.md)
54
+ - [DataProcessingComponentType](type-aliases/DataProcessingComponentType.md)
49
55
  - [DltConfigType](type-aliases/DltConfigType.md)
50
56
  - [EntityStorageComponentType](type-aliases/EntityStorageComponentType.md)
51
57
  - [EntityStorageConnectorType](type-aliases/EntityStorageConnectorType.md)
@@ -82,6 +88,9 @@
82
88
  - [BackgroundTaskConnectorType](variables/BackgroundTaskConnectorType.md)
83
89
  - [BlobStorageComponentType](variables/BlobStorageComponentType.md)
84
90
  - [BlobStorageConnectorType](variables/BlobStorageConnectorType.md)
91
+ - [DataConverterConnectorType](variables/DataConverterConnectorType.md)
92
+ - [DataExtractorConnectorType](variables/DataExtractorConnectorType.md)
93
+ - [DataProcessingComponentType](variables/DataProcessingComponentType.md)
85
94
  - [DltConfigType](variables/DltConfigType.md)
86
95
  - [EntityStorageComponentType](variables/EntityStorageComponentType.md)
87
96
  - [EntityStorageConnectorType](variables/EntityStorageConnectorType.md)
@@ -118,6 +127,9 @@
118
127
  - [initialiseBackgroundTaskConnector](functions/initialiseBackgroundTaskConnector.md)
119
128
  - [initialiseBlobStorageConnector](functions/initialiseBlobStorageConnector.md)
120
129
  - [initialiseBlobStorageComponent](functions/initialiseBlobStorageComponent.md)
130
+ - [initialiseDataConverterConnector](functions/initialiseDataConverterConnector.md)
131
+ - [initialiseDataExtractorConnector](functions/initialiseDataExtractorConnector.md)
132
+ - [initialiseDataProcessingComponent](functions/initialiseDataProcessingComponent.md)
121
133
  - [initialiseEntityStorageConnector](functions/initialiseEntityStorageConnector.md)
122
134
  - [initialiseEntityStorageComponent](functions/initialiseEntityStorageComponent.md)
123
135
  - [initialiseEventBusConnector](functions/initialiseEventBusConnector.md)
@@ -202,7 +202,7 @@ Attestation connector options which can be overridden by individual components b
202
202
 
203
203
  > `optional` **attestationComponent**: `IEngineCoreTypeConfig`\<[`AttestationComponentConfig`](../type-aliases/AttestationComponentConfig.md)\>[]
204
204
 
205
- Attestation component profile options which can be overridden by individual components by specifying types other than default.
205
+ Attestation component options which can be overridden by individual components by specifying types other than default.
206
206
 
207
207
  #### auditableItemGraphComponent?
208
208
 
@@ -214,7 +214,25 @@ Auditable item graph component options which can be overridden by individual com
214
214
 
215
215
  > `optional` **auditableItemStreamComponent**: `IEngineCoreTypeConfig`\<[`AuditableItemStreamComponentConfig`](../type-aliases/AuditableItemStreamComponentConfig.md)\>[]
216
216
 
217
- Auditable item stream component profile options which can be overridden by individual components by specifying types other than default.
217
+ Auditable item stream component options which can be overridden by individual components by specifying types other than default.
218
+
219
+ #### dataConverterConnector?
220
+
221
+ > `optional` **dataConverterConnector**: `IEngineCoreTypeConfig`\<[`DataConverterConnectorConfig`](../type-aliases/DataConverterConnectorConfig.md)\>[]
222
+
223
+ Data converter connector options which can be overridden by individual components by specifying types other than default.
224
+
225
+ #### dataExtractorConnector?
226
+
227
+ > `optional` **dataExtractorConnector**: `IEngineCoreTypeConfig`\<[`DataExtractorConnectorConfig`](../type-aliases/DataExtractorConnectorConfig.md)\>[]
228
+
229
+ Data extractor connector options which can be overridden by individual components by specifying types other than default.
230
+
231
+ #### dataProcessingComponent?
232
+
233
+ > `optional` **dataProcessingComponent**: `IEngineCoreTypeConfig`\<[`DataProcessingComponentConfig`](../type-aliases/DataProcessingComponentConfig.md)\>[]
234
+
235
+ Date processing options which can be overridden by individual components by specifying types other than default.
218
236
 
219
237
  #### Overrides
220
238
 
@@ -0,0 +1,5 @@
1
+ # Type Alias: DataConverterConnectorConfig
2
+
3
+ > **DataConverterConnectorConfig**: \{ `type`: *typeof* [`Json`](../variables/DataConverterConnectorType.md#json); `options`: `never`; \} \| \{ `type`: *typeof* [`Xml`](../variables/DataConverterConnectorType.md#xml); `options`: `never`; \}
4
+
5
+ Data converter connector config types.
@@ -0,0 +1,5 @@
1
+ # Type Alias: DataConverterConnectorType
2
+
3
+ > **DataConverterConnectorType**: *typeof* [`DataConverterConnectorType`](../variables/DataConverterConnectorType.md)\[keyof *typeof* [`DataConverterConnectorType`](../variables/DataConverterConnectorType.md)\]
4
+
5
+ Data converter connector types.
@@ -0,0 +1,15 @@
1
+ # Type Alias: DataExtractorConnectorConfig
2
+
3
+ > **DataExtractorConnectorConfig**: `object`
4
+
5
+ Data extractor connector config types.
6
+
7
+ ## Type declaration
8
+
9
+ ### type
10
+
11
+ > **type**: *typeof* [`JsonPath`](../variables/DataExtractorConnectorType.md#jsonpath)
12
+
13
+ ### options?
14
+
15
+ > `optional` **options**: `never`
@@ -0,0 +1,5 @@
1
+ # Type Alias: DataExtractorConnectorType
2
+
3
+ > **DataExtractorConnectorType**: *typeof* [`DataExtractorConnectorType`](../variables/DataExtractorConnectorType.md)\[keyof *typeof* [`DataExtractorConnectorType`](../variables/DataExtractorConnectorType.md)\]
4
+
5
+ Data extractor connector types.
@@ -0,0 +1,15 @@
1
+ # Type Alias: DataProcessingComponentConfig
2
+
3
+ > **DataProcessingComponentConfig**: `object`
4
+
5
+ Data processing component config types.
6
+
7
+ ## Type declaration
8
+
9
+ ### type
10
+
11
+ > **type**: *typeof* [`Service`](../variables/DataProcessingComponentType.md#service)
12
+
13
+ ### options?
14
+
15
+ > `optional` **options**: `IDataProcessingServiceConstructorOptions`
@@ -0,0 +1,5 @@
1
+ # Type Alias: DataProcessingComponentType
2
+
3
+ > **DataProcessingComponentType**: *typeof* [`DataProcessingComponentType`](../variables/DataProcessingComponentType.md)\[keyof *typeof* [`DataProcessingComponentType`](../variables/DataProcessingComponentType.md)\]
4
+
5
+ Data processing component types.
@@ -0,0 +1,19 @@
1
+ # Variable: DataConverterConnectorType
2
+
3
+ > `const` **DataConverterConnectorType**: `object`
4
+
5
+ Data converter connector types.
6
+
7
+ ## Type declaration
8
+
9
+ ### Json
10
+
11
+ > `readonly` **Json**: `"json"` = `"json"`
12
+
13
+ JSON.
14
+
15
+ ### Xml
16
+
17
+ > `readonly` **Xml**: `"xml"` = `"xml"`
18
+
19
+ Xml.
@@ -0,0 +1,13 @@
1
+ # Variable: DataExtractorConnectorType
2
+
3
+ > `const` **DataExtractorConnectorType**: `object`
4
+
5
+ Data extractor connector types.
6
+
7
+ ## Type declaration
8
+
9
+ ### JsonPath
10
+
11
+ > `readonly` **JsonPath**: `"json-path"` = `"json-path"`
12
+
13
+ JSON Path.
@@ -0,0 +1,13 @@
1
+ # Variable: DataProcessingComponentType
2
+
3
+ > `const` **DataProcessingComponentType**: `object`
4
+
5
+ Data processing component types.
6
+
7
+ ## Type declaration
8
+
9
+ ### Service
10
+
11
+ > `readonly` **Service**: `"service"` = `"service"`
12
+
13
+ Service.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@twin.org/engine-types",
3
- "version": "0.0.1-next.38",
3
+ "version": "0.0.1-next.39",
4
4
  "description": "Types to use in an engine.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -18,7 +18,7 @@
18
18
  "@twin.org/crypto": "next",
19
19
  "@twin.org/data-core": "next",
20
20
  "@twin.org/data-schema-org": "next",
21
- "@twin.org/engine-models": "0.0.1-next.38",
21
+ "@twin.org/engine-models": "0.0.1-next.39",
22
22
  "@twin.org/entity": "next",
23
23
  "@twin.org/modules": "next",
24
24
  "@twin.org/nameof": "next"
@@ -41,6 +41,10 @@
41
41
  "@twin.org/blob-storage-connector-memory": "next",
42
42
  "@twin.org/blob-storage-models": "next",
43
43
  "@twin.org/blob-storage-service": "next",
44
+ "@twin.org/data-processing-converters": "next",
45
+ "@twin.org/data-processing-extractors": "next",
46
+ "@twin.org/data-processing-models": "next",
47
+ "@twin.org/data-processing-service": "next",
44
48
  "@twin.org/entity-storage-connector-cosmosdb": "next",
45
49
  "@twin.org/entity-storage-connector-dynamodb": "next",
46
50
  "@twin.org/entity-storage-connector-file": "next",