import type { ShellOpenExternalEditorRequest, ShellOpenExternalEditorResult, ShellOpenLocalPathResult } from '../../shared/shell-open-types' export type { ShellOpenExternalEditorRequest, ShellOpenExternalEditorResult, ShellOpenLocalPathResult } from '../../shared/shell-open-types' export type ShellApi = { openPath: (path: string) => Promise openInFileManager: (path: string) => Promise openInExternalEditor: ( request: ShellOpenExternalEditorRequest ) => Promise openUrl: (url: string) => Promise openFilePath: (path: string) => Promise openFileUri: (uri: string) => Promise pathExists: (path: string) => Promise pickAttachment: () => Promise pickImage: () => Promise pickRepoIconImage: () => Promise<{ dataUrl: string fileName: string } | null> pickAudio: () => Promise pickDirectory: (args: { defaultPath?: string }) => Promise copyFile: (args: { srcPath: string; destPath: string }) => Promise }