votcore
Version:
Vot Kit for Valensas Bots
45 lines (44 loc) • 1.3 kB
TypeScript
import { Conversation, GUID, User } from '.';
import { MessageChannelData, MessagePayloadType, MessageType, Platform, VotChannels } from './../types';
export interface MessageConstructor {
payload: any;
user: User;
platform: Platform;
conversation: Conversation;
payloadType: MessagePayloadType;
type: MessageType;
channelData?: MessageChannelData;
date?: Date;
channel: keyof VotChannels;
id?: GUID;
}
/**
* Base class for message. Every message type extends this class
*/
export declare class Message {
id?: GUID;
user: User;
conversation: Conversation;
payloadType: MessagePayloadType;
payload: any;
platform: Platform;
date?: Date;
type: MessageType;
channel: keyof VotChannels;
channelData: MessageChannelData;
constructor({payload, conversation, user, platform, payloadType, type, channel, channelData, date, id}: MessageConstructor);
/**
* Returns true if the message is sent from a mobile client
*
* @returns boolean True if mobile
*/
isMobile(): boolean;
/**
* Creates a JSON string that contains message context
*/
toContext(): string;
/**
* Parses a context JSON string to a Message instance.
*/
fromContext(contextMessage: string): Message;
}