use crate::{
time::{date::Date, period::Period},
utils::errors::Result,
};
use super::exchangeratestore::ExchangeRateStore;
pub trait CurrencyDetails {
fn code(&self) -> &'static str;
fn name(&self) -> &'static str;
fn symbol(&self) -> &'static str;
fn precision(&self) -> u8;
fn numeric_code(&self) -> u16;
}
pub trait AdvanceExchangeRateStoreInTime {
fn advance_to_period(
&self,
period: Period,
index_store: &IndexStore,
) -> Result<ExchangeRateStore>;
fn advance_to_date(&self, date: Date, index_store: &IndexStore) -> Result<ExchangeRateStore>;
}