123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- import Tokenizer from "./Tokenizer";
- export interface ParserOptions {
-
- xmlMode?: boolean;
-
- decodeEntities?: boolean;
-
- lowerCaseTags?: boolean;
-
- lowerCaseAttributeNames?: boolean;
-
- recognizeCDATA?: boolean;
-
- recognizeSelfClosing?: boolean;
-
- Tokenizer?: typeof Tokenizer;
- }
- export interface Handler {
- onparserinit(parser: Parser): void;
-
- onreset(): void;
-
- onend(): void;
- onerror(error: Error): void;
- onclosetag(name: string): void;
- onopentagname(name: string): void;
-
- onattribute(name: string, value: string, quote?: string | undefined | null): void;
- onopentag(name: string, attribs: {
- [s: string]: string;
- }): void;
- ontext(data: string): void;
- oncomment(data: string): void;
- oncdatastart(): void;
- oncdataend(): void;
- oncommentend(): void;
- onprocessinginstruction(name: string, data: string): void;
- }
- export declare class Parser {
-
- startIndex: number;
-
- endIndex: number | null;
- private tagname;
- private attribname;
- private attribvalue;
- private attribs;
- private stack;
- private readonly foreignContext;
- private readonly cbs;
- private readonly options;
- private readonly lowerCaseTagNames;
- private readonly lowerCaseAttributeNames;
- private readonly tokenizer;
- constructor(cbs: Partial<Handler> | null, options?: ParserOptions);
- private updatePosition;
- ontext(data: string): void;
- onopentagname(name: string): void;
- onopentagend(): void;
- onclosetag(name: string): void;
- onselfclosingtag(): void;
- private closeCurrentTag;
- onattribname(name: string): void;
- onattribdata(value: string): void;
- onattribend(quote: string | undefined | null): void;
- private getInstructionName;
- ondeclaration(value: string): void;
- onprocessinginstruction(value: string): void;
- oncomment(value: string): void;
- oncdata(value: string): void;
- onerror(err: Error): void;
- onend(): void;
- /**
- * Resets the parser to a blank state, ready to parse a new HTML document
- */
- reset(): void;
- /**
- * Resets the parser, then parses a complete document and
- * pushes it to the handler.
- *
- * @param data Document to parse.
- */
- parseComplete(data: string): void;
- /**
- * Parses a chunk of data and calls the corresponding callbacks.
- *
- * @param chunk Chunk to parse.
- */
- write(chunk: string): void;
- /**
- * Parses the end of the buffer and clears the stack, calls onend.
- *
- * @param chunk Optional final chunk to parse.
- */
- end(chunk?: string): void;
- /**
- * Pauses parsing. The parser won't emit events until `resume` is called.
- */
- pause(): void;
- /**
- * Resumes parsing after `pause` was called.
- */
- resume(): void;
- /**
- * Alias of `write`, for backwards compatibility.
- *
- * @param chunk Chunk to parse.
- * @deprecated
- */
- parseChunk(chunk: string): void;
- /**
- * Alias of `end`, for backwards compatibility.
- *
- * @param chunk Optional final chunk to parse.
- * @deprecated
- */
- done(chunk?: string): void;
- }
- //# sourceMappingURL=Parser.d.ts.map
|