package dev.lions.events;

import java.util.Map;

/**
 * Événement déclenché lors de l'initialisation du service de configuration.
 * Cet événement permet de notifier les observateurs des changements de
 * configuration de l'application.
 */
public class ConfigurationEvent {

  private final String type;
  private final Map<String, Object> data;

  /**
   * Crée une nouvelle instance de ConfigurationEvent.
   *
   * @param type Type de l'événement de configuration
   * @param data Données associées à l'événement
   */
  public ConfigurationEvent(String type, Map<String, Object> data) {
    this.type = type;
    this.data = data;
  }

  /**
   * Récupère le type de l'événement de configuration.
   *
   * @return Type de l'événement
   */
  public String getType() {
    return type;
  }

  /**
   * Récupère les données associées à l'événement de configuration.
   *
   * @return Données de l'événement
   */
  public Map<String, Object> getData() {
    return data;
  }
}