// 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_CHANNELBANNEDRIGHTS_OBJECT
#define LQTG_TYPE_CHANNELBANNEDRIGHTS_OBJECT

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

#include <QPointer>

class LIBQTELEGRAMSHARED_EXPORT ChannelBannedRightsObject : public TelegramTypeQObject
{
    Q_OBJECT
    Q_ENUMS(ChannelBannedRightsClassType)
    Q_PROPERTY(bool embedLinks READ embedLinks WRITE setEmbedLinks NOTIFY embedLinksChanged)
    Q_PROPERTY(qint32 flags READ flags WRITE setFlags NOTIFY flagsChanged)
    Q_PROPERTY(bool sendGames READ sendGames WRITE setSendGames NOTIFY sendGamesChanged)
    Q_PROPERTY(bool sendGifs READ sendGifs WRITE setSendGifs NOTIFY sendGifsChanged)
    Q_PROPERTY(bool sendInline READ sendInline WRITE setSendInline NOTIFY sendInlineChanged)
    Q_PROPERTY(bool sendMedia READ sendMedia WRITE setSendMedia NOTIFY sendMediaChanged)
    Q_PROPERTY(bool sendMessages READ sendMessages WRITE setSendMessages NOTIFY sendMessagesChanged)
    Q_PROPERTY(bool sendStickers READ sendStickers WRITE setSendStickers NOTIFY sendStickersChanged)
    Q_PROPERTY(qint32 untilDate READ untilDate WRITE setUntilDate NOTIFY untilDateChanged)
    Q_PROPERTY(bool viewMessages READ viewMessages WRITE setViewMessages NOTIFY viewMessagesChanged)
    Q_PROPERTY(ChannelBannedRights core READ core WRITE setCore NOTIFY coreChanged)
    Q_PROPERTY(quint32 classType READ classType WRITE setClassType NOTIFY classTypeChanged)

public:
    enum ChannelBannedRightsClassType {
        TypeChannelBannedRights
    };

    ChannelBannedRightsObject(const ChannelBannedRights &core, QObject *parent = 0);
    ChannelBannedRightsObject(QObject *parent = 0);
    virtual ~ChannelBannedRightsObject();

    void setEmbedLinks(bool embedLinks);
    bool embedLinks() const;

    void setFlags(qint32 flags);
    qint32 flags() const;

    void setSendGames(bool sendGames);
    bool sendGames() const;

    void setSendGifs(bool sendGifs);
    bool sendGifs() const;

    void setSendInline(bool sendInline);
    bool sendInline() const;

    void setSendMedia(bool sendMedia);
    bool sendMedia() const;

    void setSendMessages(bool sendMessages);
    bool sendMessages() const;

    void setSendStickers(bool sendStickers);
    bool sendStickers() const;

    void setUntilDate(qint32 untilDate);
    qint32 untilDate() const;

    void setViewMessages(bool viewMessages);
    bool viewMessages() const;

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

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

    ChannelBannedRightsObject &operator =(const ChannelBannedRights &b);
    bool operator ==(const ChannelBannedRights &b) const;

Q_SIGNALS:
    void coreChanged();
    void classTypeChanged();
    void embedLinksChanged();
    void flagsChanged();
    void sendGamesChanged();
    void sendGifsChanged();
    void sendInlineChanged();
    void sendMediaChanged();
    void sendMessagesChanged();
    void sendStickersChanged();
    void untilDateChanged();
    void viewMessagesChanged();

private Q_SLOTS:

private:
    ChannelBannedRights m_core;
};

#endif // LQTG_TYPE_CHANNELBANNEDRIGHTS_OBJECT
