tailsurf 0.13.0

Rust SDK for tail.surf live transcript streams
Documentation
#![doc = include_str!("../README.md")]

/// REST, SSE, and WebSocket clients and durable writer types.
pub mod client;
/// Stream and link IDs, link secrets, and writer identities.
pub mod ids;
/// Stream-link permission parsing and validation.
pub mod permissions;
/// TSF read options, REST models, and v1 binary WebSocket protocol types.
pub mod protocol;
/// User-provided stream titles.
pub mod stream_title;
/// Human-facing stream link parsing and construction.
pub mod stream_url;
/// Duplicate suppression and split-record transcript reconstruction.
pub mod transcript;

pub use client::{
    AppendAck, AppendReceipt, AppendTicket, DEFAULT_API_ORIGIN, DurableWriterOptions,
    IdempotencyKey, InvalidIdempotencyKey, ListLinksOptions, TsfClient, TsfClientConfig,
    TsfClientError, TsfProducer, TsfReadSession, TsfSseReadSession, TsfWriteSession, TsfWriter,
    default_api_origin,
};
pub use ids::{
    ClientWriterId, LinkId, LinkIdError, LinkSecret, LinkSecretError, MAX_LINK_ID_LEN, StreamId,
    WriterId,
};
pub use permissions::{LinkPermissions, PermissionsError};
pub use protocol::{
    read::{ReadOptions, ReadStart, ReadStop},
    rest::{
        AppendRange, CreateLinkInput, CreateLinkResponse, CreateStreamRequest,
        CreateStreamResponse, InitialStreamLink, ListLinksResponse, MAX_INITIAL_STREAM_LINKS,
        StreamLinkCredential, StreamLinkSummary, StreamMetadata, UpdateStreamRequest, Visibility,
    },
    ws::{
        MAX_WRITER_IN_FLIGHT_PAYLOAD_BYTES, MAX_WRITER_IN_FLIGHT_RECORDS, WriteSessionOptions,
        frame::{
            AppendBatch, AppendRecord, CaughtUpPosition, IntoRecordData, OwnedReadRecord,
            PartHeader, ReadBatch, ReadRecord, RecordFormat, RecordPayload,
        },
    },
};
pub use stream_title::{MAX_STREAM_TITLE_CODE_POINTS, StreamTitle, StreamTitleError};