import * as _angular_platform_browser from '@angular/platform-browser'; import * as i0 from '@angular/core'; import { InjectionToken } from '@angular/core'; /** * CodeComponent is responsible for displaying formatted code snippets. * It takes raw code as input and uses registered CodeFormatters to format the code based on the specified formatter name. */ declare class CodeComponent { private readonly _domSanitizer; private readonly _formatters; /** * The name of the formatter to be used for syntax highlighting (e.g., 'typescript', 'html'). */ readonly formatter: i0.InputSignal; /** * The actual code string to be displayed. */ readonly code: i0.ModelSignal; constructor(); protected _safeHtml: i0.Signal<_angular_platform_browser.SafeHtml>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } type CodeFormatterFunc = (code: string) => string; declare class CodeFormatter { readonly name: string; readonly format: CodeFormatterFunc; constructor(name: string, format: CodeFormatterFunc); } declare const CODE_FORMATTER: InjectionToken; declare class CodeModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } /** * Creates a CodeFormatter using highlight.js library * @param name The name of the registered language in highlight.js (e.g., 'html', 'css', 'javascript') * @param hljs The highlight.js instance * @returns A CodeFormatter instance that uses highlight.js to format code of the specified language */ declare function createHighlightJsFormatter(name: string, hljs: any): CodeFormatter; export { CODE_FORMATTER, CodeComponent, CodeFormatter, CodeModule, createHighlightJsFormatter }; export type { CodeFormatterFunc };