import { Resource } from '@c6o/kubeclient-contracts'; import { Condition, LabelSelector, ListMeta, ObjectMeta, Time } from '../meta/v1'; export interface PodDisruptionBudget extends Resource { apiVersion?: 'policy/v1'; kind?: 'PodDisruptionBudget'; metadata?: ObjectMeta; spec?: PodDisruptionBudgetSpec; status?: PodDisruptionBudgetStatus; } export interface PodDisruptionBudgetList extends Resource { apiVersion?: 'policy/v1'; items: Array; kind?: 'PodDisruptionBudgetList'; metadata?: ListMeta; } export interface PodDisruptionBudgetSpec { maxUnavailable?: number | string; minAvailable?: number | string; selector?: LabelSelector; } export interface PodDisruptionBudgetStatus { conditions?: Array; currentHealthy: number; desiredHealthy: number; disruptedPods?: { [name: string]: Time; }; disruptionsAllowed: number; expectedPods: number; observedGeneration?: number; }