use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CreatePermissionRequest {
#[serde(rename = "actions")]
pub actions: Vec<String>,
#[serde(rename = "principal_id")]
pub principal_id: uuid::Uuid,
#[serde(rename = "principal_type")]
pub principal_type: String,
#[serde(rename = "target_id")]
pub target_id: uuid::Uuid,
#[serde(rename = "target_type")]
pub target_type: String,
}
impl CreatePermissionRequest {
pub fn new(actions: Vec<String>, principal_id: uuid::Uuid, principal_type: String, target_id: uuid::Uuid, target_type: String) -> CreatePermissionRequest {
CreatePermissionRequest {
actions,
principal_id,
principal_type,
target_id,
target_type,
}
}
}