/** * `unsafeHtml()` — opt-in sanitizer bypass marker for {@link storyHtml}. * * @module bquery/storybook */ /** @internal */ export declare const UNSAFE_HTML_PLACEHOLDER_PREFIX = "\u0001BQ_UNSAFE_HTML_"; /** @internal */ export declare const UNSAFE_HTML_PLACEHOLDER_SUFFIX = "_END\u0001"; /** @internal */ declare const UNSAFE_HTML_BRAND: unique symbol; /** * Marker returned by {@link unsafeHtml}. Identifies an interpolated story * value that should bypass the {@link storyHtml} sanitizer. */ export interface UnsafeHtmlMarker { /** @internal */ readonly [UNSAFE_HTML_BRAND]: true; /** The raw HTML that will be re-inserted after sanitization. */ readonly value: string; } /** @internal */ export declare const createUnsafeHtmlMarker: (value: string) => UnsafeHtmlMarker; /** * Wraps an HTML fragment so {@link storyHtml} re-inserts it verbatim after * sanitizing the surrounding template. The wrapped value is **not** sanitized. * * @remarks * Mirrors `lit-html`'s `unsafeHTML` directive. Only use with trusted, * author-controlled markup — never with user-supplied input. * * @param value - The HTML fragment to insert verbatim * @returns An opaque marker recognised by {@link storyHtml} * * @example * ```ts * import { storyHtml, unsafeHtml } from '@bquery/bquery/storybook'; * * const trustedSvg = ''; * storyHtml`${unsafeHtml(trustedSvg)}`; * ``` */ export declare const unsafeHtml: (value: string) => UnsafeHtmlMarker; /** * Type guard for {@link UnsafeHtmlMarker}. * @internal */ export declare const isUnsafeHtmlMarker: (value: unknown) => value is UnsafeHtmlMarker; export {}; //# sourceMappingURL=unsafe-html.d.ts.map