import { ElementFormData, ElementMetaAttributes, User } from '.'; export interface CommentValue { createdBy: string | User; lastChangeAt: number; organization: string; value: string; } type Privileges = 'create' | 'read' | 'delete' | 'update'; export interface TicketProperty { lastChangeAt: string; lastChangeBy?: string; organization?: string; privileges: Privileges[]; value?: T; } export declare enum TicketStatus { CLOSED = "Close", OPEN = "Open", IN_PROGESS = "In-progress" } interface TicketLog { action: 'create' | 'view' | 'update'; createdBy: User; createdAt: string; } export interface TicketData extends Omit { approvers: TicketProperty; assignees: TicketProperty; checklist: TicketProperty; children: TicketData[]; parent?: Partial; comments: CommentValue[]; createdAt: TicketProperty; createdBy: TicketProperty; description: TicketProperty; dueDate: TicketProperty; elements: TicketProperty; logs: TicketLog[]; overDue: boolean; participants: TicketProperty; priority?: TicketProperty; status: TicketProperty; subject: TicketProperty; is_incomplete: TicketProperty; } export {};