mod curve;
pub use curve::*;
mod portfolio;
pub use portfolio::*;
mod demand;
pub use demand::*;
mod map;
pub use map::*;
mod datetime;
pub use datetime::*;
mod group;
pub use group::*;
#[cfg_attr(
feature = "schemars",
derive(schemars::JsonSchema),
schemars(rename = "{Value}Record")
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct ValueRecord<DateTime, Value> {
pub valid_from: DateTime,
pub valid_until: Option<DateTime>,
pub value: Value,
}
#[cfg_attr(
feature = "schemars",
derive(schemars::JsonSchema),
schemars(rename = "{Outcome}Record")
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct OutcomeRecord<DateTime, Outcome> {
pub as_of: DateTime,
pub outcome: Outcome,
}