export interface AdminScheduledJobItem {
  id: string
  type: string
  enabled: boolean
  intervalSeconds: number
  cooldownSeconds: number
  config: {
    assetThreshold: number
  }
}

export interface AdminScheduledJobsConfig {
  enabled: boolean
  jobs: AdminScheduledJobItem[]
}

export interface AdminScheduledJobRuntimeState {
  id: string
  enabled: boolean
  running: boolean
  lastRunAt: string
  lastFinishedAt: string
  nextRunAt: string
  lastStatus: string
  lastMessage: string
  lastAsset: number | null
  lastThreshold: number | null
  lastManual: boolean
}

export interface AdminScheduledJobsResponse {
  filePath: string
  source: AdminScheduledJobsConfig
  runtime: AdminScheduledJobRuntimeState[]
}
