diff --git a/packages/element-web-module-api/element-web-module-api.api.md b/packages/element-web-module-api/element-web-module-api.api.md index 6d6403735e..81fd045f8f 100644 --- a/packages/element-web-module-api/element-web-module-api.api.md +++ b/packages/element-web-module-api/element-web-module-api.api.md @@ -78,6 +78,7 @@ originalComponent?: (props?: OriginalComponentProps) => React.JSX.Element) => JS // @alpha export type CustomMessageRenderHints = { allowEditingEvent?: boolean; + allowDownloadingMedia?: (mxEvent: MatrixEvent) => Promise; }; // @alpha @deprecated (undocumented) diff --git a/packages/element-web-module-api/src/api/custom-components.ts b/packages/element-web-module-api/src/api/custom-components.ts index becc0f1992..ba477057cf 100644 --- a/packages/element-web-module-api/src/api/custom-components.ts +++ b/packages/element-web-module-api/src/api/custom-components.ts @@ -44,6 +44,12 @@ export type CustomMessageRenderHints = { * Default is true. */ allowEditingEvent?: boolean; + /** + * If an event contains media, this function will be called to check + * if the media can be prompted to be downloaded as a file. + * If this function is not supplied, media downloads are allowed. + */ + allowDownloadingMedia?: (mxEvent: MatrixEvent) => Promise; }; /**