// Type definitions for html-parser 0.11 // Project: https://www.npmjs.com/package/html-parser // Definitions by: Vladimir Grenaderov https://github.com/VladimirGrenaderov, // Max Boguslavskiy // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.4 export type Callback = (arg: any) => any; export type Token = '>' | '/>' | '?>'; export interface CallbacksOption { attribute?(name: string, value: any): void; openElement?(tagName: string): void; closeOpenedElement?(tagName: string, token: Token, isUnary: boolean): void; closeElement?(name: string): void; comment?(content: string): void; docType?(content: string): void; cdata?(content: string): void; xmlProlog?(): void; text?(value: string): void; } export interface RegExpOptions { name?: RegExp; attribute?: RegExp; } export interface RemovalCallback { attributes: Callback | string[]; elements: Callback | string[]; comments: Callback | boolean; docTypes: Callback | boolean; } export function parse(htmlString: string, callbacks?: CallbacksOption, regex?: RegExpOptions): void; export function parseFile(fileName: string, encoding: string | undefined, callbacks: CallbacksOption, callback: Callback): void; export function sanitize(htmlString: string, removalCallbacks?: RemovalCallback): string;