diff --git a/src/components/views/elements/AccessibleButton.tsx b/src/components/views/elements/AccessibleButton.tsx
index 0ce9a3a030..75b6890112 100644
--- a/src/components/views/elements/AccessibleButton.tsx
+++ b/src/components/views/elements/AccessibleButton.tsx
@@ -19,7 +19,7 @@ import React, { ReactHTML } from 'react';
import { Key } from '../../../Keyboard';
import classnames from 'classnames';
-export type ButtonEvent = React.MouseEvent | React.KeyboardEvent;
+export type ButtonEvent = React.MouseEvent | React.KeyboardEvent | React.FormEvent;
/**
* children: React's magic prop. Represents all children given to the element.
@@ -39,7 +39,7 @@ interface IProps extends React.InputHTMLAttributes {
tabIndex?: number;
disabled?: boolean;
className?: string;
- onClick(e?: ButtonEvent): void;
+ onClick(e?: ButtonEvent): void | Promise;
}
interface IAccessibleButtonProps extends React.InputHTMLAttributes {
diff --git a/src/components/views/settings/ProfileSettings.tsx b/src/components/views/settings/ProfileSettings.tsx
index 9bd7179f08..e6e68299cb 100644
--- a/src/components/views/settings/ProfileSettings.tsx
+++ b/src/components/views/settings/ProfileSettings.tsx
@@ -27,10 +27,6 @@ import { mediaFromMxc } from "../../../customisations/Media";
import AccessibleButton from '../elements/AccessibleButton';
import AvatarSetting from './AvatarSetting';
-interface IProps {
-
-}
-
interface IState {
userId?: string;
originalDisplayName?: string;
@@ -42,9 +38,9 @@ interface IState {
}
@replaceableComponent("views.settings.ProfileSettings")
-export default class ProfileSettings extends React.Component {
+export default class ProfileSettings extends React.Component<{}, IState> {
private avatarUpload: React.RefObject = createRef();
- constructor(props: IProps) {
+ constructor(props: {}) {
super(props);
const client = MatrixClientPeg.get();
@@ -205,7 +201,7 @@ export default class ProfileSettings extends React.Component {