// Code generated by oagen. DO NOT EDIT.
#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Role {
/// A unique slug for the role.
pub slug: String,
/// Distinguishes the role object.
pub object: String,
/// Unique identifier of the role.
pub id: String,
/// A descriptive name for the role.
pub name: String,
/// An optional description of the role.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub description: Option<String>,
/// Whether the role is scoped to the environment or an organization (custom role).
#[serde(rename = "type")]
pub type_: RoleType,
/// The slug of the resource type the role is scoped to.
pub resource_type_slug: String,
/// The permission slugs assigned to the role.
pub permissions: Vec<String>,
/// An ISO 8601 timestamp.
pub created_at: String,
/// An ISO 8601 timestamp.
pub updated_at: String,
}