import type { RemarkSetting, RenderContext, IMarkPlugins } from './types';
import type { Schema } from 'hast-util-sanitize';
type rehypeOptons = import('remark-rehype').Options;
export interface RehypeOptions extends rehypeOptons {
    /**
     * Whether format output after remark rehype.
     * @type {boolean}
     */
    outFormat?: boolean;
}
/**
 * Converer of markdown to HTML
 *
 * @class Converter
 */
declare class Converter {
    /**
     * Imark's plugin array
     *
     * @type {IMarkPlugins}
     */
    plugins: IMarkPlugins;
    /**
     * Sanitize options
     *
     * @type {Schema}
     */
    schema: Schema;
    /**
     * Sanitize method
     *
     * @type {?(schema: Schema) => Schema}
     */
    sanitize?: (schema: Schema) => Schema;
    /**
     * Creates an instance of Converter.
     *
     * @constructor
     */
    constructor();
    setting(name: string, remarkSetting: RemarkSetting): void;
    /**
     * Convert markdown to html with additional renders
     *
     * @param {string} v
     * @param {RemarkSetting} [remarkOptions]
     * @param {RehypeOptions} [rehypeOptions]
     * @returns {Promise<RenderContext>}
     */
    toHTML(v: string, remarkOptions?: RemarkSetting, rehypeOptions?: RehypeOptions): Promise<RenderContext>;
}
export default Converter;
