mirror of
https://github.com/lensapp/lens.git
synced 2025-05-20 05:10:56 +00:00
30 lines
868 B
TypeScript
30 lines
868 B
TypeScript
import { getInjectionToken } from "@ogre-tools/injectable";
|
|
|
|
type ClusterPreferences = {
|
|
clusterName?: string;
|
|
icon?: string | null;
|
|
}
|
|
|
|
export interface ClusterIconMenuItem {
|
|
id: string;
|
|
title: string;
|
|
disabled?: (preferences: ClusterPreferences) => boolean;
|
|
onClick: (preferences: ClusterPreferences) => void;
|
|
}
|
|
|
|
export interface ClusterIconSettingComponentProps {
|
|
preferences: ClusterPreferences;
|
|
}
|
|
|
|
export interface ClusterIconSettingsComponent {
|
|
id: string;
|
|
Component: React.ComponentType<ClusterIconSettingComponentProps>;
|
|
}
|
|
|
|
export const clusterIconSettingsMenuInjectionToken = getInjectionToken<ClusterIconMenuItem>({
|
|
id: "cluster-icon-settings-menu-injection-token",
|
|
});
|
|
|
|
export const clusterIconSettingsComponentInjectionToken = getInjectionToken<ClusterIconSettingsComponent>({
|
|
id: "cluster-icon-settings-component-injection-token",
|
|
}); |