import { ExtractPropTypes, PropType } from 'vue'; import { VueI18nLike } from '@dao-style/extend'; import { GPUResourceSetting, GPUSetting, GPUSummary, GpuQuota, GpuQuotaItem, GpuUsage, VgpuSchedulePolicy } from './types'; export declare const nvidiaVgpuKey = "nvidia-vgpu"; export declare const nvidiaGpuKey = "nvidia-gpu"; export declare const nvidiaVgpuCoreResource = "nvidia.com/vgpu"; export declare const hamiResOrder: string[]; export declare const getPriorityOpts: (i18n: VueI18nLike) => { label: string; value: string; }[]; export declare const NividaVgpuModelAnnoKey = "nvidia.com/use-gputype"; export declare const NividaVgpuDevicesAnnoKey = "nvidia.com/use-gpuuuid"; export declare const NividaVgpuGpuScheduleAnnoKey = "hami.io/gpu-scheduler-policy"; export declare const NividaVgpuNodeScheduleAnnoKey = "hami.io/node-scheduler-policy"; export declare const nvidiaMIGKey = "nvidia-mig"; export declare const nvidiaVgpuPriorityEnvName = "CUDA_TASK_PRIORITY"; declare const defaultGpuSettings: { data: GPUSetting[]; loading: boolean; addLink: string; refresh: () => Promise | GPUSetting[]; }; export type GPUSettings = typeof defaultGpuSettings & { id?: string; }; declare const defaultClusterGPUSummary: { data: GPUSummary[]; loading: boolean; refresh: () => Promise | GPUSummary[]; }; export type GpuModels = typeof defaultClusterGPUSummary; export interface GpuDevice { deviceUUID?: string; modelName?: string; nodeName?: string; allocatedFrameBufferMemory?: string; allocatableFrameBufferMemory?: string; /** 已分配的 HAMi GPU core 调度份额,100 表示一张卡的基准容量。 */ allocatedCore?: string; /** HAMi GPU core 总可分配份额,启用超配时可大于 100。 */ allocatableCore?: string; [propName: string]: unknown; } export type DevicesListSearchFilter = { searchDeviceUUID?: string[]; searchNodeName?: string[]; searchGPUModel?: string[]; }; export type GpuDevicesAdaptor = { data: GpuDevice[]; loading: boolean; refresh: () => Promise | GpuDevice[]; search?: (params: DevicesListSearchFilter) => Promise | GpuDevice[]; }; export declare const gpuFormProps: { gpuSettingsAdaptor: { type: PropType; default: undefined; }; nvidiaVgpuModelsAdaptor: { type: PropType<{ data: GPUSummary[]; loading: boolean; refresh: () => Promise | GPUSummary[]; }>; default: undefined; }; nvidiaVgpuDevicesAdaptor: { type: PropType; default: undefined; }; targetType: { type: StringConstructor; default: string; }; gpuUsage: { type: PropType; default: string; }; enableRemoteCall: { type: BooleanConstructor; default: boolean; }; enableRangeValidate: { type: BooleanConstructor; default: boolean; }; enableNvidiaVgpuModel: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuModel: { type: StringConstructor; default: undefined; }; enableNvidiaVgpuDevices: { type: BooleanConstructor; default: boolean; }; assignGpuDisabled: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuDevices: { type: PropType; default: () => never[]; }; enableNvidiaVgpuPriority: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuPriority: { type: PropType<"0" | "1">; default: undefined; }; dynamicLimitOne: { type: BooleanConstructor; default: boolean; }; enableNvidiaVgpuSchedulePolicy: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuGpuSchedule: { type: PropType; default: undefined; }; nvidiaVgpuNodeSchedule: { type: PropType; default: undefined; }; quota: { type: PropType; default: () => { types: never[]; resources: {}; }; }; formWidth: { type: StringConstructor; default: undefined; }; availableQuotaLink: { type: StringConstructor; default: undefined; }; usedQuota: { type: PropType; default: undefined; }; availableQuota: { type: PropType; default: undefined; }; withPrefixRequest: { type: BooleanConstructor; default: boolean; }; limit: { type: NumberConstructor; default: undefined; }; }; export type GpuFormProps = ExtractPropTypes; export declare const gpuResourceItemProps: { quota: { type: PropType; }; quotaItem: { type: PropType; default: () => {}; }; isSide: { type: BooleanConstructor; default: boolean; }; resources: { type: PropType; required: boolean; }; gpuProvider: { type: StringConstructor; default: string; }; enableRangeValidate: { type: BooleanConstructor; default: boolean; }; availableQuotaItem: { type: PropType; default: undefined; }; usedQuotaItem: { type: PropType; default: undefined; }; gpuUsage: { type: PropType; default: string; }; }; export declare const gpuAdvancedFormProps: { quota: { type: PropType; }; enableRemoteCall: { type: BooleanConstructor; default: boolean; }; enableNvidiaVgpuModel: { type: BooleanConstructor; default: boolean; }; enableNvidiaVgpuDevices: { type: BooleanConstructor; default: boolean; }; assignGpuDisabled: { type: BooleanConstructor; default: boolean; }; enableNvidiaVgpuPriority: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuModelsAdaptor: { type: PropType<{ data: GPUSummary[]; loading: boolean; refresh: () => Promise | GPUSummary[]; }>; default: undefined; }; nvidiaGpuModels: { type: PropType; required: boolean; }; nvidiaVgpuDevicesAdaptor: { type: PropType; default: undefined; }; isSide: { type: BooleanConstructor; default: boolean; }; openNvidiaAssignGpu: { type: BooleanConstructor; default: boolean; }; openNvidiaVgpuModel: { type: BooleanConstructor; default: boolean; }; enableNvidiaVgpuSchedulePolicy: { type: BooleanConstructor; default: boolean; }; openNvidiaVgpuSchedulePolicy: { type: BooleanConstructor; default: boolean; }; }; export declare const gpuFormItemProps: { gpuSettingsAdaptor: { type: PropType; default: undefined; }; nvidiaVgpuModelsAdaptor: { type: PropType<{ data: GPUSummary[]; loading: boolean; refresh: () => Promise | GPUSummary[]; }>; default: undefined; }; nvidiaVgpuDevicesAdaptor: { type: PropType; default: undefined; }; targetType: { type: StringConstructor; default: string; }; gpuUsage: { type: PropType; default: string; }; enableRemoteCall: { type: BooleanConstructor; default: boolean; }; enableRangeValidate: { type: BooleanConstructor; default: boolean; }; enableNvidiaVgpuModel: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuModel: { type: StringConstructor; default: undefined; }; enableNvidiaVgpuDevices: { type: BooleanConstructor; default: boolean; }; assignGpuDisabled: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuDevices: { type: PropType; default: () => never[]; }; enableNvidiaVgpuPriority: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuPriority: { type: PropType<"0" | "1">; default: undefined; }; dynamicLimitOne: { type: BooleanConstructor; default: boolean; }; enableNvidiaVgpuSchedulePolicy: { type: BooleanConstructor; default: boolean; }; nvidiaVgpuGpuSchedule: { type: PropType; default: undefined; }; nvidiaVgpuNodeSchedule: { type: PropType; default: undefined; }; quotaItem: { type: PropType; default: () => {}; }; isSide: { type: BooleanConstructor; default: boolean; }; gpuProvider: { type: StringConstructor; default: string; }; availableQuotaItem: { type: PropType; default: undefined; }; usedQuotaItem: { type: PropType; default: undefined; }; existTypes: { type: PropType; default: () => never[]; }; gpuOptionsMap: { type: PropType>; required: boolean; }; nvidiaGpuModels: { type: PropType; required: boolean; }; getDisplayResource: { type: PropType<(type: string) => GPUResourceSetting[]>; required: boolean; }; nvidiaGpuDevices: { type: PropType; default: () => never[]; }; }; export declare const dynamicGpuFormItemProps: { quotaItem: { type: PropType | undefined>; default: () => {}; }; availableQuotaItem: { type: PropType | undefined>; default: undefined; }; usedQuotaItem: { type: PropType | undefined>; default: undefined; }; enableRangeValidate: { type: BooleanConstructor; default: boolean; }; displayResource: { type: PropType; required: boolean; default: () => never[]; }; isSide: { type: BooleanConstructor; default: boolean; }; dynamicLimitOne: { type: BooleanConstructor; default: boolean; }; }; export declare const assignGpuDevicesListProps: { modelValue: { type: PropType; default: () => never[]; }; disabled: { type: BooleanConstructor; default: boolean; }; id: { type: StringConstructor; default: string; }; nvidiaVgpuDevicesAdaptor: { type: PropType; default: undefined; }; }; export {};