import type { IFormVM } from "@webiny/app-admin/features/formModel/abstractions.js"; import type { FmFile } from "../../features/shared/types.js"; export interface IFileDetailsViewModel { file: FmFile | null; loading: string | null; form: IFormVM; previewUrl: string | null; permissions: { canEdit: boolean; canDelete: boolean; }; } export interface IFileDetailsPresenter { vm: IFileDetailsViewModel; loadFile(id: string): Promise; saveFile(): Promise; /** Replace the currently displayed file (e.g. after an out-of-band update). */ setFile(file: FmFile): void; } export declare const FileDetailsPresenter: import("@webiny/di").Abstraction; export declare namespace FileDetailsPresenter { type Interface = IFileDetailsPresenter; type ViewModel = IFileDetailsViewModel; }