module arch.node.types.anoma_config;
import prelude open;
import arch.node.engines.identity_management_config open;
import arch.node.engines.decryption_config open;
import arch.node.engines.encryption_config open;
import arch.node.engines.commitment_config open;
import arch.node.engines.verification_config open;
import arch.node.engines.reads_for_config open;
import arch.node.engines.signs_for_config open;
import arch.node.engines.naming_config open;
import arch.node.engines.local_key_value_storage_config open;
import arch.node.engines.logging_config open;
import arch.node.engines.wall_clock_config open;
import arch.node.engines.local_time_series_storage_config open;
import arch.node.engines.net_registry_config open;
import arch.node.engines.router_config open;
import arch.node.engines.transport_protocol_config open;
import arch.node.engines.transport_connection_config open;
import arch.node.engines.pub_sub_topic_config open;
import arch.node.engines.storage_config open;
import arch.node.engines.mempool_worker_config open;
import arch.node.engines.executor_config open;
import arch.node.engines.shard_config open;
import arch.node.engines.ticker_config open;
import tutorial.engines.template_config open;
import tutorial.engines.template_minimum_config open;
type PreCfg KVSKey KVSDatum Executable :=
  
  
  | CfgIdentityManagement IdentityManagementCfg
  | CfgDecryption DecryptionCfg
  | CfgEncryption EncryptionCfg
  | CfgCommitment CommitmentCfg
  | CfgVerification VerificationCfg
  | CfgReadsFor ReadsForCfg
  | CfgSignsFor SignsForCfg
  | CfgNaming NamingCfg
  
  | CfgLocalKeyValueStorage LocalKVStorageCfg
  | CfgLogging LoggingCfg
  | CfgWallClock WallClockCfg
  | CfgLocalTSeries LocalTSStorageCfg
  
  | CfgRouter RouterCfg
  | CfgTransportProtocol TransportProtocolCfg
  | CfgTransportConnection TransportConnectionCfg
  | CfgPubSubTopic PubSubTopicCfg
  | CfgStorage StorageCfg
  
  | CfgMempoolWorker MempoolWorkerCfg
  | CfgExecutor (ExecutorCfg KVSKey Executable)
  | CfgShard ShardCfg
  
  | CfgTicker TickerCfg
  
  | CfgTemplate TemplateCfg
  | CfgTemplateMinimum TemplateMinimumCfg;
Cfg : Type := PreCfg String String ByteString;