message: Improve TS in SenderProfile
diff: */
  import React from 'react';
  +import { MatrixEvent } from "matrix-js-sdk/src/models/event";
  +
  import Flair from '../elements/Flair';
  import FlairStore from '../../../stores/FlairStore';
  import { getUserNameColorClass } from '../../../utils/FormattingUtils';
  import MatrixClientContext from "../../../contexts/MatrixClientContext";
  import { replaceableComponent } from "../../../utils/replaceableComponent";
  -import { MatrixEvent } from "matrix-js-sdk/src/models/event";
  +import { MsgType } from "matrix-js-sdk/lib/@types/event";
  interface IProps {
  mxEvent: MatrixEvent;
  @@ -50,7 +52,7 @@ export default class SenderProfile extends React.Component<IProps, IState> {
  componentDidMount() {
  this.unmounted = false;
  - this._updateRelatedGroups();
  + this.updateRelatedGroups();
  if (this.state.userGroups.length === 0) {
  this.getPublicisedGroups();
  @@ -64,7 +66,7 @@ export default class SenderProfile extends React.Component<IProps, IState> {
  this.context.removeListener('RoomState.events', this.onRoomStateEvents);
  }
  - async getPublicisedGroups() {
  + private async getPublicisedGroups() {
  if (!this.unmounted) {
  const userGroups = await FlairStore.getPublicisedGroupsCached(
  this.context, this.props.mxEvent.getSender(),
  @@ -73,15 +75,15 @@ export default class SenderProfile extends React.Component<IProps, IState> {
  }
  }
  - onRoomStateEvents = event => {
  + private onRoomStateEvents = (event: MatrixEvent) => {
  if (event.getType() === 'm.room.related_groups' &&
  event.getRoomId() === this.props.mxEvent.getRoomId()
  ) {
  - this._updateRelatedGroups();
  + this.updateRelatedGroups();
  }
  };
  - _updateRelatedGroups() {
  + private updateRelatedGroups() {
  if (this.unmounted) return;
  const room = this.context.getRoom(this.props.mxEvent.getRoomId());
  if (!room) return;
  @@ -92,7 +94,7 @@ export default class SenderProfile extends React.Component<IProps, IState> {
  });
  }
  - _getDisplayedGroups(userGroups, relatedGroups) {
  + private getDisplayedGroups(userGroups?: string[], relatedGroups?: string[]) {
  let displayedGroups = userGroups || [];
  if (relatedGroups && relatedGroups.length > 0) {
  displayedGroups = relatedGroups.filter((groupId) => {
  @@ -113,7 +115,7 @@ export default class SenderProfile extends React.Component<IProps, IState> {
  const displayName = mxEvent.sender?.rawDisplayName || mxEvent.getSender() || "";
  const mxid = mxEvent.sender?.userId || mxEvent.getSender() || "";
  - if (msgtype === 'm.emote') {
  + if (msgtype === MsgType.Emote) {
  return null; // emote message must include the name so don't duplicate it
  }
  @@ -128,7 +130,7 @@ export default class SenderProfile extends React.Component<IProps, IState> {
  let flair;
  if (this.props.enableFlair) {
  - const displayedGroups = this._getDisplayedGroups(
  + const displayedGroups = this.getDisplayedGroups(
  this.state.userGroups, this.state.relatedGroups,
  );
  