aboutsummaryrefslogtreecommitdiff
path: root/node_modules/domhandler/lib/index.d.ts
blob: befc7d8056b40816bd9941fbf3ac9c5551d5c580 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
import { Node, Element, DataNode, NodeWithChildren, Document } from "./node";
export * from "./node";
export interface DomHandlerOptions {
    /**
     * Add a `startIndex` property 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.
     *
     * @default false
     */
    withStartIndices?: boolean;
    /**
     * Add an `endIndex` property 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.
     *
     * @default false
     */
    withEndIndices?: boolean;
    /**
     * Replace all whitespace with single spaces.
     *
     * **Note:** Enabling this might break your markup.
     *
     * @default false
     * @deprecated
     */
    normalizeWhitespace?: boolean;
    /**
     * Treat the markup as XML.
     *
     * @default false
     */
    xmlMode?: 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 elements of the DOM */
    dom: Node[];
    /** The root element for the DOM */
    root: Document;
    /** Called once parsing has completed. */
    private readonly callback;
    /** Settings for the handler. */
    private readonly options;
    /** Callback whenever a tag is closed. */
    private readonly elementCB;
    /** Indicated whether parsing has been completed. */
    private done;
    /** Stack of open tags. */
    protected tagStack: NodeWithChildren[];
    /** A data node that is still being written to. */
    protected lastNode: DataNode | null;
    /** Reference to the parser instance. Used for location information. */
    private parser;
    /**
     * @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;
}
export default DomHandler;
//# sourceMappingURL=index.d.ts.map