UNPKG

@rocket.chat/apps-engine

Version:

The engine code for the Rocket.Chat Apps which manages, runs, translates, coordinates and all of that.

41 lines (40 loc) 1.5 kB
import type { IUser } from '../users'; import type { ILivechatUpdater } from './ILivechatUpdater'; import type { IMessageBuilder } from './IMessageBuilder'; import type { IRoomBuilder } from './IRoomBuilder'; import type { IUserUpdater } from './IUserUpdater'; export interface IModifyUpdater { /** * Get the updater object responsible for the * Livechat integrations */ getLivechatUpdater(): ILivechatUpdater; /** * Gets the update object responsible for * methods that update users */ getUserUpdater(): IUserUpdater; /** * Modifies an existing message. * Raises an exception if a non-existent messageId is supplied * * @param messageId the id of the existing message to modfiy and build * @param updater the user who is updating the message */ message(messageId: string, updater: IUser): Promise<IMessageBuilder>; /** * Modifies an existing room. * Raises an exception if a non-existent roomId is supplied * * @param roomId the id of the existing room to modify and build * @param updater the user who is updating the room */ room(roomId: string, updater: IUser): Promise<IRoomBuilder>; /** * Finishes the updating process, saving the object to the database. * Note: If there is an issue or error while updating, this will throw an error. * * @param builder the builder instance */ finish(builder: IMessageBuilder | IRoomBuilder): Promise<void>; }