// This file generated by libqtelegram-code-generator.
// You can download it from: https://github.com/Aseman-Land/libqtelegram-code-generator
// DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

#ifndef LQTG_TYPE_CDNCONFIG_OBJECT
#define LQTG_TYPE_CDNCONFIG_OBJECT

#include "telegramtypeqobject.h"
#include "telegram/types/cdnconfig.h"

#include <QPointer>

class LIBQTELEGRAMSHARED_EXPORT CdnConfigObject : public TelegramTypeQObject
{
    Q_OBJECT
    Q_ENUMS(CdnConfigClassType)
    Q_PROPERTY(QList<CdnPublicKey> publicKeys READ publicKeys WRITE setPublicKeys NOTIFY publicKeysChanged)
    Q_PROPERTY(CdnConfig core READ core WRITE setCore NOTIFY coreChanged)
    Q_PROPERTY(quint32 classType READ classType WRITE setClassType NOTIFY classTypeChanged)

public:
    enum CdnConfigClassType {
        TypeCdnConfig
    };

    CdnConfigObject(const CdnConfig &core, QObject *parent = 0);
    CdnConfigObject(QObject *parent = 0);
    virtual ~CdnConfigObject();

    void setPublicKeys(const QList<CdnPublicKey> &publicKeys);
    QList<CdnPublicKey> publicKeys() const;

    void setClassType(quint32 classType);
    quint32 classType() const;

    void setCore(const CdnConfig &core);
    CdnConfig core() const;

    CdnConfigObject &operator =(const CdnConfig &b);
    bool operator ==(const CdnConfig &b) const;

Q_SIGNALS:
    void coreChanged();
    void classTypeChanged();
    void publicKeysChanged();

private Q_SLOTS:

private:
    CdnConfig m_core;
};

#endif // LQTG_TYPE_CDNCONFIG_OBJECT
