use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ContractsConfig {
#[serde(rename = "edsId")]
pub eds_id: String,
#[serde(rename = "idsId")]
pub ids_id: String,
#[serde(rename = "network")]
pub network: Network,
#[serde(rename = "baseContractAddress")]
pub base_contract_address: String,
#[serde(rename = "currentContractAddress")]
pub current_contract_address: String,
#[serde(rename = "operators")]
pub operators: models::Operators,
}
impl ContractsConfig {
pub fn new(eds_id: String, ids_id: String, network: Network, base_contract_address: String, current_contract_address: String, operators: models::Operators) -> ContractsConfig {
ContractsConfig {
eds_id,
ids_id,
network,
base_contract_address,
current_contract_address,
operators,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Network {
#[serde(rename = "mainnet")]
Mainnet,
#[serde(rename = "testnet")]
Testnet,
#[serde(rename = "devnet")]
Devnet,
}
impl Default for Network {
fn default() -> Network {
Self::Mainnet
}
}