54 lines · 990 B · TypeScript
RawDownload
export type View = 'dashboard' | 'recipes' | 'status' | 'config'; export interface GPU {  index: number;  name: string;  memory_used: number;  memory_total: number;  utilization: number;  temperature: number;  power_draw: number;} export interface Recipe {  id: string;  name: string;  model_path: string;  backend: string;  tensor_parallel_size?: number;  max_model_len?: number;} export interface Status {  running: boolean;  launching: boolean;  model?: string;  backend?: string;  pid?: number;  port?: number;  error?: string;} export interface Config {  port: number;  inference_port: number;  models_dir: string;  data_dir: string;} export interface LifetimeMetrics {  total_tokens: number;  total_requests: number;  total_energy_kwh: number;} export interface AppState {  view: View;  selectedIndex: number;  gpus: GPU[];  recipes: Recipe[];  status: Status;  config: Config | null;  lifetime: LifetimeMetrics;  error: string | null;}