@min98/filemanager-react
Version:
Package FE FileManager for min98/laravel-filemanager
957 lines (941 loc) • 29 kB
TypeScript
import React from 'react';
import * as axios from 'axios';
import { AxiosResponse } from 'axios';
import * as react_jsx_runtime from 'react/jsx-runtime';
import * as _reduxjs_toolkit from '@reduxjs/toolkit';
import * as redux_thunk from 'redux-thunk';
import * as redux_persist_es_persistReducer from 'redux-persist/es/persistReducer';
import * as redux from 'redux';
import { TypedUseSelectorHook } from 'react-redux';
interface Response {
status?: string;
msg?: string;
}
type ViewMode = "list" | "grid";
type InitConfig = {
baseUrl: string;
authenticate?: string;
};
type fmState = {
baseUrl: string;
authenticate?: string;
config?: Config;
view: ViewMode;
disks: string[];
selectDisk?: string;
selectFolder?: string;
tree: DirectoryTree[];
content: {
directories: Directory[];
files: File[];
};
clipboard?: Clipboard;
select?: fmSelect;
selects: fmSelects;
reload?: boolean;
};
type DirectoryTree = {
open?: boolean;
} & Directory;
type fmSelect = File | Directory;
type fmSelects = (File | Directory)[];
type TypeItem = "dir" | "file";
type Disks = {
[key: string]: {
drive: string;
};
};
type Driver = {
driver: string;
};
type File = {
type: string;
path: string;
basename: string;
dirname: string;
extension: string;
filename: string;
size: number;
timestamp: number;
visibility: string;
url?: string;
};
type Directory = {
type: "dir";
path: string;
basename: string;
dirname?: string;
timestamp?: number;
visibility?: number;
props?: {
hasSubdirectories: boolean;
};
};
type Upload = {
disk: string;
path: string;
files: File[];
overwrite: boolean;
};
type Config = {
acl: boolean;
leftDisk?: string;
rightDisk?: string;
leftPath?: string;
rightPath?: string;
windowsConfig: number;
hiddenFiles: boolean;
disks: Disks;
lang: string;
};
type defaultPayload = {
disk?: string;
path?: string;
};
type PayloadInfo = {
disk?: string;
paths?: string[];
};
interface InfoFile extends File {
id: number;
user_id: number;
disk: string;
url?: string;
status?: number;
created_at?: string;
updated_at?: string;
deleted_at?: string;
}
type Tree = {
directories: Directory[];
};
type Content = {
directories: Directory[] | [];
files: File[] | [];
};
type Item = {
path: string;
type: string;
};
type PayloadItem = {
disk: string;
items?: Item[];
};
type ClipboardType = "copy" | "cut";
interface Clipboard {
type: ClipboardType;
disk: string;
directories?: string[];
files?: string[];
}
type ClipboardPayload = {
disk: string;
path: string;
clipboard: Clipboard;
};
type RenamePayload = {
disk?: string;
oldName?: string;
newName?: string;
type?: string;
};
type CreateDirPayload = {
disk: string;
path: string;
name: string;
};
type CreateFilePayload = {
disk: string;
path: string;
name: string;
};
type UpdateFilePayload = {
disk: string;
path?: string;
file: File;
};
type ZipPayload = {
disk: string;
path?: string;
name: string;
elements: {
directories?: string[];
files?: string[];
};
};
type unZipPayload = {
disk: string;
path: string;
folder: string;
};
interface ConfigResponse extends Response {
results: Config[];
}
interface ContentResponse extends Response {
results: Content;
}
interface TreeResponse extends Response {
results: Tree;
}
interface PayloadUpload extends Upload {
}
interface AllFileResponse extends Response {
results: File[];
}
interface FileResponse extends Response {
results: File;
}
type getConfigResponse = AxiosResponse<{
statusCode: number;
data: ConfigResponse;
}>;
type getContentResponse = AxiosResponse<{
statusCode: number;
data: ContentResponse;
}>;
type getTreeResponse = AxiosResponse<{
statusCode: number;
data: TreeResponse;
}>;
type actionFileResponse = AxiosResponse<{
statusCode: number;
data: Response;
}>;
type getAllFileResponse = AxiosResponse<{
statusCode: number;
data: AllFileResponse;
}>;
type getFileResponse = AxiosResponse<{
statusCode: number;
data: FileResponse;
}>;
interface FileManagerProps {
className?: string;
open: boolean;
onClose: () => void;
clearTime?: number;
multiple?: boolean;
onSelect?: (select?: InfoFile[]) => void;
}
declare const FileManager: React.FC<FileManagerProps>;
/**
* convert bytes to human
* @param bytes number
* @returns
*/
declare const bytesToHuman: (bytes: number) => string;
/**
* timestamp to date
* @param timestamp number
* @returns
*/
declare const timestampToDate: (timestamp: number, lang?: string) => string;
/**
* extension to icon
* @param extension string
* @returns
*/
declare const extensionToIcon: (extension: string) => string;
/**
* check extension
* @param extension string
* @returns
*/
declare const checkExtension: (extension: string) => "image" | "video" | "audio" | "text" | "";
/**
* get type
* @param extension string
* @returns
*/
declare const getType: (extension: string) => string;
/**
* split file name
* @param fileName string
* @returns
*/
declare const splitFileName: (fileName: string) => string;
interface LangProviderProps {
lang?: string;
children: React.ReactNode;
}
declare const LangProvider: React.FC<LangProviderProps>;
declare const translations: {
en: {
Unauthenticated: string;
"This action is unauthorized.": string;
common: {
list: string;
add: string;
edit: string;
delete: string;
restore: string;
forceDelete: string;
trash: string;
decentralize: string;
close: string;
save: string;
saving: string;
refresh: string;
accept: string;
confirm: string;
update: string;
ok: string;
cancel: string;
"confirm-this-task": string;
"fail-to-load-data": string;
unknown_error: string;
"internal-server-error": string;
"bad-request": string;
"forbiden-request": string;
"fail-to-load-all-code": string;
};
status: {
error: string;
success: string;
warning: string;
};
label: {
enable: string;
active: string;
disable: string;
show: string;
error: string;
success: string;
warning: string;
account: string;
name: string;
username: string;
email: string;
login: string;
register: string;
password: string;
password_confirmation: string;
display_name: string;
action: string;
status: string;
banned: string;
permitted: string;
created_at: string;
updated_at: string;
deleted_at: string;
time: string;
details: string;
price: string;
image: string;
upload: string;
"drag-drop": string;
ready_upload: string;
config: string;
system: string;
disk: string;
logo: string;
need_select_item: string;
clipboard_notfound: string;
basename: string;
dirname: string;
new_name: string;
detail: string;
preview: string;
upload_file: string;
url: string;
filesystem: string;
images: string;
type: string;
visibility: string;
checkbox: string;
radio: string;
fileSelect: string;
size: string;
date: string;
view: string;
download: string;
copy: string;
cut: string;
paste: string;
rename: string;
zip: string;
delete: string;
properties: string;
new_folder: string;
new_file: string;
path: string;
modified: string;
get_url: string;
open: string;
clipboard: string;
can_paste: string;
reload: string;
copyUrl: string;
clear_item: string;
clear_clipboard: string;
table_view: string;
grid_view: string;
right_click: string;
unknown: string;
undefined: string;
no_image: string;
access_denied: string;
change: string;
page: string;
go_to_page: string;
of: string;
list: string;
add: string;
edit: string;
deleted: string;
dashboard: string;
value: string;
no_data: string;
required: string;
previous: string;
next: string;
first: string;
last: string;
random: string;
random_desc: string;
invalid_type: string;
language: string;
browse: string;
or: string;
overwrite: string;
skip: string;
compress: string;
crop: string;
disk_selected: string;
};
tooltip: {
previous: string;
next: string;
first: string;
last: string;
copy: string;
remove: string;
add: string;
get_url: string;
};
ask: {
change: string;
restore: string;
forceDelete: string;
move_to_trash: string;
delete: string;
};
table: {
columns: string;
no_data: string;
};
placeholder: {
name: string;
new_name: string;
email: string;
choose_select: string;
code: string;
description: string;
};
};
vi: {
Unauthenticated: string;
"This action is unauthorized.": string;
common: {
list: string;
add: string;
edit: string;
delete: string;
restore: string;
forceDelete: string;
trash: string;
decentralize: string;
close: string;
save: string;
saving: string;
refresh: string;
accept: string;
confirm: string;
update: string;
ok: string;
cancel: string;
"confirm-this-task": string;
"fail-to-load-data": string;
unknown_error: string;
"internal-server-error": string;
"bad-request": string;
"forbiden-request": string;
"fail-to-load-all-code": string;
};
status: {
error: string;
success: string;
warning: string;
};
label: {
enable: string;
active: string;
inActive: string;
disable: string;
show: string;
error: string;
success: string;
warning: string;
name: string;
action: string;
status: string;
banned: string;
permitted: string;
created_at: string;
updated_at: string;
deleted_at: string;
time: string;
details: string;
image: string;
upload: string;
"drag-drop": string;
ready_upload: string;
config: string;
system: string;
disk: string;
logo: string;
need_select_item: string;
clipboard_notfound: string;
basename: string;
dirname: string;
new_name: string;
detail: string;
preview: string;
upload_file: string;
url: string;
filesystem: string;
images: string;
type: string;
visibility: string;
fileSelect: string;
size: string;
date: string;
view: string;
download: string;
copy: string;
cut: string;
paste: string;
rename: string;
zip: string;
delete: string;
properties: string;
new_folder: string;
new_file: string;
path: string;
modified: string;
get_url: string;
open: string;
clipboard: string;
can_paste: string;
reload: string;
copyUrl: string;
clear_item: string;
clear_clipboard: string;
table_view: string;
grid_view: string;
right_click: string;
unknown: string;
undefined: string;
no_image: string;
access_denied: string;
change: string;
page: string;
go_to_page: string;
of: string;
list: string;
add: string;
edit: string;
deleted: string;
dashboard: string;
value: string;
no_data: string;
required: string;
previous: string;
next: string;
first: string;
last: string;
random: string;
random_desc: string;
invalid_type: string;
language: string;
browse: string;
or: string;
overwrite: string;
skip: string;
compress: string;
crop: string;
disk_selected: string;
};
tooltip: {
previous: string;
next: string;
first: string;
last: string;
copy: string;
remove: string;
add: string;
get_url: string;
};
ask: {
change: string;
restore: string;
forceDelete: string;
move_to_trash: string;
delete: string;
};
table: {
columns: string;
no_data: string;
};
placeholder: {
name: string;
new_name: string;
email: string;
choose_select: string;
code: string;
description: string;
};
};
};
type SupportedLanguages = keyof typeof translations;
declare function getTranslation(lang: SupportedLanguages, key: string): string;
interface FmConfigProviderProps {
baseUrl: string;
authenticate?: string;
lang?: SupportedLanguages;
clearTime?: number;
children: React.ReactNode;
}
declare const FmConfigContext: React.Context<FmConfigProviderProps | undefined>;
declare const useFmContext: () => FmConfigProviderProps;
declare const FmConfigProvider: React.FC<FmConfigProviderProps>;
interface FileManagerProviderProps extends Omit<FmConfigProviderProps, "children">, FileManagerProps {
}
declare const FileManagerProvider: React.FC<FileManagerProviderProps>;
type LangContextType = {
lang: SupportedLanguages;
setLang: (lang: SupportedLanguages) => void;
t: (key: string) => string;
};
declare const FmLangContext: React.Context<LangContextType | undefined>;
declare const FmLangProvider: React.FC<{
children: React.ReactNode;
initialLang?: SupportedLanguages;
}>;
declare const useFmLang: () => LangContextType;
type ModalState = {
modalDetail: boolean;
modalUpload: boolean;
modalPreview: boolean;
modalRename: boolean;
modalEdit: boolean;
modalCrop: boolean;
modalDelete: boolean;
modalNewFile: boolean;
modalNewFolder: boolean;
toggleNewFile: () => void;
toggleNewFolder: () => void;
toggleUpload: () => void;
toggleModalDetail: () => void;
toggleModalPreview: () => void;
toggleModalRename: () => void;
toggleModalEdit: () => void;
toggleModalCrop: () => void;
toggleModalDelete: () => void;
};
declare const FmModalContext: React.Context<ModalState | undefined>;
declare const useModalContext: () => ModalState;
declare const FmModalProvider: React.FC<{
children: React.ReactNode;
}>;
declare const FmReduxProvider: ({ children }: {
children: React.ReactNode;
}) => react_jsx_runtime.JSX.Element;
declare const store: _reduxjs_toolkit.EnhancedStore<{
fmSlice: fmState & redux_persist_es_persistReducer.PersistPartial;
}, redux.UnknownAction, _reduxjs_toolkit.Tuple<[redux.StoreEnhancer<{
dispatch: redux_thunk.ThunkDispatch<{
fmSlice: fmState & redux_persist_es_persistReducer.PersistPartial;
}, undefined, redux.UnknownAction>;
}>, redux.StoreEnhancer]>>;
type FMStore = typeof store;
type FMRootState = ReturnType<typeof store.getState>;
type FMDispatch = typeof store.dispatch;
declare const useFMDispatch: () => redux_thunk.ThunkDispatch<{
fmSlice: fmState & redux_persist_es_persistReducer.PersistPartial;
}, undefined, redux.UnknownAction> & redux.Dispatch<redux.UnknownAction>;
declare const useFMSelector: TypedUseSelectorHook<FMRootState>;
declare const useFMStore: () => FMStore;
declare const initConfig: _reduxjs_toolkit.ActionCreatorWithPayload<InitConfig, "fm/initConfig">;
declare const clearAuthenticate: _reduxjs_toolkit.ActionCreatorWithoutPayload<"fm/clearAuthenticate">;
declare const setView: _reduxjs_toolkit.ActionCreatorWithPayload<ViewMode, "fm/setView">;
declare const setSelectDisk: _reduxjs_toolkit.ActionCreatorWithPayload<string, "fm/setSelectDisk">;
declare const setSelectFolder: _reduxjs_toolkit.ActionCreatorWithPayload<string, "fm/setSelectFolder">;
declare const setTree: _reduxjs_toolkit.ActionCreatorWithPayload<DirectoryTree[], "fm/setTree">;
declare const setContent: _reduxjs_toolkit.ActionCreatorWithNonInferrablePayload<"fm/setContent"> | _reduxjs_toolkit.ActionCreatorWithoutPayload<"fm/setContent">;
declare const setClipboard: _reduxjs_toolkit.ActionCreatorWithPayload<Clipboard, "fm/setClipboard">;
declare const clearClipboard: _reduxjs_toolkit.ActionCreatorWithoutPayload<"fm/clearClipboard">;
declare const setSelect: _reduxjs_toolkit.ActionCreatorWithPayload<fmSelect, "fm/setSelect">;
declare const setSelects: _reduxjs_toolkit.ActionCreatorWithPayload<fmSelects, "fm/setSelects">;
declare const clearSelect: _reduxjs_toolkit.ActionCreatorWithoutPayload<"fm/clearSelect">;
declare const clearSelects: _reduxjs_toolkit.ActionCreatorWithoutPayload<"fm/clearSelects">;
declare const reloadAction: _reduxjs_toolkit.ActionCreatorWithoutPayload<"fm/reloadAction">;
declare const initializeAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: ConfigResponse;
}, void, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const getTreeAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: TreeResponse;
}, defaultPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const getContentAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: ContentResponse;
}, defaultPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const uploadAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: AllFileResponse;
}, FormData, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const deleteAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: AllFileResponse;
}, PayloadItem, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const pasteAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, ClipboardPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const renameAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, RenamePayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const downloadAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, defaultPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const thumbnailsAction: _reduxjs_toolkit.AsyncThunk<{
type: any;
data: {
statusCode: number;
data: Response;
};
disk: string | undefined;
path: string | undefined;
}, defaultPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const previewAction: _reduxjs_toolkit.AsyncThunk<{
data: {
statusCode: number;
data: Response;
};
type: axios.AxiosHeaderValue | undefined;
}, defaultPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const urlAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, defaultPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const infoAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: InfoFile;
}, PayloadInfo, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const createDirectoryAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, CreateDirPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const createFileAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, CreateFilePayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const directoryExistsAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, defaultPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const updateFileAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, FormData, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const streamFileAction: _reduxjs_toolkit.AsyncThunk<{
data: {
statusCode: number;
data: Response;
};
type: any;
}, defaultPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const zipAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, ZipPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
declare const unZipAction: _reduxjs_toolkit.AsyncThunk<{
statusCode: number;
data: Response;
}, unZipPayload, {
state?: unknown;
dispatch?: redux_thunk.ThunkDispatch<unknown, unknown, redux.UnknownAction> | undefined;
extra?: unknown;
rejectValue?: unknown;
serializedErrorType?: unknown;
pendingMeta?: unknown;
fulfilledMeta?: unknown;
rejectedMeta?: unknown;
}>;
export { type AllFileResponse, type Clipboard, type ClipboardPayload, type ClipboardType, type Config, type ConfigResponse, type Content, type ContentResponse, type CreateDirPayload, type CreateFilePayload, type Directory, type DirectoryTree, type Disks, type Driver, type FMDispatch, type FMRootState, type FMStore, type File, FileManager, FileManagerProvider, type FileManagerProviderProps, type FileResponse, FmConfigContext, FmConfigProvider, type FmConfigProviderProps, FmLangContext, FmLangProvider, FmModalContext, FmModalProvider, FmReduxProvider, type InfoFile, type InitConfig, type Item, type LangContextType, LangProvider, type ModalState, type PayloadUpload, type RenamePayload, type SupportedLanguages, type Tree, type TreeResponse, type TypeItem, type UpdateFilePayload, type Upload, type ViewMode, type ZipPayload, type actionFileResponse, bytesToHuman, checkExtension, clearAuthenticate, clearClipboard, clearSelect, clearSelects, createDirectoryAction, createFileAction, type defaultPayload, deleteAction, directoryExistsAction, downloadAction, extensionToIcon, type fmSelect, type fmSelects, type fmState, type getAllFileResponse, type getConfigResponse, getContentAction, type getContentResponse, type getFileResponse, getTranslation, getTreeAction, type getTreeResponse, getType, infoAction, initConfig, initializeAction, pasteAction, previewAction, reloadAction, renameAction, setClipboard, setContent, setSelect, setSelectDisk, setSelectFolder, setSelects, setTree, setView, splitFileName, store, streamFileAction, thumbnailsAction, timestampToDate, unZipAction, type unZipPayload, updateFileAction, uploadAction, urlAction, useFMDispatch, useFMSelector, useFMStore, useFmContext, useFmLang, useModalContext, zipAction };