Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2
3declare(strict_types=1);
4/**
5 * SPDX-FileCopyrightText: 2026 LibreCode coop and contributors
6 * SPDX-License-Identifier: AGPL-3.0-or-later
7 */
8
9namespace OCA\Libresign\Service\Notification;
10
11use OCP\EventDispatcher\Event;
12use OCP\EventDispatcher\IEventListener;
13
14/**
15 * One independent notification integration, with its own supported events.
16 *
17 * To add a channel, implement this interface and register the service once in
18 * Application. Routing and the other channels do not need any changes.
19 *
20 * @template-extends IEventListener<Event>
21 */
22interface NotificationModule extends IEventListener {
23    /** @return list<class-string<Event>> */
24    public static function supportedEvents(): array;
25
26    /** The transport used by this module for HTTP and background delivery. */
27    public function transport(): NotificationChannel;
28}