import type { IAIAssistantProOptions } from "./plugins/ai-assistant-pro/interface/index"; import type { AutoCompleteDisplayMode } from "./plugins/autocomplete/interface"; import type { IAutoCompleteItem } from "./plugins/autocomplete/interface"; import type { AutoCompleteSource } from "./plugins/autocomplete/interface"; import type { ISnapshotStorage } from "./plugins/backup/interface"; import type { IEmojiData } from "./plugins/emoji/interface"; import type { AjaxOptions } from "jodit/esm/types/index"; import type { DeepPartial } from "jodit/esm/types/index"; import type { IUIMapBaseState } from "./plugins/google-maps/interface"; import type { ICircleState } from "./plugins/google-maps/interface"; import type { IPolygonState } from "./plugins/google-maps/interface"; import type { IPolylineState } from "./plugins/google-maps/interface"; import type { IMarkerState } from "./plugins/google-maps/interface"; import type { ITextState } from "./plugins/google-maps/interface"; import type { HTMLTagNames } from "jodit/esm/types/index"; import type { IDictionary } from "jodit/esm/types/index"; import type { IJodit } from "jodit/esm/types/index"; import type { IKeys } from "./plugins/keyboard/interface"; import type { ButtonGroup } from "jodit/esm/types/index"; import type { ILayoutKeys } from "./plugins/keyboard/interface"; import type { CanPromise } from "jodit/esm/types/index"; import type { IUIOption } from "jodit/esm/types/index"; import type { IStyleDefinition } from "./plugins/style/interface"; import type { ITemplateDefinition } from "./plugins/templates/interface"; import type { ITranslateProviderFactory } from "./plugins/translate/interface"; import type { IGoogleTranslateProviderOptions } from "./plugins/translate/interface"; import type { ICloudTranslateProviderOptions } from "./plugins/translate/interface"; import type { IControlType } from "jodit/esm/types/index"; declare module 'jodit/esm/config' { interface Config { loadExternalConfig: boolean; } } export { Config }; interface Config { loadExternalConfig: boolean; } interface Config { aiAssistantPro: IAIAssistantProOptions; } interface Config { autocomplete: { displayMode: AutoCompleteDisplayMode; maxItems: number; isMatchedQuery: (query: string, value: string) => boolean; itemRenderer: (item: IAutoCompleteItem) => string | HTMLElement; insertValueRenderer: (item: IAutoCompleteItem) => string | HTMLElement; sources: AutoCompleteSource[]; }; } interface Config { backup: { interval: number; limit: number; remoteStore?: ISnapshotStorage; dialogWidth: number; hotkeys: string[]; formatDate?: (timestamp: string | Date) => string; }; } interface Config { emoji: { data: () => Promise; enableAutoComplete: boolean; recentCountLimit: number; }; } interface Config { exportDocs: { ajax?: AjaxOptions; css: string; pdf: { allow: boolean; externalFonts: string[]; /** * Custom client-side converter function. * Receives the HTML string and should return a Blob with the PDF content. * When set, the server request is skipped entirely. * Default: null (uses server-side conversion via Ajax) */ converter: ((html: string) => Promise) | null; options: { defaultFont: 'courier' | 'courier-bold' | 'courier-oblique' | 'courier-boldoblique' | 'helvetica' | 'helvetica-bold' | 'helvetica-oblique' | 'helvetica-boldoblique' | 'times-roman' | 'times-bold' | 'times-italic' | 'times-bolditalic' | 'symbol' | 'zapfdingbats'; /** * Page format. Default is A4 */ format: 'A4' | 'A3' | 'A5' | 'Letter' | 'Legal'; page_orientation: 'landscape' | 'portrait'; }; }; docx: { allow: boolean; /** * Output filename. * Default: 'document.docx' for server-side, change to 'document.doc' for HTML-based client converters. */ filename: string; /** * Custom client-side converter function. * Receives the HTML string and should return a Blob with the DOCX content. * When set, the server request is skipped entirely. * Default: null (uses server-side conversion via Ajax) */ converter: ((html: string) => Promise) | null; }; }; } interface Config { googleMaps: { saveStateInStorage: boolean; useStaticImage: boolean; apiUrl: string; API_KEY: string; inlineEditorOptions: DeepPartial; dialog: { size: [ number, number ]; }; map: { center: 'auto' | [ number, number ]; type: IUIMapBaseState['type']; layer: IUIMapBaseState['layer']; defaultCenter: IUIMapBaseState['center']; defaultZoom: number; zoom: number; size: [ number, number ]; defaultStates: { circle: Partial; polygon: Partial; polyline: Partial; marker: Partial; text: Partial; }; }; }; } interface Config { highlightSignature: { processDelay: number; processInChunkCount: number; excludeTags: HTMLTagNames[]; schema: IDictionary<(jodit: IJodit, matches: RegExpMatchArray) => HTMLElement>; }; } interface Config { keyboard: { keySize: number; layout: number[][]; extraKeyButtons: Array; extraKeyGroup: ButtonGroup; layoutList: IDictionary; defaultLayoutSet: string; showLayoutSwitcher: boolean; layoutSwitchList: string[]; delayKeyRepeat: number; periodKeyRepeat: number; }; } interface Config { mobileView: { mode: string | number; }; } interface Config { pageBreak: { separator: string; }; } interface Config { pasteCode: { globalHighlightLib: boolean; canonicalLanguageCode: (lang: string) => string; highlightLib: { highlight: (code: string, language: string) => string; isLangLoaded: (lang: string) => boolean; langUrl: (lang: string) => string; beforeLibLoad?: () => CanPromise; afterLibLoad?: () => CanPromise; js: string[]; css: string[]; }; defaultLanguage: string; languages: IUIOption[]; insertTemplate: (jodit: IJodit, language: string, value: string) => string; dialog: { width: number; height: number; }; }; } interface Config { pasteFromWord: { /** * Turn off heuristic analysis when pasting from word */ enable: boolean; /** * Convert units to px */ convertUnitsToPixel: boolean; /** * List of attributes which should not be removed when pasting from word */ allowedStyleProps?: string[]; }; } interface Config { showBlocks: { enable: boolean; color: string; tagList: string[]; }; } interface Config { customStyles: { definitions: IStyleDefinition[]; }; } interface Config { contentTemplates: { definitions: ITemplateDefinition[]; }; } interface Config { todoList: { className: string; labelClassName: string; inputFactory: (jodit: IJodit) => HTMLElement; }; } interface Config { translate: { hotkeys: { translateSelection: string[]; translateOptions: string[]; }; provider: 'google' | 'cloud' | ITranslateProviderFactory; googleProviderOptions: IGoogleTranslateProviderOptions; cloudProviderOptions: ICloudTranslateProviderOptions; defaultSourceLang: string; defaultTargetLang: string; }; } interface Config { tuneBlock: { popup: IDictionary>; }; }