wasmcloud_core/
lib.rs

1#![forbid(clippy::unwrap_used)]
2
3pub mod logging;
4pub mod nats;
5pub mod tls;
6
7pub mod host;
8pub use host::*;
9
10pub mod link;
11pub use link::*;
12
13pub mod otel;
14pub use otel::*;
15
16#[cfg(feature = "oci")]
17pub mod oci;
18#[cfg(feature = "oci")]
19pub use oci::*;
20
21pub mod par;
22pub use par::*;
23
24pub mod registry;
25pub use registry::*;
26
27pub mod rpc;
28pub use rpc::*;
29
30pub mod secrets;
31
32pub mod wit;
33pub use wit::*;
34
35#[cfg(feature = "http")]
36pub mod http;
37
38#[cfg(feature = "messaging")]
39pub mod messaging;
40
41#[cfg(feature = "http-client-common")]
42pub mod http_client;
43
44/// The 1.0 version of the wasmCloud control API, used in topic strings for the control API
45pub const CTL_API_VERSION_1: &str = "v1";
46
47/// Identifier of one or more entities on the lattice used for addressing. May take many forms, such as:
48/// - component public key
49/// - provider public key
50/// - opaque string
51pub type LatticeTarget = String;
52
53/// Identifier of a component which sends invocations on the lattice
54pub type ComponentId = String;
55
56/// Name of a link on the wasmCloud lattice
57pub type LinkName = String;
58
59/// Public key (nkey) of a cluster issuer
60pub type ClusterIssuerKey = String;
61
62/// WIT package for a given operation (ex. `keyvalue` in `wasi:keyvalue/readwrite.get`)
63pub type WitPackage = String;
64
65/// WIT namespace for a given operation (ex. `wasi` in `wasi:keyvalue/readwrite.get`)
66pub type WitNamespace = String;
67
68/// WIT interface for a given operation (ex. `readwrite` in `wasi:keyvalue/readwrite.get`)
69pub type WitInterface = String;
70
71/// A WIT function (ex. `get` in `wasi:keyvalue/readwrite.get`)
72pub type WitFunction = String;
73
74/// The name of a known (possibly pre-created) configuration, normally used when creating
75/// new interface links in order to configure one or both source/target
76pub type KnownConfigName = String;
77
78/// Trait describing types/entities that can be health-checked
79pub trait HealthCheck {
80    // This might not work with codegen and we'll have to impl
81    fn health_request(&self) -> HealthCheckResponse;
82}