import { App, Instruction, TFile } from "obsidian"; import ExcalidrawView from "./ExcalidrawView"; import ExcalidrawPlugin from "./main"; import { ButtonDefinition } from "./dialogs/Prompt"; export type ScriptIconMap = { [key: string]: { name: string; group: string; svgString: string; }; }; export declare class ScriptEngine { private plugin; private scriptPath; scriptIconMap: ScriptIconMap; constructor(plugin: ExcalidrawPlugin); registerEventHandlers(): void; updateScriptPath(): void; getListofScripts(): TFile[]; loadScripts(): void; getScriptName(f: TFile | string): string; addScriptIconToMap(scriptPath: string, name: string): Promise; loadScript(f: TFile): void; unloadScripts(): void; unloadScript(basename: string, path: string): void; executeScript(view: ExcalidrawView, script: string, title: string, file: TFile): Promise; private updateToolPannels; static inputPrompt(view: ExcalidrawView, plugin: ExcalidrawPlugin, app: App, header: string, placeholder?: string, value?: string, buttons?: ButtonDefinition[], lines?: number, displayEditorButtons?: boolean, customComponents?: (container: HTMLElement) => void, blockPointerInputOutsideModal?: boolean): Promise; static suggester(app: App, displayItems: string[], items: any[], hint?: string, instructions?: Instruction[]): Promise; }