/** * Create an extension for `micromark` to support directives when serializing * to HTML. * * @param {HtmlOptions | null | undefined} [options={}] * Configuration (default: `{}`). * @returns {HtmlExtension} * Extension for `micromark` that can be passed in `htmlExtensions`, to * support directives when serializing to HTML. */ export function directiveHtml( options?: HtmlOptions | null | undefined ): HtmlExtension export type CompileContext = import('micromark-util-types').CompileContext export type _Handle = import('micromark-util-types').Handle export type HtmlExtension = import('micromark-util-types').HtmlExtension /** * Internal tuple representing an attribute. */ export type Attribute = [string, string] /** * Configuration. * * > 👉 **Note**: the special field `'*'` can be used to specify a fallback * > handle to handle all otherwise unhandled directives. */ export type HtmlOptions = Record /** * Handle a directive. */ export type Handle = ( this: CompileContext, directive: Directive ) => boolean | undefined /** * Structure representing a directive. */ export type Directive = { /** * Kind. */ type: DirectiveType /** * Name of directive. */ name: string /** * Compiled HTML content that was in `[brackets]`. */ label?: string | undefined /** * Object w/ HTML attributes. */ attributes?: Record | undefined /** * Compiled HTML content inside container directive. */ content?: string | undefined /** * Private :) */ _fenceCount?: number | undefined } /** * Kind. */ export type DirectiveType = | 'containerDirective' | 'leafDirective' | 'textDirective'