@openshift-console/dynamic-plugin-sdk
Version:
Provides core APIs, types and utilities used by dynamic plugins at runtime.
50 lines (49 loc) • 1.7 kB
TypeScript
import { K8sGroupVersionKind, K8sResourceCommon, Patch, QueryParams, Status } from '../extensions/console-types';
import { K8sModel } from './common-types';
import { Options } from './internal-types';
export type K8sGet = <R extends K8sResourceCommon>(options: {
model: K8sModel;
name: string;
ns?: string;
path?: string;
queryParams?: QueryParams;
requestInit?: RequestInit;
}) => Promise<R>;
export type K8sCreate = <R extends K8sResourceCommon>(options: {
model: K8sModel;
data: R;
path?: string;
queryParams?: QueryParams;
}) => Promise<R>;
export type K8sUpdate = <R extends K8sResourceCommon>(options: {
model: K8sModel;
data: R;
path?: string;
queryParams?: QueryParams;
}) => Promise<R>;
export type K8sPatch = <R extends K8sResourceCommon>(options: {
model: K8sModel;
resource: R;
data: Patch[];
path?: string;
queryParams?: QueryParams;
}) => Promise<R>;
export type K8sDelete = <R extends K8sResourceCommon>(options: {
model: K8sModel;
resource: R;
path?: string;
queryParams?: QueryParams;
requestInit?: RequestInit;
json?: Record<string, any>;
}) => Promise<Status>;
export type K8sList = <R extends K8sResourceCommon>(options: {
model: K8sModel;
queryParams: {
[key: string]: any;
};
requestInit?: RequestInit;
}) => Promise<R[]>;
export type GetK8sResourcePath = (model: K8sModel, options: Options) => string;
export type GetAPIVersionForModel = (model: K8sModel) => string;
export type GetGroupVersionKindForResource = (resource: K8sResourceCommon) => K8sGroupVersionKind;
export type GetGroupVersionKindForModel = (model: K8sModel) => K8sGroupVersionKind;