export const DEFAULT_EMOJI = '🖥️'

export interface FileInfo {
  hash: string
  mtime: string
  size: number
}

export interface Manifest {
  files: Record<string, FileInfo>
  name: string
}

export type AppState = 'error' | 'invalid' | 'stopped' | 'starting' | 'running' | 'stopping'

export type LogLine = {
  time: number
  text: string
}

export type App = {
  name: string
  state: AppState
  icon: string
  error?: string
  pid?: number
  port?: number
  started?: number
  logs?: LogLine[]
  tool?: boolean | string
  apps?: boolean
  dashboard?: boolean
  tunnelEnabled?: boolean
  tunnelUrl?: string
}
