use crate::error::NodesRegistryError;
use crate::{Node, NodeSysCap, NodeSysInfo};
#[async_trait::async_trait]
pub trait NodesRegistryClient: Send + Sync {
async fn get_node(&self, id: uuid::Uuid) -> Result<Node, NodesRegistryError>;
async fn list_nodes(&self) -> Result<Vec<Node>, NodesRegistryError>;
async fn get_node_sysinfo(
&self,
node_id: uuid::Uuid,
) -> Result<NodeSysInfo, NodesRegistryError>;
async fn get_node_syscap(&self, node_id: uuid::Uuid) -> Result<NodeSysCap, NodesRegistryError>;
}