const e = require("@holepunchto/hyperindex"),
{ IndexMemberId: n } = require("../members/messages"),
{
PRIMARY_THREAD_ID: t,
IndexEventId: a,
IndexMessageId: i,
ClockIndexEncoding: o,
EventIdValueEncoding: d,
EventRecord: s,
} = require("./messages"),
{
AddChatMessageOperation: r,
UpdateChatMessageOperation: c,
RemoveChatMessageOperation: p,
AddGenericEventOperation: g,
RemoveGenericEventOperation: E,
AddFileOperation: v,
RemoveFileOperation: R,
} = require("./ops")
module.exports = class {
static Record = s
static Messages = { PRIMARY_THREAD_ID: t }
static Operations = {
AddChatMessageOperation: r,
UpdateChatMessageOperation: c,
RemoveChatMessageOperation: p,
AddGenericEventOperation: g,
RemoveGenericEventOperation: E,
AddFileOperation: v,
RemoveFileOperation: R,
}
static ChatCollection = { keyEncoding: a, valueEncoding: s }
static ChatIndexes = [
{ keyEncoding: i, valueEncoding: d },
{ keyEncoding: o, valueEncoding: d },
{ keyEncoding: [n, ...a] },
{ keyEncoding: [e.STRING, e.BUFFER, e.UINT] },
]
}