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 bd4ccfc45e..62bfb5e58f 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 @@ -173,6 +173,7 @@ export interface ExtrasApi { // @public export interface I18nApi { + humanizeTime(timeMillis: number): string; get language(): string; register(translations: Partial): void; translate(key: keyof Translations, variables?: Variables): string; diff --git a/packages/element-web-module-api/src/api/i18n.ts b/packages/element-web-module-api/src/api/i18n.ts index a93c247d4b..1e8ac2f64a 100644 --- a/packages/element-web-module-api/src/api/i18n.ts +++ b/packages/element-web-module-api/src/api/i18n.ts @@ -49,4 +49,11 @@ export interface I18nApi { * @param variables - Optional variables to interpolate into the translation */ translate(key: keyof Translations, variables?: Variables): string; + + /** + * Convert a timestamp into a translated, human-readable time, + * using the current system time as a reference, eg. "5 minutes ago". + * @param timeMillis - The time in milliseconds since epoch + */ + humanizeTime(timeMillis: number): string; }