<?php
/**
 * Webkul Software.
 *
 * @category  Webkul
 * @package   Webkul_MpBuyerSellerChatApi
 * @author    Webkul
 * @copyright Copyright (c) Webkul Software Private Limited (https://webkul.com)
 * @license   https://store.webkul.com/license.html
 */
namespace Webkul\MpBuyerSellerChatApi\Api\Data;

interface CustomerListInterface
{
    const NAME                        = 'name';
    const STATUS                      = 'status';
    const SUCCESS                     = 'success';
    const MESSAGE                     = 'message';
    const FCM_KEY                     = 'fcm_key';
    const IOS_TOPIC                   = 'ios_topic';
    const UNIQUE_ID                   = 'unique_id';
    const CUSTOMER_LIST               = 'customer_list';
    const ANDROID_TOPIC               = 'android_topic';
    const PROFILE_IMAGE               = 'profile_image';
    const TOTAL_CUSTOMER_LIST         = 'total_customer_list';
    const BLOCKED_CUSTOMER_LIST       = 'blocked_customer_list';
    const TOTAL_BLOCKED_CUSTOMER_LIST = 'total_blocked_customer_list';

    /**
     * Get Name
     *
     * @return string|null
     */
    public function getName();
     
    /**
     * Set Name
     * @param string
     * @return string $name
     */
    public function setName($name);

    /**
     * Get Status
     *
     * @return integer|null
     */
    public function getStatus();
     
    /**
     * Set Token
     * @param integer
     * @return integer $status
     */
    public function setStatus($status);

    /**
     * Get Status
     *
     * @return boolean|null
     */
    public function getSuccess();
     
    /**
     * Set Token
     * @param boolean
     * @return boolean $success
     */
    public function setSuccess($success);

    /**
     * Get Message
     *
     * @return string|null
     */
    public function getMessage();
     
    /**
     * Set Message
     * @param string
     * @return integer $messgae
     */
    public function setMessage($message);

    /**
     * Get fcm key
     *
     * @return string|null
     */
    public function getFcmKey();
     
    /**
     * Set Fcm Key
     * @param string
     * @return string $key
     */
    public function setFcmKey($key);

    /**
     * Get Ios Topic
     *
     * @return string|null
     */
    public function getIosTopic();
     
    /**
     * Set Ios Topic
     * @param string
     * @return string $topic
     */
    public function setIosTopic($topic);

    /**
     * Get Android Topic
     *
     * @return string|null
     */
    public function getAndroidTopic();
     
    /**
     * Set Android Topic
     * @param string
     * @return string $topic
     */
    public function setAndroidTopic($topic);

    /**
     * Get Unique Id
     *
     * @return string|null
     */
    public function getUniqueId();
     
    /**
     * Set Unique Id
     * @param string
     * @return string $uniqueId
     */
    public function setUniqueId($uniqueId);


    /**
     * Get customer list.
     *
     * @return \Webkul\MpBuyerSellerChatApi\Api\Data\CustomerInterface[]
     */
    public function getCustomerList();

    /**
     * Set customer list.
     *
     * @param \Webkul\MpBuyerSellerChatApi\Api\CustomerInterface[] $items
     * @return $this
     */
    public function setCustomerList(array $items);

    /**
     * Get Status
     *
     * @return string|null
     */
    public function getProfileImage();
     
    /**
     * Set Token
     * @param string
     * @return string $profileImage
     */
    public function setProfileImage($profileImage);

    /**
     * Get total count.
     *
     * @return int
     */
    public function getTotalCustomerList();

    /**
     * Set total count.
     *
     * @param int $totalCount
     * @return $this
     */
    public function setTotalCustomerList($totalCount);
}
    