#![allow(clippy::all)]
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct ArchivePermissionRequest {
#[serde(rename = "isArchived")]
pub is_archived: bool,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct ArchivePermissionResponse {
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "operations")]
pub operations: Vec<String>,
#[serde(rename = "status")]
pub status: String,
#[serde(rename = "isImmutable")]
pub is_immutable: bool,
#[serde(rename = "isArchived")]
pub is_archived: bool,
#[serde(rename = "dateCreated")]
pub date_created: String,
#[serde(rename = "dateUpdated")]
pub date_updated: String,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct ListPermissionAssignmentsResponse {
#[serde(rename = "items")]
pub items: Vec<serde_json::Value>,
#[serde(
rename = "nextPageToken",
default,
skip_serializing_if = "Option::is_none"
)]
pub next_page_token: Option<String>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct ListPermissionAssignmentsQuery {
#[serde(rename = "limit", default, skip_serializing_if = "Option::is_none")]
pub limit: Option<i64>,
#[serde(
rename = "paginationToken",
default,
skip_serializing_if = "Option::is_none"
)]
pub pagination_token: Option<String>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct AssignPermissionRequest {
#[serde(rename = "identityId")]
pub identity_id: String,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct AssignPermissionResponse {
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "permissionId")]
pub permission_id: String,
#[serde(rename = "identityId")]
pub identity_id: String,
#[serde(rename = "isImmutable")]
pub is_immutable: bool,
#[serde(rename = "dateCreated")]
pub date_created: String,
#[serde(rename = "dateUpdated")]
pub date_updated: String,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct ListPermissionsResponse {
#[serde(rename = "items")]
pub items: Vec<serde_json::Value>,
#[serde(
rename = "nextPageToken",
default,
skip_serializing_if = "Option::is_none"
)]
pub next_page_token: Option<String>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct ListPermissionsQuery {
#[serde(rename = "limit", default, skip_serializing_if = "Option::is_none")]
pub limit: Option<i64>,
#[serde(
rename = "paginationToken",
default,
skip_serializing_if = "Option::is_none"
)]
pub pagination_token: Option<String>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct CreatePermissionRequest {
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "operations")]
pub operations: Vec<serde_json::Value>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct CreatePermissionResponse {
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "operations")]
pub operations: Vec<String>,
#[serde(rename = "status")]
pub status: String,
#[serde(rename = "isImmutable")]
pub is_immutable: bool,
#[serde(rename = "isArchived")]
pub is_archived: bool,
#[serde(rename = "dateCreated")]
pub date_created: String,
#[serde(rename = "dateUpdated")]
pub date_updated: String,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct RevokePermissionQuery {
#[serde(rename = "force", default, skip_serializing_if = "Option::is_none")]
pub force: Option<bool>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct GetPermissionResponse {
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "operations")]
pub operations: Vec<String>,
#[serde(rename = "status")]
pub status: String,
#[serde(rename = "isImmutable")]
pub is_immutable: bool,
#[serde(rename = "isArchived")]
pub is_archived: bool,
#[serde(rename = "dateCreated")]
pub date_created: String,
#[serde(rename = "dateUpdated")]
pub date_updated: String,
#[serde(
rename = "pendingChangeRequest",
default,
skip_serializing_if = "Option::is_none"
)]
pub pending_change_request: Option<serde_json::Value>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct UpdatePermissionRequest {
#[serde(rename = "name", default, skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(
rename = "operations",
default,
skip_serializing_if = "Option::is_none"
)]
pub operations: Option<Vec<serde_json::Value>>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct UpdatePermissionResponse {
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "name")]
pub name: String,
#[serde(rename = "operations")]
pub operations: Vec<String>,
#[serde(rename = "status")]
pub status: String,
#[serde(rename = "isImmutable")]
pub is_immutable: bool,
#[serde(rename = "isArchived")]
pub is_archived: bool,
#[serde(rename = "dateCreated")]
pub date_created: String,
#[serde(rename = "dateUpdated")]
pub date_updated: String,
}