1
- import type { Info , State } from './lib/types.js'
2
-
3
- /**
4
- * Interface of registered constructs.
5
- *
6
- * When working on extensions that use new constructs, extend the corresponding
7
- * interface to register its name:
8
- *
9
- * ```ts
10
- * declare module 'mdast-util-to-markdown' {
11
- * interface ConstructNameMap {
12
- * // Register a new construct name (value is used, key should match it).
13
- * gfmStrikethrough: 'gfmStrikethrough'
14
- * }
15
- * }
16
- * ```
17
- */
18
- export interface ConstructNameMap {
19
- /**
20
- * Whole autolink.
21
- *
22
- * ```markdown
23
- * > | <https://example.com> and <admin@example.com>
24
- * ^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^
25
- * ```
26
- */
27
- autolink : 'autolink'
28
- /**
29
- * Whole block quote.
30
- *
31
- * ```markdown
32
- * > | > a
33
- * ^^^
34
- * > | b
35
- * ^
36
- * ```
37
- */
38
- blockquote : 'blockquote'
39
- /**
40
- * Whole code (indented).
41
- *
42
- * ```markdown
43
- * ␠␠␠␠console.log(1)
44
- * ^^^^^^^^^^^^^^^^^^
45
- * ```
46
- */
47
- codeIndented : 'codeIndented'
48
- /**
49
- * Whole code (fenced).
50
- *
51
- * ````markdown
52
- * > | ```js
53
- * ^^^^^
54
- * > | console.log(1)
55
- * ^^^^^^^^^^^^^^
56
- * > | ```
57
- * ^^^
58
- * ````
59
- */
60
- codeFenced : 'codeFenced'
61
- /**
62
- * Code (fenced) language, when fenced with grave accents.
63
- *
64
- * ````markdown
65
- * > | ```js
66
- * ^^
67
- * | console.log(1)
68
- * | ```
69
- * ````
70
- */
71
- codeFencedLangGraveAccent : 'codeFencedLangGraveAccent'
72
- /**
73
- * Code (fenced) language, when fenced with tildes.
74
- *
75
- * ````markdown
76
- * > | ~~~js
77
- * ^^
78
- * | console.log(1)
79
- * | ~~~
80
- * ````
81
- */
82
- codeFencedLangTilde : 'codeFencedLangTilde'
83
- /**
84
- * Code (fenced) meta string, when fenced with grave accents.
85
- *
86
- * ````markdown
87
- * > | ```js eval
88
- * ^^^^
89
- * | console.log(1)
90
- * | ```
91
- * ````
92
- */
93
- codeFencedMetaGraveAccent : 'codeFencedMetaGraveAccent'
94
- /**
95
- * Code (fenced) meta string, when fenced with tildes.
96
- *
97
- * ````markdown
98
- * > | ~~~js eval
99
- * ^^^^
100
- * | console.log(1)
101
- * | ~~~
102
- * ````
103
- */
104
- codeFencedMetaTilde : 'codeFencedMetaTilde'
105
- /**
106
- * Whole definition.
107
- *
108
- * ```markdown
109
- * > | [a]: b "c"
110
- * ^^^^^^^^^^
111
- * ```
112
- */
113
- definition : 'definition'
114
- /**
115
- * Destination (literal) (occurs in definition, image, link).
116
- *
117
- * ```markdown
118
- * > | [a]: <b> "c"
119
- * ^^^
120
- * > | a  e
121
- * ^^^
122
- * ```
123
- */
124
- destinationLiteral : 'destinationLiteral'
125
- /**
126
- * Destination (raw) (occurs in definition, image, link).
127
- *
128
- * ```markdown
129
- * > | [a]: b "c"
130
- * ^
131
- * > | a  e
132
- * ^
133
- * ```
134
- */
135
- destinationRaw : 'destinationRaw'
136
- /**
137
- * Emphasis.
138
- *
139
- * ```markdown
140
- * > | *a*
141
- * ^^^
142
- * ```
143
- */
144
- emphasis : 'emphasis'
145
- /**
146
- * Whole heading (atx).
147
- *
148
- * ```markdown
149
- * > | # alpha
150
- * ^^^^^^^
151
- * ```
152
- */
153
- headingAtx : 'headingAtx'
154
- /**
155
- * Whole heading (setext).
156
- *
157
- * ```markdown
158
- * > | alpha
159
- * ^^^^^
160
- * > | =====
161
- * ^^^^^
162
- * ```
163
- */
164
- headingSetext : 'headingSetext'
165
- /**
166
- * Whole image.
167
- *
168
- * ```markdown
169
- * > | 
170
- * ^^^^^^^
171
- * > | ![c]
172
- * ^^^^
173
- * ```
174
- */
175
- image : 'image'
176
- /**
177
- * Whole image reference.
178
- *
179
- * ```markdown
180
- * > | ![a]
181
- * ^^^^
182
- * ```
183
- */
184
- imageReference : 'imageReference'
185
- /**
186
- * Label (occurs in definitions, image reference, image, link reference,
187
- * link).
188
- *
189
- * ```markdown
190
- * > | [a]: b "c"
191
- * ^^^
192
- * > | a [b] c
193
- * ^^^
194
- * > | a ![b][c] d
195
- * ^^^^
196
- * > | a [b](c) d
197
- * ^^^
198
- * ```
199
- */
200
- label : 'label'
201
- /**
202
- * Whole link.
203
- *
204
- * ```markdown
205
- * > | [a](b)
206
- * ^^^^^^
207
- * > | [c]
208
- * ^^^
209
- * ```
210
- */
211
- link : 'link'
212
- /**
213
- * Whole link reference.
214
- *
215
- * ```markdown
216
- * > | [a]
217
- * ^^^
218
- * ```
219
- */
220
- linkReference : 'linkReference'
221
- /**
222
- * List.
223
- *
224
- * ```markdown
225
- * > | * a
226
- * ^^^
227
- * > | 1. b
228
- * ^^^^
229
- * ```
230
- */
231
- list : 'list'
232
- /**
233
- * List item.
234
- *
235
- * ```markdown
236
- * > | * a
237
- * ^^^
238
- * > | 1. b
239
- * ^^^^
240
- * ```
241
- */
242
- listItem : 'listItem'
243
- /**
244
- * Paragraph.
245
- *
246
- * ```markdown
247
- * > | a b
248
- * ^^^
249
- * > | c.
250
- * ^^
251
- * ```
252
- */
253
- paragraph : 'paragraph'
254
- /**
255
- * Phrasing (occurs in headings, paragraphs, etc).
256
- *
257
- * ```markdown
258
- * > | a
259
- * ^
260
- * ```
261
- */
262
- phrasing : 'phrasing'
263
- /**
264
- * Reference (occurs in image, link).
265
- *
266
- * ```markdown
267
- * > | [a][]
268
- * ^^
269
- * ```
270
- */
271
- reference : 'reference'
272
- /**
273
- * Strong.
274
- *
275
- * ```markdown
276
- * > | **a**
277
- * ^^^^^
278
- * ```
279
- */
280
- strong : 'strong'
281
- /**
282
- * Title using single quotes (occurs in definition, image, link).
283
- *
284
- * ```markdown
285
- * > | [a](b 'c')
286
- * ^^^
287
- * ```
288
- */
289
- titleApostrophe : 'titleApostrophe'
290
- /**
291
- * Title using double quotes (occurs in definition, image, link).
292
- *
293
- * ```markdown
294
- * > | [a](b "c")
295
- * ^^^
296
- * ```
297
- */
298
- titleQuote : 'titleQuote'
299
- }
300
-
301
- /**
302
- * Construct names for things generated by `mdast-util-to-markdown`.
303
- *
304
- * This is an enum of strings, each being a semantic label, useful to know when
305
- * serializing whether we’re for example in a double (`"`) or single (`'`)
306
- * quoted title.
307
- */
308
- export type ConstructName = ConstructNameMap [ keyof ConstructNameMap ]
309
-
310
- export { toMarkdown } from './lib/index.js'
311
- export { handle as defaultHandlers } from './lib/handle/index.js'
312
1
export type {
2
+ ConstructNameMap ,
3
+ ConstructName ,
313
4
Handle ,
314
5
Handlers ,
315
6
Info ,
@@ -321,3 +12,5 @@ export type {
321
12
Tracker ,
322
13
Unsafe
323
14
} from './lib/types.js'
15
+ export { toMarkdown } from './lib/index.js'
16
+ export { handle as defaultHandlers } from './lib/handle/index.js'
0 commit comments