import { Nullable } from 'tsdef'; import { FileData } from './file.types'; export interface MouseClickFilePayload { file: FileData; fileDisplayIndex: number; altKey: boolean; ctrlKey: boolean; shiftKey: boolean; clickType: 'single' | 'double'; } export interface KeyboardClickFilePayload { file: FileData; fileDisplayIndex: number; enterKey: boolean; spaceKey: boolean; altKey: boolean; ctrlKey: boolean; shiftKey: boolean; } export interface StartDragNDropPayload { sourceInstanceId: string; source: Nullable; draggedFile: FileData; selectedFiles: FileData[]; } export type EndDragNDropPayload = StartDragNDropPayload & { destination: FileData; copy: boolean; }; export type MoveFilesPayload = EndDragNDropPayload & { files: FileData[] }; export type ChangeSelectionPayload = { selection: Set }; export type RenameFilePayload ={ file: FileData; } export interface OpenFilesPayload { targetFile?: FileData; files: FileData[]; } export interface OpenFileContextMenuPayload { clientX: number; clientY: number; triggerFileId: Nullable; }