import { Long } from 'bson'; import { ChannelInfo, ChannelMeta, ChannelSession, SetChannelMeta, UpdatableChannelDataStore } from '../../channel'; import { ChannelMetaType } from '../../channel/meta'; import { Chat, Chatlog, ChatLogged, ChatType, UpdatableChatListStore } from '../../chat'; import { MediaKeyComponent, MediaMultiPost, MediaPost, MediaUploadForm } from '../../media'; import { AsyncCommandResult, CommandResult } from '../../request'; import { FixedReadStream } from '../../stream'; import { ChannelUser, ChannelUserInfo } from '../../user'; export declare class TalkChannelDataSession implements ChannelSession { private _clientUser; private _channelSession; private _store; private _chatListStore; constructor(_clientUser: ChannelUser, _channelSession: ChannelSession, _store: UpdatableChannelDataStore, _chatListStore: UpdatableChatListStore); get clientUser(): Readonly; get store(): UpdatableChannelDataStore; sendChat(chat: string | Chat, noSeen?: boolean): AsyncCommandResult; forwardChat(chat: Chat, noSeen?: boolean): AsyncCommandResult; deleteChat(chat: ChatLogged): AsyncCommandResult; markRead(chat: ChatLogged): AsyncCommandResult; setMeta(type: ChannelMetaType, meta: ChannelMeta | string): AsyncCommandResult; setPushAlert(flag: boolean): AsyncCommandResult; syncChatList(endLogId: Long, startLogId?: Long): AsyncIterableIterator>; getChatListFrom(startLogId?: Long): AsyncCommandResult; downloadMedia(media: MediaKeyComponent, type: ChatType, offset?: number): AsyncCommandResult; downloadMediaThumb(media: MediaKeyComponent, type: ChatType, offset?: number): AsyncCommandResult; uploadMedia(type: ChatType, form: MediaUploadForm): AsyncCommandResult; uploadMultiMedia(type: ChatType, forms: MediaUploadForm[]): AsyncCommandResult; }