Spaces:
Running
Running
File size: 1,744 Bytes
1c34a81 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | import type { LucideIcon } from 'lucide-react'
import type { ReactNode } from 'react'
export type ScreenName = 'Dashboard' | 'Models' | 'Inputs' | 'Scenarios' | 'Formulas' | 'Projections' | 'Runs' | 'Results' | 'Reports' | 'Investigate' | 'Mentor' | 'Admin / Settings'
export type NavItem = { label: ScreenName; icon: LucideIcon; group?: string }
export type ModelStatus = 'Validated' | 'Needs review' | 'Draft'
export type LineageStatus = 'Shared' | 'Inherited' | 'Overridden' | 'Local'
export type ExecutionStatus = 'Completed' | 'Running' | 'Paused' | 'Cancelled' | 'Stale' | 'Validated' | 'Needs review'
export type Model = { name: string; version: string; basis: string; product: string; status: ModelStatus; updated: string; owner: string; runs: number }
export type RunRecord = { name: string; scenario: string; date: string; modified: string }
export type RunSetRun = {
id: string
projectionSetId: string
projectionSetName: string
scenarioId: string
scenarioName: string
status: 'Queued' | 'Running' | 'Completed' | 'Failed'
progress: { total: number; done: number; percent: number; unit: 'policies'; eta_seconds?: number }
events: { id: number; timestamp: string; level: 'info' | 'warning' | 'error'; step: string; message: string }[]
}
export type RunSetRecord = {
id: string
projectId: string
name: string
notes: string | null
submittedAt: string
status: 'Queued' | 'Running' | 'Completed' | 'Failed'
projectionSetIds: string[]
scenarioIds: string[]
runs: RunSetRun[]
}
export type Investigation = { title: string; model: string; scenario: string; period: string; time: string }
export type ActionButtonProps = { onAction?: () => void; actionIcon?: ReactNode }
|