Skip to main content

truss/
lib.rs

1//! Shared library entry points for the `truss` project.
2
3/// Runtime-specific adapters.
4pub mod adapters;
5/// Backend codec implementations.
6pub mod codecs;
7/// Shared Core types and validation logic.
8pub mod core;
9
10#[cfg(feature = "server")]
11pub use adapters::server::{
12    DEFAULT_BIND_ADDR, DEFAULT_STORAGE_ROOT, ServerConfig, SignedUrlSource, bind_addr, serve,
13    serve_once, serve_once_with_config, serve_with_config, sign_public_url,
14};
15pub use codecs::raster::transform_raster;
16#[cfg(feature = "svg")]
17pub use codecs::svg::transform_svg;
18pub use core::{
19    Artifact, ArtifactMetadata, Fit, MAX_DECODED_PIXELS, MAX_OUTPUT_PIXELS, MediaType,
20    MetadataKind, MetadataPolicy, NormalizedTransformOptions, NormalizedTransformRequest, Position,
21    RawArtifact, Rgba8, Rotation, TransformError, TransformOptions, TransformRequest,
22    TransformResult, TransformWarning, WatermarkInput, resolve_metadata_flags, sniff_artifact,
23};