#![warn(missing_docs)]
pub mod abs;
mod attempts;
mod configured;
pub mod gcs;
mod immutable_write;
pub mod keys;
mod keyspace;
pub mod layout;
pub mod local_fs_store;
pub mod metrics;
pub mod object_store;
pub mod presign;
pub mod probe;
mod provider_object_store;
mod retry;
pub mod s3_compatible;
mod secret;
mod store_config;
mod store_io_runtime;
#[cfg(test)]
mod test_support;
pub mod timing;
mod transfer_timeouts;
pub use configured::{ConfiguredObjectStore, ConfiguredObjectStoreKind};
pub use immutable_write::ImmutableWriteError;
pub use object_store::ObjectStoreError as Error;
pub use object_store::{
ByteRange, ByteStream, MultipartCompletion, MultipartPart, ObjectBody, ObjectMetadata,
ObjectStore, ObjectStoreError, PutMode, Result, SharedObjectStore, StoredObjectChecksum,
};
pub use probe::{run_store_contract_probe, StoreProbeCheck, StoreProbeOutcome, StoreProbeReport};
pub use provider_object_store::{
ProviderObjectStore, ProviderObjectStoreConfig, PROVIDER_ATTEMPT_TIMEOUT,
PROVIDER_CONNECT_TIMEOUT, PROVIDER_MULTIPART_PART_BYTES, PROVIDER_MULTIPART_PART_WINDOW,
PROVIDER_MULTIPART_THRESHOLD_BYTES, PROVIDER_OPERATION_DEADLINE, PROVIDER_STREAMED_PART_WINDOW,
PROVIDER_TRANSFER_ATTEMPT_TIMEOUT,
};
pub use secret::SecretString;
pub use store_config::{
StoreConfig, StoreConfigError, ACCESS_KEY_ID_ENV, SECRET_ACCESS_KEY_ENV, SESSION_TOKEN_ENV,
};