Changeset View
Changeset View
Standalone View
Standalone View
lib/types/messages/unsupported.js
// @flow | // @flow | ||||
import t, { type TInterface } from 'tcomb'; | |||||
import { tID, tNumber, tShape } from '../../utils/validation-utils.js'; | |||||
import { messageTypes } from '../message-types-enum.js'; | |||||
import type { RelativeUserInfo } from '../user-types.js'; | import type { RelativeUserInfo } from '../user-types.js'; | ||||
export type RawUnsupportedMessageInfo = { | export type RawUnsupportedMessageInfo = { | ||||
type: 13, | type: 13, | ||||
id: string, | id: string, | ||||
threadID: string, | threadID: string, | ||||
creatorID: string, | creatorID: string, | ||||
time: number, | time: number, | ||||
robotext: string, | robotext: string, | ||||
dontPrefixCreator?: boolean, | dontPrefixCreator?: boolean, | ||||
unsupportedMessageInfo: Object, | unsupportedMessageInfo: Object, | ||||
}; | }; | ||||
export const rawUnsupportedMessageInfoValidator: TInterface<RawUnsupportedMessageInfo> = | |||||
tShape<RawUnsupportedMessageInfo>({ | |||||
type: tNumber(messageTypes.UNSUPPORTED), | |||||
id: tID, | |||||
threadID: tID, | |||||
creatorID: t.String, | |||||
time: t.Number, | |||||
robotext: t.String, | |||||
dontPrefixCreator: t.maybe(t.Boolean), | |||||
unsupportedMessageInfo: t.Object, | |||||
}); | |||||
export type UnsupportedMessageInfo = { | export type UnsupportedMessageInfo = { | ||||
type: 13, | type: 13, | ||||
id: string, | id: string, | ||||
threadID: string, | threadID: string, | ||||
creator: RelativeUserInfo, | creator: RelativeUserInfo, | ||||
time: number, | time: number, | ||||
robotext: string, | robotext: string, | ||||
dontPrefixCreator?: boolean, | dontPrefixCreator?: boolean, | ||||
unsupportedMessageInfo: Object, | unsupportedMessageInfo: Object, | ||||
}; | }; |