64 lines
1.6 KiB
TypeScript
64 lines
1.6 KiB
TypeScript
import type {Program} from 'estree'
|
|
import type {Acorn, AcornOptions} from 'micromark-util-events-to-acorn'
|
|
|
|
export {mdxExpression} from './lib/syntax.js'
|
|
|
|
/**
|
|
* Configuration (optional).
|
|
*/
|
|
export interface Options {
|
|
/**
|
|
* Acorn parser to use (optional).
|
|
*/
|
|
acorn?: Acorn | null | undefined
|
|
/**
|
|
* Configuration for acorn (default: `{ecmaVersion: 2024, locations: true,
|
|
* sourceType: 'module'}`).
|
|
*
|
|
* All fields except `locations` can be set.
|
|
*/
|
|
acornOptions?: AcornOptions | null | undefined
|
|
/**
|
|
* Whether to add `estree` fields to tokens with results from acorn (default:
|
|
* `false`).
|
|
*/
|
|
addResult?: boolean | null | undefined
|
|
/**
|
|
* Undocumented option to parse only a spread (used by
|
|
* `micromark-extension-mdx-jsx` to parse spread attributes) (default:
|
|
* `false`).
|
|
*/
|
|
spread?: boolean | null | undefined
|
|
/**
|
|
* Undocumented option to disallow empty attributes (used by
|
|
* `micromark-extension-mdx-jsx` to prohobit empty attribute values)
|
|
* (default: `false`).
|
|
*/
|
|
allowEmpty?: boolean | null | undefined
|
|
}
|
|
|
|
/**
|
|
* Augment types.
|
|
*/
|
|
declare module 'micromark-util-types' {
|
|
/**
|
|
* Token fields.
|
|
*/
|
|
interface Token {
|
|
estree?: Program
|
|
}
|
|
|
|
/**
|
|
* Token types.
|
|
*/
|
|
interface TokenTypeMap {
|
|
mdxFlowExpression: 'mdxFlowExpression'
|
|
mdxFlowExpressionMarker: 'mdxFlowExpressionMarker'
|
|
mdxFlowExpressionChunk: 'mdxFlowExpressionChunk'
|
|
|
|
mdxTextExpression: 'mdxTextExpression'
|
|
mdxTextExpressionMarker: 'mdxTextExpressionMarker'
|
|
mdxTextExpressionChunk: 'mdxTextExpressionChunk'
|
|
}
|
|
}
|