42 lines
791 B
TypeScript
42 lines
791 B
TypeScript
import type { IconName } from "../external/icons";
|
||
import type { TaskResult } from "./task";
|
||
|
||
export default interface Project {
|
||
id: string
|
||
name: string
|
||
description: string
|
||
icon: IconName
|
||
active: boolean
|
||
createdTime: string
|
||
endTime?: string
|
||
statusTag?: string
|
||
}
|
||
|
||
export interface ProjectResult extends Project {
|
||
tasks: TaskResult[]
|
||
}
|
||
|
||
export interface ProjectFilter {
|
||
active?: boolean
|
||
expiring?: boolean
|
||
}
|
||
|
||
export interface ProjectInput {
|
||
name: string
|
||
description: string
|
||
icon: IconName
|
||
active: boolean
|
||
endTime?: string | Date
|
||
statusTag?: string
|
||
}
|
||
|
||
export interface ProjectUpdate {
|
||
name?: string
|
||
description?: string
|
||
icon?: string
|
||
active?: boolean
|
||
endTime?: string | Date
|
||
clearEndTime?: boolean
|
||
statusTag?: string
|
||
clearStatusTag?: boolean
|
||
} |