message: Added new outbound messages types
diff: +import { IClientJoin } from "./clients";
  import { IUser } from "./users";
  export enum MessageType {
  @@ -77,16 +78,6 @@ export interface INack {
  sequenceNumber: number;
  }
  -/**
  - * System level metadata
  - */
  -export interface ISystemData {
  -
  - split: boolean;
  -
  - content: any;
  -}
  -
  /**
  * Document specific message
  */
  @@ -104,13 +95,37 @@ export interface IDocumentMessage {
  // back-compat: This should be string.
  contents: any;
  - // System level metadata.
  - metadata: ISystemData;
  -
  // Traces related to the packet.
  traces: ITrace[];
  }
  +/**
  + * Document client Join message.
  + */
  +export interface IDocumentJoinMessage extends IDocumentMessage {
  +
  + detail: IClientJoin;
  +}
  +
  +/**
  + * Document client leave message.
  + */
  +export interface IDocumentLeaveMessage extends IDocumentMessage {
  +
  + clientId: string;
  +}
  +
  +/**
  + * Document help message.
  + */
  +export interface IDocumentHelpMessage extends IDocumentMessage {
  +
  + detail: IHelpMessage;
  +}
  +
  +// tslint:disable max-line-length
  +export type IOutboundDocumentMessage = IDocumentJoinMessage | IDocumentLeaveMessage | IDocumentHelpMessage | IDocumentMessage;
  +
  export interface IContentMessage {
  clientId: string;
  @@ -170,9 +185,6 @@ export interface ISequencedDocumentMessage {
  // message is also the origin.
  origin: IBranchOrigin;
  - // Message metadata
  - metadata: ISystemData;
  -
  // Traces related to the packet.
  traces: ITrace[];
  