xmlbuilder2
Version:
An XML builder for node.js
52 lines (51 loc) • 1.64 kB
TypeScript
import { XMLBuilderCBOptions, XMLCBWriterOptions } from "../interfaces";
import { BaseCBWriter } from "./BaseCBWriter";
/**
* Serializes XML nodes.
*/
export declare class XMLCBWriter extends BaseCBWriter<XMLCBWriterOptions> {
private _lineLength;
/**
* Initializes a new instance of `XMLCBWriter`.
*
* @param builderOptions - XML builder options
*/
constructor(builderOptions: XMLBuilderCBOptions);
/** @inheritdoc */
frontMatter(): string;
/** @inheritdoc */
declaration(version: "1.0", encoding?: string, standalone?: boolean): string;
/** @inheritdoc */
docType(name: string, publicId: string, systemId: string): string;
/** @inheritdoc */
comment(data: string): string;
/** @inheritdoc */
text(data: string): string;
/** @inheritdoc */
instruction(target: string, data: string): string;
/** @inheritdoc */
cdata(data: string): string;
/** @inheritdoc */
openTagBegin(name: string): string;
/** @inheritdoc */
openTagEnd(name: string, selfClosing: boolean, voidElement: boolean): string;
/** @inheritdoc */
closeTag(name: string, hasTextPayload?: boolean): string;
/** @inheritdoc */
attribute(name: string, value: string): string;
/** @inheritdoc */
beginElement(name: string): void;
/** @inheritdoc */
endElement(name: string): void;
/**
* Produces characters to be prepended to a line of string in pretty-print
* mode.
*/
private _beginLine;
/**
* Produces an indentation string.
*
* @param level - depth of the tree
*/
private _indent;
}