use crate::*;
use k8s_openapi::apimachinery::pkg::apis::meta::v1 as metav1;
#[derive(
Clone, Debug, kube::CustomResource, serde::Deserialize, serde::Serialize, schemars::JsonSchema,
)]
#[kube(
group = "gateway.networking.k8s.io",
version = "v1beta1",
kind = "GatewayClass",
status = "GatewayClassStatus"
)]
#[serde(rename_all = "camelCase")]
pub struct GatewayClassSpec {
pub controller_name: GatewayController,
pub paramters_ref: Option<ParametersReference>,
pub description: Option<String>,
}
#[derive(
Clone, Debug, Eq, PartialEq, serde::Deserialize, serde::Serialize, schemars::JsonSchema,
)]
pub struct ParametersReference {
pub group: Group,
pub kind: Kind,
pub name: String,
pub namespace: Option<String>,
}
pub type GatewayClassConditionType = String;
pub type GatewayClassConditionReason = String;
#[derive(Clone, Debug, PartialEq, serde::Deserialize, serde::Serialize, schemars::JsonSchema)]
pub struct GatewayClassStatus {
pub conditions: Option<Vec<metav1::Condition>>,
}