UNPKG

fortissimo-html

Version:

Fortissimo HTML - Flexible, Forgiving, Formatting HTML Parser

109 lines 3.9 kB
export declare enum ClosureState { UNCLOSED = 0, SELF_CLOSED = 1, VOID_CLOSED = 2, EXPLICITLY_CLOSED = 3, IMPLICITLY_CLOSED = 4 } export declare function OQ(quote: string): string; export declare function CQ(quote: string): string; export declare function isCommentLike(obj: any): boolean; export declare abstract class DomElement { content: string; readonly line: number; readonly column: number; readonly terminated: boolean; parent: DomNode; blockContext: boolean; constructor(content: string, line: number, column: number, terminated: boolean); get depth(): number; get syntheticDepth(): number; toJSON(): any; } export declare class CData extends DomElement { toString(): string; } export declare class CommentElement extends DomElement { toString(): string; } export declare class DeclarationElement extends DomElement { toString(): string; } export declare class DocType extends DeclarationElement { readonly type: 'html' | 'xhtml'; readonly variety: 'frameset' | 'strict' | 'transitional'; readonly version: string; constructor(content: string, line: number, column: number, terminated: boolean); } export declare class ProcessingElement extends DomElement { toString(): string; } export declare class TextElement extends DomElement { possibleEntities: boolean; constructor(content: string, line: number, column: number, possibleEntities: boolean); toString(): string; } export declare class UnmatchedClosingTag extends DomElement { constructor(content: string, line: number, column: number); toString(): string; } export declare class DomNode extends DomElement { tag: string; attributes: string[]; badTerminator: string; children: DomElement[]; closureState: ClosureState; endTagLine: number; endTagColumn: number; endTagText: string; equals: string[]; innerWhitespace: string; quotes: string[]; spacing: string[]; synthetic?: boolean; tagLc: string; values: string[]; valuesLookup: Record<string, string>; static createNode(tag: string): DomNode; constructor(tag: string, line?: number, column?: number, caseSensitive?: boolean, synthetic?: boolean); get attributeCount(): number; getAttribute(nameOrIndex: number | string): string[]; deleteAttribute(nameOrIndex: number | string): boolean; clearAttributes(): void; setAttribute(name: string, value?: string, leadingSpace?: string, equals?: string, quote?: string): void; addAttribute(name: string, value?: string, leadingSpace?: string, equals?: string, quote?: string): void; addChild(child: DomElement): void; remove(child?: number | DomElement): void; setEndTag(text: string, line?: number, column?: number): void; querySelector(selector: string): DomNode; querySelectorAll(selector: string): DomNode[]; private querySelectorImpl; get textContent(): string; get innerHTML(): string; countUnclosed(): [number, number]; toJSON(): any; toString(includeSelf?: boolean): string; } export declare class DomModel { private root; private currentNode; private inMathOrSvg; private openStack; private xmlMode; getRoot(): DomNode; getCurrentNode(): DomNode; addAttribute(name: string, value: string, leadingSpace?: string, equals?: string, quote?: string): void; addInnerWhitespace(whitespace: string): void; canDoXmlMode(): boolean; getDepth(): number; setXmlMode(mode: boolean): void; prePush(node: DomNode): void; addChild(child: DomElement): void; private examineTable; private static insertRowsWhereNeeded; push(node: DomNode): void; pop(tagLc: string, endTagText?: string, line?: number, column?: number): boolean; shouldParseCData(): boolean; private updateCurrentNode; } //# sourceMappingURL=dom.d.ts.map