// ⚙️ Settings
export const FirstDayOfWork = ['sunday', 'monday', 'saturday'] as const;
export type FirstDayOfWork = (typeof FirstDayOfWork)[number];

// 🏪 Shop Types
export const ShopType = ['Car', 'Motorcycle', 'Heavy Duty', 'Marine', 'Electronics Repair & Services', 'Other'] as const;
export type ShopType = (typeof ShopType)[number];

// 🏢 Departments
export const AssignmentType = ['none', 'bays', 'outsourced'] as const;
export type AssignmentType = (typeof AssignmentType)[number];

// 👨‍💼 Employees
export const WageType = ['Hourly(punch)', 'Hourly(clock)', 'Daily', 'Monthly'] as const;
export type WageType = (typeof WageType)[number];

export const EmployeeType = ['employee', 'sales_person'] as const;
export type EmployeeType = (typeof EmployeeType)[number];

// 🔍 Inspections
export const InspectionStatus = ['in_progress', 'completed', 'cancelled'] as const;
export type InspectionStatus = (typeof InspectionStatus)[number];

// 📋 Inspection Check Points
export const InspectionRecordType = ['record_conditions', 'record_audio', 'record_video', 'capture_photo', 'wire_frame', 'none'] as const;
export type InspectionRecordType = (typeof InspectionRecordType)[number];

export const InspectionCheckPointStatus = ['passed', 'failed', 'need_attention', 'not_applicable', 'not_inspected'] as const;
export type InspectionCheckPointStatus = (typeof InspectionCheckPointStatus)[number];

// 🧾 Job Cards
export const JobCardStatus = ['draft', 'check_in', 'in_progress', 'on_hold', 'ready_to_delivery', 'delivered'] as const;
export type JobCardStatus = (typeof JobCardStatus)[number];

export const FuelLevel = ['empty', 'reserve', 'quarter', 'half', 'three_quarter', 'full'] as const;
export type FuelLevel = (typeof FuelLevel)[number];

export const EstimateTo = ['Customer', 'Insurance'] as const;
export type EstimateTo = (typeof EstimateTo)[number];

export const TaxInclusive = ['Tax Inclusive', 'Tax Exclusive'] as const;
export type TaxInclusive = (typeof TaxInclusive)[number];

export const DiscountType = ['no', 'line_item_level', 'transaction_level'] as const;
export type DiscountType = (typeof DiscountType)[number];

export const DiscountAt = ['inclusive_of_tax', 'exclusive_of_tax'] as const;
export type DiscountAt = (typeof DiscountAt)[number];

// 💰 Bills
export const BillStatus = ['draft', 'open', 'un_paid', 'partially_paid', 'paid'] as const;
export type BillStatus = (typeof BillStatus)[number];

// 💸 Expenses
export const ExpenseStatus = ['draft', 'open', 'un_paid', 'partially_paid', 'paid'] as const;
export type ExpenseStatus = (typeof ExpenseStatus)[number];

// ✅ Tasks
export const TaskStatus = ['pending', 'completed'] as const;
export type TaskStatus = (typeof TaskStatus)[number];

export const TaskPriority = ['low', 'medium', 'high'] as const;
export type TaskPriority = (typeof TaskPriority)[number];

// 📅 Appointments
export const AppointmentStatus = ['requested', 'confirmed', 'no_show', 'cancelled', 'completed'] as const;
export type AppointmentStatus = (typeof AppointmentStatus)[number];

// 🧾 Invoices
export const InvoiceStatus = ['draft', 'open', 'over_due', 'paid', 'partially_paid', 'un_paid'] as const;
export type InvoiceStatus = (typeof InvoiceStatus)[number];

export const InvoiceDiscount = ['no', 'line_item_level', 'transaction_level'] as const;
export type InvoiceDiscount = (typeof InvoiceDiscount)[number];

// 🔧 Invoice Services / Groups / Inspection Categories
export const RateType = ['flat_rate', 'hourly'] as const;
export type RateType = (typeof RateType)[number];

// 🧾 Credit Notes
export const CreditNoteStatus = ['draft', 'open', 'closed'] as const;
export type CreditNoteStatus = (typeof CreditNoteStatus)[number];

// 💳 Payments Made
export const PaymentFor = ['bill', 'expense'] as const;
export type PaymentFor = (typeof PaymentFor)[number];

// 🏦 Vendor Credits
export const VendorCreditStatus = ['draft', 'open', 'closed'] as const;
export type VendorCreditStatus = (typeof VendorCreditStatus)[number];

export const VendorCreditDiscount = ['no', 'line_item_level', 'transaction_level'] as const;
export type VendorCreditDiscount = (typeof VendorCreditDiscount)[number];

// ⏱️ Time Sheets
export const ActivityType = ['general', 'order', 'task'] as const;
export type ActivityType = (typeof ActivityType)[number];

// 📆 Shop Calendar Days
export const ShopCalendarDayType = ['full_day', 'half_day', 'week_off'] as const;
export type ShopCalendarDayType = (typeof ShopCalendarDayType)[number];

// 💵 Service Group Pricing / Services
export const ServiceGroupRateType = ['hourly', 'flat_rate'] as const;
export type ServiceGroupRateType = (typeof ServiceGroupRateType)[number];

// ⚙️ Configurations
export const SellRatesTaxInclusive = ['Tax Inclusive', 'Tax Exclusive'] as const;
export type SellRatesTaxInclusive = (typeof SellRatesTaxInclusive)[number];
// Tables

export const Tables= ['bills', 'payments', 'expenses', 'invoices', 'job_cards', 'credit_notes', 'vendor_credits', 'estimates','purchase-order', 'inventory_adjustments'] as const;
export type Tables = (typeof Tables)[number];

export const GiveDiscounts = ['no', 'line_item_level', 'transaction_level'] as const;
export type GiveDiscounts = (typeof GiveDiscounts)[number];

export const PurchaseRatesTaxInclusive = ['Tax Inclusive', 'Tax Exclusive'] as const;
export type PurchaseRatesTaxInclusive = (typeof PurchaseRatesTaxInclusive)[number];

export const ReceiveDiscounts = ['no', 'line_item_level', 'transaction_level'] as const;
export type ReceiveDiscounts = (typeof ReceiveDiscounts)[number];

