import * as i0 from '@angular/core';
import { AfterViewInit, OnChanges, OnDestroy, EventEmitter, ElementRef, SimpleChanges } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import * as _codemirror_autocomplete from '@codemirror/autocomplete';
import { CompletionSource, Completion } from '@codemirror/autocomplete';
import { linter, LintSource } from '@codemirror/lint';
import { EditorView, KeyBinding, gutter, DecorationSet, tooltips, hoverTooltip, PanelConstructor, Tooltip, ViewUpdate, Panel } from '@codemirror/view';
import { Extension, EditorState, EditorSelection, EditorStateConfig, TransactionSpec } from '@codemirror/state';
import * as _codemirror_search from '@codemirror/search';
import { codeFolding, foldGutter } from '@codemirror/language';

/** Module type for the optional @codemirror/autocomplete package. */
type AutocompleteModule$1 = typeof _codemirror_autocomplete;

type SearchModule = typeof _codemirror_search;
type AutocompleteModule = typeof _codemirror_autocomplete;
/** Key binding input accepted by the wrapper, either a flat keymap or grouped keymaps. */
type KeymapInput = readonly KeyBinding[] | readonly (readonly KeyBinding[])[];
/** Configuration accepted by @codemirror/search's search extension. */
type CodemirrorSearchConfig = Parameters<SearchModule['search']>[0];
/** Configuration accepted by @codemirror/autocomplete's autocompletion extension. */
type CodemirrorAutocompletionConfig = Parameters<AutocompleteModule['autocompletion']>[0];
/** Configuration accepted by @codemirror/language's codeFolding extension. */
type CodemirrorCodeFoldingConfig = Parameters<typeof codeFolding>[0];
/** Configuration accepted by @codemirror/language's foldGutter extension. */
type CodemirrorFoldGutterConfig = Parameters<typeof foldGutter>[0];
/** Configuration accepted by @codemirror/lint's linter extension. */
type CodemirrorLintConfig = Parameters<typeof linter>[1];
/** Configuration accepted by @codemirror/view's gutter extension. */
type CodemirrorGutterConfig = Parameters<typeof gutter>[0];
/** Static or computed attributes for CodeMirror editor/content DOM elements. */
type CodemirrorAttributeSource = Record<string, string> | ((view: EditorView) => Record<string, string> | null);
/** Style spec accepted by EditorView.baseTheme. */
type CodemirrorBaseTheme = Parameters<typeof EditorView.baseTheme>[0];
/** Configuration accepted by @codemirror/view's tooltips extension. */
type CodemirrorTooltipConfig = Parameters<typeof tooltips>[0];
/** Source function accepted by @codemirror/view's hoverTooltip extension. */
type CodemirrorHoverTooltipSource = Parameters<typeof hoverTooltip>[0];
/** Options accepted by @codemirror/view's hoverTooltip extension. */
type CodemirrorHoverTooltipOptions = Parameters<typeof hoverTooltip>[1];
/** Decoration source accepted by EditorView.decorations. */
type CodemirrorDecorationSource = DecorationSet | ((view: EditorView) => DecorationSet);
/** Simple mark decoration range used by the wrapper markedRanges input. */
interface CodemirrorMarkedRange {
    /** Inclusive start document offset, clamped to zero by the wrapper. */
    from: number;
    /** Exclusive end document offset, clamped to the document length by the wrapper. */
    to: number;
    /** CSS class applied to the marked range. */
    class?: string;
    /** DOM attributes applied to the generated mark. */
    attributes?: Record<string, string>;
    /** Optional tag name used for the mark element. */
    tagName?: string;
    /** Whether the mark is inclusive on both sides. */
    inclusive?: boolean;
    /** Whether the mark includes inserted content at the start boundary. */
    inclusiveStart?: boolean;
    /** Whether the mark includes inserted content at the end boundary. */
    inclusiveEnd?: boolean;
}
/** Folded range returned by getFoldedRanges. */
interface CodemirrorFoldedRange {
    /** Fold start document offset. */
    from: number;
    /** Fold end document offset. */
    to: number;
}

/**
 * The MIT License (MIT)
 *
 * Copyright (c) 2023-2026 Stefano Cappa (Ks89)
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

/**
 * Angular wrapper component for CodeMirror 6.
 * Provides declarative inputs for common CodeMirror extensions plus imperative methods for editor commands.
 */
declare class CodemirrorComponent implements AfterViewInit, ControlValueAccessor, OnChanges, OnDestroy {
    /** Initial and externally controlled editor document text. */
    content: string;
    /** Additional CodeMirror extensions appended after the wrapper-managed extensions. */
    appendExtensions: Extension[];
    /** Language support extension, such as one returned by a @codemirror/lang-* package. */
    language: Extension;
    /**
     * Main switch for read-only mode.
     * Maps to CodeMirror's EditorState.readOnly facet, which editing commands and extensions consult before changing the document.
     * In most applications this is the only input you need: true makes the editor read-only, false makes it editable.
     */
    readOnly: boolean;
    /**
     * Advanced DOM editability override.
     * Maps to CodeMirror's EditorView.editable facet, which controls whether the content DOM is browser-editable/focusable.
     * Leave null for normal use; the wrapper then derives it from readOnly with editable = !readOnly.
     */
    editable: boolean | null;
    /** Theme extension or extensions applied to the editor view. */
    theme: Extension | Extension[];
    /** Enables CodeMirror's line wrapping extension for long visual lines. */
    lineWrapping: boolean;
    /** Placeholder text shown when the editor document is empty. */
    placeholder: string;
    /** Shows a line-number gutter. */
    lineNumbers: boolean;
    /** Custom formatter for displayed line numbers in the line-number gutter. */
    lineNumberFormatter: ((lineNo: number, state: EditorState) => string) | null;
    /** Highlights the visual line containing the primary selection. */
    highlightActiveLine: boolean;
    /** Highlights the gutter for the active line when a gutter is visible. */
    highlightActiveLineGutter: boolean;
    /** Enables bracket matching around the cursor through @codemirror/language. */
    bracketMatching: boolean;
    /** Highlights unusual or special characters with CodeMirror's special-character highlighter. */
    highlightSpecialChars: boolean;
    /** Renders visible markers for whitespace characters. */
    highlightWhitespace: boolean;
    /** Renders visible markers for trailing whitespace at line ends. */
    highlightTrailingWhitespace: boolean;
    /** Allows scrolling past the end of the document. */
    scrollPastEnd: boolean;
    /** Number of columns used to display tab characters in the editor state. */
    tabSize: number;
    /** Indentation unit used by language-aware indentation services. */
    indentUnit: string;
    /** Custom key bindings or groups of key bindings registered with CodeMirror's keymap extension. */
    keymaps: KeymapInput;
    /** Allows the editor state to hold multiple selection ranges. */
    multipleSelections: boolean;
    /** Draws the selection with editor-managed DOM so multiple selections and custom selection rendering are visible. */
    drawSelection: boolean;
    /**
     * Non-read-only editing inputs.
     * These inputs affect editing behavior and are useful only when the editor can accept document edits.
     */
    /** Enables automatic indentation when typed input matches language indentation rules. */
    indentOnInput: boolean;
    /**
     * Optional package: @codemirror/autocomplete.
     * Install @codemirror/autocomplete in the consuming application to use these inputs.
     * These inputs are also non-read-only editing inputs.
     */
    /** Enables automatic closing of brackets through @codemirror/autocomplete when that optional package is installed. */
    closeBrackets: boolean;
    /** Enables the completion UI through @codemirror/autocomplete. */
    autocompletion: boolean;
    /** Completion source or sources added to language completions through CodeMirror language data. */
    completions: CompletionSource | CompletionSource[] | null;
    /** Configuration object forwarded to @codemirror/autocomplete's autocompletion extension. */
    autocompletionConfig: CodemirrorAutocompletionConfig | null;
    /**
     * Optional package: @codemirror/commands.
     * Install @codemirror/commands in the consuming application to use these inputs.
     * These inputs are also non-read-only editing inputs.
     */
    /** Adds CodeMirror's Tab indentation key binding through @codemirror/commands. */
    indentWithTab: boolean;
    /**
     * Optional package: @codemirror/lint.
     * Install @codemirror/lint in the consuming application to use these inputs.
     */
    /** Enables lint diagnostics when a linter source is provided. */
    lint: boolean;
    /** Lint source used by @codemirror/lint to produce diagnostics for the current editor view. */
    linter: LintSource | null;
    /** Configuration object forwarded to @codemirror/lint's linter extension. */
    lintConfig: CodemirrorLintConfig | null;
    /** Shows CodeMirror's lint gutter for diagnostic markers. */
    lintGutter: boolean;
    /** Registers CodeMirror's default lint key bindings. */
    lintKeymap: boolean;
    /**
     * Optional package: @codemirror/search.
     * Install @codemirror/search in the consuming application to use these inputs.
     */
    /** Highlights other occurrences of the current selection through @codemirror/search. */
    highlightSelectionMatches: boolean;
    /** Enables CodeMirror's search state and search panel support through @codemirror/search. */
    search: boolean;
    /** Configuration object forwarded to @codemirror/search's search extension. */
    searchConfig: CodemirrorSearchConfig | null;
    /** Registers the default search key bindings. */
    searchKeymap: boolean;
    /**
     * Core dependency: @codemirror/language.
     * These inputs do not require optional packages.
     */
    /** Enables code folding commands and folded range state through @codemirror/language. */
    codeFolding: boolean;
    /** Configuration object forwarded to CodeMirror's codeFolding extension. */
    codeFoldingConfig: CodemirrorCodeFoldingConfig | null;
    /** Shows a gutter with fold controls. */
    foldGutter: boolean;
    /** Configuration object forwarded to CodeMirror's foldGutter extension. */
    foldGutterConfig: CodemirrorFoldGutterConfig | null;
    /** Registers CodeMirror's default folding key bindings. */
    foldKeymap: boolean;
    /**
     * Core dependency: @codemirror/view gutters, decorations, panels, and tooltips.
     * These inputs do not require optional packages.
     */
    /** Custom gutter configurations forwarded to CodeMirror's gutter extension. */
    customGutters: readonly CodemirrorGutterConfig[];
    /** Controls whether configured gutters are fixed during horizontal scrolling; null keeps CodeMirror's default. */
    guttersFixed: boolean | null;
    /** Adds the wrapper's clickable breakpoint gutter. */
    breakpointGutter: boolean;
    /** One-based line numbers that should display breakpoint markers in the breakpoint gutter. */
    breakpoints: readonly number[];
    /** Decoration set or dynamic decoration sources registered with EditorView.decorations. */
    decorations: CodemirrorDecorationSource | readonly CodemirrorDecorationSource[] | null;
    /** Simple marked document ranges converted to CodeMirror mark decorations. */
    markedRanges: readonly CodemirrorMarkedRange[];
    /** Panel constructor or constructors shown with CodeMirror's showPanel facet. */
    panels: PanelConstructor | readonly PanelConstructor[] | null;
    /** Tooltip descriptor or descriptors shown with CodeMirror's showTooltip facet. */
    tooltips: Tooltip | readonly (Tooltip | null)[] | null;
    /** Tooltip positioning configuration forwarded to CodeMirror's tooltips extension. */
    tooltipConfig: CodemirrorTooltipConfig | null;
    /** Hover tooltip source used to create contextual tooltips from document positions. */
    hoverTooltip: CodemirrorHoverTooltipSource | null;
    /** Options forwarded to CodeMirror's hoverTooltip extension, such as hover delay. */
    hoverTooltipOptions: CodemirrorHoverTooltipOptions | null;
    /**
     * Core dependency: @codemirror/view styling and security.
     * These inputs do not require optional packages.
     */
    /** CSP nonce attached to CodeMirror style elements created by the editor view. */
    cspNonce: string | null;
    /** Static attributes or an attribute provider applied to the outer .cm-editor element. */
    editorAttributes: CodemirrorAttributeSource | null;
    /** Static attributes or an attribute provider applied to the editable content element. */
    contentAttributes: CodemirrorAttributeSource | null;
    /** Base theme rules applied with EditorView.baseTheme for structural or feature-specific styling. */
    baseTheme: CodemirrorBaseTheme | null;
    /** Emits the created CodeMirror EditorView after the editor is initialized. */
    editorReady: EventEmitter<EditorView>;
    /** Emits the full document text after user/editor transactions change the document. */
    contentChange: EventEmitter<string>;
    /** Emits every CodeMirror ViewUpdate produced by the editor view. */
    update: EventEmitter<ViewUpdate>;
    /** Emits the current EditorSelection whenever a transaction changes the selection. */
    selectionChange: EventEmitter<EditorSelection>;
    /** Emits the updated one-based breakpoint line numbers after the breakpoint gutter toggles a marker. */
    breakpointsChange: EventEmitter<number[]>;
    host: ElementRef<HTMLElement> | undefined;
    private editorView;
    private languageCompartment;
    private readOnlyCompartment;
    private editableCompartment;
    private themeCompartment;
    private displayCompartment;
    private indentationCompartment;
    private keymapCompartment;
    private selectionCompartment;
    private autocompleteCompartment;
    private lintCompartment;
    private searchCompartment;
    private foldingCompartment;
    private gutterCompartment;
    private decorationCompartment;
    private panelCompartment;
    private tooltipCompartment;
    private stylingCompartment;
    private appendExtensionsCompartment;
    private cspNonceCompartment;
    private readonly breakpointSetEffect;
    private readonly breakpointToggleEffect;
    private readonly breakpointStateField;
    private readonly markedRangesSetEffect;
    private readonly markedRangesStateField;
    private disabled;
    private destroyed;
    private editorCreationVersion;
    private reconfigureVersion;
    private updatingContentFromModel;
    private onChange;
    private onTouched;
    private optionalPackages;
    private readonly errorHandler;
    /** Creates the CodeMirror editor after Angular has initialized the host element. */
    ngAfterViewInit(): void;
    /** Reconfigures the live editor when Angular input bindings change. */
    ngOnChanges(changes: SimpleChanges): void;
    private reconfigureEditor;
    /** Destroys the CodeMirror editor view and prevents pending async initialization from recreating it. */
    ngOnDestroy(): void;
    /**
     * Implements ControlValueAccessor.writeValue.
     * Angular forms call this method when the external form model writes a value into the editor.
     */
    writeValue(value: string | null | undefined): void;
    /**
     * Implements ControlValueAccessor.registerOnChange.
     * Angular forms call this method to register the callback that receives editor document changes.
     */
    registerOnChange(fn: (value: string) => void): void;
    /**
     * Implements ControlValueAccessor.registerOnTouched.
     * Angular forms call this method to register the callback emitted when the editor is touched.
     */
    registerOnTouched(fn: () => void): void;
    /**
     * Implements ControlValueAccessor.setDisabledState.
     * Angular forms call this method when the form control is enabled or disabled.
     */
    setDisabledState(isDisabled: boolean): void;
    /**
     * Recreates the editor from a CodeMirror state configuration while preserving wrapper-managed behavior.
     * User-provided extensions are appended after the wrapper extensions.
     */
    resetEditor(config: EditorStateConfig): Promise<void>;
    /** Moves focus to the CodeMirror editor when it exists. */
    focus(): void;
    /** Returns the current editor document text, or the pending content input before initialization. */
    getValue(): string;
    /** Replaces the full editor document and synchronizes the content input cache. */
    setValue(value: string): void;
    /** Dispatches one or more raw CodeMirror transaction specs to the editor. */
    dispatch(...specs: TransactionSpec[]): void;
    /** Replaces the current selection ranges with the provided text. */
    replaceSelection(text: string): void;
    /** Scrolls a document position into view, clamping the position to the document bounds. */
    scrollToPosition(position: number): void;
    /** Scrolls a one-based document line into view, clamping the line to the document bounds. */
    scrollToLine(line: number): void;
    /** Scrolls the primary selection range into view. */
    scrollSelectionIntoView(): void;
    /** Serializes the editor state, including history and fold state when those extensions are active. */
    toJSON(): unknown;
    /** Restores a serialized CodeMirror state produced by toJSON. */
    restoreFromJSON(json: unknown): Promise<void>;
    /** Runs the @codemirror/commands undo command. Requires @codemirror/commands. */
    undo(): Promise<boolean>;
    /** Runs the @codemirror/commands redo command. Requires @codemirror/commands. */
    redo(): Promise<boolean>;
    /** Opens CodeMirror's search panel. Requires @codemirror/search. */
    openSearchPanel(): Promise<boolean>;
    /** Closes CodeMirror's search panel. Requires @codemirror/search. */
    closeSearchPanel(): Promise<boolean>;
    /** Returns true when the search panel is open and @codemirror/search has been loaded. */
    isSearchPanelOpen(): boolean;
    /** Selects the next search match. Requires @codemirror/search. */
    findNext(): Promise<boolean>;
    /** Selects the previous search match. Requires @codemirror/search. */
    findPrevious(): Promise<boolean>;
    /** Replaces the current search match. Requires @codemirror/search. */
    replaceNext(): Promise<boolean>;
    /** Replaces all search matches. Requires @codemirror/search. */
    replaceAll(): Promise<boolean>;
    /** Opens CodeMirror's go-to-line command UI. Requires @codemirror/search. */
    gotoLine(): Promise<boolean>;
    /** Adds the next occurrence of the current selection to the selection set. Requires @codemirror/search. */
    selectNextOccurrence(): Promise<boolean>;
    /** Selects matches for the current selection. Requires @codemirror/search. */
    selectSelectionMatches(): Promise<boolean>;
    /** Selects all matches for the active search query. Requires @codemirror/search. */
    selectMatches(): Promise<boolean>;
    /** Folds the foldable range at the current selection. */
    foldCode(): boolean;
    /** Unfolds the folded range at the current selection. */
    unfoldCode(): boolean;
    /** Toggles folding at the current selection. */
    toggleFold(): boolean;
    /** Folds all foldable ranges in the document. */
    foldAll(): boolean;
    /** Unfolds all folded ranges in the document. */
    unfoldAll(): boolean;
    /** Returns the current folded document ranges. */
    getFoldedRanges(): CodemirrorFoldedRange[];
    /** Opens the completion UI. Requires @codemirror/autocomplete. */
    startCompletion(): Promise<boolean>;
    /** Closes the completion UI. Requires @codemirror/autocomplete. */
    closeCompletion(): Promise<boolean>;
    /** Accepts the selected completion. Requires @codemirror/autocomplete. */
    acceptCompletion(): Promise<boolean>;
    /** Returns the current completion UI status, or null before @codemirror/autocomplete is loaded. */
    completionStatus(): ReturnType<AutocompleteModule$1['completionStatus']>;
    /** Returns the currently available completion options, or an empty array when completion is inactive. */
    currentCompletions(): readonly Completion[];
    /** Returns the currently selected completion option, or null when none is selected. */
    selectedCompletion(): Completion | null;
    /** Returns the selected completion option index, or null when completion is inactive. */
    selectedCompletionIndex(): number | null;
    /** Toggles a breakpoint marker for a one-based line number and emits breakpointsChange. */
    toggleBreakpoint(line: number): void;
    /** Returns true when the one-based line number has a breakpoint marker. */
    hasBreakpoint(line: number): boolean;
    /** Adds a cursor on the line above the current selection. Requires @codemirror/commands. */
    addCursorAbove(): Promise<boolean>;
    /** Adds a cursor on the line below the current selection. Requires @codemirror/commands. */
    addCursorBelow(): Promise<boolean>;
    /** Toggles line or block comments for the current selection. Requires @codemirror/commands. */
    toggleComment(): Promise<boolean>;
    /** Toggles line comments for the current selection. Requires @codemirror/commands. */
    toggleLineComment(): Promise<boolean>;
    /** Adds line comments to the current selection. Requires @codemirror/commands. */
    lineComment(): Promise<boolean>;
    /** Removes line comments from the current selection. Requires @codemirror/commands. */
    lineUncomment(): Promise<boolean>;
    /** Toggles block comments for the current selection. Requires @codemirror/commands. */
    toggleBlockComment(): Promise<boolean>;
    /** Indents the current selection one level deeper. Requires @codemirror/commands. */
    indentMore(): Promise<boolean>;
    /** Reduces indentation for the current selection by one level. Requires @codemirror/commands. */
    indentLess(): Promise<boolean>;
    /** Applies language-aware indentation to the current selection. Requires @codemirror/commands. */
    indentSelection(): Promise<boolean>;
    /** Deletes the selected lines. Requires @codemirror/commands. */
    deleteLine(): Promise<boolean>;
    /** Moves the selected lines up. Requires @codemirror/commands. */
    moveLineUp(): Promise<boolean>;
    /** Moves the selected lines down. Requires @codemirror/commands. */
    moveLineDown(): Promise<boolean>;
    /** Selects the current line. Requires @codemirror/commands. */
    selectLine(): Promise<boolean>;
    /** Moves the cursor to the matching bracket when one is available. Requires @codemirror/commands. */
    cursorMatchingBracket(): Promise<boolean>;
    /** Toggles Tab focus mode. Requires @codemirror/commands. */
    toggleTabFocusMode(): Promise<boolean>;
    /** Returns true when hover tooltip sources are active in the editor state. */
    hasHoverTooltips(): boolean;
    /** Activates hover tooltips at a document position. */
    activateHover(position: number, side?: -1 | 1): void;
    /** Closes currently visible hover tooltips. */
    closeHoverTooltips(): void;
    /** Recomputes tooltip positions for the current editor layout. */
    repositionTooltips(): void;
    /** Returns the active panel instance for the given panel constructor, when mounted. */
    getPanel(panel: PanelConstructor): Panel | null;
    /** Recreates the editor with the same document and selection, clearing undo/redo history. */
    clearHistory(): Promise<void>;
    private createEditor;
    private mountEditorState;
    private createExtensions;
    private getReconfigureEffects;
    private getDisplayConfig;
    private getIndentationConfig;
    private getKeymapConfig;
    private getSelectionConfig;
    private getAutocompletionConfig;
    private getLintConfig;
    private getSearchConfig;
    private getFoldingConfig;
    private getGutterConfig;
    private getDecorationConfig;
    private getTooltipConfig;
    private getStylingConfig;
    private createBreakpointPositions;
    private getBreakpointLineNumbers;
    private toggleBreakpointPosition;
    private normalizeBreakpointPositions;
    private normalizeBreakpointLineNumbers;
    private setEditorContent;
    private destroyEditor;
    static ɵfac: i0.ɵɵFactoryDeclaration<CodemirrorComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CodemirrorComponent, "ks-codemirror", never, { "content": { "alias": "content"; "required": false; }; "appendExtensions": { "alias": "appendExtensions"; "required": false; }; "language": { "alias": "language"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; "editable": { "alias": "editable"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "lineWrapping": { "alias": "lineWrapping"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "lineNumbers": { "alias": "lineNumbers"; "required": false; }; "lineNumberFormatter": { "alias": "lineNumberFormatter"; "required": false; }; "highlightActiveLine": { "alias": "highlightActiveLine"; "required": false; }; "highlightActiveLineGutter": { "alias": "highlightActiveLineGutter"; "required": false; }; "bracketMatching": { "alias": "bracketMatching"; "required": false; }; "highlightSpecialChars": { "alias": "highlightSpecialChars"; "required": false; }; "highlightWhitespace": { "alias": "highlightWhitespace"; "required": false; }; "highlightTrailingWhitespace": { "alias": "highlightTrailingWhitespace"; "required": false; }; "scrollPastEnd": { "alias": "scrollPastEnd"; "required": false; }; "tabSize": { "alias": "tabSize"; "required": false; }; "indentUnit": { "alias": "indentUnit"; "required": false; }; "keymaps": { "alias": "keymaps"; "required": false; }; "multipleSelections": { "alias": "multipleSelections"; "required": false; }; "drawSelection": { "alias": "drawSelection"; "required": false; }; "indentOnInput": { "alias": "indentOnInput"; "required": false; }; "closeBrackets": { "alias": "closeBrackets"; "required": false; }; "autocompletion": { "alias": "autocompletion"; "required": false; }; "completions": { "alias": "completions"; "required": false; }; "autocompletionConfig": { "alias": "autocompletionConfig"; "required": false; }; "indentWithTab": { "alias": "indentWithTab"; "required": false; }; "lint": { "alias": "lint"; "required": false; }; "linter": { "alias": "linter"; "required": false; }; "lintConfig": { "alias": "lintConfig"; "required": false; }; "lintGutter": { "alias": "lintGutter"; "required": false; }; "lintKeymap": { "alias": "lintKeymap"; "required": false; }; "highlightSelectionMatches": { "alias": "highlightSelectionMatches"; "required": false; }; "search": { "alias": "search"; "required": false; }; "searchConfig": { "alias": "searchConfig"; "required": false; }; "searchKeymap": { "alias": "searchKeymap"; "required": false; }; "codeFolding": { "alias": "codeFolding"; "required": false; }; "codeFoldingConfig": { "alias": "codeFoldingConfig"; "required": false; }; "foldGutter": { "alias": "foldGutter"; "required": false; }; "foldGutterConfig": { "alias": "foldGutterConfig"; "required": false; }; "foldKeymap": { "alias": "foldKeymap"; "required": false; }; "customGutters": { "alias": "customGutters"; "required": false; }; "guttersFixed": { "alias": "guttersFixed"; "required": false; }; "breakpointGutter": { "alias": "breakpointGutter"; "required": false; }; "breakpoints": { "alias": "breakpoints"; "required": false; }; "decorations": { "alias": "decorations"; "required": false; }; "markedRanges": { "alias": "markedRanges"; "required": false; }; "panels": { "alias": "panels"; "required": false; }; "tooltips": { "alias": "tooltips"; "required": false; }; "tooltipConfig": { "alias": "tooltipConfig"; "required": false; }; "hoverTooltip": { "alias": "hoverTooltip"; "required": false; }; "hoverTooltipOptions": { "alias": "hoverTooltipOptions"; "required": false; }; "cspNonce": { "alias": "cspNonce"; "required": false; }; "editorAttributes": { "alias": "editorAttributes"; "required": false; }; "contentAttributes": { "alias": "contentAttributes"; "required": false; }; "baseTheme": { "alias": "baseTheme"; "required": false; }; }, { "editorReady": "editorReady"; "contentChange": "contentChange"; "update": "update"; "selectionChange": "selectionChange"; "breakpointsChange": "breakpointsChange"; }, never, never, false, never>;
}

/** Angular module that declares and exports the ngx-codemirror6 component. */
declare class CodemirrorModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<CodemirrorModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<CodemirrorModule, [typeof CodemirrorComponent], never, [typeof CodemirrorComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<CodemirrorModule>;
}

export { CodemirrorComponent, CodemirrorModule };
export type { CodemirrorAttributeSource, CodemirrorAutocompletionConfig, CodemirrorBaseTheme, CodemirrorCodeFoldingConfig, CodemirrorDecorationSource, CodemirrorFoldGutterConfig, CodemirrorFoldedRange, CodemirrorGutterConfig, CodemirrorHoverTooltipOptions, CodemirrorHoverTooltipSource, CodemirrorLintConfig, CodemirrorMarkedRange, CodemirrorSearchConfig, CodemirrorTooltipConfig, KeymapInput };
