You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
2.7 KiB
74 lines
2.7 KiB
import { Node, Element, DataNode, NodeWithChildren } from "./node";
|
|
export { Node, NodeWithChildren, DataNode, Element };
|
|
export interface DomHandlerOptions {
|
|
/***
|
|
* Indicates whether the whitespace in text nodes should be normalized
|
|
* (= all whitespace should be replaced with single spaces). The default value is "false".
|
|
*/
|
|
normalizeWhitespace?: boolean;
|
|
/***
|
|
* Indicates whether a startIndex property will be added to nodes.
|
|
* When the parser is used in a non-streaming fashion, startIndex is an integer
|
|
* indicating the position of the start of the node in the document.
|
|
* The default value is "false".
|
|
*/
|
|
withStartIndices?: boolean;
|
|
/***
|
|
* Indicates whether a endIndex property will be added to nodes.
|
|
* When the parser is used in a non-streaming fashion, endIndex is an integer
|
|
* indicating the position of the end of the node in the document.
|
|
* The default value is "false".
|
|
*/
|
|
withEndIndices?: boolean;
|
|
}
|
|
interface ParserInterface {
|
|
startIndex: number | null;
|
|
endIndex: number | null;
|
|
}
|
|
declare type Callback = (error: Error | null, dom: Node[]) => void;
|
|
declare type ElementCallback = (element: Element) => void;
|
|
export declare class DomHandler {
|
|
/** The constructed DOM */
|
|
dom: Node[];
|
|
/** Called once parsing has completed. */
|
|
private _callback;
|
|
/** Settings for the handler. */
|
|
private _options;
|
|
/** Callback whenever a tag is closed. */
|
|
private _elementCB;
|
|
/** Indicated whether parsing has been completed. */
|
|
private _done;
|
|
/** Stack of open tags. */
|
|
private _tagStack;
|
|
/** A data node that is still being written to. */
|
|
private _lastNode;
|
|
/** Reference to the parser instance. Used for location information. */
|
|
private _parser;
|
|
/**
|
|
* Initiate a new DomHandler.
|
|
*
|
|
* @param callback Called once parsing has completed.
|
|
* @param options Settings for the handler.
|
|
* @param elementCB Callback whenever a tag is closed.
|
|
*/
|
|
constructor(callback?: Callback | null, options?: DomHandlerOptions | null, elementCB?: ElementCallback);
|
|
onparserinit(parser: ParserInterface): void;
|
|
onreset(): void;
|
|
onend(): void;
|
|
onerror(error: Error): void;
|
|
onclosetag(): void;
|
|
onopentag(name: string, attribs: {
|
|
[key: string]: string;
|
|
}): void;
|
|
ontext(data: string): void;
|
|
oncomment(data: string): void;
|
|
oncommentend(): void;
|
|
oncdatastart(): void;
|
|
oncdataend(): void;
|
|
onprocessinginstruction(name: string, data: string): void;
|
|
protected handleCallback(error: Error | null): void;
|
|
protected addNode(node: Node): void;
|
|
protected addDataNode(node: DataNode): void;
|
|
}
|
|
export default DomHandler;
|
|
//# sourceMappingURL=index.d.ts.map
|