#![forbid(unsafe_code)]
#![warn(missing_docs)]
pub mod client;
pub mod debug;
pub mod error;
pub mod evidence;
pub mod framing;
pub mod limits;
pub mod logs;
pub mod marker;
pub mod messages;
pub mod publication_queue;
pub mod roles;
#[cfg(feature = "tracing")]
pub mod tracing_layer;
pub mod tree;
mod validate;
pub use client::{Client, Options, DIAL_TIMEOUT, ENV_ENDPOINT, ENV_TOKEN};
pub use debug::{debug_path, Category, DebugLog, ENV_DEBUG, ENV_DEBUG_FILE};
pub use error::{Error, ParseError, ValidationError, Violation};
pub use framing::{encode_frame, project_dto, Frame, FrameDecoder, FRAME_HEADER_BYTES};
pub use limits::{Limits, ABSOLUTE_LIMITS, DEFAULT_LIMITS, DEFAULT_NEGOTIATION_MS};
pub use logs::{validate_log_record, AttrValue, LogLevel, LogRecord, LOG_LEVELS, MAX_LOG_ATTRS};
pub use marker::{
compute_mac, encode_marker, verify_marker_payload, RenderMarker, MARKER_MAC_BYTES,
MARKER_OSC_CODE, MARKER_OSC_PREFIX,
};
pub use messages::{
parse_adapter_message, parse_driver_message, DegradedSessionCapability,
EvidenceProviderRegistration, ProbeIdentityKind, ProbeInfo, ProbeInjectionTier,
ProbeInstrumentation, ProbeSemanticClass, PROTOCOL_ID, PROTOCOL_VERSION,
};
pub use publication_queue::PublicationQueue;
pub use roles::{Action, Capability, Role};
pub use tree::{
Cursor, CursorShape, EvidenceMethod, EvidenceProvenance, EvidenceSource, EvidenceStrength,
Node, NodeGeometryObservations, Observation, Orientation, PhysicalInputRecipe,
PhysicalInputRecipeAction, PhysicalInputRecipeStep, PointerHitGrid, PointerHitRegion,
Provenance, ProviderActionRecipes, ProviderFocusState, ProviderPaintedRegion,
ProviderPointerRegion, ProviderPointerSpan, ProviderRevisionEvidence, ProviderScrollState,
ProviderTerminalInputModes, Rect, ScrollState, SemanticPaintedRegion, SemanticValueObservation,
SemanticValueSensitivity, Snapshot, State, TextRange,
};
pub use validate::validate_snapshot;
pub mod schema_keys {
pub use crate::validate::{NODE_KEYS, STATE_KEYS};
}