UNPKG

@apistudio/apim-cli

Version:

CLI for API Management Products

50 lines 2.48 kB
/** * Copyright IBM Corp. 2024, 2025 */ import { FileAccessType } from '../../api-authoring/interfaces/api-spec-handler.interface.js'; import { APICFileInfo } from '../../apic-mode/models/apic-file-info.model.js'; import { EditorTab } from '../../common/models/editor-tab.model.js'; import { FileExplorerNode } from '../../common/models/file-explorer.model.js'; import { IlintResponse } from '../../common/models/lint-response.model.js'; import { VCSFileInfo } from '../../vcs/models/vcs-file-info.model.js'; type NestedHashMap = { [key: string]: string; }; type HashMap = { [key: string]: NestedHashMap; }; type EditorState = { editorId: number; hm: HashMap; activeTab: EditorTab | -1; tabs: EditorTab[]; fileExplorerInfo: { selectedNode: FileExplorerNode | null; }; }; type EditorAction = { initialize: (editorId: number, activeTab: EditorTab | -1, tabs: EditorTab[], hm: HashMap) => void; loadDataFromIndexedDb: () => Promise<void>; openFile: (file: FileSystemFileHandle, directoryHandle: FileSystemDirectoryHandle, index?: number, lineNumber?: number) => Promise<void>; removeFile: (id: number) => Promise<number>; renameFile: (oldFileTabId: number, oldFileName: string, newFile: FileAccessType) => Promise<void>; saveFile: (fileHandle: FileSystemFileHandle | VCSFileInfo | APICFileInfo, fileContent: string) => Promise<boolean>; changeLine: (value: number, column: number) => void; setActiveTab: (editorTab: EditorTab) => void; reset: () => void; openVCSFile: (fileInfo: VCSFileInfo, lineNumber?: number) => Promise<void>; updateLintResult: (lintResponse: IlintResponse[]) => void; resetActiveTab: (tab?: EditorTab) => void; getEditorId: (file: FileSystemFileHandle | VCSFileInfo | APICFileInfo) => number; updateTabsOnFormSave: (file: FileSystemFileHandle | VCSFileInfo | APICFileInfo) => Promise<void>; updateTab: (file: FileSystemFileHandle | VCSFileInfo | APICFileInfo) => Promise<void>; setFileExplorerInfo: (node: FileExplorerNode | null) => void; readFile: (file: FileSystemFileHandle | VCSFileInfo | APICFileInfo, directoryHandle: FileSystemDirectoryHandle, isVCSFile: boolean) => Promise<{ filePath: string; content?: any; } | undefined>; openAPICFile: (fileInfo: APICFileInfo, lineNumber?: number) => Promise<void>; }; export type EditorStore = EditorState & EditorAction; export {}; //# sourceMappingURL=editor.store.model.d.ts.map