html-react-parser
Version:
HTML to React parser.
44 lines (35 loc) • 1.13 kB
TypeScript
// TypeScript Version: 3.3
import { DomElement, ParserOptions } from 'htmlparser2';
import domToReact from './lib/dom-to-react';
import attributesToProps from './lib/attributes-to-props';
import htmlToDOM from 'html-dom-parser';
export interface HTMLReactParserOptions {
htmlparser2?: ParserOptions;
library?: {
cloneElement: (
element: JSX.Element,
props?: object,
...children: any
) => JSX.Element;
createElement: (type: any, props?: object, ...children: any) => JSX.Element;
isValidElement: (element: any) => boolean;
[key: string]: any;
};
replace?: (
domNode: DomElement
) => JSX.Element | object | void | undefined | null | false;
trim?: boolean;
}
/**
* Converts HTML string to JSX element(s).
*
* @param html - HTML string.
* @param options - Parser options.
* @return - JSX element(s), empty array, or string.
*/
declare function HTMLReactParser(
html: string,
options?: HTMLReactParserOptions
): ReturnType<typeof domToReact>;
export { DomElement, ParserOptions, domToReact, htmlToDOM, attributesToProps };
export default HTMLReactParser;