import { Nullable } from 'tsdef'; import { Action, Store, ThunkAction, ThunkDispatch } from '@reduxjs/toolkit'; import { GenericFileActionHandler } from './action-handler.types'; import { FileActionMenuItem } from './action-menus.types'; import { FileAction, FileActionMap } from './action.types'; import { ContextMenuConfig } from './context-menu.types'; import { FileViewConfig } from './file-view.types'; import { FileArray, FileIdTrueMap, FileMap } from './file.types'; import { OptionMap } from './options.types'; import { FileSelection } from './selection.types'; import { SortOrder } from './sort.types'; import { ThumbnailGenerator } from './thumbnails.types'; export type RootState = { instanceId: string; externalFileActionHandler: Nullable>; rawFileActions: FileAction[] | any; fileActionsErrorMessages: string[]; fileActionMap: FileActionMap; fileActionIds: string[]; toolbarItems: FileActionMenuItem[]; contextMenuItems: FileActionMenuItem[]; rawFolderChain: Nullable | any; folderChainErrorMessages: string[]; folderChain: FileArray; rawFiles: FileArray | any; filesErrorMessages: string[]; fileMap: FileMap; fileIds: Nullable[]; cleanFileIds: string[]; sortedFileIds: Nullable[]; hiddenFileIdMap: FileIdTrueMap; focusSearchInput: Nullable<() => void>; searchString: string; searchMode: 'currentFolder'; selectionMap: FileSelection; disableSelection: boolean; fileViewConfig: FileViewConfig; sortActionId: Nullable; sortOrder: SortOrder; optionMap: OptionMap; thumbnailGenerator: Nullable; doubleClickDelay: number; disableDragAndDrop: boolean; clearSelectionOnOutsideClick: boolean; forceEnableOpenParent: boolean; hideToolbarInfo: boolean; lastClick: Nullable<{ index: number; fileId: string; }>; contextMenuMounted: boolean; contextMenuConfig: Nullable; }; export type ChonkyThunk = ThunkAction>; export type ChonkyDispatch = ThunkDispatch>; export type ChonkyStore = Store;