import EventEmitter from 'events'; import { Element } from 'react-markdown/lib/rehype-filter'; import { NextLink } from './NextLink'; import styles from './Header.module.scss'; declare const globalEmitter: EventEmitter; function setCaretLine(line?: number): void { if (line != null) { globalEmitter.emit('setCaretLine', line); } } type EditLinkProps = { line?: number, } /** * Inner FC to display edit link icon */ const EditLink = (props: EditLinkProps): JSX.Element => { const isDisabled = props.line == null; return ( setCaretLine(props.line)}> ); }; type HeaderProps = { children: React.ReactNode, node: Element, level: number, id?: string, } export const Header = (props: HeaderProps): JSX.Element => { const { node, id, children, level, } = props; const CustomTag = `h${level}` as keyof JSX.IntrinsicElements; return ( {children} ); };