/*
 * This file was generated by qdbusxml2cpp version 0.8
 * Command line was: qdbusxml2cpp -m -p kmailinterface /usr/src/ports/kdepim-apps-libs/kdepim-apps-libs-17.12.3-1.i686/build/libkdepimdbusinterfaces/src/org.kde.kmail.kmail.xml
 *
 * qdbusxml2cpp is Copyright (C) 2017 The Qt Company Ltd.
 *
 * This is an auto-generated file.
 * Do not edit! All changes made to it will be lost.
 */

#ifndef KMAILINTERFACE_H
#define KMAILINTERFACE_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.kde.kmail.kmail
 */
class OrgKdeKmailKmailInterface: public QDBusAbstractInterface
{
    Q_OBJECT
public:
    static inline const char *staticInterfaceName()
    { return "org.kde.kmail.kmail"; }

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

    ~OrgKdeKmailKmailInterface();

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

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

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

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

    inline QDBusPendingReply<bool> handleCommandLine(bool noArgsOpensReader, const QStringList &args, const QString &workingDir)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(noArgsOpensReader) << QVariant::fromValue(args) << QVariant::fromValue(workingDir);
        return asyncCallWithArgumentList(QStringLiteral("handleCommandLine"), argumentList);
    }

    inline QDBusPendingReply<QDBusObjectPath> newMessage(const QString &to, const QString &cc, const QString &bcc, bool hidden, bool useFolderId, const QString &messageFile, const QString &attachURL)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(to) << QVariant::fromValue(cc) << QVariant::fromValue(bcc) << QVariant::fromValue(hidden) << QVariant::fromValue(useFolderId) << QVariant::fromValue(messageFile) << QVariant::fromValue(attachURL);
        return asyncCallWithArgumentList(QStringLiteral("newMessage"), argumentList);
    }

    inline QDBusPendingReply<QDBusObjectPath> openComposer(const QString &to, const QString &cc, const QString &bcc, const QString &subject, const QString &body, bool hidden)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(to) << QVariant::fromValue(cc) << QVariant::fromValue(bcc) << QVariant::fromValue(subject) << QVariant::fromValue(body) << QVariant::fromValue(hidden);
        return asyncCallWithArgumentList(QStringLiteral("openComposer"), argumentList);
    }

    inline QDBusPendingReply<int> openComposer(const QString &to, const QString &cc, const QString &bcc, const QString &subject, const QString &body, const QString &attachName, const QByteArray &attachCte, const QByteArray &attachData, const QByteArray &attachType, const QByteArray &attachSubType, const QByteArray &attachParamAttr, const QString &attachParamValue, const QByteArray &attachContDisp, const QByteArray &attachCharset, uint identity)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(to) << QVariant::fromValue(cc) << QVariant::fromValue(bcc) << QVariant::fromValue(subject) << QVariant::fromValue(body) << QVariant::fromValue(attachName) << QVariant::fromValue(attachCte) << QVariant::fromValue(attachData) << QVariant::fromValue(attachType) << QVariant::fromValue(attachSubType) << QVariant::fromValue(attachParamAttr) << QVariant::fromValue(attachParamValue) << QVariant::fromValue(attachContDisp) << QVariant::fromValue(attachCharset) << QVariant::fromValue(identity);
        return asyncCallWithArgumentList(QStringLiteral("openComposer"), argumentList);
    }

    inline QDBusPendingReply<int> openComposer(const QString &to, const QString &cc, const QString &bcc, const QString &subject, const QString &body, bool hidden, const QString &attachName, const QByteArray &attachCte, const QByteArray &attachData, const QByteArray &attachType, const QByteArray &attachSubType, const QByteArray &attachParamAttr, const QString &attachParamValue, const QByteArray &attachContDisp, const QByteArray &attachCharset, uint identity)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(to) << QVariant::fromValue(cc) << QVariant::fromValue(bcc) << QVariant::fromValue(subject) << QVariant::fromValue(body) << QVariant::fromValue(hidden) << QVariant::fromValue(attachName) << QVariant::fromValue(attachCte) << QVariant::fromValue(attachData) << QVariant::fromValue(attachType) << QVariant::fromValue(attachSubType) << QVariant::fromValue(attachParamAttr) << QVariant::fromValue(attachParamValue) << QVariant::fromValue(attachContDisp) << QVariant::fromValue(attachCharset) << QVariant::fromValue(identity);
        return asyncCallWithArgumentList(QStringLiteral("openComposer"), argumentList);
    }

    inline QDBusPendingReply<int> openComposer(const QString &to, const QString &cc, const QString &bcc, const QString &subject, const QString &body, bool hidden, const QString &messageFile, const QStringList &attachmentPaths, const QStringList &customHeaders)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(to) << QVariant::fromValue(cc) << QVariant::fromValue(bcc) << QVariant::fromValue(subject) << QVariant::fromValue(body) << QVariant::fromValue(hidden) << QVariant::fromValue(messageFile) << QVariant::fromValue(attachmentPaths) << QVariant::fromValue(customHeaders);
        return asyncCallWithArgumentList(QStringLiteral("openComposer"), argumentList);
    }

    inline QDBusPendingReply<int> openComposer(const QString &to, const QString &cc, const QString &bcc, const QString &subject, const QString &body, bool hidden, const QString &messageFile, const QStringList &attachmentPaths, const QStringList &customHeaders, const QString &replyTo)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(to) << QVariant::fromValue(cc) << QVariant::fromValue(bcc) << QVariant::fromValue(subject) << QVariant::fromValue(body) << QVariant::fromValue(hidden) << QVariant::fromValue(messageFile) << QVariant::fromValue(attachmentPaths) << QVariant::fromValue(customHeaders) << QVariant::fromValue(replyTo);
        return asyncCallWithArgumentList(QStringLiteral("openComposer"), argumentList);
    }

    inline QDBusPendingReply<int> openComposer(const QString &to, const QString &cc, const QString &bcc, const QString &subject, const QString &body, bool hidden, const QString &messageFile, const QStringList &attachmentPaths, const QStringList &customHeaders, const QString &replyTo, const QString &inReplyTo)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(to) << QVariant::fromValue(cc) << QVariant::fromValue(bcc) << QVariant::fromValue(subject) << QVariant::fromValue(body) << QVariant::fromValue(hidden) << QVariant::fromValue(messageFile) << QVariant::fromValue(attachmentPaths) << QVariant::fromValue(customHeaders) << QVariant::fromValue(replyTo) << QVariant::fromValue(inReplyTo);
        return asyncCallWithArgumentList(QStringLiteral("openComposer"), argumentList);
    }

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

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

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

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

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

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

    inline QDBusPendingReply<> setSystrayIconNotificationsEnabled(bool enabled)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(enabled);
        return asyncCallWithArgumentList(QStringLiteral("setSystrayIconNotificationsEnabled"), argumentList);
    }

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

    inline QDBusPendingReply<bool> showMail(qlonglong serialNumber)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(serialNumber);
        return asyncCallWithArgumentList(QStringLiteral("showMail"), argumentList);
    }

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

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

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

Q_SIGNALS: // SIGNALS
};

namespace org {
  namespace kde {
    namespace kmail {
      typedef ::OrgKdeKmailKmailInterface kmail;
    }
  }
}
#endif
