///
import * as i0 from '@angular/core';
import { AfterViewInit, AfterViewChecked, OnDestroy, ElementRef, InjectionToken, ModuleWithProviders, EnvironmentProviders } from '@angular/core';
import * as i1 from '@angular/common';
import * as rxjs from 'rxjs';
import { Observable } from 'rxjs';
declare class NgeMonacoDiffEditorComponent implements AfterViewInit, AfterViewChecked, OnDestroy {
private readonly loader;
private readonly config;
readonly container: i0.Signal>;
readonly ready: i0.OutputEmitterRef;
readonly autoLayout: i0.InputSignal;
readonly options: i0.InputSignal;
private editor?;
private width;
private height;
onResizeWindow(): void;
ngAfterViewInit(): void;
ngAfterViewChecked(): void;
ngOnDestroy(): void;
private createEditor;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
declare class NgeMonacoEditorComponent implements AfterViewInit, AfterViewChecked, OnDestroy {
private readonly loader;
private readonly config;
protected loading: boolean;
protected readonly container: i0.Signal>;
readonly ready: i0.OutputEmitterRef;
readonly autoLayout: i0.InputSignal;
readonly options: i0.InputSignal;
private editor?;
private width;
private height;
ngAfterViewInit(): void;
ngAfterViewChecked(): void;
ngOnDestroy(): void;
protected onResizeWindow(): void;
private createEditor;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
declare class NgeMonacoViewerComponent implements OnDestroy {
private readonly colorizer;
private readonly changeDetectorRef;
private editor?;
private observer?;
private subscriptions;
protected loading: boolean;
readonly container: i0.Signal>;
readonly transclusion: i0.Signal>;
/** code to highlight */
readonly code: i0.InputSignal;
/** show line numbers? */
/** show line numbers? */
readonly lines: i0.InputSignal;
/** theme to use for the syntax highlighting */
readonly theme: i0.InputSignal;
/** target language */
/** target language */
readonly language: i0.InputSignal;
/** space separated list of line numbers to highlight */
/** space separated list of line numbers to highlight */
readonly highlights: i0.InputSignal;
/** filename to display in the header tab */
readonly filename: i0.InputSignal;
constructor();
ngOnDestroy(): void;
private colorize;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
interface NgeMonacoContribution {
activate(): void | Promise;
deactivate?(): void | Promise;
}
declare const NGE_MONACO_CONTRIBUTION: InjectionToken;
/** Toggle High Contrast Theme */
declare const ACTION_TOGGLE_HIGH_CONTRAST = "editor.action.toggleHighContrast";
/** Set Selection Anchor */
declare const ACTION_SET_SELECTION_ANCHOR = "editor.action.setSelectionAnchor";
/** Move Selected Text Left */
declare const ACTION_MOVE_CARRET_LEFT = "editor.action.moveCarretLeftAction";
/** Move Selected Text Right */
declare const ACTION_MOVE_CARRET_RIGHT = "editor.action.moveCarretRightAction";
/** Transpose Letters */
declare const ACTION_TRANSPOSE_LETTERS = "editor.action.transposeLetters";
/** Copy With Syntax Highlighting */
declare const ACTION_CLIPBOARD_COPY_WITH_SYNTAX_HIGHLIGHTING = "editor.action.clipboardCopyWithSyntaxHighlightingAction";
/** Toggle Line Comment */
declare const ACTION_COMMENT_LINE = "editor.action.commentLine";
/** Add Line Comment */
declare const ACTION_ADD_COMMENT_LINE = "editor.action.addCommentLine";
/** Remove Line Comment */
declare const ACTION_REMOVE_COMMENT_LINE = "editor.action.removeCommentLine";
/** Toggle Block Comment */
declare const ACTION_BLOCK_COMMENT = "editor.action.blockComment";
/** Show Editor Context Menu */
declare const ACTION_SHOW_CONTEXT_MENU = "editor.action.showContextMenu";
/** Cursor Undo */
declare const ACTION_CURSOR_UNDO = "cursorUndo";
/** Cursor Redo */
declare const ACTION_CURSOR_REDO = "cursorRedo";
/** Editor Font Zoom In */
declare const ACTION_FONT_ZOOM_IN = "editor.action.fontZoomIn";
/** Editor Font Zoom Out */
declare const ACTION_FONT_ZOOM_OUT = "editor.action.fontZoomOut";
/** Editor Font Zoom Reset */
declare const ACTION_FONT_ZOOM_RESET = "editor.action.fontZoomReset";
/** Convert Indentation to Spaces */
declare const ACTION_INDENTATION_TO_SPACES = "editor.action.indentationToSpaces";
/** Convert Indentation to Tabs */
declare const ACTION_INDENTATION_TO_TABS = "editor.action.indentationToTabs";
/** Indent Using Tabs */
declare const ACTION_INDENT_USING_TABS = "editor.action.indentUsingTabs";
/** Indent Using Spaces */
declare const ACTION_INDENT_USING_SPACES = "editor.action.indentUsingSpaces";
/** Detect Indentation from Content */
declare const ACTION_DETECT_INDENTATION = "editor.action.detectIndentation";
/** Reindent Lines */
declare const ACTION_REINDENTLINES = "editor.action.reindentlines";
/** Reindent Selected Lines */
declare const ACTION_REINDENTSELECTEDLINES = "editor.action.reindentselectedlines";
/** Copy Line Up */
declare const ACTION_COPY_LINES_UP = "editor.action.copyLinesUpAction";
/** Copy Line Down */
declare const ACTION_COPY_LINES_DOWN = "editor.action.copyLinesDownAction";
/** Duplicate Selection */
declare const ACTION_DUPLICATE_SELECTION = "editor.action.duplicateSelection";
/** Move Line Up */
declare const ACTION_MOVE_LINES_UP = "editor.action.moveLinesUpAction";
/** Move Line Down */
declare const ACTION_MOVE_LINES_DOWN = "editor.action.moveLinesDownAction";
/** Sort Lines Ascending */
declare const ACTION_SORT_LINES_ASCENDING = "editor.action.sortLinesAscending";
/** Sort Lines Descending */
declare const ACTION_SORT_LINES_DESCENDING = "editor.action.sortLinesDescending";
/** Trim Trailing Whitespace */
declare const ACTION_TRIM_TRAILING_WHITESPACE = "editor.action.trimTrailingWhitespace";
/** Delete Line */
declare const ACTION_DELETE_LINES = "editor.action.deleteLines";
/** Indent Line */
declare const ACTION_INDENT_LINES = "editor.action.indentLines";
/** Outdent Line */
declare const ACTION_OUTDENT_LINES = "editor.action.outdentLines";
/** Insert Line Above */
declare const ACTION_INSERT_LINE_BEFORE = "editor.action.insertLineBefore";
/** Insert Line Below */
declare const ACTION_INSERT_LINE_AFTER = "editor.action.insertLineAfter";
/** Delete All Left */
declare const ACTION_DELETE_ALL_LEFT = "deleteAllLeft";
/** Delete All Right */
declare const ACTION_DELETE_ALL_RIGHT = "deleteAllRight";
/** Join Lines */
declare const ACTION_JOIN_LINES = "editor.action.joinLines";
/** Transpose characters around the cursor */
declare const ACTION_TRANSPOSE = "editor.action.transpose";
/** Transform to Uppercase */
declare const ACTION_TRANSFORM_TO_UPPERCASE = "editor.action.transformToUppercase";
/** Transform to Lowercase */
declare const ACTION_TRANSFORM_TO_LOWERCASE = "editor.action.transformToLowercase";
/** Transform to Title Case */
declare const ACTION_TRANSFORM_TO_TITLECASE = "editor.action.transformToTitlecase";
/** Expand Selection */
declare const ACTION_SMART_SELECT_EXPAND = "editor.action.smartSelect.expand";
/** Shrink Selection */
declare const ACTION_SMART_SELECT_SHRINK = "editor.action.smartSelect.shrink";
/** Developer: Force Retokenize */
declare const ACTION_FORCE_RETOKENIZE = "editor.action.forceRetokenize";
/** Toggle Tab Key Moves Focus */
declare const ACTION_TOGGLE_TAB_FOCUS_MODE = "editor.action.toggleTabFocusMode";
/** Command Palette */
declare const ACTION_QUICK_COMMAND = "editor.action.quickCommand";
/** Replace with Previous Value */
declare const ACTION_IN_PLACE_REPLACE_UP = "editor.action.inPlaceReplace.up";
/** Replace with Next Value */
declare const ACTION_IN_PLACE_REPLACE_DOWN = "editor.action.inPlaceReplace.down";
/** Go to Line/Column... */
declare const ACTION_GOTO_LINE = "editor.action.gotoLine";
/** Select to Bracket */
declare const ACTION_SELECT_TO_BRACKET = "editor.action.selectToBracket";
/** Go to Bracket */
declare const ACTION_JUMP_TO_BRACKET = "editor.action.jumpToBracket";
/** Find */
declare const ACTION_FIND = "actions.find";
/** Find With Selection */
declare const ACTION_FIND_WITH_SELECTION = "actions.findWithSelection";
/** Find Next */
declare const ACTION_NEXT_MATCH_FIND = "editor.action.nextMatchFindAction";
/** Find Previous */
declare const ACTION_PREVIOUS_MATCH_FIND = "editor.action.previousMatchFindAction";
/** Find Next Selection */
declare const ACTION_NEXT_SELECTION_MATCH_FIND = "editor.action.nextSelectionMatchFindAction";
/** Find Previous Selection */
declare const ACTION_PREVIOUS_SELECTION_MATCH_FIND = "editor.action.previousSelectionMatchFindAction";
/** Replace */
declare const ACTION_START_FIND_REPLACE = "editor.action.startFindReplaceAction";
/** Unfold */
declare const ACTION_EDITOR_UNFOLD = "editor.unfold";
/** Unfold Recursively */
declare const ACTION_EDITOR_UNFOLD_RECURSIVELY = "editor.unfoldRecursively";
/** Fold */
declare const ACTION_EDITOR_FOLD = "editor.fold";
/** Fold Recursively */
declare const ACTION_EDITOR_FOLD_RECURSIVELY = "editor.foldRecursively";
/** Fold All */
declare const ACTION_EDITOR_FOLD_ALL = "editor.foldAll";
/** Unfold All */
declare const ACTION_EDITOR_UNFOLD_ALL = "editor.unfoldAll";
/** Fold All Block Comments */
declare const ACTION_EDITOR_FOLD_ALL_BLOCK_COMMENTS = "editor.foldAllBlockComments";
/** Fold All Regions */
declare const ACTION_EDITOR_FOLD_ALL_MARKER_REGIONS = "editor.foldAllMarkerRegions";
/** Unfold All Regions */
declare const ACTION_EDITOR_UNFOLD_ALL_MARKER_REGIONS = "editor.unfoldAllMarkerRegions";
/** Toggle Fold */
declare const ACTION_EDITOR_TOGGLE_FOLD = "editor.toggleFold";
/** Fold Level 1 */
declare const ACTION_EDITOR_FOLD_LEVEL1 = "editor.foldLevel1";
/** Fold Level 2 */
declare const ACTION_EDITOR_FOLD_LEVEL2 = "editor.foldLevel2";
/** Fold Level 3 */
declare const ACTION_EDITOR_FOLD_LEVEL3 = "editor.foldLevel3";
/** Fold Level 4 */
declare const ACTION_EDITOR_FOLD_LEVEL4 = "editor.foldLevel4";
/** Fold Level 5 */
declare const ACTION_EDITOR_FOLD_LEVEL5 = "editor.foldLevel5";
/** Fold Level 6 */
declare const ACTION_EDITOR_FOLD_LEVEL6 = "editor.foldLevel6";
/** Fold Level 7 */
declare const ACTION_EDITOR_FOLD_LEVEL7 = "editor.foldLevel7";
/** Open Link */
declare const ACTION_OPEN_LINK = "editor.action.openLink";
/** Trigger Symbol Highlight */
declare const ACTION_WORD_HIGHLIGHT_TRIGGER = "editor.action.wordHighlight.trigger";
/** Show Accessibility Help */
declare const ACTION_SHOW_ACCESSIBILITY_HELP = "editor.action.showAccessibilityHelp";
/** Developer: Inspect Tokens */
declare const ACTION_INSPECT_TOKENS = "editor.action.inspectTokens";
/** Go to Next Problem (Error, Warning, Info) */
declare const ACTION_MARKER_NEXT = "editor.action.marker.next";
/** Go to Previous Problem (Error, Warning, Info) */
declare const ACTION_MARKER_PREV = "editor.action.marker.prev";
/** Go to Next Problem in Files (Error, Warning, Info) */
declare const ACTION_MARKER_NEXT_IN_FILES = "editor.action.marker.nextInFiles";
/** Go to Previous Problem in Files (Error, Warning, Info) */
declare const ACTION_MARKER_PREV_IN_FILES = "editor.action.marker.prevInFiles";
/** Show Hover */
declare const ACTION_SHOW_HOVER = "editor.action.showHover";
/** Show Definition Preview Hover */
declare const ACTION_SHOW_DEFINITION_PREVIEW_HOVER = "editor.action.showDefinitionPreviewHover";
/** Add Cursor Above */
declare const ACTION_INSERT_CURSOR_ABOVE = "editor.action.insertCursorAbove";
/** Add Cursor Below */
declare const ACTION_INSERT_CURSOR_BELOW = "editor.action.insertCursorBelow";
/** Add Cursors to Line Ends */
declare const ACTION_INSERT_CURSOR_AT_END_OF_EACH_LINE_SELECTED = "editor.action.insertCursorAtEndOfEachLineSelected";
/** Add Selection To Next Find Match */
declare const ACTION_ADD_SELECTION_TO_NEXT_FIND_MATCH = "editor.action.addSelectionToNextFindMatch";
/** Add Selection To Previous Find Match */
declare const ACTION_ADD_SELECTION_TO_PREVIOUS_FIND_MATCH = "editor.action.addSelectionToPreviousFindMatch";
/** Move Last Selection To Next Find Match */
declare const ACTION_MOVE_SELECTION_TO_NEXT_FIND_MATCH = "editor.action.moveSelectionToNextFindMatch";
/** Move Last Selection To Previous Find Match */
declare const ACTION_MOVE_SELECTION_TO_PREVIOUS_FIND_MATCH = "editor.action.moveSelectionToPreviousFindMatch";
/** Select All Occurrences of Find Match */
declare const ACTION_SELECT_HIGHLIGHTS = "editor.action.selectHighlights";
/** Add Cursors To Bottom */
declare const ACTION_ADD_CURSORS_TO_BOTTOM = "editor.action.addCursorsToBottom";
/** Add Cursors To Top */
declare const ACTION_ADD_CURSORS_TO_TOP = "editor.action.addCursorsToTop";
/** Trigger Suggest */
declare const ACTION_TRIGGER_SUGGEST = "editor.action.triggerSuggest";
declare const COLOR_DETECTOR_CONTRIB = "editor.contrib.colorDetector";
declare const CONTEXT_MENU_CONTRIB = "editor.contrib.contextmenu";
declare const CURSOR_UNDO_REDO_CONTROLLER_CONTRIB = "editor.contrib.cursorUndoRedoController";
declare const DRAG_AND_DROP_CONTRIB = "editor.contrib.dragAndDrop";
declare const AUTO_FORMAT_CONTRIB = "editor.contrib.autoFormat";
declare const FORMAT_ON_PAST_CONTRIB = "editor.contrib.formatOnPaste";
declare const SMART_SELECT_CONTRIB = "editor.contrib.smartSelectController";
declare const IPAD_SHOW_KEYBOARD_CONTRIB = "editor.contrib.iPadShowKeyboard";
declare const BRACKET_MATCHING_CONTROLLER_CONTRIB = "editor.contrib.bracketMatchingController";
declare const CODE_LENS_CONTRIB = "css.editor.codeLens";
declare const FIND_CONTROLLE_CONTRIB = "editor.contrib.findController";
declare const FOLDING_CONTRIB = "editor.contrib.folding";
declare const IN_PLACE_REPLACE_CONTROLLER_CONTRIB = "editor.contrib.inPlaceReplaceController";
declare const LINK_DETECTOR_CONTRIB = "editor.linkDetector";
declare const MESSAGE_CONTROLLER_CONTRIB = "editor.contrib.messageController";
declare const QUICK_FIX_CONTROLLER_CONTRIB = "editor.contrib.quickFixController";
declare const MULTI_CURSOR_CONTROLLER_CONTRIB = "editor.contrib.multiCursorController";
declare const SELECTION_HIGHLIGHTER_CONTRIB = "editor.contrib.selectionHighlighter";
declare const PARAMETER_HINTS_CONTRIB = "editor.controller.parameterHints";
declare const REFERENCE_CONTROLLER_CONTRIB = "editor.contrib.referenceController";
declare const RENAME_CONTROLLER_CONTRIB = "editor.contrib.renameController";
declare const WORD_HIGHLIGHTER_CONTRIB = "editor.contrib.wordHighlighter";
declare const ACCESSIBILIY_HELP_CONTROLLER_CONTRIB = "editor.contrib.accessibilityHelpController";
declare const INSPECT_TOKENS_CONTRIB = "editor.contrib.inspectTokens";
declare const QUICK_OPEN_CONTROLLER_CONTRIB = "editor.controller.quickOpenController";
declare const GOTO_DEFINITION_CONTRIB = "editor.contrib.gotodefinitionatposition";
declare const REFERENCES_CONTROLLER_CONTRIB = "editor.contrib.referencesController";
declare const MARKER_CONTROLLER_CONTRIB = "editor.contrib.markerController";
declare const HOVER_CONTRIB = "editor.contrib.hover";
declare const SNIPPET_CONTROLLER_CONTRIB = "snippetController2";
declare const SUGGEST_CONTROLLER_CONTRIB = "editor.contrib.suggestController";
/**
* Monaco editor loader configuration.
*/
interface NgeMonacoConfig {
/**
* Base path for monaco editor default: 'https://cdn.jsdelivr.net/npm/monaco-editor@0.20.0'
*/
assets?: string;
/**
* Default locale (en).
*/
locale?: 'de' | 'en' | 'es' | 'fr' | 'it' | 'ja' | 'ko' | 'ru' | 'zh-ch' | 'zh-tw';
/**
* Monaco editor default options.
*/
options?: monaco.editor.IEditorOptions;
/** Monaco editor theming configuration. */
theming?: {
/** path to theme files. */
themes?: string[];
/** default theme 'vs' */
default?: string;
/**
* Theme to apply when the color scheme is light.
*
* Setting both `light` and `dark` enables automatic switching: Monaco picks
* the matching theme and updates whenever the scheme changes. This lets any
* app (or nge-doc, without depending on it) drive Monaco's theme.
*/
light?: string;
/** Theme to apply when the color scheme is dark (see {@link light}). */
dark?: string;
/**
* How dark mode is detected for automatic switching:
* - a class name (or an array of class names) that means "dark" when present
* on the document root (e.g. `nge-doc-dark` or `dark`), observed live. Pass
* an array to match any of several dark classes across a multi-page app.
* - omit to follow the `(prefers-color-scheme: dark)` media query
*
* Named to mirror `NgeMarkdownConfig.darkThemeClassName` so both libraries
* read the same class.
*/
darkThemeClassName?: string | string[];
};
}
/**
* Monaco editor loader configuration token.
*/
declare const NGE_MONACO_CONFIG: InjectionToken;
declare class NgeMonacoPlaceholderComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
declare class NgeMonacoModule {
/** @deprecated Use `provideNgeMonaco(config)` in the application providers instead; will be removed in the next major. */
static forRoot(config: NgeMonacoConfig | (() => NgeMonacoConfig)): ModuleWithProviders;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵmod: i0.ɵɵNgModuleDeclaration;
static ɵinj: i0.ɵɵInjectorDeclaration;
}
/**
* Configure the Monaco editors at the application root:
*
* ```ts
* providers: [
* provideNgeMonaco({
* theming: { themes: NGE_MONACO_THEMES.map((t) => 'assets/nge/monaco/themes/' + t), default: 'github' },
* }),
* ]
* ```
*
* The editor components themselves are standalone; import them (or
* `NgeMonacoModule`) where the templates use them.
*/
declare function provideNgeMonaco(config?: NgeMonacoConfig | (() => NgeMonacoConfig)): EnvironmentProviders;
declare class NgeMonacoColorizerService {
private readonly loader;
private readonly theming;
colorizeElement(options: NgeMonacoColorizeOptions): Promise;
private escapeHtml;
private highlightLines;
private showLineNumbers;
private lineNumbersFromString;
private addFileTab;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵprov: i0.ɵɵInjectableDeclaration;
}
interface NgeMonacoColorizeOptions {
/** Element to colorize (<code> element). */
element: HTMLElement;
/** Code to highlight */
code: string;
/** Theme to use for the syntax highlighting */
theme?: string;
/** Target language (default plaintext). */
language?: string;
/**
* Start line number or a space separated list of line numbers to show.
*
* Example:
*
* *Show all line numbers starting 1*
*
* `"1"`
*
* *Show all line numbers from 1 to 4*
*
* `"1-4"`
*
* *Show lines 2 4 5 6 7 9*
*
* `"2 4-7 9"`
*/
lines?: string | number;
/**
* A space separated list of line numbers to highlight.
*
* Example:
*
* *Highlight line 1*
*
* `"1"`
*
* *Highlight all lines from 1 to 4*
*
* `"1-4"`
*
* *Highlight lines 2 4 5 6 7 9*
*
* `"2 4-7 9"`
*/
highlights?: string | number;
/**
* Optional filename to display in the tab header.
*/
filename?: string;
/**
* Set to `false` to skip the built-in file tab (filename and actions), when
* the caller renders its own chrome (nge-markdown does).
*/
fileTab?: boolean;
}
/** monaco editor cdn url hosted at cdnjs. */
declare const MONACO_CDNJS_URL = "https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.52.0";
/** monaco editor cdn url hosted at jsdeliver. */
declare const MONACO_JS_DELIVER_URL = "https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0";
/**
* Loads monaco editor using AMD loader.
*/
declare class NgeMonacoLoaderService implements OnDestroy {
private readonly config;
private readonly contributions;
private readonly resourceLoader;
private readonly monaco$;
private baseUrl;
private loadPromise?;
ngOnDestroy(): Promise;
/**
* Call the given `observer` function to extend monaco editor functionalities
* once it will be available in `window.monaco`.
*
* The function will be called immediately if monaco api is already loaded.
* @param observer observer object.
* @returns A subscription object that should be unsubscribed later.
*/
onLoadMonaco(observer: (arg: typeof monaco) => void): rxjs.Subscription;
/**
* Loads monaco editor if it is not loaded.
*/
loadAsync(): Promise;
private onLoad;
private addWorkersIfCrossDomain;
private activateContributions;
private deactivateContributions;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵprov: i0.ɵɵInjectableDeclaration;
}
declare class NgeMonacoThemeService implements NgeMonacoContribution {
private readonly http;
private readonly config;
private readonly document;
private readonly themes;
private readonly activeTheme;
private themeService;
private colorSchemeObserver?;
/**
* Gets the current active theme of monaco editor (undefined if monaco editor is not loaded).
*/
get theme(): NgeMonacoTheme | undefined;
/**
* Gets an observable that emit each time monaco editor theme change.
*
* Note: The observable emits first with the current theme
* the first time `subscribe()` method is called.
*/
get themeChanges(): Observable;
/**
* Gets an observable that emit each time monaco editor theme list change.
*/
get themesChanges(): Observable;
activate(): Promise;
/**
* Applies the light/dark theme according to the current color scheme and keeps
* it in sync. Detection is either a class on the document root or, when no
* class is given, the `(prefers-color-scheme: dark)` media query. This is how
* an app (or nge-doc) drives Monaco's theme without any coupling.
*/
private startColorSchemeSync;
/**
* Switches monaco editor theme.
* @param themeName The new theme to use.
*
*/
setTheme(themeName: string): Promise;
/**
* Gets the information about the given `themeName`
* @param themeName The theme to get.
* @returns A promise that resolves with the theme info.
*/
getTheme(themeName: string): Promise;
/**
* Defines a theme for the Monaco editor.
* @remarks
* - If the theme is already defined, this method does nothing.
* @param themeName - The name of the theme to define.
* @throws {ReferenceError} If the themeName argument is not provided.
* @throws {Error} If the specified theme is missing.
* @throws {Error} If HttpClientModule is missing in AppModule.
* @returns A Promise that resolves when the theme is defined successfully.
*/
defineTheme(themeName: string): Promise;
private retrieveThemes;
private themeNameFromPath;
private decorateCreateEditorAPI;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵprov: i0.ɵɵInjectableDeclaration;
}
interface NgeMonacoTheme {
id: string;
type: 'light' | 'dark' | 'hc';
colors: Map;
themeName: string;
semanticHighlighting: boolean;
themeData: monaco.editor.IStandaloneThemeData;
defaultColors: Map;
defines(colorId: string): boolean;
getColor(colorId: string, useDefault?: boolean): any;
getColors(): Map;
}
/** List of all custom themes from of the library */
declare const NGE_MONACO_THEMES: string[];
export { ACCESSIBILIY_HELP_CONTROLLER_CONTRIB, ACTION_ADD_COMMENT_LINE, ACTION_ADD_CURSORS_TO_BOTTOM, ACTION_ADD_CURSORS_TO_TOP, ACTION_ADD_SELECTION_TO_NEXT_FIND_MATCH, ACTION_ADD_SELECTION_TO_PREVIOUS_FIND_MATCH, ACTION_BLOCK_COMMENT, ACTION_CLIPBOARD_COPY_WITH_SYNTAX_HIGHLIGHTING, ACTION_COMMENT_LINE, ACTION_COPY_LINES_DOWN, ACTION_COPY_LINES_UP, ACTION_CURSOR_REDO, ACTION_CURSOR_UNDO, ACTION_DELETE_ALL_LEFT, ACTION_DELETE_ALL_RIGHT, ACTION_DELETE_LINES, ACTION_DETECT_INDENTATION, ACTION_DUPLICATE_SELECTION, ACTION_EDITOR_FOLD, ACTION_EDITOR_FOLD_ALL, ACTION_EDITOR_FOLD_ALL_BLOCK_COMMENTS, ACTION_EDITOR_FOLD_ALL_MARKER_REGIONS, ACTION_EDITOR_FOLD_LEVEL1, ACTION_EDITOR_FOLD_LEVEL2, ACTION_EDITOR_FOLD_LEVEL3, ACTION_EDITOR_FOLD_LEVEL4, ACTION_EDITOR_FOLD_LEVEL5, ACTION_EDITOR_FOLD_LEVEL6, ACTION_EDITOR_FOLD_LEVEL7, ACTION_EDITOR_FOLD_RECURSIVELY, ACTION_EDITOR_TOGGLE_FOLD, ACTION_EDITOR_UNFOLD, ACTION_EDITOR_UNFOLD_ALL, ACTION_EDITOR_UNFOLD_ALL_MARKER_REGIONS, ACTION_EDITOR_UNFOLD_RECURSIVELY, ACTION_FIND, ACTION_FIND_WITH_SELECTION, ACTION_FONT_ZOOM_IN, ACTION_FONT_ZOOM_OUT, ACTION_FONT_ZOOM_RESET, ACTION_FORCE_RETOKENIZE, ACTION_GOTO_LINE, ACTION_INDENTATION_TO_SPACES, ACTION_INDENTATION_TO_TABS, ACTION_INDENT_LINES, ACTION_INDENT_USING_SPACES, ACTION_INDENT_USING_TABS, ACTION_INSERT_CURSOR_ABOVE, ACTION_INSERT_CURSOR_AT_END_OF_EACH_LINE_SELECTED, ACTION_INSERT_CURSOR_BELOW, ACTION_INSERT_LINE_AFTER, ACTION_INSERT_LINE_BEFORE, ACTION_INSPECT_TOKENS, ACTION_IN_PLACE_REPLACE_DOWN, ACTION_IN_PLACE_REPLACE_UP, ACTION_JOIN_LINES, ACTION_JUMP_TO_BRACKET, ACTION_MARKER_NEXT, ACTION_MARKER_NEXT_IN_FILES, ACTION_MARKER_PREV, ACTION_MARKER_PREV_IN_FILES, ACTION_MOVE_CARRET_LEFT, ACTION_MOVE_CARRET_RIGHT, ACTION_MOVE_LINES_DOWN, ACTION_MOVE_LINES_UP, ACTION_MOVE_SELECTION_TO_NEXT_FIND_MATCH, ACTION_MOVE_SELECTION_TO_PREVIOUS_FIND_MATCH, ACTION_NEXT_MATCH_FIND, ACTION_NEXT_SELECTION_MATCH_FIND, ACTION_OPEN_LINK, ACTION_OUTDENT_LINES, ACTION_PREVIOUS_MATCH_FIND, ACTION_PREVIOUS_SELECTION_MATCH_FIND, ACTION_QUICK_COMMAND, ACTION_REINDENTLINES, ACTION_REINDENTSELECTEDLINES, ACTION_REMOVE_COMMENT_LINE, ACTION_SELECT_HIGHLIGHTS, ACTION_SELECT_TO_BRACKET, ACTION_SET_SELECTION_ANCHOR, ACTION_SHOW_ACCESSIBILITY_HELP, ACTION_SHOW_CONTEXT_MENU, ACTION_SHOW_DEFINITION_PREVIEW_HOVER, ACTION_SHOW_HOVER, ACTION_SMART_SELECT_EXPAND, ACTION_SMART_SELECT_SHRINK, ACTION_SORT_LINES_ASCENDING, ACTION_SORT_LINES_DESCENDING, ACTION_START_FIND_REPLACE, ACTION_TOGGLE_HIGH_CONTRAST, ACTION_TOGGLE_TAB_FOCUS_MODE, ACTION_TRANSFORM_TO_LOWERCASE, ACTION_TRANSFORM_TO_TITLECASE, ACTION_TRANSFORM_TO_UPPERCASE, ACTION_TRANSPOSE, ACTION_TRANSPOSE_LETTERS, ACTION_TRIGGER_SUGGEST, ACTION_TRIM_TRAILING_WHITESPACE, ACTION_WORD_HIGHLIGHT_TRIGGER, AUTO_FORMAT_CONTRIB, BRACKET_MATCHING_CONTROLLER_CONTRIB, CODE_LENS_CONTRIB, COLOR_DETECTOR_CONTRIB, CONTEXT_MENU_CONTRIB, CURSOR_UNDO_REDO_CONTROLLER_CONTRIB, DRAG_AND_DROP_CONTRIB, FIND_CONTROLLE_CONTRIB, FOLDING_CONTRIB, FORMAT_ON_PAST_CONTRIB, GOTO_DEFINITION_CONTRIB, HOVER_CONTRIB, INSPECT_TOKENS_CONTRIB, IN_PLACE_REPLACE_CONTROLLER_CONTRIB, IPAD_SHOW_KEYBOARD_CONTRIB, LINK_DETECTOR_CONTRIB, MARKER_CONTROLLER_CONTRIB, MESSAGE_CONTROLLER_CONTRIB, MONACO_CDNJS_URL, MONACO_JS_DELIVER_URL, MULTI_CURSOR_CONTROLLER_CONTRIB, NGE_MONACO_CONFIG, NGE_MONACO_CONTRIBUTION, NGE_MONACO_THEMES, NgeMonacoColorizerService, NgeMonacoDiffEditorComponent, NgeMonacoEditorComponent, NgeMonacoLoaderService, NgeMonacoModule, NgeMonacoThemeService, NgeMonacoViewerComponent, PARAMETER_HINTS_CONTRIB, QUICK_FIX_CONTROLLER_CONTRIB, QUICK_OPEN_CONTROLLER_CONTRIB, REFERENCES_CONTROLLER_CONTRIB, REFERENCE_CONTROLLER_CONTRIB, RENAME_CONTROLLER_CONTRIB, SELECTION_HIGHLIGHTER_CONTRIB, SMART_SELECT_CONTRIB, SNIPPET_CONTROLLER_CONTRIB, SUGGEST_CONTROLLER_CONTRIB, WORD_HIGHLIGHTER_CONTRIB, provideNgeMonaco };
export type { NgeMonacoColorizeOptions, NgeMonacoConfig, NgeMonacoContribution, NgeMonacoTheme };