/*
 * This file was generated by qdbusxml2cpp version 0.8
 * Source file was remotekeyboardinterface.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 REMOTEKEYBOARDINTERFACE_H
#define REMOTEKEYBOARDINTERFACE_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.kdeconnect.device.remotekeyboard
 */
class OrgKdeKdeconnectDeviceRemotekeyboardInterface: public QDBusAbstractInterface
{
    Q_OBJECT
public:
    static inline const char *staticInterfaceName()
    { return "org.kde.kdeconnect.device.remotekeyboard"; }

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

    ~OrgKdeKdeconnectDeviceRemotekeyboardInterface();

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

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

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

    inline QDBusPendingReply<> sendKeyPress(const QString &key, int specialKey, bool shift)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(key) << QVariant::fromValue(specialKey) << QVariant::fromValue(shift);
        return asyncCallWithArgumentList(QStringLiteral("sendKeyPress"), argumentList);
    }

    inline QDBusPendingReply<> sendKeyPress(const QString &key, int specialKey, bool shift, bool ctrl)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(key) << QVariant::fromValue(specialKey) << QVariant::fromValue(shift) << QVariant::fromValue(ctrl);
        return asyncCallWithArgumentList(QStringLiteral("sendKeyPress"), argumentList);
    }

    inline QDBusPendingReply<> sendKeyPress(const QString &key, int specialKey, bool shift, bool ctrl, bool alt)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(key) << QVariant::fromValue(specialKey) << QVariant::fromValue(shift) << QVariant::fromValue(ctrl) << QVariant::fromValue(alt);
        return asyncCallWithArgumentList(QStringLiteral("sendKeyPress"), argumentList);
    }

    inline QDBusPendingReply<> sendKeyPress(const QString &key, int specialKey, bool shift, bool ctrl, bool alt, bool sendAck)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(key) << QVariant::fromValue(specialKey) << QVariant::fromValue(shift) << QVariant::fromValue(ctrl) << QVariant::fromValue(alt) << QVariant::fromValue(sendAck);
        return asyncCallWithArgumentList(QStringLiteral("sendKeyPress"), argumentList);
    }

    inline QDBusPendingReply<> sendQKeyEvent(const QVariantMap &keyEvent)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(keyEvent);
        return asyncCallWithArgumentList(QStringLiteral("sendQKeyEvent"), argumentList);
    }

    inline QDBusPendingReply<> sendQKeyEvent(const QVariantMap &keyEvent, bool sendAck)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(keyEvent) << QVariant::fromValue(sendAck);
        return asyncCallWithArgumentList(QStringLiteral("sendQKeyEvent"), argumentList);
    }

    inline QDBusPendingReply<int> translateQtKey(int qtKey)
    {
        QList<QVariant> argumentList;
        argumentList << QVariant::fromValue(qtKey);
        return asyncCallWithArgumentList(QStringLiteral("translateQtKey"), argumentList);
    }

Q_SIGNALS: // SIGNALS
    void keyPressReceived(const QString &key, int specialKey, bool shift, bool ctrl, bool alt);
    void remoteStateChanged(bool state);
};

#endif
// clazy:skip
