diff --git a/src/common/catalog-entities/general.ts b/src/common/catalog-entities/general.ts index 22d717e832..68da3e17f0 100644 --- a/src/common/catalog-entities/general.ts +++ b/src/common/catalog-entities/general.ts @@ -23,9 +23,9 @@ import { navigate } from "../../renderer/navigation"; import { CatalogCategory, CatalogEntity, CatalogEntityMetadata, CatalogEntitySpec, CatalogEntityStatus } from "../catalog"; import { catalogCategoryRegistry } from "../catalog/catalog-category-registry"; -type GeneralEntitySpec = { +interface GeneralEntitySpec extends CatalogEntitySpec { path: string; -} & CatalogEntitySpec; +} export class GeneralEntity extends CatalogEntity { public readonly apiVersion = "entity.k8slens.dev/v1alpha1"; diff --git a/src/common/catalog-entities/kubernetes-cluster.ts b/src/common/catalog-entities/kubernetes-cluster.ts index 5ddc9792b3..f794ebc4fb 100644 --- a/src/common/catalog-entities/kubernetes-cluster.ts +++ b/src/common/catalog-entities/kubernetes-cluster.ts @@ -30,7 +30,7 @@ import { app } from "electron"; import type { CatalogEntitySpec } from "../catalog/catalog-entity"; import { HotbarStore } from "../hotbar-store"; -export type KubernetesClusterPrometheusMetrics = { +export interface KubernetesClusterPrometheusMetrics { address?: { namespace: string; service: string; @@ -38,16 +38,16 @@ export type KubernetesClusterPrometheusMetrics = { prefix: string; }; type?: string; -}; +} -export type KubernetesClusterSpec = { +export interface KubernetesClusterSpec extends CatalogEntitySpec { kubeconfigPath: string; kubeconfigContext: string; metrics?: { source: string; prometheus?: KubernetesClusterPrometheusMetrics; } -} & CatalogEntitySpec; +} export interface KubernetesClusterStatus extends CatalogEntityStatus { phase: "connected" | "disconnected" | "deleting"; diff --git a/src/common/catalog/catalog-entity.ts b/src/common/catalog/catalog-entity.ts index 6953d65038..fc7bd364ec 100644 --- a/src/common/catalog/catalog-entity.ts +++ b/src/common/catalog/catalog-entity.ts @@ -147,13 +147,14 @@ export interface CatalogEntityAddMenuContext { menuItems: CatalogEntityAddMenu[]; } -export type CatalogEntitySpec = { +export interface CatalogEntitySpec { icon?: { src?: string; material?: string; background?: string; - } -} & Record; + }; + [key: string]: any; +} export interface CatalogEntityData< Metadata extends CatalogEntityMetadata = CatalogEntityMetadata,