import { Doctype, type HTMLDocument } from "./html_element.js";
import { type XMLDocument } from "./xml.js";
/**
* Converts an object of attributes into a string representation.
*
* @param attributes - The attributes to stringify.
* @returns The string representation of the attributes.
*/
export declare const stringifyAttributes: (attributes: Record) => string;
type BaseAttributes = Record;
interface BaseElement {
readonly tag: T;
readonly attributes: A;
}
type FormatterMode = "html" | "xml";
export declare class PrettyPrinter {
private pretty;
private readonly mode;
private readonly indent;
private level;
private readonly preserveWhitespaceTags;
constructor(pretty?: boolean, mode?: FormatterMode, indent?: string, level?: number);
private increaseIndent;
private decreaseIndent;
private getIndent;
private printElement;
private printChildren;
private printSingleTextChild;
private printVoidElement;
private printDoctype;
private printXMLDeclaration;
private printTextNode;
printNode | string>(node: N): string;
print(document: HTMLDocument | XMLDocument): string;
}
export {};