import { type FC } from "react";
import type { BoxProps } from "../Box/index.js";
/**
* Properties for the `Markdown` component.
*/
export interface MarkdownProps extends BoxProps {
/**
* The markdown text to render. Optional, you can also supply the text as a
* child of this component.
*/
markdown?: string;
/**
* Override the default sanitization behaviour with a caller-supplied
* sanitization function that ensures that the resulting HTML is safe to
* insert into the DOM.
*
* @deprecated The Markdown component no longer operates by attaching raw
* HTML strings to the DOM, so this property is ignored.
*/
sanitize?: (unsafeHtml: string) => string;
/**
* If specified, produces HTML that is valid for contexts where only inline
* content is allowed (e.g. inside `
` or `` tags). HTML tags for
* block-level elements will be removed, but any text content will be
* preserved.
*/
inline?: boolean;
/**
* If true, any HTML in the markdown will be escaped rather than passed
* through directly to the output as normal (since Markdown is a superset of
* HTML). This is useful in situations where you wish to only support pure
* Markdown syntax without also supporting HTML syntax. The default is
* `false`.
*
* IMPORTANT: A sanitizer is run on any inline HTML before it is passed to
* React, but you should still probably set this to `true` when dealing with
* untrusted sources.
*/
escapeHtml?: boolean;
/**
* An optional value to apply to external hyperlinks via the `target`
* attribute. Defaults to "_blank".
*/
linkTarget?: string;
/**
* Whether to use standard HTML elements instead of their `react-ui`
* equivalents. If this is `true` the VertiGIS 'Meridian' style will not be
* applied to the output. Defaults to `false`.
*/
useBasicHtml?: boolean;
}
/**
* A component that renders markdown as React nodes.
*
* GitHub style sanitation is applied to any inline HTML encountered, see:
* https://github.com/gjtorikian/html-pipeline/blob/a2e02ac/lib/html_pipeline/sanitization_filter.rb
* However, it is still recommended to set `escapeHtml` to true with untrusted
* content.
*/
declare const Markdown: FC;
export default Markdown;