ns2-front-module-common
Version: 
NS2 common module
66 lines (65 loc) • 3.8 kB
TypeScript
import { HttpService } from "./http.service";
import { ResponseListModel } from "../models/response-list.model";
import { ChatMessageModel } from "../models/chat-message.model";
import { MessageSearchResultModel } from "../models/message-search-result.model";
import { Observable } from "rxjs";
import { ChatInfoModel } from "../models/chat-info.model";
export declare class PeersService {
    private httpService;
    /**
     * Base URL (точка входа) в микросервис сообщений
     */
    private messagesEndPoint;
    constructor(httpService: HttpService);
    /**
     * Создание диалога между текущим пользователем и userGuid
     * @param {string} userGuid С кем создать диалог
     * @returns {Promise<ChatInfoModel>}
     */
    createPeer(userGuid: string): Promise<ChatInfoModel>;
    /**
     * Получение диалогов текущего пользователя
     * @param {string} lastPeerGuid Идентификатор диалога начиная с которого надо возвращать чаты
     * @param {string} stopPeerGuid Идентификатор диалога, до которого нужно получить чаты
     * @param {any} query           Дополнительные условия
     * @returns {Promise<ResponseListModel<ChatInfoModel>>}
     */
    getPeers(lastPeerGuid?: string, stopPeerGuid?: string, query?: any): Promise<ResponseListModel<ChatInfoModel>>;
    /**
     * Возвращает диалог
     * @param {string} peerGuid Идентификатор диалога
     * @returns {Promise<ChatInfoModel>}
     */
    getPeer(peerGuid: string): Promise<ChatInfoModel>;
    /**
     * Получение истории сообщений диалога с пользователем
     * @param {string} peerGuid     Идентификатор диалога
     * @param {string} messageGuid  Идентификатор сообщения до которого необходимо получить записи истории
     * @param startMessageGuid      Идентификатор сообщения с которого необходимо получить записи истории
     * @param numBefore             Количество сообщений которые надо добавить до начального сообщения
     * @param query                 Дополнительные параметры
     * @returns {Promise<ResponseListModel<ChatMessageModel>>}
     */
    getHistory(peerGuid: string, messageGuid?: string, startMessageGuid?: string, numBefore?: number, query?: any): Promise<ResponseListModel<ChatMessageModel>>;
    /**
     * Метод для поиска (чатов)
     * @param {string} queryText Строка поиска
     * @param {any} query Дополнительные параметры запроса
     * @returns {Promise<ResponseListModel<ChatInfoModel>>}
     */
    search(queryText: string, query?: any): Promise<ResponseListModel<ChatInfoModel>>;
    /**
     * Метод для поиска сообщений
     * @param {string} peerGuid Идентификатор чата
     * @param {string} query Строка для поиска
     * @param {string} messageGuid Идентификатор сообщения до которого необходимо искать
     * @returns {Observable<MessageSearchResultModel>}
     */
    searchMessages(peerGuid: string, query: string, messageGuid?: string): Observable<MessageSearchResultModel>;
    /**
     * Установка URL до сервиса messaging
     *
     * @param messagesEndPoint
     */
    setMessagesEndPoint(messagesEndPoint: string): void;
}