import type { ReactNode } from 'react'
import type { IconComponent } from './Icons'

interface EmptyStateProps {
  Icon: IconComponent
  title: string
  description?: string
  action?: ReactNode
}

export function EmptyState({ Icon, title, description, action }: EmptyStateProps) {
  return (
    <div className="card text-center py-12">
      <div className="w-16 h-16 mx-auto mb-4 bg-border flex items-center justify-center">
        <Icon className="text-muted text-2xl" />
      </div>
      <h3 className="text-sm font-medium text-text mb-1">{title}</h3>
      {description && (
        <p className="text-xs text-muted mb-4">{description}</p>
      )}
      {action}
    </div>
  )
}
