<?php

namespace App\JsonRpc;
interface ChatServiceInterface
{
    /**
     * @param array $data
     * @return array
     */
    public function getChatChannelList(array $data);

    /**
     * @param array $data
     * @return mixed
     */
    public function delChatChannel(array $data);

    /**
     * @param array $data
     * @return mixed
     */
    public function addChatChannel(array $data);

    /**
     * 添加申请
     * @param array $data
     * @return array
     */
    public function addContactApply(array $data);

    /**
     * 更新申请
     * @param array $data
     * @return array
     */
    public function updateContactApply(array $data);

    /**
     * 好友申请列表
     * @param array $data
     * @return array
     */
    public function getContactApplyList(array $data);

    /**
     * 好有查询
     * @param array $data
     * @return array
     */
    public function getContactList(array $data);
    /**
     * 添加好友
     * @param array $data
     * @return array
     */
    public function addContact(array $data);

    /**
     * 更新好友
     * @param array $data
     * @return array
     */
    public function updateContact(array $data);

    /**
     * 删除好友
     * @param array $data
     * @return array
     */
    public function delContact(array $data);

    /**
     * 会话列表
     * @param array $data
     * @return array
     */
    public function getTalkSessionList(array $data);
    /**
     * 添加会话
     * @param array $data
     * @return array
     */
    public function addTalkSession(array $data);

    /**
     * 更新会话
     * @param array $data
     * @return array
     */
    public function updateTalkSession(array $data);

    /**
     * 删除会话
     * @param array $data
     * @return array
     */
    public function delTalkSession(array $data);


    /**
     * 聊天内容
     * @param array $data
     * @return array
     */
    public function getTalkRecordsList(array $data);
    /**
     * 添加聊天内容
     * @param array $data
     * @return array
     */
    public function addTalkRecords(array $data);

    /**
     * 更新聊天内容
     * @param array $data
     * @return array
     */
    public function updateTalkRecords(array $data);

    /**
     * 删除聊天内容
     * @param array $data
     * @return array
     */
    public function delTalkRecords(array $data);


    /**
     * 聊天内容-附件列表
     * @param array $data
     * @return array
     */
    public function getTalkRecordsFileList(array $data);
    /**
     * 聊天内容-添加附件
     * @param array $data
     * @return array
     */
    public function addTalkRecordsFile(array $data);

    /**
     * 聊天内容 - 更新附件
     * @param array $data
     * @return array
     */
    public function updateTalkRecordsFile(array $data);

    /**
     * 聊天内容 - 删除附件
     * @param array $data
     * @return array
     */
    public function delTalkRecordsFile(array $data);

    /**
     * 群组 - 群列表
     * @param array $data
     * @return array
     */
    public function getTalkGroupList(array $data);
    /**
     * 群组 - 创建群
     * @param array $data
     * @return array
     */
    public function addTalkGroup(array $data);

    /**
     * 群组 - 更新群
     * @param array $data
     * @return array
     */
    public function updateTalkGroup(array $data);

    /**
     * 群组 - 删除群
     * @param array $data
     * @return array
     */
    public function delTalkGroup(array $data);


    /**
     * 群组 - 群用户列表
     * @param array $data
     * @return array
     */
    public function getTalkGroupMember(array $data);
    /**
     * 群组 - 全部群用户列表
     * @param array $data
     * @return array
     */
    public function getAllTalkGroupMember(array $data);
    /**
     * 群组 - 创建群用户
     * @param array $data
     * @return array
     */
    public function addTalkGroupMember(array $data);

    /**
     * 群组 - 更新群用户
     * @param array $data
     * @return array
     */
    public function updateTalkGroupMember(array $data);

    /**
     * 群组 - 删除群用户
     * @param array $data
     * @return array
     */
    public function delTalkGroupMember(array $data);

    /**
     * @param array $data
     * @return mixed
     */
    public function addTalkSessionAssociation(array $data);

    /**
     * @param array $data
     * @return mixed
     */
    public function updateTalkSessionAssociation(array $data);

}