starknet_providers/
lib.rs

1//! Clients for interacting with Starknet nodes and sequencers.
2//!
3//! This crate provides the [`Provider`] trait for abstraction over means of accessing the Starknet
4//! network. The most commonly used implementation is [`JsonRpcClient`] with
5//! [`HttpTransport`](jsonrpc::HttpTransport).
6
7#![deny(missing_docs)]
8
9mod provider;
10pub use provider::{
11    Provider, ProviderError, ProviderImplError, ProviderRequestData, ProviderResponseData,
12    StreamUpdateData,
13};
14
15// Sequencer-related functionalities are mostly deprecated so we skip the docs.
16/// Module containing types related to the (now deprecated) sequencer gateway client.
17#[allow(missing_docs)]
18pub mod sequencer;
19pub use sequencer::{
20    GatewayClientError as SequencerGatewayProviderError, SequencerGatewayProvider,
21};
22
23/// Module containing types related to JSON-RPC clients and servers.
24pub mod jsonrpc;
25pub use jsonrpc::JsonRpcClient;
26
27mod any;
28pub use any::AnyProvider;
29
30// Re-export
31pub use url::Url;