/****************************************************************************
** Meta object code from reading C++ file 'notification.hpp'
**
** Created by: The Qt Meta Object Compiler version 69 (Qt 6.11.2)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/

#include "../../../../../../src/services/notifications/notification.hpp"
#include <QtCore/qmetatype.h>
#include <QtCore/QList>
#include <QtCore/QProperty>

#include <QtCore/qtmochelpers.h>

#include <memory>


#include <QtCore/qxptype_traits.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'notification.hpp' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 69
#error "This file was generated using the moc from 6.11.2. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif

#ifndef Q_CONSTINIT
#define Q_CONSTINIT
#endif

QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
QT_WARNING_DISABLE_GCC("-Wuseless-cast")
namespace {
struct qt_meta_tag_ZN2qs7service13notifications19NotificationUrgencyE_t {};
} // unnamed namespace

template <> constexpr inline auto qs::service::notifications::NotificationUrgency::qt_create_metaobjectdata<qt_meta_tag_ZN2qs7service13notifications19NotificationUrgencyE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "qs::service::notifications::NotificationUrgency",
        "QML.Element",
        "auto",
        "QML.Singleton",
        "true",
        "toString",
        "",
        "qs::service::notifications::NotificationUrgency::Enum",
        "value",
        "Enum",
        "Low",
        "Normal",
        "Critical"
    };

    QtMocHelpers::UintData qt_methods {
        // Method 'toString'
        QtMocHelpers::MethodData<QString(qs::service::notifications::NotificationUrgency::Enum)>(5, 6, QMC::AccessPublic, QMetaType::QString, {{
            { 0x80000000 | 7, 8 },
        }}),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
        // enum 'Enum'
        QtMocHelpers::EnumData<enum Enum>(9, 9, QMC::EnumFlags{}).add({
            {   10, Enum::Low },
            {   11, Enum::Normal },
            {   12, Enum::Critical },
        }),
    };
    QtMocHelpers::UintData qt_constructors {};
    QtMocHelpers::ClassInfos qt_classinfo({
            {    1,    2 },
            {    3,    4 },
    });
    return QtMocHelpers::metaObjectData<NotificationUrgency, void>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums, qt_constructors, qt_classinfo);
}
Q_CONSTINIT const QMetaObject qs::service::notifications::NotificationUrgency::staticMetaObject = { {
    QMetaObject::SuperData::link<QObject::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications19NotificationUrgencyE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications19NotificationUrgencyE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN2qs7service13notifications19NotificationUrgencyE_t>.metaTypes,
    nullptr
} };

void qs::service::notifications::NotificationUrgency::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<NotificationUrgency *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: { QString _r = _t->toString((*reinterpret_cast<std::add_pointer_t<qs::service::notifications::NotificationUrgency::Enum>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QString*>(_a[0]) = std::move(_r); }  break;
        default: ;
        }
    }
}

const QMetaObject *qs::service::notifications::NotificationUrgency::metaObject() const
{
    return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}

void *qs::service::notifications::NotificationUrgency::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications19NotificationUrgencyE_t>.strings))
        return static_cast<void*>(this);
    return QObject::qt_metacast(_clname);
}

int qs::service::notifications::NotificationUrgency::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QObject::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 1)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 1;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 1)
            *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType();
        _id -= 1;
    }
    return _id;
}
namespace {
struct qt_meta_tag_ZN2qs7service13notifications23NotificationCloseReasonE_t {};
} // unnamed namespace

template <> constexpr inline auto qs::service::notifications::NotificationCloseReason::qt_create_metaobjectdata<qt_meta_tag_ZN2qs7service13notifications23NotificationCloseReasonE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "qs::service::notifications::NotificationCloseReason",
        "QML.Element",
        "auto",
        "QML.Singleton",
        "true",
        "toString",
        "",
        "qs::service::notifications::NotificationCloseReason::Enum",
        "value",
        "Enum",
        "Expired",
        "Dismissed",
        "CloseRequested"
    };

    QtMocHelpers::UintData qt_methods {
        // Method 'toString'
        QtMocHelpers::MethodData<QString(qs::service::notifications::NotificationCloseReason::Enum)>(5, 6, QMC::AccessPublic, QMetaType::QString, {{
            { 0x80000000 | 7, 8 },
        }}),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
        // enum 'Enum'
        QtMocHelpers::EnumData<enum Enum>(9, 9, QMC::EnumFlags{}).add({
            {   10, Enum::Expired },
            {   11, Enum::Dismissed },
            {   12, Enum::CloseRequested },
        }),
    };
    QtMocHelpers::UintData qt_constructors {};
    QtMocHelpers::ClassInfos qt_classinfo({
            {    1,    2 },
            {    3,    4 },
    });
    return QtMocHelpers::metaObjectData<NotificationCloseReason, void>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums, qt_constructors, qt_classinfo);
}
Q_CONSTINIT const QMetaObject qs::service::notifications::NotificationCloseReason::staticMetaObject = { {
    QMetaObject::SuperData::link<QObject::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications23NotificationCloseReasonE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications23NotificationCloseReasonE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN2qs7service13notifications23NotificationCloseReasonE_t>.metaTypes,
    nullptr
} };

void qs::service::notifications::NotificationCloseReason::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<NotificationCloseReason *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: { QString _r = _t->toString((*reinterpret_cast<std::add_pointer_t<qs::service::notifications::NotificationCloseReason::Enum>>(_a[1])));
            if (_a[0]) *reinterpret_cast<QString*>(_a[0]) = std::move(_r); }  break;
        default: ;
        }
    }
}

const QMetaObject *qs::service::notifications::NotificationCloseReason::metaObject() const
{
    return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}

void *qs::service::notifications::NotificationCloseReason::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications23NotificationCloseReasonE_t>.strings))
        return static_cast<void*>(this);
    return QObject::qt_metacast(_clname);
}

int qs::service::notifications::NotificationCloseReason::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QObject::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 1)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 1;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 1)
            *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType();
        _id -= 1;
    }
    return _id;
}
namespace {
struct qt_meta_tag_ZN2qs7service13notifications12NotificationE_t {};
} // unnamed namespace

template <> constexpr inline auto qs::service::notifications::Notification::qt_create_metaobjectdata<qt_meta_tag_ZN2qs7service13notifications12NotificationE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "qs::service::notifications::Notification",
        "QML.Element",
        "auto",
        "QML.Creatable",
        "false",
        "QML.UncreatableReason",
        "Notifications must be acquired from a NotificationServer",
        "closed",
        "",
        "qs::service::notifications::NotificationCloseReason::Enum",
        "reason",
        "trackedChanged",
        "expireTimeoutChanged",
        "appNameChanged",
        "appIconChanged",
        "summaryChanged",
        "bodyChanged",
        "urgencyChanged",
        "actionsChanged",
        "hasActionIconsChanged",
        "residentChanged",
        "transientChanged",
        "desktopEntryChanged",
        "imageChanged",
        "hasInlineReplyChanged",
        "inlineReplyPlaceholderChanged",
        "hintsChanged",
        "expire",
        "dismiss",
        "sendInlineReply",
        "replyText",
        "id",
        "tracked",
        "lastGeneration",
        "expireTimeout",
        "appName",
        "appIcon",
        "summary",
        "body",
        "urgency",
        "qs::service::notifications::NotificationUrgency::Enum",
        "actions",
        "QList<qs::service::notifications::NotificationAction*>",
        "hasActionIcons",
        "resident",
        "transient",
        "desktopEntry",
        "image",
        "hasInlineReply",
        "inlineReplyPlaceholder",
        "hints",
        "QVariantMap"
    };

    QtMocHelpers::UintData qt_methods {
        // Signal 'closed'
        QtMocHelpers::SignalData<void(qs::service::notifications::NotificationCloseReason::Enum)>(7, 8, QMC::AccessPublic, QMetaType::Void, {{
            { 0x80000000 | 9, 10 },
        }}),
        // Signal 'trackedChanged'
        QtMocHelpers::SignalData<void()>(11, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'expireTimeoutChanged'
        QtMocHelpers::SignalData<void()>(12, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'appNameChanged'
        QtMocHelpers::SignalData<void()>(13, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'appIconChanged'
        QtMocHelpers::SignalData<void()>(14, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'summaryChanged'
        QtMocHelpers::SignalData<void()>(15, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'bodyChanged'
        QtMocHelpers::SignalData<void()>(16, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'urgencyChanged'
        QtMocHelpers::SignalData<void()>(17, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'actionsChanged'
        QtMocHelpers::SignalData<void()>(18, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'hasActionIconsChanged'
        QtMocHelpers::SignalData<void()>(19, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'residentChanged'
        QtMocHelpers::SignalData<void()>(20, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'transientChanged'
        QtMocHelpers::SignalData<void()>(21, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'desktopEntryChanged'
        QtMocHelpers::SignalData<void()>(22, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'imageChanged'
        QtMocHelpers::SignalData<void()>(23, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'hasInlineReplyChanged'
        QtMocHelpers::SignalData<void()>(24, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'inlineReplyPlaceholderChanged'
        QtMocHelpers::SignalData<void()>(25, 8, QMC::AccessPublic, QMetaType::Void),
        // Signal 'hintsChanged'
        QtMocHelpers::SignalData<void()>(26, 8, QMC::AccessPublic, QMetaType::Void),
        // Method 'expire'
        QtMocHelpers::MethodData<void()>(27, 8, QMC::AccessPublic, QMetaType::Void),
        // Method 'dismiss'
        QtMocHelpers::MethodData<void()>(28, 8, QMC::AccessPublic, QMetaType::Void),
        // Method 'sendInlineReply'
        QtMocHelpers::MethodData<void(const QString &)>(29, 8, QMC::AccessPublic, QMetaType::Void, {{
            { QMetaType::QString, 30 },
        }}),
    };
    QtMocHelpers::UintData qt_properties {
        // property 'id'
        QtMocHelpers::PropertyData<quint32>(31, QMetaType::UInt, QMC::DefaultPropertyFlags | QMC::Constant),
        // property 'tracked'
        QtMocHelpers::PropertyData<bool>(32, QMetaType::Bool, QMC::DefaultPropertyFlags | QMC::Writable | QMC::StdCppSet, 1),
        // property 'lastGeneration'
        QtMocHelpers::PropertyData<bool>(33, QMetaType::Bool, QMC::DefaultPropertyFlags | QMC::Constant),
        // property 'expireTimeout'
        QtMocHelpers::PropertyData<qreal>(34, QMetaType::QReal, QMC::DefaultPropertyFlags | QMC::Bindable, 2),
        // property 'appName'
        QtMocHelpers::PropertyData<QString>(35, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Bindable, 3),
        // property 'appIcon'
        QtMocHelpers::PropertyData<QString>(36, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Bindable, 4),
        // property 'summary'
        QtMocHelpers::PropertyData<QString>(37, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Bindable, 5),
        // property 'body'
        QtMocHelpers::PropertyData<QString>(38, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Bindable, 6),
        // property 'urgency'
        QtMocHelpers::PropertyData<qs::service::notifications::NotificationUrgency::Enum>(39, 0x80000000 | 40, QMC::DefaultPropertyFlags | QMC::EnumOrFlag | QMC::Bindable, 7),
        // property 'actions'
        QtMocHelpers::PropertyData<QList<qs::service::notifications::NotificationAction*>>(41, 0x80000000 | 42, QMC::DefaultPropertyFlags | QMC::EnumOrFlag, 8),
        // property 'hasActionIcons'
        QtMocHelpers::PropertyData<bool>(43, QMetaType::Bool, QMC::DefaultPropertyFlags | QMC::Bindable, 9),
        // property 'resident'
        QtMocHelpers::PropertyData<bool>(44, QMetaType::Bool, QMC::DefaultPropertyFlags | QMC::Bindable, 10),
        // property 'transient'
        QtMocHelpers::PropertyData<bool>(45, QMetaType::Bool, QMC::DefaultPropertyFlags | QMC::Bindable, 11),
        // property 'desktopEntry'
        QtMocHelpers::PropertyData<QString>(46, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Bindable, 12),
        // property 'image'
        QtMocHelpers::PropertyData<QString>(47, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Bindable, 13),
        // property 'hasInlineReply'
        QtMocHelpers::PropertyData<bool>(48, QMetaType::Bool, QMC::DefaultPropertyFlags | QMC::Bindable, 14),
        // property 'inlineReplyPlaceholder'
        QtMocHelpers::PropertyData<QString>(49, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Bindable, 15),
        // property 'hints'
        QtMocHelpers::PropertyData<QVariantMap>(50, 0x80000000 | 51, QMC::DefaultPropertyFlags | QMC::EnumOrFlag | QMC::Bindable, 16),
    };
    QtMocHelpers::UintData qt_enums {
    };
    QtMocHelpers::UintData qt_constructors {};
    QtMocHelpers::ClassInfos qt_classinfo({
            {    1,    2 },
            {    3,    4 },
            {    5,    6 },
    });
    return QtMocHelpers::metaObjectData<Notification, void>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums, qt_constructors, qt_classinfo);
}
Q_CONSTINIT static const QMetaObject::SuperData qt_meta_extradata_ZN2qs7service13notifications12NotificationE[] = {
    QMetaObject::SuperData::link<qs::service::notifications::NotificationUrgency::staticMetaObject>(),
    nullptr
};

Q_CONSTINIT const QMetaObject qs::service::notifications::Notification::staticMetaObject = { {
    QMetaObject::SuperData::link<QObject::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications12NotificationE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications12NotificationE_t>.data,
    qt_static_metacall,
    qt_meta_extradata_ZN2qs7service13notifications12NotificationE,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN2qs7service13notifications12NotificationE_t>.metaTypes,
    nullptr
} };

void qs::service::notifications::Notification::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<Notification *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: _t->closed((*reinterpret_cast<std::add_pointer_t<qs::service::notifications::NotificationCloseReason::Enum>>(_a[1]))); break;
        case 1: _t->trackedChanged(); break;
        case 2: _t->expireTimeoutChanged(); break;
        case 3: _t->appNameChanged(); break;
        case 4: _t->appIconChanged(); break;
        case 5: _t->summaryChanged(); break;
        case 6: _t->bodyChanged(); break;
        case 7: _t->urgencyChanged(); break;
        case 8: _t->actionsChanged(); break;
        case 9: _t->hasActionIconsChanged(); break;
        case 10: _t->residentChanged(); break;
        case 11: _t->transientChanged(); break;
        case 12: _t->desktopEntryChanged(); break;
        case 13: _t->imageChanged(); break;
        case 14: _t->hasInlineReplyChanged(); break;
        case 15: _t->inlineReplyPlaceholderChanged(); break;
        case 16: _t->hintsChanged(); break;
        case 17: _t->expire(); break;
        case 18: _t->dismiss(); break;
        case 19: _t->sendInlineReply((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1]))); break;
        default: ;
        }
    }
    if (_c == QMetaObject::IndexOfMethod) {
        if (QtMocHelpers::indexOfMethod<void (Notification::*)(qs::service::notifications::NotificationCloseReason::Enum )>(_a, &Notification::closed, 0))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::trackedChanged, 1))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::expireTimeoutChanged, 2))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::appNameChanged, 3))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::appIconChanged, 4))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::summaryChanged, 5))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::bodyChanged, 6))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::urgencyChanged, 7))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::actionsChanged, 8))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::hasActionIconsChanged, 9))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::residentChanged, 10))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::transientChanged, 11))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::desktopEntryChanged, 12))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::imageChanged, 13))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::hasInlineReplyChanged, 14))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::inlineReplyPlaceholderChanged, 15))
            return;
        if (QtMocHelpers::indexOfMethod<void (Notification::*)()>(_a, &Notification::hintsChanged, 16))
            return;
    }
    if (_c == QMetaObject::RegisterPropertyMetaType) {
        switch (_id) {
        default: *reinterpret_cast<int*>(_a[0]) = -1; break;
        case 9:
            *reinterpret_cast<int*>(_a[0]) = qRegisterMetaType< QList<qs::service::notifications::NotificationAction*> >(); break;
        }
    }
    if (_c == QMetaObject::ReadProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: *reinterpret_cast<quint32*>(_v) = _t->id(); break;
        case 1: *reinterpret_cast<bool*>(_v) = _t->isTracked(); break;
        case 2: *reinterpret_cast<bool*>(_v) = _t->isLastGeneration(); break;
        case 3: *reinterpret_cast<qreal*>(_v) = _t->bindableExpireTimeout().value(); break;
        case 4: *reinterpret_cast<QString*>(_v) = _t->bindableAppName().value(); break;
        case 5: *reinterpret_cast<QString*>(_v) = _t->bindableAppIcon().value(); break;
        case 6: *reinterpret_cast<QString*>(_v) = _t->bindableSummary().value(); break;
        case 7: *reinterpret_cast<QString*>(_v) = _t->bindableBody().value(); break;
        case 8: *reinterpret_cast<qs::service::notifications::NotificationUrgency::Enum*>(_v) = _t->bindableUrgency().value(); break;
        case 9: *reinterpret_cast<QList<qs::service::notifications::NotificationAction*>*>(_v) = _t->actions(); break;
        case 10: *reinterpret_cast<bool*>(_v) = _t->bindableHasActionIcons().value(); break;
        case 11: *reinterpret_cast<bool*>(_v) = _t->bindableResident().value(); break;
        case 12: *reinterpret_cast<bool*>(_v) = _t->bindableTransient().value(); break;
        case 13: *reinterpret_cast<QString*>(_v) = _t->bindableDesktopEntry().value(); break;
        case 14: *reinterpret_cast<QString*>(_v) = _t->bindableImage().value(); break;
        case 15: *reinterpret_cast<bool*>(_v) = _t->bindableHasInlineReply().value(); break;
        case 16: *reinterpret_cast<QString*>(_v) = _t->bindableInlineReplyPlaceholder().value(); break;
        case 17: *reinterpret_cast<QVariantMap*>(_v) = _t->bindableHints().value(); break;
        default: break;
        }
    }
    if (_c == QMetaObject::WriteProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 1: _t->setTracked(*reinterpret_cast<bool*>(_v)); break;
        default: break;
        }
    }
    if (_c == QMetaObject::BindableProperty) {
        switch (_id) {
        case 3: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableExpireTimeout(); break;
        case 4: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableAppName(); break;
        case 5: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableAppIcon(); break;
        case 6: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableSummary(); break;
        case 7: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableBody(); break;
        case 8: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableUrgency(); break;
        case 10: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableHasActionIcons(); break;
        case 11: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableResident(); break;
        case 12: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableTransient(); break;
        case 13: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableDesktopEntry(); break;
        case 14: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableImage(); break;
        case 15: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableHasInlineReply(); break;
        case 16: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableInlineReplyPlaceholder(); break;
        case 17: *static_cast<QUntypedBindable *>(_a[0]) = _t->bindableHints(); break;
        default: break;
        }
    }
}

const QMetaObject *qs::service::notifications::Notification::metaObject() const
{
    return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}

void *qs::service::notifications::Notification::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications12NotificationE_t>.strings))
        return static_cast<void*>(this);
    if (!strcmp(_clname, "Retainable"))
        return static_cast< Retainable*>(this);
    return QObject::qt_metacast(_clname);
}

int qs::service::notifications::Notification::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QObject::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 20)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 20;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 20)
            *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType();
        _id -= 20;
    }
    if (_c == QMetaObject::ReadProperty || _c == QMetaObject::WriteProperty
            || _c == QMetaObject::ResetProperty || _c == QMetaObject::BindableProperty
            || _c == QMetaObject::RegisterPropertyMetaType) {
        qt_static_metacall(this, _c, _id, _a);
        _id -= 18;
    }
    return _id;
}

// SIGNAL 0
void qs::service::notifications::Notification::closed(qs::service::notifications::NotificationCloseReason::Enum _t1)
{
    QMetaObject::activate<void>(this, &staticMetaObject, 0, nullptr, _t1);
}

// SIGNAL 1
void qs::service::notifications::Notification::trackedChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 1, nullptr);
}

// SIGNAL 2
void qs::service::notifications::Notification::expireTimeoutChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 2, nullptr);
}

// SIGNAL 3
void qs::service::notifications::Notification::appNameChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 3, nullptr);
}

// SIGNAL 4
void qs::service::notifications::Notification::appIconChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 4, nullptr);
}

// SIGNAL 5
void qs::service::notifications::Notification::summaryChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 5, nullptr);
}

// SIGNAL 6
void qs::service::notifications::Notification::bodyChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 6, nullptr);
}

// SIGNAL 7
void qs::service::notifications::Notification::urgencyChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 7, nullptr);
}

// SIGNAL 8
void qs::service::notifications::Notification::actionsChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 8, nullptr);
}

// SIGNAL 9
void qs::service::notifications::Notification::hasActionIconsChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 9, nullptr);
}

// SIGNAL 10
void qs::service::notifications::Notification::residentChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 10, nullptr);
}

// SIGNAL 11
void qs::service::notifications::Notification::transientChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 11, nullptr);
}

// SIGNAL 12
void qs::service::notifications::Notification::desktopEntryChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 12, nullptr);
}

// SIGNAL 13
void qs::service::notifications::Notification::imageChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 13, nullptr);
}

// SIGNAL 14
void qs::service::notifications::Notification::hasInlineReplyChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 14, nullptr);
}

// SIGNAL 15
void qs::service::notifications::Notification::inlineReplyPlaceholderChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 15, nullptr);
}

// SIGNAL 16
void qs::service::notifications::Notification::hintsChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 16, nullptr);
}
namespace {
struct qt_meta_tag_ZN2qs7service13notifications18NotificationActionE_t {};
} // unnamed namespace

template <> constexpr inline auto qs::service::notifications::NotificationAction::qt_create_metaobjectdata<qt_meta_tag_ZN2qs7service13notifications18NotificationActionE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "qs::service::notifications::NotificationAction",
        "QML.Element",
        "auto",
        "QML.Creatable",
        "false",
        "QML.UncreatableReason",
        "NotificationActions must be acquired from a Notification",
        "textChanged",
        "",
        "invoke",
        "identifier",
        "text"
    };

    QtMocHelpers::UintData qt_methods {
        // Signal 'textChanged'
        QtMocHelpers::SignalData<void()>(7, 8, QMC::AccessPublic, QMetaType::Void),
        // Method 'invoke'
        QtMocHelpers::MethodData<void()>(9, 8, QMC::AccessPublic, QMetaType::Void),
    };
    QtMocHelpers::UintData qt_properties {
        // property 'identifier'
        QtMocHelpers::PropertyData<QString>(10, QMetaType::QString, QMC::DefaultPropertyFlags | QMC::Constant),
        // property 'text'
        QtMocHelpers::PropertyData<QString>(11, QMetaType::QString, QMC::DefaultPropertyFlags, 0),
    };
    QtMocHelpers::UintData qt_enums {
    };
    QtMocHelpers::UintData qt_constructors {};
    QtMocHelpers::ClassInfos qt_classinfo({
            {    1,    2 },
            {    3,    4 },
            {    5,    6 },
    });
    return QtMocHelpers::metaObjectData<NotificationAction, void>(QMC::MetaObjectFlag{}, qt_stringData,
            qt_methods, qt_properties, qt_enums, qt_constructors, qt_classinfo);
}
Q_CONSTINIT const QMetaObject qs::service::notifications::NotificationAction::staticMetaObject = { {
    QMetaObject::SuperData::link<QObject::staticMetaObject>(),
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications18NotificationActionE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications18NotificationActionE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN2qs7service13notifications18NotificationActionE_t>.metaTypes,
    nullptr
} };

void qs::service::notifications::NotificationAction::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = static_cast<NotificationAction *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: _t->textChanged(); break;
        case 1: _t->invoke(); break;
        default: ;
        }
    }
    if (_c == QMetaObject::IndexOfMethod) {
        if (QtMocHelpers::indexOfMethod<void (NotificationAction::*)()>(_a, &NotificationAction::textChanged, 0))
            return;
    }
    if (_c == QMetaObject::ReadProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: *reinterpret_cast<QString*>(_v) = _t->identifier(); break;
        case 1: *reinterpret_cast<QString*>(_v) = _t->text(); break;
        default: break;
        }
    }
}

const QMetaObject *qs::service::notifications::NotificationAction::metaObject() const
{
    return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}

void *qs::service::notifications::NotificationAction::qt_metacast(const char *_clname)
{
    if (!_clname) return nullptr;
    if (!strcmp(_clname, qt_staticMetaObjectStaticContent<qt_meta_tag_ZN2qs7service13notifications18NotificationActionE_t>.strings))
        return static_cast<void*>(this);
    return QObject::qt_metacast(_clname);
}

int qs::service::notifications::NotificationAction::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QObject::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        if (_id < 2)
            qt_static_metacall(this, _c, _id, _a);
        _id -= 2;
    }
    if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
        if (_id < 2)
            *reinterpret_cast<QMetaType *>(_a[0]) = QMetaType();
        _id -= 2;
    }
    if (_c == QMetaObject::ReadProperty || _c == QMetaObject::WriteProperty
            || _c == QMetaObject::ResetProperty || _c == QMetaObject::BindableProperty
            || _c == QMetaObject::RegisterPropertyMetaType) {
        qt_static_metacall(this, _c, _id, _a);
        _id -= 2;
    }
    return _id;
}

// SIGNAL 0
void qs::service::notifications::NotificationAction::textChanged()
{
    QMetaObject::activate(this, &staticMetaObject, 0, nullptr);
}
QT_WARNING_POP
