# generated by https://github.com/puzl-cloud/kubesdk
#   filename:  api__v1_openapi.json

from __future__ import annotations

from dataclasses import dataclass, field
from datetime import datetime, timezone
from typing import ClassVar, Set

from kube_models.const import *
from kube_models.loader import *
from kube_models.loader import LazyLoadModel
from kube_models.resource import *

from ...apimachinery.pkg.apis.meta.v1 import DeleteOptions, ObjectMeta


@dataclass(slots=True, kw_only=True, frozen=True)
class Eviction(K8sResource):
    apiVersion: ClassVar[str] = 'policy/v1'
    deleteOptions: DeleteOptions | None = None
    kind: ClassVar[str] = 'Eviction'
    metadata: ObjectMeta = field(default_factory=ObjectMeta)
    api_path_: ClassVar[str] = 'api/v1/namespaces/{namespace}/pods/{name}/eviction'
    plural_: ClassVar[str] = 'eviction'
    is_namespaced_: ClassVar[bool] = True
    group_: ClassVar[Optional[str]] = 'policy'
