UNPKG

@animech-public/chonky

Version:

A File Browser component for React

65 lines (64 loc) 2.66 kB
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 { CancelSearchCallback, SearchPredicate, SearchInputCallback } from './search.types'; import { RenamingSanitizer } from './rename.types'; export type RootState = { instanceId: string; externalFileActionHandler: Nullable<GenericFileActionHandler<FileAction>>; rawFileActions: FileAction[] | any; fileActionsErrorMessages: string[]; fileActionMap: FileActionMap; fileActionIds: string[]; toolbarItems: FileActionMenuItem[]; contextMenuItems: FileActionMenuItem[]; rawFolderChain: Nullable<FileArray> | any; folderChainErrorMessages: string[]; folderChain: FileArray; rawFiles: FileArray | any; filesErrorMessages: string[]; fileMap: FileMap; fileIds: Nullable<string>[]; cleanFileIds: string[]; sortedFileIds: Nullable<string>[]; hiddenFileIdMap: FileIdTrueMap; focusSearchInput: Nullable<() => void>; onSearchInput: Nullable<SearchInputCallback>; onCancelSearch: Nullable<CancelSearchCallback>; searchPredicate: Nullable<SearchPredicate>; searchString: string; searchMode: 'currentFolder'; selectionMap: FileSelection; disableSelection: boolean; disableSimpleDeselection: boolean; fileViewConfig: FileViewConfig; sortActionId: Nullable<string>; sortOrder: SortOrder; optionMap: OptionMap; sortCollator: Nullable<Intl.Collator>; doubleClickDelay: number; disableDragAndDrop: boolean; clearSelectionOnOutsideClick: boolean; forceEnableOpenParent: boolean; hideToolbarInfo: boolean; lastClick: Nullable<{ index: number; fileId: string; }>; contextMenuMounted: boolean; contextMenuConfig: Nullable<ContextMenuConfig>; renamingFileId: Nullable<string>; renamingSanitizer: Nullable<RenamingSanitizer>; disableRenaming: boolean; }; export type ChonkyThunk<ReturnType = void> = ThunkAction<ReturnType, RootState, null, Action<string>>; export type ChonkyDispatch = ThunkDispatch<RootState, null, Action<string>>; export type ChonkyStore = Store<RootState>;