trellis-rs 0.10.8

Curated public Rust facade for Trellis clients and services.
Documentation
//! Low-level outbound Trellis runtime primitives for generated Rust code.
//!
//! This module provides connection/auth helpers plus descriptor-driven request
//! and publish operations. It intentionally avoids contract-specific
//! convenience methods so first-party code can move toward generated SDKs and
//! small local wrappers.

mod auth;
mod client;
mod descriptor;
mod error;
mod events;
mod operations;
mod proof;
mod state;
mod transfer;

pub use auth::SessionAuth;
pub use client::{
    DeviceConnectOptions, EventMessage, EventReplayPolicy, EventSubscribeOptions,
    EventSubscriptionMode, ServiceConnectOptions, ServiceConnectWithContractOptions, TrellisClient,
    UserConnectOptions,
};
pub use descriptor::{EventDescriptor, FeedDescriptor, RpcDescriptor};
pub use error::{RpcErrorPayload, TrellisClientError};
pub use events::{
    dispatch_outbox_once, prepare_event, prepare_event_value, EventStoreError, InboxReceipt,
    InboxStore, MemoryInboxStore, MemoryOutboxStore, NatsKvInboxStore, NatsKvOutboxStore,
    OutboxDispatchResult, OutboxEventRecord, OutboxStore, PostgresInboxStore, PostgresOutboxStore,
    PreparedTrellisEvent, SqliteInboxStore, SqliteOutboxStore,
};
pub use operations::{
    control_subject, OperationDescriptor, OperationEvent, OperationInputBuilder, OperationInvoker,
    OperationRef, OperationRefData, OperationSignalAccepted, OperationSnapshot, OperationState,
    OperationTransferInputBuilder, OperationTransferProgress, OperationTransferStartError,
    OperationTransport, StartedOperationTransfer, TransferOperationDescriptor,
};
pub use proof::verify_proof;
pub use state::{
    DeleteStateOptions, ExpectedPutRevision, ListStateOptions, MapStateEntry, MapStateListResult,
    MapStateStore, PutStateOptions, StateDeleteResult, StateEntry, StateGetResult,
    StateMigrationRequired, StatePutResult, StateTransport, StateValue, ValueStateStore,
};
pub use transfer::{
    download_transfer_grant_from_value, DownloadTransferGrant, FileInfo, UploadTransferGrant,
};
pub use trellis_contracts::{PageRequest, PageResponse};

#[cfg(test)]
mod tests;