use chrono::NaiveDateTime;
use serde::{Deserialize, Serialize};
use serde_json::Value;
use crate::output::common::{Cache, Encryption, Limits, Repository};
use crate::output::info::ArchiveStats;
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct Create {
pub repository: Repository,
pub cache: Option<Cache>,
pub encryption: Option<Encryption>,
pub archive: CreateArchive,
}
#[derive(Serialize, Deserialize, Debug, Clone)]
pub struct CreateArchive {
pub id: String,
pub name: String,
pub command_line: Vec<String>,
pub limits: Limits,
pub duration: f64,
pub chunker_params: Option<Vec<Value>>,
pub start: NaiveDateTime,
pub end: NaiveDateTime,
pub stats: ArchiveStats,
}