import DragPreviewer from "./DragPreviewer"; import type { Announcer } from "./DragAnnouncer"; import type { Backend, BackendFactory, DragDropManager, Unsubscribe } from "dnd-core"; import type { AnnouncementMessages } from "./util/AnnouncementMessages"; interface KeyboardBackendContext { window?: Window; document?: Document; } interface KeyboardBackendOptions { onDndModeChanged?: (enabled: boolean) => unknown; isDragTrigger?: (event: KeyboardEvent, isFirstEvent: boolean) => boolean; getAnnouncementMessages?: () => AnnouncementMessages; announcer?: Announcer; previewerClassName?: string; preview?: boolean; } export declare class KeyboardBackend implements Backend { private static isSetUp; private manager; private actions; private monitor; private context; private options?; private sourceNodes; private sourcePreviewNodes; private sourcePreviewNodeOptions; private targetNodes; private _navigator; _previewer: DragPreviewer; private _announcer; private _previewEnabled; private _isDragTrigger; private _handlingFirstEvent; constructor(manager: DragDropManager, context: KeyboardBackendContext, options?: KeyboardBackendOptions); setup(): void; teardown(): void; private handleGlobalKeyDown; private setDndMode; profile(): Record; connectDragSource(sourceId: string, node: HTMLElement): Unsubscribe; connectDragPreview(sourceId: string, node: HTMLElement, options: any): Unsubscribe; connectDropTarget(targetId: string, node: HTMLElement): Unsubscribe; private getSourceClientOffset; private handleDragStart; private handleDrop; private endDrag; } declare const createKeyboardBackendFactory: BackendFactory; export default createKeyboardBackendFactory;