import { type IXmlBuilder } from "./xml.interfaces.js"; /** */ export interface IXmlWriter { /** * @param data * @returns */ write(...data: string[]): IXmlWriter; /** */ count: number; /** */ clear(): void; } /** */ export declare enum TokenType { Declaration = 0, Tag = 1, Attribute = 2, Text = 3 } /** */ export declare class XmlBuilder implements IXmlBuilder { /** */ static Context: { new (name: string, depth: number): { /** */ name: string; /** */ closed: boolean; /** */ lastToken: TokenType | null; /** */ depth: number; ns2prefix: Map; prefix2ns: Map; defaultNs: string | null; }; }; /** */ private _w; /** */ private _ctxStack; /** */ private _d; constructor(w: IXmlWriter); /** * * @param version * @param encoding * @param standalone * @returns */ dec(version: string, encoding?: string, standalone?: boolean): IXmlBuilder; /** * * @param ns * @param n * @param v * @returns */ att(ns: string | null, n: string, v: string): IXmlBuilder; /** * * @param ns * @param n * @returns */ ele(ns: string | null, n: string): IXmlBuilder; /** * * @param txt * @returns */ text(txt: string): IXmlBuilder; /** * * @returns */ end(): IXmlBuilder; protected _pushContext(name: string, depth: number): InstanceType; protected _popContext(): InstanceType | undefined; protected _peekContext(): InstanceType | undefined; protected get _contextDepth(): number; private _writeAttStr; private _lookupPrefix; private _escText; private _escAttr; private _isXmlnsDecl; private _registerNamespace; private _allocPrefix; private _ensurePrefixDeclared; private _closeOpenTagIfNeeded; }