import { App, PluginSettingTab } from "obsidian"; import type ExcalidrawPlugin from "./main"; import { PenStyle } from "./PenTypes"; import { DynamicStyle } from "./types"; import { PreviewImageType } from "./utils/UtilTypes"; export interface ExcalidrawSettings { folder: string; embedUseExcalidrawFolder: boolean; templateFilePath: string; scriptFolderPath: string; compress: boolean; autosave: boolean; autosaveInterval: number; autosaveIntervalDesktop: number; autosaveIntervalMobile: number; drawingFilenamePrefix: string; drawingEmbedPrefixWithFilename: boolean; drawingFilnameEmbedPostfix: string; drawingFilenameDateTime: string; useExcalidrawExtension: boolean; displaySVGInPreview: boolean; previewImageType: PreviewImageType; allowImageCache: boolean; displayExportedImageIfAvailable: boolean; previewMatchObsidianTheme: boolean; width: string; dynamicStyling: DynamicStyle; isLeftHanded: boolean; iframeMatchExcalidrawTheme: boolean; matchTheme: boolean; matchThemeAlways: boolean; matchThemeTrigger: boolean; defaultMode: string; defaultPenMode: "never" | "mobile" | "always"; allowPinchZoom: boolean; allowWheelZoom: boolean; zoomToFitOnOpen: boolean; zoomToFitOnResize: boolean; zoomToFitMaxLevel: number; openInAdjacentPane: boolean; openInMainWorkspace: boolean; showLinkBrackets: boolean; linkPrefix: string; urlPrefix: string; parseTODO: boolean; todo: string; done: string; hoverPreviewWithoutCTRL: boolean; linkOpacity: number; allowCtrlClick: boolean; forceWrap: boolean; pageTransclusionCharLimit: number; wordWrappingDefault: number; removeTransclusionQuoteSigns: boolean; iframelyAllowed: boolean; pngExportScale: number; exportWithTheme: boolean; exportWithBackground: boolean; exportPaddingSVG: number; keepInSync: boolean; autoexportSVG: boolean; autoexportPNG: boolean; autoExportLightAndDark: boolean; autoexportExcalidraw: boolean; embedType: "excalidraw" | "PNG" | "SVG"; embedWikiLink: boolean; syncExcalidraw: boolean; compatibilityMode: boolean; experimentalFileType: boolean; experimentalFileTag: string; experimentalLivePreview: boolean; experimentalEnableFourthFont: boolean; experimantalFourthFont: string; fieldSuggester: boolean; drawingOpenCount: number; library: string; library2: {}; imageElementNotice: boolean; mdSVGwidth: number; mdSVGmaxHeight: number; mdFont: string; mdFontColor: string; mdBorderColor: string; mdCSS: string; scriptEngineSettings: { [key: string]: { [key: string]: { value?: string; hidden?: boolean; description?: string; valueset?: string[]; height?: number; }; }; }; defaultTrayMode: boolean; previousRelease: string; showReleaseNotes: boolean; showNewVersionNotification: boolean; mathjaxSourceURL: string; latexBoilerplate: string; taskboneEnabled: boolean; taskboneAPIkey: string; pinnedScripts: string[]; customPens: PenStyle[]; numberOfCustomPens: number; pdfScale: number; pdfBorderBox: boolean; pdfGapSize: number; pdfLockAfterImport: boolean; pdfNumColumns: number; pdfImportScale: number; } export declare const DEFAULT_SETTINGS: ExcalidrawSettings; export declare class ExcalidrawSettingTab extends PluginSettingTab { plugin: ExcalidrawPlugin; private requestEmbedUpdate; private requestReloadDrawings; private requestUpdatePinnedPens; private requestUpdateDynamicStyling; private reloadMathJax; constructor(app: App, plugin: ExcalidrawPlugin); applySettingsUpdate(requestReloadDrawings?: boolean): void; hide(): Promise; display(): Promise; }