"""Helpdesk notification templates."""

from __future__ import annotations

from simorgh.apps.notifications.templates import NotificationTemplate, register_template

TICKET_CREATED_AGENT = register_template(
    NotificationTemplate(
        kind="helpdesk.ticket.created.agent",
        title_key="helpdesk.notifications.ticket_created_agent.title",
        body_key="helpdesk.notifications.ticket_created_agent.body",
        default_channels=("inbox",),
    )
)

TICKET_ASSIGNED = register_template(
    NotificationTemplate(
        kind="helpdesk.ticket.assigned",
        title_key="helpdesk.notifications.ticket_assigned.title",
        body_key="helpdesk.notifications.ticket_assigned.body",
        default_channels=("inbox",),
    )
)

TICKET_REPLY_AGENT = register_template(
    NotificationTemplate(
        kind="helpdesk.reply.added.agent",
        title_key="helpdesk.notifications.reply_added_agent.title",
        body_key="helpdesk.notifications.reply_added_agent.body",
        default_channels=("inbox",),
    )
)

TICKET_REPLY_REQUESTER = register_template(
    NotificationTemplate(
        kind="helpdesk.reply.added.requester",
        title_key="helpdesk.notifications.reply_added_requester.title",
        body_key="helpdesk.notifications.reply_added_requester.body",
        default_channels=("inbox", "email"),
    )
)

TICKET_SOLVED = register_template(
    NotificationTemplate(
        kind="helpdesk.ticket.solved",
        title_key="helpdesk.notifications.ticket_solved.title",
        body_key="helpdesk.notifications.ticket_solved.body",
        default_channels=("inbox",),
    )
)

TICKET_ESCALATED = register_template(
    NotificationTemplate(
        kind="helpdesk.ticket.escalated",
        title_key="helpdesk.notifications.ticket_escalated.title",
        body_key="helpdesk.notifications.ticket_escalated.body",
        default_channels=("inbox",),
    )
)

SLA_BREACHED = register_template(
    NotificationTemplate(
        kind="helpdesk.sla.breached",
        title_key="helpdesk.notifications.sla_breached.title",
        body_key="helpdesk.notifications.sla_breached.body",
        default_channels=("inbox",),
    )
)
