/**
 * CFDI Status Enum
 * Estados posibles de un CFDI en su ciclo de vida
 */

export enum CfdiStatus {
  /** Borrador - CFDI creado pero no enviado a timbrar */
  DRAFT = 'draft',

  /** Pendiente - CFDI en cola para timbrado */
  PENDING = 'pending',

  /** Procesando - CFDI siendo procesado por el PAC */
  PROCESSING = 'processing',

  /** Timbrado - CFDI timbrado exitosamente */
  STAMPED = 'stamped',

  /** Error - Error en el proceso de timbrado */
  ERROR = 'error',

  /** Cancelado - CFDI cancelado ante el SAT */
  CANCELLED = 'cancelled',

  /** Cancelacion pendiente - Solicitud de cancelacion en proceso */
  CANCELLATION_PENDING = 'cancellation_pending',

  /** Cancelacion rechazada - El receptor rechazó la cancelación */
  CANCELLATION_REJECTED = 'cancellation_rejected',
}
