@@ -35,15 +35,24 @@ export interface AliasCustomisations {
3535//
3636// @public
3737export interface Api extends LegacyModuleApiExtension , LegacyCustomisationsApiExtension , DialogApiExtension , AccountAuthApiExtension , ProfileApiExtension {
38+ // @alpha
39+ readonly builtins: BuiltinsApi ;
3840 readonly config: ConfigApi ;
3941 createRoot(element : Element ): Root ;
4042 // @alpha
4143 readonly customComponents: CustomComponentsApi ;
44+ // @alpha
45+ readonly extras: ExtrasApi ;
4246 readonly i18n: I18nApi ;
4347 readonly navigation: NavigationApi ;
4448 readonly rootNode: HTMLElement ;
4549}
4650
51+ // @alpha
52+ export interface BuiltinsApi {
53+ getRoomViewComponent(): React .ComponentType <RoomViewProps >;
54+ }
55+
4756// @alpha @deprecated (undocumented)
4857export interface ChatExportCustomisations <ExportFormat , ExportType > {
4958 getForceChatExportParameters(): {
@@ -140,6 +149,11 @@ export interface DirectoryCustomisations {
140149 requireCanonicalAliasAccessToPublish? (): boolean ;
141150}
142151
152+ // @alpha
153+ export interface ExtrasApi {
154+ setSpacePanelItem(spaceKey : string , props : SpacePanelItemProps ): void ;
155+ }
156+
143157// @public
144158export interface I18nApi {
145159 get language(): string ;
@@ -186,6 +200,9 @@ export interface LifecycleCustomisations {
186200 onLoggedOutAndStorageCleared? (): void ;
187201}
188202
203+ // @alpha
204+ export type LocationRenderFunction = () => JSX .Element ;
205+
189206// @alpha
190207export interface MatrixEvent {
191208 content: Record <string , unknown >;
@@ -272,6 +289,8 @@ export class ModuleLoader {
272289
273290// @public
274291export interface NavigationApi {
292+ // @alpha
293+ registerLocationRenderer(path : string , renderer : LocationRenderFunction ): void ;
275294 toMatrixToLink(link : string , join ? : boolean ): Promise <void >;
276295}
277296
@@ -297,9 +316,24 @@ export interface RoomListCustomisations<Room> {
297316 isRoomVisible? (room : Room ): boolean ;
298317}
299318
319+ // @alpha
320+ export interface RoomViewProps {
321+ roomId? : string ;
322+ }
323+
300324// @alpha @deprecated (undocumented)
301325export type RuntimeModuleConstructor = new (api : ModuleApi ) => RuntimeModule ;
302326
327+ // @alpha
328+ export interface SpacePanelItemProps {
329+ className? : string ;
330+ icon? : JSX .Element ;
331+ label: string ;
332+ onSelected: () => void ;
333+ style? : React .CSSProperties ;
334+ tooltip? : string ;
335+ }
336+
303337// @public
304338export type Translations = Record <string , {
305339 [ietfLanguageTag : string ]: string ;
0 commit comments