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