matrix-react-sdk
Version:
SDK for matrix.org using React
37 lines (36 loc) • 1.21 kB
TypeScript
import React, { ReactNode } from "react";
import { XOR } from "../../../@types/common";
import { NotificationState } from "../../../stores/notifications/NotificationState";
interface IProps {
notification: NotificationState;
/**
* If true, show nothing if the notification would only cause a dot to be shown rather than
* a badge. That is: only display badges and not dots. Default: false.
*/
hideIfDot?: boolean;
/**
* The room ID, if any, the badge represents.
*/
roomId?: string;
}
interface IClickableProps extends IProps, React.InputHTMLAttributes<Element> {
showUnsentTooltip?: boolean;
/**
* If specified will return an AccessibleButton instead of a div.
*/
onClick(ev: React.MouseEvent): void;
}
interface IState {
showCounts: boolean;
}
export default class NotificationBadge extends React.PureComponent<XOR<IProps, IClickableProps>, IState> {
private countWatcherRef;
constructor(props: IProps);
private get roomId();
componentWillUnmount(): void;
componentDidUpdate(prevProps: Readonly<IProps>): void;
private countPreferenceChanged;
private onNotificationUpdate;
render(): ReactNode;
}
export {};