<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: WAProto.proto

namespace PhpWA\Protocol\Proto\DeviceProps;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\GPBUtil;
use Google\Protobuf\RepeatedField;

/**
 * Generated from protobuf message <code>proto.DeviceProps.HistorySyncConfig</code>
 */
class HistorySyncConfig extends \Google\Protobuf\Internal\Message
{
    /**
     * Generated from protobuf field <code>optional uint32 fullSyncDaysLimit = 1;</code>
     */
    protected $fullSyncDaysLimit = null;
    /**
     * Generated from protobuf field <code>optional uint32 fullSyncSizeMbLimit = 2;</code>
     */
    protected $fullSyncSizeMbLimit = null;
    /**
     * Generated from protobuf field <code>optional uint32 storageQuotaMb = 3;</code>
     */
    protected $storageQuotaMb = null;
    /**
     * Generated from protobuf field <code>optional bool inlineInitialPayloadInE2EeMsg = 4;</code>
     */
    protected $inlineInitialPayloadInE2EeMsg = null;
    /**
     * Generated from protobuf field <code>optional uint32 recentSyncDaysLimit = 5;</code>
     */
    protected $recentSyncDaysLimit = null;
    /**
     * Generated from protobuf field <code>optional bool supportCallLogHistory = 6;</code>
     */
    protected $supportCallLogHistory = null;
    /**
     * Generated from protobuf field <code>optional bool supportBotUserAgentChatHistory = 7;</code>
     */
    protected $supportBotUserAgentChatHistory = null;
    /**
     * Generated from protobuf field <code>optional bool supportCagReactionsAndPolls = 8;</code>
     */
    protected $supportCagReactionsAndPolls = null;
    /**
     * Generated from protobuf field <code>optional bool supportBizHostedMsg = 9;</code>
     */
    protected $supportBizHostedMsg = null;
    /**
     * Generated from protobuf field <code>optional bool supportRecentSyncChunkMessageCountTuning = 10;</code>
     */
    protected $supportRecentSyncChunkMessageCountTuning = null;
    /**
     * Generated from protobuf field <code>optional bool supportHostedGroupMsg = 11;</code>
     */
    protected $supportHostedGroupMsg = null;
    /**
     * Generated from protobuf field <code>optional bool supportFbidBotChatHistory = 12;</code>
     */
    protected $supportFbidBotChatHistory = null;
    /**
     * Generated from protobuf field <code>optional bool supportAddOnHistorySyncMigration = 13;</code>
     */
    protected $supportAddOnHistorySyncMigration = null;
    /**
     * Generated from protobuf field <code>optional bool supportMessageAssociation = 14;</code>
     */
    protected $supportMessageAssociation = null;
    /**
     * Generated from protobuf field <code>optional bool supportGroupHistory = 15;</code>
     */
    protected $supportGroupHistory = null;
    /**
     * Generated from protobuf field <code>optional bool onDemandReady = 16;</code>
     */
    protected $onDemandReady = null;
    /**
     * Generated from protobuf field <code>optional bool supportGuestChat = 17;</code>
     */
    protected $supportGuestChat = null;
    /**
     * Generated from protobuf field <code>optional bool completeOnDemandReady = 18;</code>
     */
    protected $completeOnDemandReady = null;
    /**
     * Generated from protobuf field <code>optional uint32 thumbnailSyncDaysLimit = 19;</code>
     */
    protected $thumbnailSyncDaysLimit = null;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type int $fullSyncDaysLimit
     *     @type int $fullSyncSizeMbLimit
     *     @type int $storageQuotaMb
     *     @type bool $inlineInitialPayloadInE2EeMsg
     *     @type int $recentSyncDaysLimit
     *     @type bool $supportCallLogHistory
     *     @type bool $supportBotUserAgentChatHistory
     *     @type bool $supportCagReactionsAndPolls
     *     @type bool $supportBizHostedMsg
     *     @type bool $supportRecentSyncChunkMessageCountTuning
     *     @type bool $supportHostedGroupMsg
     *     @type bool $supportFbidBotChatHistory
     *     @type bool $supportAddOnHistorySyncMigration
     *     @type bool $supportMessageAssociation
     *     @type bool $supportGroupHistory
     *     @type bool $onDemandReady
     *     @type bool $supportGuestChat
     *     @type bool $completeOnDemandReady
     *     @type int $thumbnailSyncDaysLimit
     * }
     */
    public function __construct($data = NULL) {
        \PhpWA\Protocol\Proto\Metadata\WAProto::initOnce();
        parent::__construct($data);
    }

    /**
     * Generated from protobuf field <code>optional uint32 fullSyncDaysLimit = 1;</code>
     * @return int
     */
    public function getFullSyncDaysLimit()
    {
        return isset($this->fullSyncDaysLimit) ? $this->fullSyncDaysLimit : 0;
    }

    public function hasFullSyncDaysLimit()
    {
        return isset($this->fullSyncDaysLimit);
    }

    public function clearFullSyncDaysLimit()
    {
        unset($this->fullSyncDaysLimit);
    }

    /**
     * Generated from protobuf field <code>optional uint32 fullSyncDaysLimit = 1;</code>
     * @param int $var
     * @return $this
     */
    public function setFullSyncDaysLimit($var)
    {
        GPBUtil::checkUint32($var);
        $this->fullSyncDaysLimit = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional uint32 fullSyncSizeMbLimit = 2;</code>
     * @return int
     */
    public function getFullSyncSizeMbLimit()
    {
        return isset($this->fullSyncSizeMbLimit) ? $this->fullSyncSizeMbLimit : 0;
    }

    public function hasFullSyncSizeMbLimit()
    {
        return isset($this->fullSyncSizeMbLimit);
    }

    public function clearFullSyncSizeMbLimit()
    {
        unset($this->fullSyncSizeMbLimit);
    }

    /**
     * Generated from protobuf field <code>optional uint32 fullSyncSizeMbLimit = 2;</code>
     * @param int $var
     * @return $this
     */
    public function setFullSyncSizeMbLimit($var)
    {
        GPBUtil::checkUint32($var);
        $this->fullSyncSizeMbLimit = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional uint32 storageQuotaMb = 3;</code>
     * @return int
     */
    public function getStorageQuotaMb()
    {
        return isset($this->storageQuotaMb) ? $this->storageQuotaMb : 0;
    }

    public function hasStorageQuotaMb()
    {
        return isset($this->storageQuotaMb);
    }

    public function clearStorageQuotaMb()
    {
        unset($this->storageQuotaMb);
    }

    /**
     * Generated from protobuf field <code>optional uint32 storageQuotaMb = 3;</code>
     * @param int $var
     * @return $this
     */
    public function setStorageQuotaMb($var)
    {
        GPBUtil::checkUint32($var);
        $this->storageQuotaMb = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool inlineInitialPayloadInE2EeMsg = 4;</code>
     * @return bool
     */
    public function getInlineInitialPayloadInE2EeMsg()
    {
        return isset($this->inlineInitialPayloadInE2EeMsg) ? $this->inlineInitialPayloadInE2EeMsg : false;
    }

    public function hasInlineInitialPayloadInE2EeMsg()
    {
        return isset($this->inlineInitialPayloadInE2EeMsg);
    }

    public function clearInlineInitialPayloadInE2EeMsg()
    {
        unset($this->inlineInitialPayloadInE2EeMsg);
    }

    /**
     * Generated from protobuf field <code>optional bool inlineInitialPayloadInE2EeMsg = 4;</code>
     * @param bool $var
     * @return $this
     */
    public function setInlineInitialPayloadInE2EeMsg($var)
    {
        GPBUtil::checkBool($var);
        $this->inlineInitialPayloadInE2EeMsg = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional uint32 recentSyncDaysLimit = 5;</code>
     * @return int
     */
    public function getRecentSyncDaysLimit()
    {
        return isset($this->recentSyncDaysLimit) ? $this->recentSyncDaysLimit : 0;
    }

    public function hasRecentSyncDaysLimit()
    {
        return isset($this->recentSyncDaysLimit);
    }

    public function clearRecentSyncDaysLimit()
    {
        unset($this->recentSyncDaysLimit);
    }

    /**
     * Generated from protobuf field <code>optional uint32 recentSyncDaysLimit = 5;</code>
     * @param int $var
     * @return $this
     */
    public function setRecentSyncDaysLimit($var)
    {
        GPBUtil::checkUint32($var);
        $this->recentSyncDaysLimit = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportCallLogHistory = 6;</code>
     * @return bool
     */
    public function getSupportCallLogHistory()
    {
        return isset($this->supportCallLogHistory) ? $this->supportCallLogHistory : false;
    }

    public function hasSupportCallLogHistory()
    {
        return isset($this->supportCallLogHistory);
    }

    public function clearSupportCallLogHistory()
    {
        unset($this->supportCallLogHistory);
    }

    /**
     * Generated from protobuf field <code>optional bool supportCallLogHistory = 6;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportCallLogHistory($var)
    {
        GPBUtil::checkBool($var);
        $this->supportCallLogHistory = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportBotUserAgentChatHistory = 7;</code>
     * @return bool
     */
    public function getSupportBotUserAgentChatHistory()
    {
        return isset($this->supportBotUserAgentChatHistory) ? $this->supportBotUserAgentChatHistory : false;
    }

    public function hasSupportBotUserAgentChatHistory()
    {
        return isset($this->supportBotUserAgentChatHistory);
    }

    public function clearSupportBotUserAgentChatHistory()
    {
        unset($this->supportBotUserAgentChatHistory);
    }

    /**
     * Generated from protobuf field <code>optional bool supportBotUserAgentChatHistory = 7;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportBotUserAgentChatHistory($var)
    {
        GPBUtil::checkBool($var);
        $this->supportBotUserAgentChatHistory = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportCagReactionsAndPolls = 8;</code>
     * @return bool
     */
    public function getSupportCagReactionsAndPolls()
    {
        return isset($this->supportCagReactionsAndPolls) ? $this->supportCagReactionsAndPolls : false;
    }

    public function hasSupportCagReactionsAndPolls()
    {
        return isset($this->supportCagReactionsAndPolls);
    }

    public function clearSupportCagReactionsAndPolls()
    {
        unset($this->supportCagReactionsAndPolls);
    }

    /**
     * Generated from protobuf field <code>optional bool supportCagReactionsAndPolls = 8;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportCagReactionsAndPolls($var)
    {
        GPBUtil::checkBool($var);
        $this->supportCagReactionsAndPolls = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportBizHostedMsg = 9;</code>
     * @return bool
     */
    public function getSupportBizHostedMsg()
    {
        return isset($this->supportBizHostedMsg) ? $this->supportBizHostedMsg : false;
    }

    public function hasSupportBizHostedMsg()
    {
        return isset($this->supportBizHostedMsg);
    }

    public function clearSupportBizHostedMsg()
    {
        unset($this->supportBizHostedMsg);
    }

    /**
     * Generated from protobuf field <code>optional bool supportBizHostedMsg = 9;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportBizHostedMsg($var)
    {
        GPBUtil::checkBool($var);
        $this->supportBizHostedMsg = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportRecentSyncChunkMessageCountTuning = 10;</code>
     * @return bool
     */
    public function getSupportRecentSyncChunkMessageCountTuning()
    {
        return isset($this->supportRecentSyncChunkMessageCountTuning) ? $this->supportRecentSyncChunkMessageCountTuning : false;
    }

    public function hasSupportRecentSyncChunkMessageCountTuning()
    {
        return isset($this->supportRecentSyncChunkMessageCountTuning);
    }

    public function clearSupportRecentSyncChunkMessageCountTuning()
    {
        unset($this->supportRecentSyncChunkMessageCountTuning);
    }

    /**
     * Generated from protobuf field <code>optional bool supportRecentSyncChunkMessageCountTuning = 10;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportRecentSyncChunkMessageCountTuning($var)
    {
        GPBUtil::checkBool($var);
        $this->supportRecentSyncChunkMessageCountTuning = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportHostedGroupMsg = 11;</code>
     * @return bool
     */
    public function getSupportHostedGroupMsg()
    {
        return isset($this->supportHostedGroupMsg) ? $this->supportHostedGroupMsg : false;
    }

    public function hasSupportHostedGroupMsg()
    {
        return isset($this->supportHostedGroupMsg);
    }

    public function clearSupportHostedGroupMsg()
    {
        unset($this->supportHostedGroupMsg);
    }

    /**
     * Generated from protobuf field <code>optional bool supportHostedGroupMsg = 11;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportHostedGroupMsg($var)
    {
        GPBUtil::checkBool($var);
        $this->supportHostedGroupMsg = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportFbidBotChatHistory = 12;</code>
     * @return bool
     */
    public function getSupportFbidBotChatHistory()
    {
        return isset($this->supportFbidBotChatHistory) ? $this->supportFbidBotChatHistory : false;
    }

    public function hasSupportFbidBotChatHistory()
    {
        return isset($this->supportFbidBotChatHistory);
    }

    public function clearSupportFbidBotChatHistory()
    {
        unset($this->supportFbidBotChatHistory);
    }

    /**
     * Generated from protobuf field <code>optional bool supportFbidBotChatHistory = 12;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportFbidBotChatHistory($var)
    {
        GPBUtil::checkBool($var);
        $this->supportFbidBotChatHistory = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportAddOnHistorySyncMigration = 13;</code>
     * @return bool
     */
    public function getSupportAddOnHistorySyncMigration()
    {
        return isset($this->supportAddOnHistorySyncMigration) ? $this->supportAddOnHistorySyncMigration : false;
    }

    public function hasSupportAddOnHistorySyncMigration()
    {
        return isset($this->supportAddOnHistorySyncMigration);
    }

    public function clearSupportAddOnHistorySyncMigration()
    {
        unset($this->supportAddOnHistorySyncMigration);
    }

    /**
     * Generated from protobuf field <code>optional bool supportAddOnHistorySyncMigration = 13;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportAddOnHistorySyncMigration($var)
    {
        GPBUtil::checkBool($var);
        $this->supportAddOnHistorySyncMigration = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportMessageAssociation = 14;</code>
     * @return bool
     */
    public function getSupportMessageAssociation()
    {
        return isset($this->supportMessageAssociation) ? $this->supportMessageAssociation : false;
    }

    public function hasSupportMessageAssociation()
    {
        return isset($this->supportMessageAssociation);
    }

    public function clearSupportMessageAssociation()
    {
        unset($this->supportMessageAssociation);
    }

    /**
     * Generated from protobuf field <code>optional bool supportMessageAssociation = 14;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportMessageAssociation($var)
    {
        GPBUtil::checkBool($var);
        $this->supportMessageAssociation = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportGroupHistory = 15;</code>
     * @return bool
     */
    public function getSupportGroupHistory()
    {
        return isset($this->supportGroupHistory) ? $this->supportGroupHistory : false;
    }

    public function hasSupportGroupHistory()
    {
        return isset($this->supportGroupHistory);
    }

    public function clearSupportGroupHistory()
    {
        unset($this->supportGroupHistory);
    }

    /**
     * Generated from protobuf field <code>optional bool supportGroupHistory = 15;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportGroupHistory($var)
    {
        GPBUtil::checkBool($var);
        $this->supportGroupHistory = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool onDemandReady = 16;</code>
     * @return bool
     */
    public function getOnDemandReady()
    {
        return isset($this->onDemandReady) ? $this->onDemandReady : false;
    }

    public function hasOnDemandReady()
    {
        return isset($this->onDemandReady);
    }

    public function clearOnDemandReady()
    {
        unset($this->onDemandReady);
    }

    /**
     * Generated from protobuf field <code>optional bool onDemandReady = 16;</code>
     * @param bool $var
     * @return $this
     */
    public function setOnDemandReady($var)
    {
        GPBUtil::checkBool($var);
        $this->onDemandReady = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool supportGuestChat = 17;</code>
     * @return bool
     */
    public function getSupportGuestChat()
    {
        return isset($this->supportGuestChat) ? $this->supportGuestChat : false;
    }

    public function hasSupportGuestChat()
    {
        return isset($this->supportGuestChat);
    }

    public function clearSupportGuestChat()
    {
        unset($this->supportGuestChat);
    }

    /**
     * Generated from protobuf field <code>optional bool supportGuestChat = 17;</code>
     * @param bool $var
     * @return $this
     */
    public function setSupportGuestChat($var)
    {
        GPBUtil::checkBool($var);
        $this->supportGuestChat = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool completeOnDemandReady = 18;</code>
     * @return bool
     */
    public function getCompleteOnDemandReady()
    {
        return isset($this->completeOnDemandReady) ? $this->completeOnDemandReady : false;
    }

    public function hasCompleteOnDemandReady()
    {
        return isset($this->completeOnDemandReady);
    }

    public function clearCompleteOnDemandReady()
    {
        unset($this->completeOnDemandReady);
    }

    /**
     * Generated from protobuf field <code>optional bool completeOnDemandReady = 18;</code>
     * @param bool $var
     * @return $this
     */
    public function setCompleteOnDemandReady($var)
    {
        GPBUtil::checkBool($var);
        $this->completeOnDemandReady = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional uint32 thumbnailSyncDaysLimit = 19;</code>
     * @return int
     */
    public function getThumbnailSyncDaysLimit()
    {
        return isset($this->thumbnailSyncDaysLimit) ? $this->thumbnailSyncDaysLimit : 0;
    }

    public function hasThumbnailSyncDaysLimit()
    {
        return isset($this->thumbnailSyncDaysLimit);
    }

    public function clearThumbnailSyncDaysLimit()
    {
        unset($this->thumbnailSyncDaysLimit);
    }

    /**
     * Generated from protobuf field <code>optional uint32 thumbnailSyncDaysLimit = 19;</code>
     * @param int $var
     * @return $this
     */
    public function setThumbnailSyncDaysLimit($var)
    {
        GPBUtil::checkUint32($var);
        $this->thumbnailSyncDaysLimit = $var;

        return $this;
    }

}

