AUDITPRO / types.ts
MMOON's picture
Upload 13 files
93f9472 verified
export enum ItemType {
PassFail = 'PASS_FAIL',
Text = 'TEXT',
Number = 'NUMBER',
Dropdown = 'DROPDOWN',
MultipleChoice = 'MULTIPLE_CHOICE',
Date = 'DATE'
}
export interface ChecklistItem {
id: string;
label: string;
description?: string;
type: ItemType;
options?: string[];
required: boolean;
}
export interface ChecklistSection {
id: string;
title: string;
items: ChecklistItem[];
}
export interface Checklist {
id: string;
name: string;
version: string;
sections: ChecklistSection[];
createdAt: number;
lastModified: number;
}
export interface AuditResponse {
itemId: string;
itemLabel: string;
value: any;
comment?: string;
photos: string[];
}
export interface Audit {
id: string;
checklistId: string;
checklistName: string;
inspectorName: string;
status: 'IN_PROGRESS' | 'COMPLETED' | 'SENT';
startedAt: number;
completedAt?: number;
responses: AuditResponse[];
webhookUrl?: string;
sheetId?: string;
}
export interface AppSettings {
id?: string;
webhookUrl: string;
sheetId: string;
inspectorName: string;
autoSync?: boolean;
onboardingComplete?: boolean;
}