#ifndef TEST_NOTIFICATION_HELPER_H
#define TEST_NOTIFICATION_HELPER_H

#include <QObject>
#include <QString>

namespace Notify {

class Message
{
public:
    Message() = default;
    Message(QString id, QString appName, bool defaultActionResult);

    QString getID() const;
    QString getAppName() const;
    bool executeDefaultAction() const;

private:
    QString m_id;
    QString m_appName;
    bool m_defaultActionResult {true};
};

class NotificationHelper : public QObject
{
    Q_OBJECT
public:
    static NotificationHelper *instance();
    void emitNewMessage(Message &message);

Q_SIGNALS:
    void newMessage(Message &message);

private:
    explicit NotificationHelper(QObject *parent = nullptr);
};

} // namespace Notify

#endif
