2025-05-16 15:49:07 +01:00
## API Report File for "@element-hq/element-web-module-api"
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
``` ts
import { JSX } from 'react' ;
import { ModuleApi } from '@matrix-org/react-sdk-module-api' ;
import { Root } from 'react-dom/client' ;
import { RuntimeModule } from '@matrix-org/react-sdk-module-api' ;
// @alpha @deprecated (undocumented)
export interface AliasCustomisations {
// (undocumented)
getDisplayAliasForAliasSet ? ( canonicalAlias : string | null , altAliases : string [ ] ) : string | null ;
}
// Warning: (ae-incompatible-release-tags) The symbol "Api" is marked as @public, but its signature references "LegacyModuleApiExtension" which is marked as @alpha
// Warning: (ae-incompatible-release-tags) The symbol "Api" is marked as @public, but its signature references "LegacyCustomisationsApiExtension" which is marked as @alpha
//
// @public
export interface Api extends LegacyModuleApiExtension , LegacyCustomisationsApiExtension {
readonly config : ConfigApi ;
createRoot ( element : Element ) : Root ;
// (undocumented)
readonly customComponents : CustomComponentsApi ;
readonly i18n : I18nApi ;
readonly rootNode : HTMLElement ;
}
// @alpha @deprecated (undocumented)
export interface ChatExportCustomisations < ExportFormat , ExportType > {
getForceChatExportParameters ( ) : {
format? : ExportFormat ;
range? : ExportType ;
numberOfMessages? : number ;
includeAttachments? : boolean ;
sizeMb? : number ;
} ;
}
// @alpha @deprecated (undocumented)
export interface ComponentVisibilityCustomisations {
shouldShowComponent ? ( component : "UIComponent.sendInvites" | "UIComponent.roomCreation" | "UIComponent.spaceCreation" | "UIComponent.exploreRooms" | "UIComponent.addIntegrations" | "UIComponent.filterContainer" | "UIComponent.roomOptionsMenu" ) : boolean ;
}
// @public
export interface Config {
// (undocumented)
brand : string ;
}
// @public
export interface ConfigApi {
// (undocumented)
get ( ) : Config ;
// (undocumented)
get < K extends keyof Config > ( key : K ) : Config [ K ] ;
// (undocumented)
get < K extends keyof Config = never > ( key? : K ) : Config | Config [ K ] ;
}
// @public
export type CustomComponentProps = {
[ CustomComponentTarget . TextualEvent ] : {
mxEvent : any ;
stripReply : boolean ;
} ;
} ;
// @public
export type CustomComponentRenderFunction < T extends CustomComponentTarget > = ( props : CustomComponentProps [ T ] , originalComponent : JSX.Element ) = > JSX . Element | null ;
// @public
export interface CustomComponentsApi {
register < T extends CustomComponentTarget > ( target : T , renderer : CustomComponentRenderFunction < T > ) : void ;
}
// @public
export enum CustomComponentTarget {
// (undocumented)
TextualEvent = "TextualEvent"
}
// @alpha @deprecated (undocumented)
export interface DirectoryCustomisations {
// (undocumented)
requireCanonicalAliasAccessToPublish ? ( ) : boolean ;
}
// @public
export interface I18nApi {
get language ( ) : string ;
register ( translations : Partial < Translations > ) : void ;
translate ( key : keyof Translations , variables? : Variables ) : string ;
}
// @alpha @deprecated (undocumented)
export type LegacyCustomisations < T extends object > = ( customisations : T ) = > void ;
// @alpha @deprecated (undocumented)
export interface LegacyCustomisationsApiExtension {
// @deprecated (undocumented)
readonly _registerLegacyAliasCustomisations : LegacyCustomisations < AliasCustomisations > ;
// @deprecated (undocumented)
readonly _registerLegacyChatExportCustomisations : LegacyCustomisations < ChatExportCustomisations < never , never > > ;
// @deprecated (undocumented)
readonly _registerLegacyComponentVisibilityCustomisations : LegacyCustomisations < ComponentVisibilityCustomisations > ;
// @deprecated (undocumented)
readonly _registerLegacyDirectoryCustomisations : LegacyCustomisations < DirectoryCustomisations > ;
// @deprecated (undocumented)
readonly _registerLegacyLifecycleCustomisations : LegacyCustomisations < LifecycleCustomisations > ;
// @deprecated (undocumented)
readonly _registerLegacyMediaCustomisations : LegacyCustomisations < MediaCustomisations < never , never , never > > ;
// @deprecated (undocumented)
readonly _registerLegacyRoomListCustomisations : LegacyCustomisations < RoomListCustomisations < never > > ;
// @deprecated (undocumented)
readonly _registerLegacyUserIdentifierCustomisations : LegacyCustomisations < UserIdentifierCustomisations > ;
// @deprecated (undocumented)
readonly _registerLegacyWidgetPermissionsCustomisations : LegacyCustomisations < WidgetPermissionsCustomisations < never , never > > ;
// @deprecated (undocumented)
readonly _registerLegacyWidgetVariablesCustomisations : LegacyCustomisations < WidgetVariablesCustomisations > ;
}
// @alpha @deprecated (undocumented)
export interface LegacyModuleApiExtension {
// @deprecated
_registerLegacyModule ( LegacyModule : RuntimeModuleConstructor ) : Promise < void > ;
}
// @alpha @deprecated (undocumented)
export interface LifecycleCustomisations {
// (undocumented)
onLoggedOutAndStorageCleared ? ( ) : void ;
}
// @alpha @deprecated (undocumented)
export interface Media {
// (undocumented)
downloadSource ( ) : Promise < Response > ;
// (undocumented)
getSquareThumbnailHttp ( dim : number ) : string | null ;
// (undocumented)
getThumbnailHttp ( width : number , height : number , mode ? : "scale" | "crop" ) : string | null ;
// (undocumented)
getThumbnailOfSourceHttp ( width : number , height : number , mode ? : "scale" | "crop" ) : string | null ;
// (undocumented)
readonly hasThumbnail : boolean ;
// (undocumented)
readonly isEncrypted : boolean ;
// (undocumented)
readonly srcHttp : string | null ;
// (undocumented)
readonly srcMxc : string ;
// (undocumented)
readonly thumbnailHttp : string | null ;
// (undocumented)
readonly thumbnailMxc : string | null | undefined ;
}
// @alpha @deprecated (undocumented)
export interface MediaContructable < PreparedMedia > {
// (undocumented)
new ( prepared : PreparedMedia ) : Media ;
}
// @alpha @deprecated (undocumented)
export interface MediaCustomisations < Content , Client , PreparedMedia > {
// (undocumented)
readonly Media : MediaContructable < PreparedMedia > ;
// (undocumented)
mediaFromContent ( content : Content , client? : Client ) : Media ;
// (undocumented)
mediaFromMxc ( mxc? : string , client? : Client ) : Media ;
}
// @public
export interface Module {
// (undocumented)
load ( ) : Promise < void > ;
}
// @public
export interface ModuleFactory {
// (undocumented)
new ( api : Api ) : Module ;
// (undocumented)
readonly moduleApiVersion : string ;
// (undocumented)
readonly prototype : Module ;
}
// @public
export class ModuleIncompatibleError extends Error {
constructor ( pluginVersion : string ) ;
}
// @public
export class ModuleLoader {
constructor ( api : Api ) ;
// Warning: (ae-forgotten-export) The symbol "ModuleExport" needs to be exported by the entry point index.d.ts
//
// (undocumented)
load ( moduleExport : ModuleExport ) : Promise < void > ;
// (undocumented)
start ( ) : Promise < void > ;
}
// @alpha @deprecated (undocumented)
export interface RoomListCustomisations < Room > {
isRoomVisible ? ( room : Room ) : boolean ;
}
// @alpha @deprecated (undocumented)
export type RuntimeModuleConstructor = new ( api : ModuleApi ) = > RuntimeModule ;
// @public
export type Translations = Record < string , {
[ ietfLanguageTag : string ] : string ;
} > ;
// @alpha @deprecated (undocumented)
export interface UserIdentifierCustomisations {
getDisplayUserIdentifier ( userId : string , opts : {
roomId? : string ;
withDisplayName? : boolean ;
} ) : string | null ;
}
// @public
export type Variables = {
count? : number ;
[ key : string ] : number | string | undefined ;
} ;
// @alpha @deprecated (undocumented)
export interface WidgetPermissionsCustomisations < Widget , Capability > {
preapproveCapabilities ? ( widget : Widget , requestedCapabilities : Set < Capability > ) : Promise < Set < Capability > > ;
}
// @alpha @deprecated (undocumented)
export interface WidgetVariablesCustomisations {
isReady ? ( ) : Promise < void > ;
provideVariables ? ( ) : {
currentUserId : string ;
userDisplayName? : string ;
userHttpAvatarUrl? : string ;
clientId? : string ;
clientTheme? : string ;
clientLanguage? : string ;
deviceId? : string ;
baseUrl? : string ;
} ;
}
// (No @packageDocumentation comment for this package)
```