use serde::{Deserialize, Serialize};
use crate::common;
use super::Filter;
#[derive(Debug, Clone, Hash, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub enum SoftDelete {
Field(SoftDeleteField),
Column(SoftDeleteColumn),
}
#[derive(Debug, Clone, Hash, Serialize, Deserialize)]
pub struct SoftDeleteField {
pub field: common::FieldName,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub when: Option<Vec<Filter>>,
}
#[derive(Debug, Clone, Hash, Serialize, Deserialize)]
pub struct SoftDeleteColumn {
pub column: common::ColumnName,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub when: Option<Vec<Filter>>,
}