import { Marked } from '../../../external/marked/index.js'; import { UmbContextBase } from '../../../libs/class-api/index.js'; import { UmbContextToken } from '../../../libs/context-api/index.js'; import type { UmbControllerHost } from '../../../libs/controller-api/index.js'; export declare const UmbMarked: Marked; export type UmbUfmFilterFunction = ((...args: Array) => string | undefined | null) | undefined; export type UmbUfmFilterType = { alias: string; filter: UmbUfmFilterFunction; }; export declare class UmbUfmContext extends UmbContextBase { #private; /** * Observable of all registered UFM filters. Aliases reflect the canonical form registered by each filter's * manifest (camelCase for built-in filters since v18 — e.g. `stripHtml`, not `strip-html`). * Use {@link getFilterByAlias} for alias-based lookup; it maps deprecated kebab-case aliases automatically. */ readonly filters: import("rxjs").Observable; constructor(host: UmbControllerHost); /** * Get the filters registered in the UFM context. * Aliases reflect the canonical form registered by each filter's manifest (camelCase for built-in * filters since v18 — e.g. `stripHtml`, not `strip-html`). * Use {@link getFilterByAlias} for alias-based lookup; it maps deprecated kebab-case aliases automatically. * @returns {Array} An array of filters with their aliases and filter functions. */ getFilters(): Array; /** * Get a filter by its alias. * Deprecated kebab-case aliases (e.g. `strip-html`, `title-case`, `word-limit`) are transparently * resolved to their camelCase equivalents, with a one-time deprecation warning logged per alias. * @param alias The alias of the filter to retrieve. * @returns {UmbUfmFilterFunction} The filter function associated with the alias, or undefined if not found. */ getFilterByAlias(alias: string): UmbUfmFilterFunction; /** * Parse markdown content, optionally inline. * @param markdown The markdown string to parse. * @param inline If true, parse inline markdown; otherwise, parse block markdown. * @returns {Promise} A promise that resolves to the parsed HTML string. */ parse(markdown: string, inline: boolean): Promise; } export declare const UMB_UFM_CONTEXT: UmbContextToken; export { UmbUfmContext as api };