pub mod error;
pub mod helpers;
use jsonrpsee::{core::JsonValue, proc_macros::rpc};
pub use self::helpers::{Health, NodeRole, PeerInfo, SyncState, SystemInfo};
pub use error::Error;
#[rpc(client, server)]
pub trait SystemApi<Hash, Number> {
#[method(name = "system_name")]
fn system_name(&self) -> Result<String, Error>;
#[method(name = "system_version")]
fn system_version(&self) -> Result<String, Error>;
#[method(name = "system_chain")]
fn system_chain(&self) -> Result<String, Error>;
#[method(name = "system_chainType")]
fn system_type(&self) -> Result<sc_chain_spec::ChainType, Error>;
#[method(name = "system_properties")]
fn system_properties(&self) -> Result<sc_chain_spec::Properties, Error>;
#[method(name = "system_health")]
async fn system_health(&self) -> Result<Health, Error>;
#[method(name = "system_localPeerId")]
async fn system_local_peer_id(&self) -> Result<String, Error>;
#[method(name = "system_localListenAddresses")]
async fn system_local_listen_addresses(&self) -> Result<Vec<String>, Error>;
#[method(name = "system_peers", with_extensions)]
async fn system_peers(&self) -> Result<Vec<PeerInfo<Hash, Number>>, Error>;
#[method(name = "system_unstable_networkState", with_extensions)]
async fn system_network_state(&self) -> Result<JsonValue, Error>;
#[method(name = "system_addReservedPeer", with_extensions)]
async fn system_add_reserved_peer(&self, peer: String) -> Result<(), Error>;
#[method(name = "system_removeReservedPeer", with_extensions)]
async fn system_remove_reserved_peer(&self, peer_id: String) -> Result<(), Error>;
#[method(name = "system_reservedPeers")]
async fn system_reserved_peers(&self) -> Result<Vec<String>, Error>;
#[method(name = "system_nodeRoles")]
async fn system_node_roles(&self) -> Result<Vec<NodeRole>, Error>;
#[method(name = "system_syncState")]
async fn system_sync_state(&self) -> Result<SyncState<Number>, Error>;
#[method(name = "system_addLogFilter", with_extensions)]
fn system_add_log_filter(&self, directives: String) -> Result<(), Error>;
#[method(name = "system_resetLogFilter", with_extensions)]
fn system_reset_log_filter(&self) -> Result<(), Error>;
}