mod id;
mod pattern;
use std::sync::Arc;
pub use id::{ChainId, ChainIdFormatError, NetworkInfo};
pub use pattern::ChainIdPattern;
#[derive(Debug, Clone)]
pub struct DeployedTokenAmount<TAmount, TToken> {
pub amount: TAmount,
pub token: TToken,
}
pub trait ChainProvider {
fn signer_addresses(&self) -> Vec<String>;
fn chain_id(&self) -> ChainId;
}
impl<T: ChainProvider> ChainProvider for Arc<T> {
fn signer_addresses(&self) -> Vec<String> {
(**self).signer_addresses()
}
fn chain_id(&self) -> ChainId {
(**self).chain_id()
}
}