44 lines
883 B
TypeScript
44 lines
883 B
TypeScript
import { FileItem } from '@standardnotes/snjs'
|
|
|
|
export enum FileItemActionType {
|
|
AttachFileToNote,
|
|
DetachFileToNote,
|
|
DeleteFile,
|
|
DownloadFile,
|
|
RenameFile,
|
|
ToggleFileProtection,
|
|
PreviewFile,
|
|
}
|
|
|
|
export type FileItemAction =
|
|
| {
|
|
type: Exclude<
|
|
FileItemActionType,
|
|
FileItemActionType.RenameFile | FileItemActionType.ToggleFileProtection | FileItemActionType.PreviewFile
|
|
>
|
|
payload: {
|
|
file: FileItem
|
|
}
|
|
}
|
|
| {
|
|
type: FileItemActionType.ToggleFileProtection
|
|
payload: {
|
|
file: FileItem
|
|
}
|
|
callback: (isProtected: boolean) => void
|
|
}
|
|
| {
|
|
type: FileItemActionType.RenameFile
|
|
payload: {
|
|
file: FileItem
|
|
name: string
|
|
}
|
|
}
|
|
| {
|
|
type: FileItemActionType.PreviewFile
|
|
payload: {
|
|
file: FileItem
|
|
otherFiles?: FileItem[]
|
|
}
|
|
}
|