/**
* HTML serializer — converts ContentUnit back to HTML strings (raw-only).
*
* Every indexed tag carries a `raw:` style. The serializer
* routes the stored opening tag through the shared allowlist sanitizer and
* derives the close tag from the embedded tag name. Void elements get no
* close tag. Text segments are HTML-escaped (ContentUnit.text holds decoded
* Unicode — see MarkupParser.decodeEntities), so serializer output is inert
* even when the translation value is attacker-controlled. `ContentUnit.text`
* itself is never modified — auto_key hashing is unaffected.
*
* @module content/serializer/HTMLSerializer
*/
import type { ISerializer } from './ISerializer.js';
import type { ContentUnit } from '../types.js';
/**
* Serializer that converts ContentUnit format back to HTML strings.
*
* @example
* ```typescript
* const serializer = new HTMLSerializer();
* serializer.serialize({
* text: 'Read our <1>Terms1>.',
* styles: { '1': ['raw:'] }
* });
* // → 'Read our Terms.'
* ```
*/
export declare class HTMLSerializer implements ISerializer {
serialize(unit: ContentUnit): string;
}
//# sourceMappingURL=HTMLSerializer.d.ts.map