/*
 * This file was generated by qdbusxml2cpp version 0.8
 * Source file was org.freedesktop.PackageKit.xml
 *
 * qdbusxml2cpp is Copyright (C) The Qt Company Ltd. and other contributors.
 *
 * This is an auto-generated file.
 * Do not edit! All changes made to it will be lost.
 */

#ifndef DAEMONPROXY_H
#define DAEMONPROXY_H

#include <QtCore/QObject>
#include <QtCore/QByteArray>
#include <QtCore/QList>
#include <QtCore/QMap>
#include <QtCore/QString>
#include <QtCore/QStringList>
#include <QtCore/QVariant>
#include <QtDBus/QtDBus>

/*
 * Proxy class for interface org.freedesktop.PackageKit
 */
class OrgFreedesktopPackageKitInterface: public QDBusAbstractInterface
{
    Q_OBJECT
public:
    static inline const char *staticInterfaceName()
    { return "org.freedesktop.PackageKit"; }

public:
    OrgFreedesktopPackageKitInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr);

    ~OrgFreedesktopPackageKitInterface();

    Q_PROPERTY(QString BackendAuthor READ backendAuthor)
    inline QString backendAuthor() const
    { return qvariant_cast< QString >(property("BackendAuthor")); }

    Q_PROPERTY(QString BackendDescription READ backendDescription)
    inline QString backendDescription() const
    { return qvariant_cast< QString >(property("BackendDescription")); }

    Q_PROPERTY(QString BackendName READ backendName)
    inline QString backendName() const
    { return qvariant_cast< QString >(property("BackendName")); }

    Q_PROPERTY(QString DistroId READ distroId)
    inline QString distroId() const
    { return qvariant_cast< QString >(property("DistroId")); }

    Q_PROPERTY(qulonglong Filters READ filters)
    inline qulonglong filters() const
    { return qvariant_cast< qulonglong >(property("Filters")); }

    Q_PROPERTY(qulonglong Groups READ groups)
    inline qulonglong groups() const
    { return qvariant_cast< qulonglong >(property("Groups")); }

    Q_PROPERTY(bool Locked READ locked)
    inline bool locked() const
    { return qvariant_cast< bool >(property("Locked")); }

    Q_PROPERTY(QStringList MimeTypes READ mimeTypes)
    inline QStringList mimeTypes() const
    { return qvariant_cast< QStringList >(property("MimeTypes")); }

    Q_PROPERTY(uint NetworkState READ networkState)
    inline uint networkState() const
    { return qvariant_cast< uint >(property("NetworkState")); }

    Q_PROPERTY(qulonglong Roles READ roles)
    inline qulonglong roles() const
    { return qvariant_cast< qulonglong >(property("Roles")); }

    Q_PROPERTY(uint VersionMajor READ versionMajor)
    inline uint versionMajor() const
    { return qvariant_cast< uint >(property("VersionMajor")); }

    Q_PROPERTY(uint VersionMicro READ versionMicro)
    inline uint versionMicro() const
    { return qvariant_cast< uint >(property("VersionMicro")); }

    Q_PROPERTY(uint VersionMinor READ versionMinor)
    inline uint versionMinor() const
    { return qvariant_cast< uint >(property("VersionMinor")); }

public Q_SLOTS: // METHODS
    inline QDBusPendingReply<uint> CanAuthorize(const QString &action_id)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(action_id);
        return asyncCallWithArgumentList(QStringLiteral("CanAuthorize"), argumentList);
    }

    inline QDBusPendingReply<QDBusObjectPath> CreateTransaction()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("CreateTransaction"), argumentList);
    }

    inline QDBusPendingReply<QString> GetDaemonState()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("GetDaemonState"), argumentList);
    }

    inline QDBusPendingReply<QVariant> GetPackageHistory(const QStringList &names, uint count)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(names) << QVariant::fromValue(count);
        return asyncCallWithArgumentList(QStringLiteral("GetPackageHistory"), argumentList);
    }

    inline QDBusPendingReply<uint> GetTimeSinceAction(uint role)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(role);
        return asyncCallWithArgumentList(QStringLiteral("GetTimeSinceAction"), argumentList);
    }

    inline QDBusPendingReply<QList<QDBusObjectPath> > GetTransactionList()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("GetTransactionList"), argumentList);
    }

    inline QDBusPendingReply<> SetProxy(const QString &proxy_http, const QString &proxy_https, const QString &proxy_ftp, const QString &proxy_socks, const QString &no_proxy, const QString &pac)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(proxy_http) << QVariant::fromValue(proxy_https) << QVariant::fromValue(proxy_ftp) << QVariant::fromValue(proxy_socks) << QVariant::fromValue(no_proxy) << QVariant::fromValue(pac);
        return asyncCallWithArgumentList(QStringLiteral("SetProxy"), argumentList);
    }

    inline QDBusPendingReply<> StateHasChanged(const QString &reason)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(reason);
        return asyncCallWithArgumentList(QStringLiteral("StateHasChanged"), argumentList);
    }

    inline QDBusPendingReply<> SuggestDaemonQuit()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("SuggestDaemonQuit"), argumentList);
    }

Q_SIGNALS: // SIGNALS
    void InstalledChanged();
    void RepoListChanged();
    void RestartSchedule();
    void TransactionListChanged(const QStringList &transactions);
    void UpdatesChanged();
};

/*
 * Proxy class for interface org.freedesktop.PackageKit.Offline
 */
class OrgFreedesktopPackageKitOfflineInterface: public QDBusAbstractInterface
{
    Q_OBJECT
public:
    static inline const char *staticInterfaceName()
    { return "org.freedesktop.PackageKit.Offline"; }

public:
    OrgFreedesktopPackageKitOfflineInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr);

    ~OrgFreedesktopPackageKitOfflineInterface();

    Q_PROPERTY(QVariantMap PreparedUpgrade READ preparedUpgrade)
    inline QVariantMap preparedUpgrade() const
    { return qvariant_cast< QVariantMap >(property("PreparedUpgrade")); }

    Q_PROPERTY(QString TriggerAction READ triggerAction)
    inline QString triggerAction() const
    { return qvariant_cast< QString >(property("TriggerAction")); }

    Q_PROPERTY(bool UpdatePrepared READ updatePrepared)
    inline bool updatePrepared() const
    { return qvariant_cast< bool >(property("UpdatePrepared")); }

    Q_PROPERTY(bool UpdateTriggered READ updateTriggered)
    inline bool updateTriggered() const
    { return qvariant_cast< bool >(property("UpdateTriggered")); }

    Q_PROPERTY(bool UpgradePrepared READ upgradePrepared)
    inline bool upgradePrepared() const
    { return qvariant_cast< bool >(property("UpgradePrepared")); }

    Q_PROPERTY(bool UpgradeTriggered READ upgradeTriggered)
    inline bool upgradeTriggered() const
    { return qvariant_cast< bool >(property("UpgradeTriggered")); }

public Q_SLOTS: // METHODS
    inline QDBusPendingReply<> Cancel()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("Cancel"), argumentList);
    }

    inline QDBusPendingReply<> ClearResults()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("ClearResults"), argumentList);
    }

    inline QDBusPendingReply<QStringList> GetPrepared()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("GetPrepared"), argumentList);
    }

    inline QDBusPendingReply<bool, QStringList, uint, qulonglong, uint, QString> GetResults()
    {
        QList<QVariant> argumentList;
        return asyncCallWithArgumentList(QStringLiteral("GetResults"), argumentList);
    }
    inline QDBusReply<bool> GetResults(QStringList &package_ids, uint &role, qulonglong &time_finished, uint &error_code, QString &error_description)
    {
        QList<QVariant> argumentList;
        QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("GetResults"), argumentList);
        if (reply.type() == QDBusMessage::ReplyMessage && reply.arguments().size() == 6) {
            package_ids = qdbus_cast<QStringList>(reply.arguments().at(1));
            role = qdbus_cast<uint>(reply.arguments().at(2));
            time_finished = qdbus_cast<qulonglong>(reply.arguments().at(3));
            error_code = qdbus_cast<uint>(reply.arguments().at(4));
            error_description = qdbus_cast<QString>(reply.arguments().at(5));
        }
        return reply;
    }

    inline QDBusPendingReply<> Trigger(const QString &action)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(action);
        return asyncCallWithArgumentList(QStringLiteral("Trigger"), argumentList);
    }

    inline QDBusPendingReply<> TriggerUpgrade(const QString &action)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(action);
        return asyncCallWithArgumentList(QStringLiteral("TriggerUpgrade"), argumentList);
    }

Q_SIGNALS: // SIGNALS
};

#endif
