diff --git a/src/renderer/api/endpoints/cron-job.api.ts b/src/renderer/api/endpoints/cron-job.api.ts index 5063fbd66c..462b42b58b 100644 --- a/src/renderer/api/endpoints/cron-job.api.ts +++ b/src/renderer/api/endpoints/cron-job.api.ts @@ -43,22 +43,6 @@ export class CronJob extends KubeObject { static namespaced = true; static apiBase = "/apis/batch/v1beta1/cronjobs"; - kind: string; - apiVersion: string; - metadata: { - name: string; - namespace: string; - selfLink: string; - uid: string; - resourceVersion: string; - creationTimestamp: string; - labels: { - [key: string]: string; - }; - annotations: { - [key: string]: string; - }; - }; spec: { schedule: string; concurrencyPolicy: string; diff --git a/src/renderer/api/endpoints/daemon-set.api.ts b/src/renderer/api/endpoints/daemon-set.api.ts index 8dab807517..d7131aa120 100644 --- a/src/renderer/api/endpoints/daemon-set.api.ts +++ b/src/renderer/api/endpoints/daemon-set.api.ts @@ -10,7 +10,7 @@ export class DaemonSet extends WorkloadKubeObject { static namespaced = true; static apiBase = "/apis/apps/v1/daemonsets"; - spec: { + declare spec: { selector: { matchLabels: { [name: string]: string; diff --git a/src/renderer/api/endpoints/deployment.api.ts b/src/renderer/api/endpoints/deployment.api.ts index 107e970d98..adebd1467b 100644 --- a/src/renderer/api/endpoints/deployment.api.ts +++ b/src/renderer/api/endpoints/deployment.api.ts @@ -72,7 +72,7 @@ export class Deployment extends WorkloadKubeObject { static namespaced = true; static apiBase = "/apis/apps/v1/deployments"; - spec: { + declare spec: { replicas: number; selector: { matchLabels: { [app: string]: string } }; template: { diff --git a/src/renderer/api/endpoints/job.api.ts b/src/renderer/api/endpoints/job.api.ts index 65b9bcfdc3..dbe0fec613 100644 --- a/src/renderer/api/endpoints/job.api.ts +++ b/src/renderer/api/endpoints/job.api.ts @@ -11,7 +11,7 @@ export class Job extends WorkloadKubeObject { static namespaced = true; static apiBase = "/apis/batch/v1/jobs"; - spec: { + declare spec: { parallelism?: number; completions?: number; backoffLimit?: number; diff --git a/src/renderer/api/endpoints/pods.api.ts b/src/renderer/api/endpoints/pods.api.ts index d03e679414..8a6bc9452d 100644 --- a/src/renderer/api/endpoints/pods.api.ts +++ b/src/renderer/api/endpoints/pods.api.ts @@ -187,7 +187,7 @@ export class Pod extends WorkloadKubeObject { static namespaced = true; static apiBase = "/api/v1/pods"; - spec: { + declare spec: { volumes?: { name: string; persistentVolumeClaim: { diff --git a/src/renderer/api/endpoints/replica-set.api.ts b/src/renderer/api/endpoints/replica-set.api.ts index eb1131f645..50c689ebb0 100644 --- a/src/renderer/api/endpoints/replica-set.api.ts +++ b/src/renderer/api/endpoints/replica-set.api.ts @@ -32,7 +32,8 @@ export class ReplicaSet extends WorkloadKubeObject { static kind = "ReplicaSet"; static namespaced = true; static apiBase = "/apis/apps/v1/replicasets"; - spec: { + + declare spec: { replicas?: number; selector: { matchLabels: { [app: string]: string } }; template?: { diff --git a/src/renderer/api/endpoints/service.api.ts b/src/renderer/api/endpoints/service.api.ts index 6c02873139..4619475c65 100644 --- a/src/renderer/api/endpoints/service.api.ts +++ b/src/renderer/api/endpoints/service.api.ts @@ -46,7 +46,7 @@ export class Service extends KubeObject { externalIPs?: string[]; // https://kubernetes.io/docs/concepts/services-networking/service/#external-ips }; - status: { + declare status: { loadBalancer?: { ingress?: { ip?: string; diff --git a/src/renderer/api/endpoints/stateful-set.api.ts b/src/renderer/api/endpoints/stateful-set.api.ts index add2a554ba..cdb56adccf 100644 --- a/src/renderer/api/endpoints/stateful-set.api.ts +++ b/src/renderer/api/endpoints/stateful-set.api.ts @@ -33,7 +33,7 @@ export class StatefulSet extends WorkloadKubeObject { static namespaced = true; static apiBase = "/apis/apps/v1/statefulsets"; - spec: { + declare spec: { serviceName: string; replicas: number; selector: { @@ -86,7 +86,7 @@ export class StatefulSet extends WorkloadKubeObject { }; }[]; }; - status: { + declare status: { observedGeneration: number; replicas: number; currentReplicas: number; diff --git a/src/renderer/api/kube-object.ts b/src/renderer/api/kube-object.ts index 8699a3c94f..9734aea9be 100644 --- a/src/renderer/api/kube-object.ts +++ b/src/renderer/api/kube-object.ts @@ -144,7 +144,6 @@ export class KubeObject implements ItemObject { apiVersion: string; kind: string; metadata: IKubeObjectMetadata; - status?: any; // todo: type-safety support get selfLink() { return this.metadata.selfLink; diff --git a/src/renderer/components/menu/menu.tsx b/src/renderer/components/menu/menu.tsx index f0d172b0d7..308e6f863f 100644 --- a/src/renderer/components/menu/menu.tsx +++ b/src/renderer/components/menu/menu.tsx @@ -324,7 +324,7 @@ export class MenuItem extends React.Component { static defaultProps = defaultPropsMenuItem as object; static contextType = MenuContext; - public context: MenuContextValue; + declare context: MenuContextValue; public elem: HTMLElement; get isFocusable() { diff --git a/src/renderer/components/tabs/tabs.tsx b/src/renderer/components/tabs/tabs.tsx index 721d7ad6f1..fa81e43929 100644 --- a/src/renderer/components/tabs/tabs.tsx +++ b/src/renderer/components/tabs/tabs.tsx @@ -62,7 +62,7 @@ export interface TabProps extends DOMAttributes { export class Tab extends React.PureComponent { static contextType = TabsContext; - public context: TabsContextValue; + declare context: TabsContextValue; public elem: HTMLElement; get isActive() { diff --git a/tsconfig.json b/tsconfig.json index b2cb7376ef..c4c63baf88 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -23,6 +23,7 @@ "allowSyntheticDefaultImports": true, "traceResolution": false, "resolveJsonModule": true, + "useDefineForClassFields": true, "paths": { "*": [ "node_modules/*",