import type { FilterDefinition } from '@/components/shared/filter-bar';

export const invoiceFilterDefinitions: FilterDefinition[] = [
  {
    key: 'search',
    label: 'Search',
    type: 'text',
    placeholder: 'Search by invoice # or client...',
  },
  {
    key: 'status',
    label: 'Status',
    type: 'multi-select',
    options: [
      { label: 'Draft', value: 'draft' },
      { label: 'Sent', value: 'sent' },
      { label: 'Paid', value: 'paid' },
      { label: 'Overdue', value: 'overdue' },
      { label: 'Cancelled', value: 'cancelled' },
    ],
  },
  {
    key: 'clientName',
    label: 'Client Name',
    type: 'text',
    placeholder: 'Filter by client name...',
  },
  {
    key: 'dateFrom',
    label: 'Due From',
    type: 'text',
    placeholder: 'YYYY-MM-DD',
  },
  {
    key: 'dateTo',
    label: 'Due To',
    type: 'text',
    placeholder: 'YYYY-MM-DD',
  },
  {
    key: 'includeArchived',
    label: 'Include Archived',
    type: 'boolean',
  },
];
