import React, { ReactNode } from 'react';
export type HeadingLevels = 1 | 2 | 3 | 4 | 5 | 6;
export interface TableFlags {
    header?: boolean;
    align?: 'center' | 'left' | 'right' | null;
}
export type CustomReactRenderer = Partial<MarkdownReactRenderer>;
export type RendererMethods = keyof MarkdownReactRenderer;
export interface ReactRendererOptions {
    baseURL?: string;
    langPrefix?: string;
    renderer?: CustomReactRenderer;
}
export declare class MarkdownReactRenderer {
    private uid;
    private options;
    constructor(options?: ReactRendererOptions);
    private node;
    private incrementUID;
    heading(children: ReactNode, level: HeadingLevels): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    paragraph(children: ReactNode): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    private joinBase;
    link(href: string, text: ReactNode): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    image(src: string, alt: string, title?: string | null): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    codespan(code: ReactNode, lang?: string | null): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    code(code: ReactNode | string, lang: string | undefined): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    blockquote(children: ReactNode): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    list(children: ReactNode, ordered: boolean): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    listItem(children: ReactNode[]): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    checkbox(checked: ReactNode): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    table(children: ReactNode[]): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    tableHeader(children: ReactNode): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    tableBody(children: ReactNode[]): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    tableRow(children: ReactNode[]): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    tableCell(children: ReactNode[], flags: TableFlags): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    strong(children: ReactNode): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    em(children: ReactNode): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    del(children: ReactNode): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    text(text: ReactNode): React.ReactNode;
    html(text: string): React.JSX.Element;
    hr(): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
    br(): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
}
//# sourceMappingURL=render.d.ts.map