@mittwald/kubernetes
Version:
Kubernetes client library
40 lines (39 loc) • 1.28 kB
TypeScript
import * as metav1 from "./meta/v1";
export interface Resource<K = string, V = "v1"> {
kind: K;
apiVersion: V;
}
export interface ResourceListMeta {
continue: string;
resourceVersion: string;
}
export declare type ResourceList<R, K = string, V = "v1"> = Resource<K, V> & {
metadata: ResourceListMeta;
items: null | R[];
};
export interface MetadataObject<M = metav1.ObjectMeta> {
metadata: M;
}
export declare type APIObject<K = string, V = "v1"> = Resource<K, V> & MetadataObject;
export declare type InputAPIObject<K = string, V = "v1"> = Partial<Resource<K, V>> & MetadataObject;
export declare type Status = Resource<"Status", "v1"> & {
status: "Failure" | "Success";
message: string;
reason: "BadRequest" | "NotFound" | "Unauthorized" | "Forbidden" | "AlreadyExists" | "Conflict" | "Invalid" | "Timeout" | "ServerTimeout" | "MethodNotAllowed" | "InternalError";
details: any;
code: number;
};
export declare function isStatus(s: {
kind: string;
} | undefined): s is Status;
export interface APIResourceList {
kind: "APIResourceList";
groupVersion: string;
resources: Array<{
name: string;
namespaced: boolean;
kind: string;
verbs: string[];
shortNames?: string[];
}>;
}