import type { App } from '@rocket.chat/apps-engine/definition/App'; import { AppObjectRegistry } from '../../AppObjectRegistry'; import { AppAccessorsInstance } from '../../lib/accessors/mod'; import type { RequestContext } from '../../lib/requestContext'; import { wrapAppForRequest } from '../../lib/wrapAppForRequest'; export default async function handleInitialize(request: RequestContext): Promise { const app = AppObjectRegistry.get('app'); if (typeof app?.initialize !== 'function') { throw new Error('App must contain an initialize function', { cause: 'invalid_app', }); } await app.initialize.call( wrapAppForRequest(app, request), AppAccessorsInstance.getConfigurationExtend(), AppAccessorsInstance.getEnvironmentRead(), ); return true; }