1#![warn(missing_docs)]
4
5mod cloud;
6mod command;
7mod domain;
8mod error;
9
10#[doc(hidden)]
11pub mod compat;
12mod guest_flush;
13#[doc(hidden)]
14pub mod helpers;
15pub mod modify;
16mod registry;
17pub mod snapshot;
18mod validation;
19
20#[cfg(feature = "ts")]
21pub mod typescript;
22
23pub use microsandbox_types_macros::ConfigPatch;
28
29pub use cloud::{
30 CloudCreateSandboxRequest, CloudCreateSandboxResponse, CloudCreateSnapshotRequest,
31 CloudDiskImageFormat, CloudErrorBody, CloudErrorDetails, CloudHostPattern,
32 CloudMessageResponse, CloudNetworkSpec, CloudPaginated, CloudPatch, CloudPullPolicy,
33 CloudRlimit, CloudRlimitResource, CloudRootfsSource, CloudSandboxComputeResources,
34 CloudSandboxResources, CloudSandboxRuntimeOptions, CloudSandboxSpec, CloudSandboxStatus,
35 CloudSandboxStatusReason, CloudSecretEntry, CloudSecretSource, CloudSecretsConfig,
36 CloudSnapshot, CloudSnapshotDetails, CloudSnapshotKind, CloudSnapshotLocation,
37 CloudSnapshotOperation, CloudSnapshotOperationStatus, CloudSnapshotSpec, CloudViolationAction,
38 CloudVolumeMount,
39};
40#[doc(hidden)]
41pub use command::{CommandResolutionError, ResolvedCommand, resolve_default_command};
42pub use domain::{
43 Action, CertCacheConfig, CpuPlacement, DEFAULT_METRICS_SAMPLE_INTERVAL_MS,
44 DEFAULT_SANDBOX_CPUS, DEFAULT_SANDBOX_MEMORY_MIB, DeploymentProfile, Destination,
45 DestinationGroup, Direction, DiskImageFormat, DnsConfig, DnsConfigPatch, EnvVar, FlatClone,
46 GuestClockPolicy, HandoffInit, HostPattern, HostPermissions, HttpConfig, HttpConfigPatch,
47 InterceptCaConfig, InterfaceOverrides, InterfaceOverridesPatch, LogSource,
48 MAX_SECRET_PLACEHOLDER_BYTES, MemoryPlacement, MountOptions, NamedVolumeCreate,
49 NamedVolumeMode, NetworkPolicy, NetworkRateLimitDirection, NetworkRateLimiterConfig,
50 NetworkRateLimiterConfigPatch, NetworkSpec, NetworkSpecPatch, NumaPlacement, OciRootfsSource,
51 OutboundProxy, OwnedVolumeStorage, Patch, PlacementProfile, PortProtocol, PortRange, Protocol,
52 PublishedPortSpec, PullPolicy, RateLimitConfigError, RateLimiterConfig, Rlimit, RlimitResource,
53 RootDisk, RootfsSource, Rule, SandboxLogLevel, SandboxPolicy, SandboxPolicyPatch,
54 SandboxResources, SandboxResourcesPatch, SandboxRuntimeOptions, SandboxRuntimeOptionsPatch,
55 SandboxSpec, SandboxSpecPatch, ScopedUpstreamCaCert, ScopedVerifyUpstream, SecretConfigError,
56 SecretEntry, SecretSubstitution, SecretViolationAction, SecretsConfig, SecretsConfigPatch,
57 SecurityProfile, SnapshotSpec, Socks5Credentials, StatVirtualization, TlsConfig,
58 TlsConfigPatch, TokenBucketConfig, TransparentHugePagePolicy, VolumeKind, VolumeMount,
59 VolumeSpec, VsockRouteSpec, VsockSocketType, VsockSpec, VsockSpecPatch,
60 WELL_KNOWN_NAT64_PREFIX, canonicalize_volume_mounts, owned_volume_mount_id,
61};
62pub use error::{SnapshotManifestError, SnapshotManifestResult, TypesError, TypesResult};
63pub use guest_flush::GuestFlush;
64pub use modify::{
65 ChangeKind, ConfigPlannedChange, ModificationConflict, ModificationDisposition,
66 ModificationPolicy, ModificationWarning, PlannedChange, ResourceConvergenceState, ResourceKind,
67 ResourceResizeStatus, SandboxModificationPatch, SandboxModificationPlan, SecretChangeKind,
68 SecretModificationPatch, SecretPlannedChange, SecretSource,
69};
70pub use registry::RegistryAuth;
71pub use snapshot::manifest::Manifest as SnapshotManifest;
72pub use snapshot::{
73 DiskCompactionDiskResult, DiskCompactionResult, DiskCompactionTarget,
74 ExternalMountRestorePolicy, ExternalMountWarning,
75};
76pub use validation::{
77 MAX_HOSTNAME_BYTES, MAX_SANDBOX_NAME_BYTES, hostname_from_sandbox_name, validate_hostname,
78 validate_sandbox_name,
79};