package dev.lions.unionflow.server.api.enums.notification;

/**
 * Énumération des types de notifications
 *
 * @author UnionFlow Team
 * @version 3.0
 * @since 2025-01-29
 */
public enum TypeNotification {
  EMAIL("Email"),
  SMS("SMS"),
  PUSH("Push Notification"),
  IN_APP("Notification In-App"),
  SYSTEME("Notification Système");

  private final String libelle;

  TypeNotification(String libelle) {
    this.libelle = libelle;
  }

  public String getLibelle() {
    return libelle;
  }

  /** Vérifie si ce type de notification est activé par défaut */
  public boolean isActiveeParDefaut() {
    // Par défaut, tous les types sont activés sauf SYSTEME
    return this != SYSTEME;
  }
}
