import type { Composer } from 'vue-i18n'

import { Ban, CheckCircle2, Users } from 'lucide-vue-next'
import { h } from 'vue'

import type { FacetedFilterOption } from '@/components/data-table/types'

export function getCardStatuses(t: Composer['t']): (FacetedFilterOption & { style: string, variant?: string })[] {
  return [
    {
      label: t('admin.cards.unused'),
      value: 'unused',
      icon: h(CheckCircle2),
      style: 'bg-green-500/10 text-green-500',
      variant: 'default',
    },
    {
      label: t('admin.cards.used'),
      value: 'used',
      icon: h(Users),
      style: 'bg-blue-500/10 text-blue-500',
      variant: 'secondary',
    },
    {
      label: t('admin.cards.banned'),
      value: 'banned',
      icon: h(Ban),
      style: 'bg-gray-500/10 text-gray-500',
      variant: 'destructive',
    },
  ]
}
