react-dnd-accessible-backend
Version:
An add-on backend for react-dnd that provides support for keyboards and screenreaders by default.
26 lines (25 loc) • 1.01 kB
TypeScript
import { AnnouncementMessages } from "./util/AnnouncementMessages";
type Assertiveness = "assertive" | "polite";
export interface Announcer {
announce(message: string, assertiveness?: Assertiveness, timeout?: number): void;
clearAnnouncements(assertiveness?: Assertiveness): void;
destroy?(): void;
}
interface AnnouncerOptions {
getAnnouncementMessages?: () => AnnouncementMessages;
announcer?: Announcer;
}
export default class DragAnnouncer {
private announcer;
private externalAnnouncer;
private getMessages;
constructor({ getAnnouncementMessages, announcer }?: AnnouncerOptions);
announce(message: string, assertiveness?: Assertiveness, timeout?: number): void;
announceDrag(node: HTMLElement | null, id: string): void;
announceHover(node: HTMLElement | null, id: string): void;
announceDrop(node: HTMLElement | null, id: string): void;
announceCancel(node: HTMLElement | null, id: string): void;
clear(): void;
destroy(): void;
}
export {};