use serde::{Deserialize, Serialize};
use systemprompt_identifiers::RuleId;
use super::kinds::{Access, EntityKind, RuleType};
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, sqlx::FromRow)]
pub struct AccessRule {
pub id: RuleId,
pub rule_type: RuleType,
pub rule_value: String,
pub access: Access,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub justification: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct EntityRow {
pub kind: EntityKind,
pub id: String,
pub default_included: bool,
pub source: String,
}