

export const NotificationType = {
  ROUTE_START: "ROUTE_START",
  TRUCK_PROXIMITY: "TRUCK_PROXIMITY",
  TRUCK_ARRIVED: "TRUCK_ARRIVED",
  ROUTE_COMPLETED: "ROUTE_COMPLETED",
  DELAY: "DELAY",
  MECHANICAL_FAILURE: "MECHANICAL_FAILURE",
} as const;

export type NotificationType =
  (typeof NotificationType)[keyof typeof NotificationType];

export interface NotificationPayload {
  title: string;
  body: string;
}

export const notificationPayloads: Record<NotificationType, NotificationPayload> = {
  ROUTE_START: {
    title: "¡Ruta Iniciada!",
    body: "El camión recolector ha salido del Relleno Sanitario rumbo a tu sector. Asegúrate de tener listos tus residuos.",
  },
  TRUCK_PROXIMITY: {
    title: "Camión Cercano",
    body: "El camión está a menos de 15 minutos de tu domicilio. Es momento de sacar tus bolsas a la acera.",
  },
  TRUCK_ARRIVED: {
    title: "¡El camión ya está aquí!",
    body: "El camión recolector llegó a tu zona. Saca tus residuos a la acera ahora.",
  },
  ROUTE_COMPLETED: {
    title: "Servicio Finalizado",
    body: "El camión de tu sector ha concluido su jornada de recolección diaria.",
  },
  DELAY: {
    title: "Retraso en la ruta",
    body: "La ruta presenta retraso por tráfico. Te avisaremos cuando el camión esté cerca.",
  },
  MECHANICAL_FAILURE: {
    title: "Falla mecánica",
    body: "El camión de tu sector presenta una falla mecánica. La recolección puede retrasarse.",
  },
};


export const positionTriggers: Record<number, NotificationType> = {
  2: NotificationType.ROUTE_START,
  4: NotificationType.TRUCK_PROXIMITY,
  5: NotificationType.TRUCK_ARRIVED,
  8: NotificationType.ROUTE_COMPLETED,
};
