remark-mdat 1.1.2 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1820,6 +1820,211 @@ function color(d) {
1820
1820
 
1821
1821
  //#endregion
1822
1822
  //#region node_modules/.pnpm/unist-util-visit-parents@6.0.2/node_modules/unist-util-visit-parents/lib/index.js
1823
+ /**
1824
+ * @import {Node as UnistNode, Parent as UnistParent} from 'unist'
1825
+ */
1826
+ /**
1827
+ * @typedef {Exclude<import('unist-util-is').Test, undefined> | undefined} Test
1828
+ * Test from `unist-util-is`.
1829
+ *
1830
+ * Note: we have remove and add `undefined`, because otherwise when generating
1831
+ * automatic `.d.ts` files, TS tries to flatten paths from a local perspective,
1832
+ * which doesn’t work when publishing on npm.
1833
+ */
1834
+ /**
1835
+ * @typedef {(
1836
+ * Fn extends (value: any) => value is infer Thing
1837
+ * ? Thing
1838
+ * : Fallback
1839
+ * )} Predicate
1840
+ * Get the value of a type guard `Fn`.
1841
+ * @template Fn
1842
+ * Value; typically function that is a type guard (such as `(x): x is Y`).
1843
+ * @template Fallback
1844
+ * Value to yield if `Fn` is not a type guard.
1845
+ */
1846
+ /**
1847
+ * @typedef {(
1848
+ * Check extends null | undefined // No test.
1849
+ * ? Value
1850
+ * : Value extends {type: Check} // String (type) test.
1851
+ * ? Value
1852
+ * : Value extends Check // Partial test.
1853
+ * ? Value
1854
+ * : Check extends Function // Function test.
1855
+ * ? Predicate<Check, Value> extends Value
1856
+ * ? Predicate<Check, Value>
1857
+ * : never
1858
+ * : never // Some other test?
1859
+ * )} MatchesOne
1860
+ * Check whether a node matches a primitive check in the type system.
1861
+ * @template Value
1862
+ * Value; typically unist `Node`.
1863
+ * @template Check
1864
+ * Value; typically `unist-util-is`-compatible test, but not arrays.
1865
+ */
1866
+ /**
1867
+ * @typedef {(
1868
+ * Check extends ReadonlyArray<infer T>
1869
+ * ? MatchesOne<Value, T>
1870
+ * : Check extends Array<infer T>
1871
+ * ? MatchesOne<Value, T>
1872
+ * : MatchesOne<Value, Check>
1873
+ * )} Matches
1874
+ * Check whether a node matches a check in the type system.
1875
+ * @template Value
1876
+ * Value; typically unist `Node`.
1877
+ * @template Check
1878
+ * Value; typically `unist-util-is`-compatible test.
1879
+ */
1880
+ /**
1881
+ * @typedef {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10} Uint
1882
+ * Number; capped reasonably.
1883
+ */
1884
+ /**
1885
+ * @typedef {I extends 0 ? 1 : I extends 1 ? 2 : I extends 2 ? 3 : I extends 3 ? 4 : I extends 4 ? 5 : I extends 5 ? 6 : I extends 6 ? 7 : I extends 7 ? 8 : I extends 8 ? 9 : 10} Increment
1886
+ * Increment a number in the type system.
1887
+ * @template {Uint} [I=0]
1888
+ * Index.
1889
+ */
1890
+ /**
1891
+ * @typedef {(
1892
+ * Node extends UnistParent
1893
+ * ? Node extends {children: Array<infer Children>}
1894
+ * ? Child extends Children ? Node : never
1895
+ * : never
1896
+ * : never
1897
+ * )} InternalParent
1898
+ * Collect nodes that can be parents of `Child`.
1899
+ * @template {UnistNode} Node
1900
+ * All node types in a tree.
1901
+ * @template {UnistNode} Child
1902
+ * Node to search for.
1903
+ */
1904
+ /**
1905
+ * @typedef {InternalParent<InclusiveDescendant<Tree>, Child>} Parent
1906
+ * Collect nodes in `Tree` that can be parents of `Child`.
1907
+ * @template {UnistNode} Tree
1908
+ * All node types in a tree.
1909
+ * @template {UnistNode} Child
1910
+ * Node to search for.
1911
+ */
1912
+ /**
1913
+ * @typedef {(
1914
+ * Depth extends Max
1915
+ * ? never
1916
+ * :
1917
+ * | InternalParent<Node, Child>
1918
+ * | InternalAncestor<Node, InternalParent<Node, Child>, Max, Increment<Depth>>
1919
+ * )} InternalAncestor
1920
+ * Collect nodes in `Tree` that can be ancestors of `Child`.
1921
+ * @template {UnistNode} Node
1922
+ * All node types in a tree.
1923
+ * @template {UnistNode} Child
1924
+ * Node to search for.
1925
+ * @template {Uint} [Max=10]
1926
+ * Max; searches up to this depth.
1927
+ * @template {Uint} [Depth=0]
1928
+ * Current depth.
1929
+ */
1930
+ /**
1931
+ * @typedef {InternalAncestor<InclusiveDescendant<Tree>, Child>} Ancestor
1932
+ * Collect nodes in `Tree` that can be ancestors of `Child`.
1933
+ * @template {UnistNode} Tree
1934
+ * All node types in a tree.
1935
+ * @template {UnistNode} Child
1936
+ * Node to search for.
1937
+ */
1938
+ /**
1939
+ * @typedef {(
1940
+ * Tree extends UnistParent
1941
+ * ? Depth extends Max
1942
+ * ? Tree
1943
+ * : Tree | InclusiveDescendant<Tree['children'][number], Max, Increment<Depth>>
1944
+ * : Tree
1945
+ * )} InclusiveDescendant
1946
+ * Collect all (inclusive) descendants of `Tree`.
1947
+ *
1948
+ * > 👉 **Note**: for performance reasons, this seems to be the fastest way to
1949
+ * > recurse without actually running into an infinite loop, which the
1950
+ * > previous version did.
1951
+ * >
1952
+ * > Practically, a max of `2` is typically enough assuming a `Root` is
1953
+ * > passed, but it doesn’t improve performance.
1954
+ * > It gets higher with `List > ListItem > Table > TableRow > TableCell`.
1955
+ * > Using up to `10` doesn’t hurt or help either.
1956
+ * @template {UnistNode} Tree
1957
+ * Tree type.
1958
+ * @template {Uint} [Max=10]
1959
+ * Max; searches up to this depth.
1960
+ * @template {Uint} [Depth=0]
1961
+ * Current depth.
1962
+ */
1963
+ /**
1964
+ * @typedef {'skip' | boolean} Action
1965
+ * Union of the action types.
1966
+ *
1967
+ * @typedef {number} Index
1968
+ * Move to the sibling at `index` next (after node itself is completely
1969
+ * traversed).
1970
+ *
1971
+ * Useful if mutating the tree, such as removing the node the visitor is
1972
+ * currently on, or any of its previous siblings.
1973
+ * Results less than 0 or greater than or equal to `children.length` stop
1974
+ * traversing the parent.
1975
+ *
1976
+ * @typedef {[(Action | null | undefined | void)?, (Index | null | undefined)?]} ActionTuple
1977
+ * List with one or two values, the first an action, the second an index.
1978
+ *
1979
+ * @typedef {Action | ActionTuple | Index | null | undefined | void} VisitorResult
1980
+ * Any value that can be returned from a visitor.
1981
+ */
1982
+ /**
1983
+ * @callback Visitor
1984
+ * Handle a node (matching `test`, if given).
1985
+ *
1986
+ * Visitors are free to transform `node`.
1987
+ * They can also transform the parent of node (the last of `ancestors`).
1988
+ *
1989
+ * Replacing `node` itself, if `SKIP` is not returned, still causes its
1990
+ * descendants to be walked (which is a bug).
1991
+ *
1992
+ * When adding or removing previous siblings of `node` (or next siblings, in
1993
+ * case of reverse), the `Visitor` should return a new `Index` to specify the
1994
+ * sibling to traverse after `node` is traversed.
1995
+ * Adding or removing next siblings of `node` (or previous siblings, in case
1996
+ * of reverse) is handled as expected without needing to return a new `Index`.
1997
+ *
1998
+ * Removing the children property of an ancestor still results in them being
1999
+ * traversed.
2000
+ * @param {Visited} node
2001
+ * Found node.
2002
+ * @param {Array<VisitedParents>} ancestors
2003
+ * Ancestors of `node`.
2004
+ * @returns {VisitorResult}
2005
+ * What to do next.
2006
+ *
2007
+ * An `Index` is treated as a tuple of `[CONTINUE, Index]`.
2008
+ * An `Action` is treated as a tuple of `[Action]`.
2009
+ *
2010
+ * Passing a tuple back only makes sense if the `Action` is `SKIP`.
2011
+ * When the `Action` is `EXIT`, that action can be returned.
2012
+ * When the `Action` is `CONTINUE`, `Index` can be returned.
2013
+ * @template {UnistNode} [Visited=UnistNode]
2014
+ * Visited node type.
2015
+ * @template {UnistParent} [VisitedParents=UnistParent]
2016
+ * Ancestor type.
2017
+ */
2018
+ /**
2019
+ * @typedef {Visitor<Matches<InclusiveDescendant<Tree>, Check>, Ancestor<Tree, Matches<InclusiveDescendant<Tree>, Check>>>} BuildVisitor
2020
+ * Build a typed `Visitor` function from a tree and a test.
2021
+ *
2022
+ * It will infer which values are passed as `node` and which as `parents`.
2023
+ * @template {UnistNode} [Tree=UnistNode]
2024
+ * Tree type.
2025
+ * @template {Test} [Check=Test]
2026
+ * Test type.
2027
+ */
1823
2028
  /** @type {Readonly<ActionTuple>} */
1824
2029
  const empty = [];
1825
2030
  /**
@@ -1950,6 +2155,216 @@ function toResult(value) {
1950
2155
  //#endregion
1951
2156
  //#region node_modules/.pnpm/unist-util-visit@5.0.0/node_modules/unist-util-visit/lib/index.js
1952
2157
  /**
2158
+ * @typedef {import('unist').Node} UnistNode
2159
+ * @typedef {import('unist').Parent} UnistParent
2160
+ * @typedef {import('unist-util-visit-parents').VisitorResult} VisitorResult
2161
+ */
2162
+ /**
2163
+ * @typedef {Exclude<import('unist-util-is').Test, undefined> | undefined} Test
2164
+ * Test from `unist-util-is`.
2165
+ *
2166
+ * Note: we have remove and add `undefined`, because otherwise when generating
2167
+ * automatic `.d.ts` files, TS tries to flatten paths from a local perspective,
2168
+ * which doesn’t work when publishing on npm.
2169
+ */
2170
+ /**
2171
+ * @typedef {(
2172
+ * Fn extends (value: any) => value is infer Thing
2173
+ * ? Thing
2174
+ * : Fallback
2175
+ * )} Predicate
2176
+ * Get the value of a type guard `Fn`.
2177
+ * @template Fn
2178
+ * Value; typically function that is a type guard (such as `(x): x is Y`).
2179
+ * @template Fallback
2180
+ * Value to yield if `Fn` is not a type guard.
2181
+ */
2182
+ /**
2183
+ * @typedef {(
2184
+ * Check extends null | undefined // No test.
2185
+ * ? Value
2186
+ * : Value extends {type: Check} // String (type) test.
2187
+ * ? Value
2188
+ * : Value extends Check // Partial test.
2189
+ * ? Value
2190
+ * : Check extends Function // Function test.
2191
+ * ? Predicate<Check, Value> extends Value
2192
+ * ? Predicate<Check, Value>
2193
+ * : never
2194
+ * : never // Some other test?
2195
+ * )} MatchesOne
2196
+ * Check whether a node matches a primitive check in the type system.
2197
+ * @template Value
2198
+ * Value; typically unist `Node`.
2199
+ * @template Check
2200
+ * Value; typically `unist-util-is`-compatible test, but not arrays.
2201
+ */
2202
+ /**
2203
+ * @typedef {(
2204
+ * Check extends Array<any>
2205
+ * ? MatchesOne<Value, Check[keyof Check]>
2206
+ * : MatchesOne<Value, Check>
2207
+ * )} Matches
2208
+ * Check whether a node matches a check in the type system.
2209
+ * @template Value
2210
+ * Value; typically unist `Node`.
2211
+ * @template Check
2212
+ * Value; typically `unist-util-is`-compatible test.
2213
+ */
2214
+ /**
2215
+ * @typedef {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10} Uint
2216
+ * Number; capped reasonably.
2217
+ */
2218
+ /**
2219
+ * @typedef {I extends 0 ? 1 : I extends 1 ? 2 : I extends 2 ? 3 : I extends 3 ? 4 : I extends 4 ? 5 : I extends 5 ? 6 : I extends 6 ? 7 : I extends 7 ? 8 : I extends 8 ? 9 : 10} Increment
2220
+ * Increment a number in the type system.
2221
+ * @template {Uint} [I=0]
2222
+ * Index.
2223
+ */
2224
+ /**
2225
+ * @typedef {(
2226
+ * Node extends UnistParent
2227
+ * ? Node extends {children: Array<infer Children>}
2228
+ * ? Child extends Children ? Node : never
2229
+ * : never
2230
+ * : never
2231
+ * )} InternalParent
2232
+ * Collect nodes that can be parents of `Child`.
2233
+ * @template {UnistNode} Node
2234
+ * All node types in a tree.
2235
+ * @template {UnistNode} Child
2236
+ * Node to search for.
2237
+ */
2238
+ /**
2239
+ * @typedef {InternalParent<InclusiveDescendant<Tree>, Child>} Parent
2240
+ * Collect nodes in `Tree` that can be parents of `Child`.
2241
+ * @template {UnistNode} Tree
2242
+ * All node types in a tree.
2243
+ * @template {UnistNode} Child
2244
+ * Node to search for.
2245
+ */
2246
+ /**
2247
+ * @typedef {(
2248
+ * Depth extends Max
2249
+ * ? never
2250
+ * :
2251
+ * | InternalParent<Node, Child>
2252
+ * | InternalAncestor<Node, InternalParent<Node, Child>, Max, Increment<Depth>>
2253
+ * )} InternalAncestor
2254
+ * Collect nodes in `Tree` that can be ancestors of `Child`.
2255
+ * @template {UnistNode} Node
2256
+ * All node types in a tree.
2257
+ * @template {UnistNode} Child
2258
+ * Node to search for.
2259
+ * @template {Uint} [Max=10]
2260
+ * Max; searches up to this depth.
2261
+ * @template {Uint} [Depth=0]
2262
+ * Current depth.
2263
+ */
2264
+ /**
2265
+ * @typedef {(
2266
+ * Tree extends UnistParent
2267
+ * ? Depth extends Max
2268
+ * ? Tree
2269
+ * : Tree | InclusiveDescendant<Tree['children'][number], Max, Increment<Depth>>
2270
+ * : Tree
2271
+ * )} InclusiveDescendant
2272
+ * Collect all (inclusive) descendants of `Tree`.
2273
+ *
2274
+ * > 👉 **Note**: for performance reasons, this seems to be the fastest way to
2275
+ * > recurse without actually running into an infinite loop, which the
2276
+ * > previous version did.
2277
+ * >
2278
+ * > Practically, a max of `2` is typically enough assuming a `Root` is
2279
+ * > passed, but it doesn’t improve performance.
2280
+ * > It gets higher with `List > ListItem > Table > TableRow > TableCell`.
2281
+ * > Using up to `10` doesn’t hurt or help either.
2282
+ * @template {UnistNode} Tree
2283
+ * Tree type.
2284
+ * @template {Uint} [Max=10]
2285
+ * Max; searches up to this depth.
2286
+ * @template {Uint} [Depth=0]
2287
+ * Current depth.
2288
+ */
2289
+ /**
2290
+ * @callback Visitor
2291
+ * Handle a node (matching `test`, if given).
2292
+ *
2293
+ * Visitors are free to transform `node`.
2294
+ * They can also transform `parent`.
2295
+ *
2296
+ * Replacing `node` itself, if `SKIP` is not returned, still causes its
2297
+ * descendants to be walked (which is a bug).
2298
+ *
2299
+ * When adding or removing previous siblings of `node` (or next siblings, in
2300
+ * case of reverse), the `Visitor` should return a new `Index` to specify the
2301
+ * sibling to traverse after `node` is traversed.
2302
+ * Adding or removing next siblings of `node` (or previous siblings, in case
2303
+ * of reverse) is handled as expected without needing to return a new `Index`.
2304
+ *
2305
+ * Removing the children property of `parent` still results in them being
2306
+ * traversed.
2307
+ * @param {Visited} node
2308
+ * Found node.
2309
+ * @param {Visited extends UnistNode ? number | undefined : never} index
2310
+ * Index of `node` in `parent`.
2311
+ * @param {Ancestor extends UnistParent ? Ancestor | undefined : never} parent
2312
+ * Parent of `node`.
2313
+ * @returns {VisitorResult}
2314
+ * What to do next.
2315
+ *
2316
+ * An `Index` is treated as a tuple of `[CONTINUE, Index]`.
2317
+ * An `Action` is treated as a tuple of `[Action]`.
2318
+ *
2319
+ * Passing a tuple back only makes sense if the `Action` is `SKIP`.
2320
+ * When the `Action` is `EXIT`, that action can be returned.
2321
+ * When the `Action` is `CONTINUE`, `Index` can be returned.
2322
+ * @template {UnistNode} [Visited=UnistNode]
2323
+ * Visited node type.
2324
+ * @template {UnistParent} [Ancestor=UnistParent]
2325
+ * Ancestor type.
2326
+ */
2327
+ /**
2328
+ * @typedef {Visitor<Visited, Parent<Ancestor, Visited>>} BuildVisitorFromMatch
2329
+ * Build a typed `Visitor` function from a node and all possible parents.
2330
+ *
2331
+ * It will infer which values are passed as `node` and which as `parent`.
2332
+ * @template {UnistNode} Visited
2333
+ * Node type.
2334
+ * @template {UnistParent} Ancestor
2335
+ * Parent type.
2336
+ */
2337
+ /**
2338
+ * @typedef {(
2339
+ * BuildVisitorFromMatch<
2340
+ * Matches<Descendant, Check>,
2341
+ * Extract<Descendant, UnistParent>
2342
+ * >
2343
+ * )} BuildVisitorFromDescendants
2344
+ * Build a typed `Visitor` function from a list of descendants and a test.
2345
+ *
2346
+ * It will infer which values are passed as `node` and which as `parent`.
2347
+ * @template {UnistNode} Descendant
2348
+ * Node type.
2349
+ * @template {Test} Check
2350
+ * Test type.
2351
+ */
2352
+ /**
2353
+ * @typedef {(
2354
+ * BuildVisitorFromDescendants<
2355
+ * InclusiveDescendant<Tree>,
2356
+ * Check
2357
+ * >
2358
+ * )} BuildVisitor
2359
+ * Build a typed `Visitor` function from a tree and a test.
2360
+ *
2361
+ * It will infer which values are passed as `node` and which as `parent`.
2362
+ * @template {UnistNode} [Tree=UnistNode]
2363
+ * Node type.
2364
+ * @template {Test} [Check=Test]
2365
+ * Test type.
2366
+ */
2367
+ /**
1953
2368
  * Visit nodes.
1954
2369
  *
1955
2370
  * This algorithm performs *depth-first* *tree traversal* in *preorder*
@@ -3167,6 +3582,25 @@ function index(value) {
3167
3582
  //#endregion
3168
3583
  //#region node_modules/.pnpm/vfile-message@4.0.3/node_modules/vfile-message/lib/index.js
3169
3584
  /**
3585
+ * @import {Node, Point, Position} from 'unist'
3586
+ */
3587
+ /**
3588
+ * @typedef {object & {type: string, position?: Position | undefined}} NodeLike
3589
+ *
3590
+ * @typedef Options
3591
+ * Configuration.
3592
+ * @property {Array<Node> | null | undefined} [ancestors]
3593
+ * Stack of (inclusive) ancestor nodes surrounding the message (optional).
3594
+ * @property {Error | null | undefined} [cause]
3595
+ * Original error cause of the message (optional).
3596
+ * @property {Point | Position | null | undefined} [place]
3597
+ * Place of message (optional).
3598
+ * @property {string | null | undefined} [ruleId]
3599
+ * Category of message (optional, example: `'my-rule'`).
3600
+ * @property {string | null | undefined} [source]
3601
+ * Namespace of who sent the message (optional, example: `'my-package'`).
3602
+ */
3603
+ /**
3170
3604
  * Message.
3171
3605
  */
3172
3606
  var VFileMessage = class extends Error {
@@ -3736,8 +4170,9 @@ function checkCommentOrder(file, comments) {
3736
4170
  function checkMetaCommentPresence(file, comments, options) {
3737
4171
  const { addMetaComment } = options;
3738
4172
  const metaCommentCount = comments.filter((comment) => comment.type === "meta").length;
3739
- if (addMetaComment && metaCommentCount !== 1) saveLog(file, "error", "check", `Missing meta comment`);
3740
- if (!addMetaComment && metaCommentCount !== 0) saveLog(file, "error", "check", `Unexpected meta comment`);
4173
+ const shouldHaveMetaComment = typeof addMetaComment === "string" ? true : addMetaComment;
4174
+ if (shouldHaveMetaComment && metaCommentCount !== 1) saveLog(file, "error", "check", `Missing meta comment`);
4175
+ if (!shouldHaveMetaComment && metaCommentCount !== 0) saveLog(file, "error", "check", `Unexpected meta comment`);
3741
4176
  if (metaCommentCount > 1) saveLog(file, "error", "check", `Multiple meta comments`);
3742
4177
  }
3743
4178
  function commentOrderList(comments) {
@@ -6099,6 +6534,14 @@ function push(list$3, items) {
6099
6534
 
6100
6535
  //#endregion
6101
6536
  //#region node_modules/.pnpm/micromark-util-combine-extensions@2.0.1/node_modules/micromark-util-combine-extensions/index.js
6537
+ /**
6538
+ * @import {
6539
+ * Extension,
6540
+ * Handles,
6541
+ * HtmlExtension,
6542
+ * NormalizedExtension
6543
+ * } from 'micromark-util-types'
6544
+ */
6102
6545
  const hasOwnProperty = {}.hasOwnProperty;
6103
6546
  /**
6104
6547
  * Combine multiple syntax extensions into one.
@@ -6440,6 +6883,9 @@ function regexCheck(regex) {
6440
6883
  //#endregion
6441
6884
  //#region node_modules/.pnpm/micromark-factory-space@2.0.1/node_modules/micromark-factory-space/index.js
6442
6885
  /**
6886
+ * @import {Effects, State, TokenType} from 'micromark-util-types'
6887
+ */
6888
+ /**
6443
6889
  * Parse spaces and tabs.
6444
6890
  *
6445
6891
  * There is no `nok` parameter:
@@ -6496,6 +6942,15 @@ function factorySpace(effects, ok$2, type, max) {
6496
6942
 
6497
6943
  //#endregion
6498
6944
  //#region node_modules/.pnpm/micromark@4.0.2/node_modules/micromark/lib/initialize/content.js
6945
+ /**
6946
+ * @import {
6947
+ * InitialConstruct,
6948
+ * Initializer,
6949
+ * State,
6950
+ * TokenizeContext,
6951
+ * Token
6952
+ * } from 'micromark-util-types'
6953
+ */
6499
6954
  /** @type {InitialConstruct} */
6500
6955
  const content = { tokenize: initializeContent };
6501
6956
  /**
@@ -6555,6 +7010,23 @@ function initializeContent(effects) {
6555
7010
 
6556
7011
  //#endregion
6557
7012
  //#region node_modules/.pnpm/micromark@4.0.2/node_modules/micromark/lib/initialize/document.js
7013
+ /**
7014
+ * @import {
7015
+ * Construct,
7016
+ * ContainerState,
7017
+ * InitialConstruct,
7018
+ * Initializer,
7019
+ * Point,
7020
+ * State,
7021
+ * TokenizeContext,
7022
+ * Tokenizer,
7023
+ * Token
7024
+ * } from 'micromark-util-types'
7025
+ */
7026
+ /**
7027
+ * @typedef {[Construct, ContainerState]} StackItem
7028
+ * Construct and its state.
7029
+ */
6558
7030
  /** @type {InitialConstruct} */
6559
7031
  const document = { tokenize: initializeDocument };
6560
7032
  /** @type {Construct} */
@@ -6756,6 +7228,9 @@ function tokenizeContainer(effects, ok$2, nok) {
6756
7228
  //#endregion
6757
7229
  //#region node_modules/.pnpm/micromark-util-classify-character@2.0.1/node_modules/micromark-util-classify-character/index.js
6758
7230
  /**
7231
+ * @import {Code} from 'micromark-util-types'
7232
+ */
7233
+ /**
6759
7234
  * Classify whether a code represents whitespace, punctuation, or something
6760
7235
  * else.
6761
7236
  *
@@ -6807,6 +7282,19 @@ function resolveAll(constructs$1, events, context) {
6807
7282
 
6808
7283
  //#endregion
6809
7284
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/attention.js
7285
+ /**
7286
+ * @import {
7287
+ * Code,
7288
+ * Construct,
7289
+ * Event,
7290
+ * Point,
7291
+ * Resolver,
7292
+ * State,
7293
+ * TokenizeContext,
7294
+ * Tokenizer,
7295
+ * Token
7296
+ * } from 'micromark-util-types'
7297
+ */
6810
7298
  /** @type {Construct} */
6811
7299
  const attention = {
6812
7300
  name: "attention",
@@ -7015,6 +7503,14 @@ function movePoint(point$3, offset) {
7015
7503
 
7016
7504
  //#endregion
7017
7505
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/autolink.js
7506
+ /**
7507
+ * @import {
7508
+ * Construct,
7509
+ * State,
7510
+ * TokenizeContext,
7511
+ * Tokenizer
7512
+ * } from 'micromark-util-types'
7513
+ */
7018
7514
  /** @type {Construct} */
7019
7515
  const autolink = {
7020
7516
  name: "autolink",
@@ -7219,6 +7715,14 @@ function tokenizeAutolink(effects, ok$2, nok) {
7219
7715
 
7220
7716
  //#endregion
7221
7717
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/blank-line.js
7718
+ /**
7719
+ * @import {
7720
+ * Construct,
7721
+ * State,
7722
+ * TokenizeContext,
7723
+ * Tokenizer
7724
+ * } from 'micromark-util-types'
7725
+ */
7222
7726
  /** @type {Construct} */
7223
7727
  const blankLine = {
7224
7728
  partial: true,
@@ -7269,6 +7773,15 @@ function tokenizeBlankLine(effects, ok$2, nok) {
7269
7773
 
7270
7774
  //#endregion
7271
7775
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/block-quote.js
7776
+ /**
7777
+ * @import {
7778
+ * Construct,
7779
+ * Exiter,
7780
+ * State,
7781
+ * TokenizeContext,
7782
+ * Tokenizer
7783
+ * } from 'micromark-util-types'
7784
+ */
7272
7785
  /** @type {Construct} */
7273
7786
  const blockQuote = {
7274
7787
  continuation: { tokenize: tokenizeBlockQuoteContinuation },
@@ -7388,6 +7901,14 @@ function exit$1(effects) {
7388
7901
 
7389
7902
  //#endregion
7390
7903
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/character-escape.js
7904
+ /**
7905
+ * @import {
7906
+ * Construct,
7907
+ * State,
7908
+ * TokenizeContext,
7909
+ * Tokenizer
7910
+ * } from 'micromark-util-types'
7911
+ */
7391
7912
  /** @type {Construct} */
7392
7913
  const characterEscape = {
7393
7914
  name: "characterEscape",
@@ -7441,6 +7962,15 @@ function tokenizeCharacterEscape(effects, ok$2, nok) {
7441
7962
 
7442
7963
  //#endregion
7443
7964
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/character-reference.js
7965
+ /**
7966
+ * @import {
7967
+ * Code,
7968
+ * Construct,
7969
+ * State,
7970
+ * TokenizeContext,
7971
+ * Tokenizer
7972
+ * } from 'micromark-util-types'
7973
+ */
7444
7974
  /** @type {Construct} */
7445
7975
  const characterReference = {
7446
7976
  name: "characterReference",
@@ -7571,6 +8101,15 @@ function tokenizeCharacterReference(effects, ok$2, nok) {
7571
8101
 
7572
8102
  //#endregion
7573
8103
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/code-fenced.js
8104
+ /**
8105
+ * @import {
8106
+ * Code,
8107
+ * Construct,
8108
+ * State,
8109
+ * TokenizeContext,
8110
+ * Tokenizer
8111
+ * } from 'micromark-util-types'
8112
+ */
7574
8113
  /** @type {Construct} */
7575
8114
  const nonLazyContinuation = {
7576
8115
  partial: true,
@@ -7978,6 +8517,14 @@ function tokenizeNonLazyContinuation(effects, ok$2, nok) {
7978
8517
 
7979
8518
  //#endregion
7980
8519
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/code-indented.js
8520
+ /**
8521
+ * @import {
8522
+ * Construct,
8523
+ * State,
8524
+ * TokenizeContext,
8525
+ * Tokenizer
8526
+ * } from 'micromark-util-types'
8527
+ */
7981
8528
  /** @type {Construct} */
7982
8529
  const codeIndented = {
7983
8530
  name: "codeIndented",
@@ -8115,6 +8662,17 @@ function tokenizeFurtherStart(effects, ok$2, nok) {
8115
8662
 
8116
8663
  //#endregion
8117
8664
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/code-text.js
8665
+ /**
8666
+ * @import {
8667
+ * Construct,
8668
+ * Previous,
8669
+ * Resolver,
8670
+ * State,
8671
+ * TokenizeContext,
8672
+ * Tokenizer,
8673
+ * Token
8674
+ * } from 'micromark-util-types'
8675
+ */
8118
8676
  /** @type {Construct} */
8119
8677
  const codeText = {
8120
8678
  name: "codeText",
@@ -8522,6 +9080,9 @@ function chunkedPush(list$3, right) {
8522
9080
  //#endregion
8523
9081
  //#region node_modules/.pnpm/micromark-util-subtokenize@2.1.0/node_modules/micromark-util-subtokenize/index.js
8524
9082
  /**
9083
+ * @import {Chunk, Event, Token} from 'micromark-util-types'
9084
+ */
9085
+ /**
8525
9086
  * Tokenize subcontent.
8526
9087
  *
8527
9088
  * @param {Array<Event>} eventsArray
@@ -8675,6 +9236,16 @@ function subcontent(events, eventIndex) {
8675
9236
  //#endregion
8676
9237
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/content.js
8677
9238
  /**
9239
+ * @import {
9240
+ * Construct,
9241
+ * Resolver,
9242
+ * State,
9243
+ * TokenizeContext,
9244
+ * Tokenizer,
9245
+ * Token
9246
+ * } from 'micromark-util-types'
9247
+ */
9248
+ /**
8678
9249
  * No name because it must not be turned off.
8679
9250
  * @type {Construct}
8680
9251
  */
@@ -8799,6 +9370,9 @@ function tokenizeContinuation(effects, ok$2, nok) {
8799
9370
  //#endregion
8800
9371
  //#region node_modules/.pnpm/micromark-factory-destination@2.0.1/node_modules/micromark-factory-destination/index.js
8801
9372
  /**
9373
+ * @import {Effects, State, TokenType} from 'micromark-util-types'
9374
+ */
9375
+ /**
8802
9376
  * Parse destinations.
8803
9377
  *
8804
9378
  * ###### Examples
@@ -8981,6 +9555,14 @@ function factoryDestination(effects, ok$2, nok, type, literalType, literalMarker
8981
9555
  //#endregion
8982
9556
  //#region node_modules/.pnpm/micromark-factory-label@2.0.1/node_modules/micromark-factory-label/index.js
8983
9557
  /**
9558
+ * @import {
9559
+ * Effects,
9560
+ * State,
9561
+ * TokenizeContext,
9562
+ * TokenType
9563
+ * } from 'micromark-util-types'
9564
+ */
9565
+ /**
8984
9566
  * Parse labels.
8985
9567
  *
8986
9568
  * > 👉 **Note**: labels in markdown are capped at 999 characters in the string.
@@ -9106,6 +9688,14 @@ function factoryLabel(effects, ok$2, nok, type, markerType, stringType) {
9106
9688
  //#endregion
9107
9689
  //#region node_modules/.pnpm/micromark-factory-title@2.0.1/node_modules/micromark-factory-title/index.js
9108
9690
  /**
9691
+ * @import {
9692
+ * Code,
9693
+ * Effects,
9694
+ * State,
9695
+ * TokenType
9696
+ * } from 'micromark-util-types'
9697
+ */
9698
+ /**
9109
9699
  * Parse titles.
9110
9700
  *
9111
9701
  * ###### Examples
@@ -9244,6 +9834,9 @@ function factoryTitle(effects, ok$2, nok, type, markerType, stringType) {
9244
9834
  //#endregion
9245
9835
  //#region node_modules/.pnpm/micromark-factory-whitespace@2.0.1/node_modules/micromark-factory-whitespace/index.js
9246
9836
  /**
9837
+ * @import {Effects, State} from 'micromark-util-types'
9838
+ */
9839
+ /**
9247
9840
  * Parse spaces and tabs.
9248
9841
  *
9249
9842
  * There is no `nok` parameter:
@@ -9281,6 +9874,14 @@ function factoryWhitespace(effects, ok$2) {
9281
9874
 
9282
9875
  //#endregion
9283
9876
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/definition.js
9877
+ /**
9878
+ * @import {
9879
+ * Construct,
9880
+ * State,
9881
+ * TokenizeContext,
9882
+ * Tokenizer
9883
+ * } from 'micromark-util-types'
9884
+ */
9284
9885
  /** @type {Construct} */
9285
9886
  const definition$1 = {
9286
9887
  name: "definition",
@@ -9489,6 +10090,14 @@ function tokenizeTitleBefore(effects, ok$2, nok) {
9489
10090
 
9490
10091
  //#endregion
9491
10092
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/hard-break-escape.js
10093
+ /**
10094
+ * @import {
10095
+ * Construct,
10096
+ * State,
10097
+ * TokenizeContext,
10098
+ * Tokenizer
10099
+ * } from 'micromark-util-types'
10100
+ */
9492
10101
  /** @type {Construct} */
9493
10102
  const hardBreakEscape = {
9494
10103
  name: "hardBreakEscape",
@@ -9539,6 +10148,16 @@ function tokenizeHardBreakEscape(effects, ok$2, nok) {
9539
10148
 
9540
10149
  //#endregion
9541
10150
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/heading-atx.js
10151
+ /**
10152
+ * @import {
10153
+ * Construct,
10154
+ * Resolver,
10155
+ * State,
10156
+ * TokenizeContext,
10157
+ * Tokenizer,
10158
+ * Token
10159
+ * } from 'micromark-util-types'
10160
+ */
9542
10161
  /** @type {Construct} */
9543
10162
  const headingAtx = {
9544
10163
  name: "headingAtx",
@@ -9815,6 +10434,16 @@ const htmlRawNames = [
9815
10434
 
9816
10435
  //#endregion
9817
10436
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/html-flow.js
10437
+ /**
10438
+ * @import {
10439
+ * Code,
10440
+ * Construct,
10441
+ * Resolver,
10442
+ * State,
10443
+ * TokenizeContext,
10444
+ * Tokenizer
10445
+ * } from 'micromark-util-types'
10446
+ */
9818
10447
  /** @type {Construct} */
9819
10448
  const htmlFlow = {
9820
10449
  concrete: true,
@@ -10579,6 +11208,15 @@ function tokenizeBlankLineBefore(effects, ok$2, nok) {
10579
11208
 
10580
11209
  //#endregion
10581
11210
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/html-text.js
11211
+ /**
11212
+ * @import {
11213
+ * Code,
11214
+ * Construct,
11215
+ * State,
11216
+ * TokenizeContext,
11217
+ * Tokenizer
11218
+ * } from 'micromark-util-types'
11219
+ */
10582
11220
  /** @type {Construct} */
10583
11221
  const htmlText = {
10584
11222
  name: "htmlText",
@@ -11185,6 +11823,17 @@ function tokenizeHtmlText(effects, ok$2, nok) {
11185
11823
 
11186
11824
  //#endregion
11187
11825
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/label-end.js
11826
+ /**
11827
+ * @import {
11828
+ * Construct,
11829
+ * Event,
11830
+ * Resolver,
11831
+ * State,
11832
+ * TokenizeContext,
11833
+ * Tokenizer,
11834
+ * Token
11835
+ * } from 'micromark-util-types'
11836
+ */
11188
11837
  /** @type {Construct} */
11189
11838
  const labelEnd = {
11190
11839
  name: "labelEnd",
@@ -11645,6 +12294,14 @@ function tokenizeReferenceCollapsed(effects, ok$2, nok) {
11645
12294
 
11646
12295
  //#endregion
11647
12296
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/label-start-image.js
12297
+ /**
12298
+ * @import {
12299
+ * Construct,
12300
+ * State,
12301
+ * TokenizeContext,
12302
+ * Tokenizer
12303
+ * } from 'micromark-util-types'
12304
+ */
11648
12305
  /** @type {Construct} */
11649
12306
  const labelStartImage = {
11650
12307
  name: "labelStartImage",
@@ -11731,6 +12388,14 @@ function tokenizeLabelStartImage(effects, ok$2, nok) {
11731
12388
 
11732
12389
  //#endregion
11733
12390
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/label-start-link.js
12391
+ /**
12392
+ * @import {
12393
+ * Construct,
12394
+ * State,
12395
+ * TokenizeContext,
12396
+ * Tokenizer
12397
+ * } from 'micromark-util-types'
12398
+ */
11734
12399
  /** @type {Construct} */
11735
12400
  const labelStartLink = {
11736
12401
  name: "labelStartLink",
@@ -11772,6 +12437,14 @@ function tokenizeLabelStartLink(effects, ok$2, nok) {
11772
12437
 
11773
12438
  //#endregion
11774
12439
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/line-ending.js
12440
+ /**
12441
+ * @import {
12442
+ * Construct,
12443
+ * State,
12444
+ * TokenizeContext,
12445
+ * Tokenizer
12446
+ * } from 'micromark-util-types'
12447
+ */
11775
12448
  /** @type {Construct} */
11776
12449
  const lineEnding = {
11777
12450
  name: "lineEnding",
@@ -11795,6 +12468,15 @@ function tokenizeLineEnding(effects, ok$2) {
11795
12468
 
11796
12469
  //#endregion
11797
12470
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/thematic-break.js
12471
+ /**
12472
+ * @import {
12473
+ * Code,
12474
+ * Construct,
12475
+ * State,
12476
+ * TokenizeContext,
12477
+ * Tokenizer
12478
+ * } from 'micromark-util-types'
12479
+ */
11798
12480
  /** @type {Construct} */
11799
12481
  const thematicBreak$1 = {
11800
12482
  name: "thematicBreak",
@@ -11882,6 +12564,16 @@ function tokenizeThematicBreak(effects, ok$2, nok) {
11882
12564
 
11883
12565
  //#endregion
11884
12566
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/list.js
12567
+ /**
12568
+ * @import {
12569
+ * Code,
12570
+ * Construct,
12571
+ * Exiter,
12572
+ * State,
12573
+ * TokenizeContext,
12574
+ * Tokenizer
12575
+ * } from 'micromark-util-types'
12576
+ */
11885
12577
  /** @type {Construct} */
11886
12578
  const list$2 = {
11887
12579
  continuation: { tokenize: tokenizeListContinuation },
@@ -12045,6 +12737,16 @@ function tokenizeListItemPrefixWhitespace(effects, ok$2, nok) {
12045
12737
 
12046
12738
  //#endregion
12047
12739
  //#region node_modules/.pnpm/micromark-core-commonmark@2.0.3/node_modules/micromark-core-commonmark/lib/setext-underline.js
12740
+ /**
12741
+ * @import {
12742
+ * Code,
12743
+ * Construct,
12744
+ * Resolver,
12745
+ * State,
12746
+ * TokenizeContext,
12747
+ * Tokenizer
12748
+ * } from 'micromark-util-types'
12749
+ */
12048
12750
  /** @type {Construct} */
12049
12751
  const setextUnderline = {
12050
12752
  name: "setextUnderline",
@@ -12188,6 +12890,14 @@ function tokenizeSetextUnderline(effects, ok$2, nok) {
12188
12890
 
12189
12891
  //#endregion
12190
12892
  //#region node_modules/.pnpm/micromark@4.0.2/node_modules/micromark/lib/initialize/flow.js
12893
+ /**
12894
+ * @import {
12895
+ * InitialConstruct,
12896
+ * Initializer,
12897
+ * State,
12898
+ * TokenizeContext
12899
+ * } from 'micromark-util-types'
12900
+ */
12191
12901
  /** @type {InitialConstruct} */
12192
12902
  const flow = { tokenize: initializeFlow };
12193
12903
  /**
@@ -12406,6 +13116,9 @@ function resolveAllLineSuffixes(events, context) {
12406
13116
 
12407
13117
  //#endregion
12408
13118
  //#region node_modules/.pnpm/micromark@4.0.2/node_modules/micromark/lib/constructs.js
13119
+ /**
13120
+ * @import {Extension} from 'micromark-util-types'
13121
+ */
12409
13122
  var constructs_exports = /* @__PURE__ */ __export({
12410
13123
  attentionMarkers: () => attentionMarkers,
12411
13124
  contentInitial: () => contentInitial,
@@ -12483,6 +13196,43 @@ const disable = { null: [] };
12483
13196
  //#endregion
12484
13197
  //#region node_modules/.pnpm/micromark@4.0.2/node_modules/micromark/lib/create-tokenizer.js
12485
13198
  /**
13199
+ * @import {
13200
+ * Chunk,
13201
+ * Code,
13202
+ * ConstructRecord,
13203
+ * Construct,
13204
+ * Effects,
13205
+ * InitialConstruct,
13206
+ * ParseContext,
13207
+ * Point,
13208
+ * State,
13209
+ * TokenizeContext,
13210
+ * Token
13211
+ * } from 'micromark-util-types'
13212
+ */
13213
+ /**
13214
+ * @callback Restore
13215
+ * Restore the state.
13216
+ * @returns {undefined}
13217
+ * Nothing.
13218
+ *
13219
+ * @typedef Info
13220
+ * Info.
13221
+ * @property {Restore} restore
13222
+ * Restore.
13223
+ * @property {number} from
13224
+ * From.
13225
+ *
13226
+ * @callback ReturnHandle
13227
+ * Handle a successful run.
13228
+ * @param {Construct} construct
13229
+ * Construct.
13230
+ * @param {Info} info
13231
+ * Info.
13232
+ * @returns {undefined}
13233
+ * Nothing.
13234
+ */
13235
+ /**
12486
13236
  * Create a tokenizer.
12487
13237
  * Tokenizers deal with one type of data (e.g., containers, flow, text).
12488
13238
  * The parser is the object dealing with it all.
@@ -12916,6 +13666,15 @@ function serializeChunks(chunks, expandTabs) {
12916
13666
  //#endregion
12917
13667
  //#region node_modules/.pnpm/micromark@4.0.2/node_modules/micromark/lib/parse.js
12918
13668
  /**
13669
+ * @import {
13670
+ * Create,
13671
+ * FullNormalizedExtension,
13672
+ * InitialConstruct,
13673
+ * ParseContext,
13674
+ * ParseOptions
13675
+ * } from 'micromark-util-types'
13676
+ */
13677
+ /**
12919
13678
  * @param {ParseOptions | null | undefined} [options]
12920
13679
  * Configuration (optional).
12921
13680
  * @returns {ParseContext}
@@ -12952,6 +13711,9 @@ function parse$3(options) {
12952
13711
  //#endregion
12953
13712
  //#region node_modules/.pnpm/micromark@4.0.2/node_modules/micromark/lib/postprocess.js
12954
13713
  /**
13714
+ * @import {Event} from 'micromark-util-types'
13715
+ */
13716
+ /**
12955
13717
  * @param {Array<Event>} events
12956
13718
  * Events.
12957
13719
  * @returns {Array<Event>}
@@ -13104,6 +13866,46 @@ function decode($0, $1, $2) {
13104
13866
 
13105
13867
  //#endregion
13106
13868
  //#region node_modules/.pnpm/mdast-util-from-markdown@2.0.2/node_modules/mdast-util-from-markdown/lib/index.js
13869
+ /**
13870
+ * @import {
13871
+ * Break,
13872
+ * Blockquote,
13873
+ * Code,
13874
+ * Definition,
13875
+ * Emphasis,
13876
+ * Heading,
13877
+ * Html,
13878
+ * Image,
13879
+ * InlineCode,
13880
+ * Link,
13881
+ * ListItem,
13882
+ * List,
13883
+ * Nodes,
13884
+ * Paragraph,
13885
+ * PhrasingContent,
13886
+ * ReferenceType,
13887
+ * Root,
13888
+ * Strong,
13889
+ * Text,
13890
+ * ThematicBreak
13891
+ * } from 'mdast'
13892
+ * @import {
13893
+ * Encoding,
13894
+ * Event,
13895
+ * Token,
13896
+ * Value
13897
+ * } from 'micromark-util-types'
13898
+ * @import {Point} from 'unist'
13899
+ * @import {
13900
+ * CompileContext,
13901
+ * CompileData,
13902
+ * Config,
13903
+ * Extension,
13904
+ * Handle,
13905
+ * OnEnterError,
13906
+ * Options
13907
+ * } from './types.js'
13908
+ */
13107
13909
  const own$3 = {}.hasOwnProperty;
13108
13910
  /**
13109
13911
  * Turn markdown into a syntax tree.
@@ -14032,6 +14834,15 @@ function defaultOnError(left, right) {
14032
14834
  //#endregion
14033
14835
  //#region node_modules/.pnpm/remark-parse@11.0.0/node_modules/remark-parse/lib/index.js
14034
14836
  /**
14837
+ * @typedef {import('mdast').Root} Root
14838
+ * @typedef {import('mdast-util-from-markdown').Options} FromMarkdownOptions
14839
+ * @typedef {import('unified').Parser<Root>} Parser
14840
+ * @typedef {import('unified').Processor<Root>} Processor
14841
+ */
14842
+ /**
14843
+ * @typedef {Omit<FromMarkdownOptions, 'extensions' | 'mdastExtensions'>} Options
14844
+ */
14845
+ /**
14035
14846
  * Aadd support for parsing from markdown.
14036
14847
  *
14037
14848
  * @param {Readonly<Options> | null | undefined} [options]
@@ -14267,6 +15078,10 @@ function listInScope(stack$1, list$3, none) {
14267
15078
  //#endregion
14268
15079
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/break.js
14269
15080
  /**
15081
+ * @import {Break, Parents} from 'mdast'
15082
+ * @import {Info, State} from 'mdast-util-to-markdown'
15083
+ */
15084
+ /**
14270
15085
  * @param {Break} _
14271
15086
  * @param {Parents | undefined} _1
14272
15087
  * @param {State} state
@@ -14341,6 +15156,10 @@ function checkFence(state) {
14341
15156
  //#endregion
14342
15157
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/code.js
14343
15158
  /**
15159
+ * @import {Info, Map, State} from 'mdast-util-to-markdown'
15160
+ * @import {Code, Parents} from 'mdast'
15161
+ */
15162
+ /**
14344
15163
  * @param {Code} node
14345
15164
  * @param {Parents | undefined} _
14346
15165
  * @param {State} state
@@ -14411,6 +15230,10 @@ function checkQuote(state) {
14411
15230
  //#endregion
14412
15231
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/definition.js
14413
15232
  /**
15233
+ * @import {Info, State} from 'mdast-util-to-markdown'
15234
+ * @import {Definition, Parents} from 'mdast'
15235
+ */
15236
+ /**
14414
15237
  * @param {Definition} node
14415
15238
  * @param {Parents | undefined} _
14416
15239
  * @param {State} state
@@ -14496,6 +15319,9 @@ function encodeCharacterReference(code$2) {
14496
15319
  //#endregion
14497
15320
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/util/encode-info.js
14498
15321
  /**
15322
+ * @import {EncodeSides} from '../types.js'
15323
+ */
15324
+ /**
14499
15325
  * Check whether to encode (as a character reference) the characters
14500
15326
  * surrounding an attention run.
14501
15327
  *
@@ -14565,6 +15391,10 @@ function encodeInfo(outside, inside, marker) {
14565
15391
 
14566
15392
  //#endregion
14567
15393
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/emphasis.js
15394
+ /**
15395
+ * @import {Info, State} from 'mdast-util-to-markdown'
15396
+ * @import {Emphasis, Parents} from 'mdast'
15397
+ */
14568
15398
  emphasis.peek = emphasisPeek;
14569
15399
  /**
14570
15400
  * @param {Emphasis} node
@@ -14610,6 +15440,10 @@ function emphasisPeek(_, _1, state) {
14610
15440
  //#endregion
14611
15441
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.js
14612
15442
  /**
15443
+ * @import {State} from 'mdast-util-to-markdown'
15444
+ * @import {Heading} from 'mdast'
15445
+ */
15446
+ /**
14613
15447
  * @param {Heading} node
14614
15448
  * @param {State} state
14615
15449
  * @returns {boolean}
@@ -14628,6 +15462,10 @@ function formatHeadingAsSetext(node$1, state) {
14628
15462
  //#endregion
14629
15463
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/heading.js
14630
15464
  /**
15465
+ * @import {Info, State} from 'mdast-util-to-markdown'
15466
+ * @import {Heading, Parents} from 'mdast'
15467
+ */
15468
+ /**
14631
15469
  * @param {Heading} node
14632
15470
  * @param {Parents | undefined} _
14633
15471
  * @param {State} state
@@ -14688,6 +15526,10 @@ function htmlPeek() {
14688
15526
 
14689
15527
  //#endregion
14690
15528
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/image.js
15529
+ /**
15530
+ * @import {Info, State} from 'mdast-util-to-markdown'
15531
+ * @import {Image, Parents} from 'mdast'
15532
+ */
14691
15533
  image.peek = imagePeek;
14692
15534
  /**
14693
15535
  * @param {Image} node
@@ -14843,6 +15685,10 @@ function inlineCodePeek() {
14843
15685
  //#endregion
14844
15686
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.js
14845
15687
  /**
15688
+ * @import {State} from 'mdast-util-to-markdown'
15689
+ * @import {Link} from 'mdast'
15690
+ */
15691
+ /**
14846
15692
  * @param {Link} node
14847
15693
  * @param {State} state
14848
15694
  * @returns {boolean}
@@ -14854,6 +15700,11 @@ function formatLinkAsAutolink(node$1, state) {
14854
15700
 
14855
15701
  //#endregion
14856
15702
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/link.js
15703
+ /**
15704
+ * @import {Info, State} from 'mdast-util-to-markdown'
15705
+ * @import {Link, Parents} from 'mdast'
15706
+ * @import {Exit} from '../types.js'
15707
+ */
14857
15708
  link.peek = linkPeek;
14858
15709
  /**
14859
15710
  * @param {Link} node
@@ -15006,6 +15857,9 @@ function checkBullet(state) {
15006
15857
  //#endregion
15007
15858
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.js
15008
15859
  /**
15860
+ * @import {Options, State} from 'mdast-util-to-markdown'
15861
+ */
15862
+ /**
15009
15863
  * @param {State} state
15010
15864
  * @returns {Exclude<Options['bullet'], null | undefined>}
15011
15865
  */
@@ -15051,6 +15905,10 @@ function checkRule(state) {
15051
15905
  //#endregion
15052
15906
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/list.js
15053
15907
  /**
15908
+ * @import {Info, State} from 'mdast-util-to-markdown'
15909
+ * @import {List, Parents} from 'mdast'
15910
+ */
15911
+ /**
15054
15912
  * @param {List} node
15055
15913
  * @param {Parents | undefined} parent
15056
15914
  * @param {State} state
@@ -15106,6 +15964,10 @@ function checkListItemIndent(state) {
15106
15964
  //#endregion
15107
15965
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/list-item.js
15108
15966
  /**
15967
+ * @import {Info, Map, State} from 'mdast-util-to-markdown'
15968
+ * @import {ListItem, Parents} from 'mdast'
15969
+ */
15970
+ /**
15109
15971
  * @param {ListItem} node
15110
15972
  * @param {Parents | undefined} parent
15111
15973
  * @param {State} state
@@ -15157,6 +16019,10 @@ function paragraph(node$1, _, state, info$1) {
15157
16019
  //#endregion
15158
16020
  //#region node_modules/.pnpm/mdast-util-phrasing@4.1.0/node_modules/mdast-util-phrasing/lib/index.js
15159
16021
  /**
16022
+ * @typedef {import('mdast').Html} Html
16023
+ * @typedef {import('mdast').PhrasingContent} PhrasingContent
16024
+ */
16025
+ /**
15160
16026
  * Check if the given value is *phrasing content*.
15161
16027
  *
15162
16028
  * > 👉 **Note**: Excludes `html`, which can be both phrasing or flow.
@@ -15188,6 +16054,10 @@ const phrasing = convert([
15188
16054
  //#endregion
15189
16055
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/root.js
15190
16056
  /**
16057
+ * @import {Info, State} from 'mdast-util-to-markdown'
16058
+ * @import {Parents, Root} from 'mdast'
16059
+ */
16060
+ /**
15191
16061
  * @param {Root} node
15192
16062
  * @param {Parents | undefined} _
15193
16063
  * @param {State} state
@@ -15217,6 +16087,10 @@ function checkStrong(state) {
15217
16087
 
15218
16088
  //#endregion
15219
16089
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/strong.js
16090
+ /**
16091
+ * @import {Info, State} from 'mdast-util-to-markdown'
16092
+ * @import {Parents, Strong} from 'mdast'
16093
+ */
15220
16094
  strong.peek = strongPeek;
15221
16095
  /**
15222
16096
  * @param {Strong} node
@@ -15294,6 +16168,10 @@ function checkRuleRepetition(state) {
15294
16168
  //#endregion
15295
16169
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/handle/thematic-break.js
15296
16170
  /**
16171
+ * @import {State} from 'mdast-util-to-markdown'
16172
+ * @import {Parents, ThematicBreak} from 'mdast'
16173
+ */
16174
+ /**
15297
16175
  * @param {ThematicBreak} _
15298
16176
  * @param {Parents | undefined} _1
15299
16177
  * @param {State} state
@@ -15334,6 +16212,9 @@ const handle = {
15334
16212
 
15335
16213
  //#endregion
15336
16214
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/join.js
16215
+ /**
16216
+ * @import {Join} from 'mdast-util-to-markdown'
16217
+ */
15337
16218
  /** @type {Array<Join>} */
15338
16219
  const join = [joinDefaults];
15339
16220
  /** @type {Join} */
@@ -15571,6 +16452,9 @@ const unsafe = [
15571
16452
  //#endregion
15572
16453
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/util/association.js
15573
16454
  /**
16455
+ * @import {AssociationId} from '../types.js'
16456
+ */
16457
+ /**
15574
16458
  * Get an identifier from an association to match it to others.
15575
16459
  *
15576
16460
  * Associations are nodes that match to something else through an ID:
@@ -15614,6 +16498,10 @@ function compilePattern(pattern) {
15614
16498
  //#endregion
15615
16499
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/util/container-phrasing.js
15616
16500
  /**
16501
+ * @import {Handle, Info, State} from 'mdast-util-to-markdown'
16502
+ * @import {PhrasingParents} from '../types.js'
16503
+ */
16504
+ /**
15617
16505
  * Serialize the children of a parent that contains phrasing children.
15618
16506
  *
15619
16507
  * These children will be joined flush together.
@@ -15772,6 +16660,9 @@ function indentLines(value, map$4) {
15772
16660
  //#endregion
15773
16661
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/util/safe.js
15774
16662
  /**
16663
+ * @import {SafeConfig, State} from 'mdast-util-to-markdown'
16664
+ */
16665
+ /**
15775
16666
  * Make a string safe for embedding in markdown constructs.
15776
16667
  *
15777
16668
  * In markdown, almost all punctuation characters can, in certain cases,
@@ -15942,6 +16833,11 @@ function track(config) {
15942
16833
  //#endregion
15943
16834
  //#region node_modules/.pnpm/mdast-util-to-markdown@2.1.2/node_modules/mdast-util-to-markdown/lib/index.js
15944
16835
  /**
16836
+ * @import {Info, Join, Options, SafeConfig, State} from 'mdast-util-to-markdown'
16837
+ * @import {Nodes} from 'mdast'
16838
+ * @import {Enter, FlowParents, PhrasingParents, TrackFields} from './types.js'
16839
+ */
16840
+ /**
15945
16841
  * Turn an mdast syntax tree into markdown.
15946
16842
  *
15947
16843
  * @param {Nodes} tree
@@ -16087,6 +16983,15 @@ function safeBound(value, config) {
16087
16983
  //#endregion
16088
16984
  //#region node_modules/.pnpm/remark-stringify@11.0.0/node_modules/remark-stringify/lib/index.js
16089
16985
  /**
16986
+ * @typedef {import('mdast').Root} Root
16987
+ * @typedef {import('mdast-util-to-markdown').Options} ToMarkdownOptions
16988
+ * @typedef {import('unified').Compiler<Root, string>} Compiler
16989
+ * @typedef {import('unified').Processor<undefined, undefined, undefined, Root, string>} Processor
16990
+ */
16991
+ /**
16992
+ * @typedef {Omit<ToMarkdownOptions, 'extensions'>} Options
16993
+ */
16994
+ /**
16090
16995
  * Add support for serializing to markdown.
16091
16996
  *
16092
16997
  * @param {Readonly<Options> | null | undefined} [options]
@@ -16156,6 +17061,61 @@ function escapeStringRegexp(string$2) {
16156
17061
  //#endregion
16157
17062
  //#region node_modules/.pnpm/mdast-util-find-and-replace@3.0.2/node_modules/mdast-util-find-and-replace/lib/index.js
16158
17063
  /**
17064
+ * @import {Nodes, Parents, PhrasingContent, Root, Text} from 'mdast'
17065
+ * @import {BuildVisitor, Test, VisitorResult} from 'unist-util-visit-parents'
17066
+ */
17067
+ /**
17068
+ * @typedef RegExpMatchObject
17069
+ * Info on the match.
17070
+ * @property {number} index
17071
+ * The index of the search at which the result was found.
17072
+ * @property {string} input
17073
+ * A copy of the search string in the text node.
17074
+ * @property {[...Array<Parents>, Text]} stack
17075
+ * All ancestors of the text node, where the last node is the text itself.
17076
+ *
17077
+ * @typedef {RegExp | string} Find
17078
+ * Pattern to find.
17079
+ *
17080
+ * Strings are escaped and then turned into global expressions.
17081
+ *
17082
+ * @typedef {Array<FindAndReplaceTuple>} FindAndReplaceList
17083
+ * Several find and replaces, in array form.
17084
+ *
17085
+ * @typedef {[Find, Replace?]} FindAndReplaceTuple
17086
+ * Find and replace in tuple form.
17087
+ *
17088
+ * @typedef {ReplaceFunction | string | null | undefined} Replace
17089
+ * Thing to replace with.
17090
+ *
17091
+ * @callback ReplaceFunction
17092
+ * Callback called when a search matches.
17093
+ * @param {...any} parameters
17094
+ * The parameters are the result of corresponding search expression:
17095
+ *
17096
+ * * `value` (`string`) — whole match
17097
+ * * `...capture` (`Array<string>`) — matches from regex capture groups
17098
+ * * `match` (`RegExpMatchObject`) — info on the match
17099
+ * @returns {Array<PhrasingContent> | PhrasingContent | string | false | null | undefined}
17100
+ * Thing to replace with.
17101
+ *
17102
+ * * when `null`, `undefined`, `''`, remove the match
17103
+ * * …or when `false`, do not replace at all
17104
+ * * …or when `string`, replace with a text node of that value
17105
+ * * …or when `Node` or `Array<Node>`, replace with those nodes
17106
+ *
17107
+ * @typedef {[RegExp, ReplaceFunction]} Pair
17108
+ * Normalized find and replace.
17109
+ *
17110
+ * @typedef {Array<Pair>} Pairs
17111
+ * All find and replaced.
17112
+ *
17113
+ * @typedef Options
17114
+ * Configuration.
17115
+ * @property {Test | null | undefined} [ignore]
17116
+ * Test for which nodes to ignore (optional).
17117
+ */
17118
+ /**
16159
17119
  * Find patterns in a tree and replace them.
16160
17120
  *
16161
17121
  * The algorithm searches the tree in *preorder* for complete values in `Text`
@@ -16296,6 +17256,12 @@ function toFunction(replace$1) {
16296
17256
 
16297
17257
  //#endregion
16298
17258
  //#region node_modules/.pnpm/mdast-util-gfm-autolink-literal@2.0.1/node_modules/mdast-util-gfm-autolink-literal/lib/index.js
17259
+ /**
17260
+ * @import {RegExpMatchObject, ReplaceFunction} from 'mdast-util-find-and-replace'
17261
+ * @import {CompileContext, Extension as FromMarkdownExtension, Handle as FromMarkdownHandle, Transform as FromMarkdownTransform} from 'mdast-util-from-markdown'
17262
+ * @import {ConstructName, Options as ToMarkdownExtension} from 'mdast-util-to-markdown'
17263
+ * @import {Link, PhrasingContent} from 'mdast'
17264
+ */
16299
17265
  /** @type {ConstructName} */
16300
17266
  const inConstruct = "phrasing";
16301
17267
  /** @type {Array<ConstructName>} */
@@ -16512,6 +17478,20 @@ function previous(match, email) {
16512
17478
 
16513
17479
  //#endregion
16514
17480
  //#region node_modules/.pnpm/mdast-util-gfm-footnote@2.1.0/node_modules/mdast-util-gfm-footnote/lib/index.js
17481
+ /**
17482
+ * @import {
17483
+ * CompileContext,
17484
+ * Extension as FromMarkdownExtension,
17485
+ * Handle as FromMarkdownHandle
17486
+ * } from 'mdast-util-from-markdown'
17487
+ * @import {ToMarkdownOptions} from 'mdast-util-gfm-footnote'
17488
+ * @import {
17489
+ * Handle as ToMarkdownHandle,
17490
+ * Map,
17491
+ * Options as ToMarkdownExtension
17492
+ * } from 'mdast-util-to-markdown'
17493
+ * @import {FootnoteDefinition, FootnoteReference} from 'mdast'
17494
+ */
16515
17495
  footnoteReference.peek = footnoteReferencePeek;
16516
17496
  /**
16517
17497
  * @this {CompileContext}
@@ -17083,6 +18063,35 @@ function toAlignment(value) {
17083
18063
  //#endregion
17084
18064
  //#region node_modules/.pnpm/mdast-util-gfm-table@2.0.0/node_modules/mdast-util-gfm-table/lib/index.js
17085
18065
  /**
18066
+ * @typedef {import('mdast').InlineCode} InlineCode
18067
+ * @typedef {import('mdast').Table} Table
18068
+ * @typedef {import('mdast').TableCell} TableCell
18069
+ * @typedef {import('mdast').TableRow} TableRow
18070
+ *
18071
+ * @typedef {import('markdown-table').Options} MarkdownTableOptions
18072
+ *
18073
+ * @typedef {import('mdast-util-from-markdown').CompileContext} CompileContext
18074
+ * @typedef {import('mdast-util-from-markdown').Extension} FromMarkdownExtension
18075
+ * @typedef {import('mdast-util-from-markdown').Handle} FromMarkdownHandle
18076
+ *
18077
+ * @typedef {import('mdast-util-to-markdown').Options} ToMarkdownExtension
18078
+ * @typedef {import('mdast-util-to-markdown').Handle} ToMarkdownHandle
18079
+ * @typedef {import('mdast-util-to-markdown').State} State
18080
+ * @typedef {import('mdast-util-to-markdown').Info} Info
18081
+ */
18082
+ /**
18083
+ * @typedef Options
18084
+ * Configuration.
18085
+ * @property {boolean | null | undefined} [tableCellPadding=true]
18086
+ * Whether to add a space of padding between delimiters and cells (default:
18087
+ * `true`).
18088
+ * @property {boolean | null | undefined} [tablePipeAlign=true]
18089
+ * Whether to align the delimiters (default: `true`).
18090
+ * @property {MarkdownTableOptions['stringLength'] | null | undefined} [stringLength]
18091
+ * Function to detect the length of table cell content, used when aligning
18092
+ * the delimiters between cells (optional).
18093
+ */
18094
+ /**
17086
18095
  * Create an extension for `mdast-util-from-markdown` to enable GFM tables in
17087
18096
  * markdown.
17088
18097
  *
@@ -17320,6 +18329,15 @@ function gfmTableToMarkdown(options) {
17320
18329
  //#endregion
17321
18330
  //#region node_modules/.pnpm/mdast-util-gfm-task-list-item@2.0.0/node_modules/mdast-util-gfm-task-list-item/lib/index.js
17322
18331
  /**
18332
+ * @typedef {import('mdast').ListItem} ListItem
18333
+ * @typedef {import('mdast').Paragraph} Paragraph
18334
+ * @typedef {import('mdast-util-from-markdown').CompileContext} CompileContext
18335
+ * @typedef {import('mdast-util-from-markdown').Extension} FromMarkdownExtension
18336
+ * @typedef {import('mdast-util-from-markdown').Handle} FromMarkdownHandle
18337
+ * @typedef {import('mdast-util-to-markdown').Options} ToMarkdownExtension
18338
+ * @typedef {import('mdast-util-to-markdown').Handle} ToMarkdownHandle
18339
+ */
18340
+ /**
17323
18341
  * Create an extension for `mdast-util-from-markdown` to enable GFM task
17324
18342
  * list items in markdown.
17325
18343
  *
@@ -17422,6 +18440,11 @@ function listItemWithTaskListItem(node$1, parent, state, info$1) {
17422
18440
  //#endregion
17423
18441
  //#region node_modules/.pnpm/mdast-util-gfm@3.1.0/node_modules/mdast-util-gfm/lib/index.js
17424
18442
  /**
18443
+ * @import {Extension as FromMarkdownExtension} from 'mdast-util-from-markdown'
18444
+ * @import {Options} from 'mdast-util-gfm'
18445
+ * @import {Options as ToMarkdownExtension} from 'mdast-util-to-markdown'
18446
+ */
18447
+ /**
17425
18448
  * Create an extension for `mdast-util-from-markdown` to enable GFM (autolink
17426
18449
  * literals, footnotes, strikethrough, tables, tasklists).
17427
18450
  *
@@ -17460,6 +18483,9 @@ function gfmToMarkdown(options) {
17460
18483
 
17461
18484
  //#endregion
17462
18485
  //#region node_modules/.pnpm/micromark-extension-gfm-autolink-literal@2.1.0/node_modules/micromark-extension-gfm-autolink-literal/lib/syntax.js
18486
+ /**
18487
+ * @import {Code, ConstructRecord, Event, Extension, Previous, State, TokenizeContext, Tokenizer} from 'micromark-util-types'
18488
+ */
17463
18489
  const wwwPrefix = {
17464
18490
  tokenize: tokenizeWwwPrefix,
17465
18491
  partial: true
@@ -18159,6 +19185,9 @@ function previousUnbalanced(events) {
18159
19185
 
18160
19186
  //#endregion
18161
19187
  //#region node_modules/.pnpm/micromark-extension-gfm-footnote@2.1.0/node_modules/micromark-extension-gfm-footnote/lib/syntax.js
19188
+ /**
19189
+ * @import {Event, Exiter, Extension, Resolver, State, Token, TokenizeContext, Tokenizer} from 'micromark-util-types'
19190
+ */
18162
19191
  const indent = {
18163
19192
  tokenize: tokenizeIndent,
18164
19193
  partial: true
@@ -18577,6 +19606,10 @@ function tokenizeIndent(effects, ok$2, nok) {
18577
19606
  //#endregion
18578
19607
  //#region node_modules/.pnpm/micromark-extension-gfm-strikethrough@2.1.0/node_modules/micromark-extension-gfm-strikethrough/lib/syntax.js
18579
19608
  /**
19609
+ * @import {Options} from 'micromark-extension-gfm-strikethrough'
19610
+ * @import {Event, Extension, Resolver, State, Token, TokenizeContext, Tokenizer} from 'micromark-util-types'
19611
+ */
19612
+ /**
18580
19613
  * Create an extension for `micromark` to enable GFM strikethrough syntax.
18581
19614
  *
18582
19615
  * @param {Options | null | undefined} [options={}]
@@ -18847,6 +19880,16 @@ function gfmTableAlign(events, index$1) {
18847
19880
  //#endregion
18848
19881
  //#region node_modules/.pnpm/micromark-extension-gfm-table@2.1.1/node_modules/micromark-extension-gfm-table/lib/syntax.js
18849
19882
  /**
19883
+ * @import {Event, Extension, Point, Resolver, State, Token, TokenizeContext, Tokenizer} from 'micromark-util-types'
19884
+ */
19885
+ /**
19886
+ * @typedef {[number, number, number, number]} Range
19887
+ * Cell info.
19888
+ *
19889
+ * @typedef {0 | 1 | 2 | 3} RowKind
19890
+ * Where we are: `1` for head row, `2` for delimiter row, `3` for body row.
19891
+ */
19892
+ /**
18850
19893
  * Create an HTML extension for `micromark` to support GitHub tables syntax.
18851
19894
  *
18852
19895
  * @returns {Extension}
@@ -19531,6 +20574,9 @@ function getPoint(events, index$1) {
19531
20574
 
19532
20575
  //#endregion
19533
20576
  //#region node_modules/.pnpm/micromark-extension-gfm-task-list-item@2.1.0/node_modules/micromark-extension-gfm-task-list-item/lib/syntax.js
20577
+ /**
20578
+ * @import {Extension, State, TokenizeContext, Tokenizer} from 'micromark-util-types'
20579
+ */
19534
20580
  const tasklistCheck = {
19535
20581
  name: "tasklistCheck",
19536
20582
  tokenize: tokenizeTasklistCheck
@@ -19649,6 +20695,12 @@ function spaceThenNonSpace(effects, ok$2, nok) {
19649
20695
  //#endregion
19650
20696
  //#region node_modules/.pnpm/micromark-extension-gfm@3.0.0/node_modules/micromark-extension-gfm/index.js
19651
20697
  /**
20698
+ * @typedef {import('micromark-extension-gfm-footnote').HtmlOptions} HtmlOptions
20699
+ * @typedef {import('micromark-extension-gfm-strikethrough').Options} Options
20700
+ * @typedef {import('micromark-util-types').Extension} Extension
20701
+ * @typedef {import('micromark-util-types').HtmlExtension} HtmlExtension
20702
+ */
20703
+ /**
19652
20704
  * Create an extension for `micromark` to enable GFM syntax.
19653
20705
  *
19654
20706
  * @param {Options | null | undefined} [options]
@@ -19671,6 +20723,13 @@ function gfm(options) {
19671
20723
 
19672
20724
  //#endregion
19673
20725
  //#region node_modules/.pnpm/remark-gfm@4.0.1/node_modules/remark-gfm/lib/index.js
20726
+ /**
20727
+ * @import {Root} from 'mdast'
20728
+ * @import {Options} from 'remark-gfm'
20729
+ * @import {} from 'remark-parse'
20730
+ * @import {} from 'remark-stringify'
20731
+ * @import {Processor} from 'unified'
20732
+ */
19674
20733
  /** @type {Options} */
19675
20734
  const emptyOptions$1 = {};
19676
20735
  /**
@@ -19734,7 +20793,7 @@ async function mdatExpand(tree, file, options) {
19734
20793
  if (addMetaComment) {
19735
20794
  const metaComment = {
19736
20795
  type: "html",
19737
- value: `<!--${metaCommentIdentifier} Warning: Content inside HTML comment blocks was generated by mdat and may be overwritten. ${metaCommentIdentifier}-->`
20796
+ value: `<!--${metaCommentIdentifier} ${typeof addMetaComment === "string" ? addMetaComment : "Warning: Content inside HTML comment blocks was generated by mdat and may be overwritten."} ${metaCommentIdentifier}-->`
19738
20797
  };
19739
20798
  tree.children.unshift(metaComment);
19740
20799
  }
@@ -19770,6 +20829,9 @@ Schema.prototype.space = void 0;
19770
20829
  //#endregion
19771
20830
  //#region node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/merge.js
19772
20831
  /**
20832
+ * @import {Info, Space} from 'property-information'
20833
+ */
20834
+ /**
19773
20835
  * @param {ReadonlyArray<Schema>} definitions
19774
20836
  * Definitions.
19775
20837
  * @param {Space | undefined} [space]
@@ -19862,6 +20924,9 @@ function increment() {
19862
20924
 
19863
20925
  //#endregion
19864
20926
  //#region node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/defined-info.js
20927
+ /**
20928
+ * @import {Space} from 'property-information'
20929
+ */
19865
20930
  const checks = Object.keys(types_exports);
19866
20931
  var DefinedInfo = class extends Info {
19867
20932
  /**
@@ -19907,6 +20972,33 @@ function mark(values, key$1, value) {
19907
20972
  //#endregion
19908
20973
  //#region node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/util/create.js
19909
20974
  /**
20975
+ * @import {Info, Space} from 'property-information'
20976
+ */
20977
+ /**
20978
+ * @typedef Definition
20979
+ * Definition of a schema.
20980
+ * @property {Record<string, string> | undefined} [attributes]
20981
+ * Normalzed names to special attribute case.
20982
+ * @property {ReadonlyArray<string> | undefined} [mustUseProperty]
20983
+ * Normalized names that must be set as properties.
20984
+ * @property {Record<string, number | null>} properties
20985
+ * Property names to their types.
20986
+ * @property {Space | undefined} [space]
20987
+ * Space.
20988
+ * @property {Transform} transform
20989
+ * Transform a property name.
20990
+ */
20991
+ /**
20992
+ * @callback Transform
20993
+ * Transform.
20994
+ * @param {Record<string, string>} attributes
20995
+ * Attributes.
20996
+ * @param {string} property
20997
+ * Property.
20998
+ * @returns {string}
20999
+ * Attribute.
21000
+ */
21001
+ /**
19910
21002
  * @param {Definition} definition
19911
21003
  * Definition.
19912
21004
  * @returns {Schema}
@@ -20932,6 +22024,9 @@ const xml = create({
20932
22024
 
20933
22025
  //#endregion
20934
22026
  //#region node_modules/.pnpm/property-information@7.1.0/node_modules/property-information/lib/find.js
22027
+ /**
22028
+ * @import {Schema} from 'property-information'
22029
+ */
20935
22030
  const cap = /[A-Z]/g;
20936
22031
  const dash = /-[a-z]/g;
20937
22032
  const valid = /^data[-\w.:]+$/i;
@@ -21159,6 +22254,54 @@ function parse$2(value) {
21159
22254
  //#endregion
21160
22255
  //#region node_modules/.pnpm/hastscript@9.0.1/node_modules/hastscript/lib/create-h.js
21161
22256
  /**
22257
+ * @import {Element, Nodes, RootContent, Root} from 'hast'
22258
+ * @import {Info, Schema} from 'property-information'
22259
+ */
22260
+ /**
22261
+ * @typedef {Array<Nodes | PrimitiveChild>} ArrayChildNested
22262
+ * List of children (deep).
22263
+ */
22264
+ /**
22265
+ * @typedef {Array<ArrayChildNested | Nodes | PrimitiveChild>} ArrayChild
22266
+ * List of children.
22267
+ */
22268
+ /**
22269
+ * @typedef {Array<number | string>} ArrayValue
22270
+ * List of property values for space- or comma separated values (such as `className`).
22271
+ */
22272
+ /**
22273
+ * @typedef {ArrayChild | Nodes | PrimitiveChild} Child
22274
+ * Acceptable child value.
22275
+ */
22276
+ /**
22277
+ * @typedef {number | string | null | undefined} PrimitiveChild
22278
+ * Primitive children, either ignored (nullish), or turned into text nodes.
22279
+ */
22280
+ /**
22281
+ * @typedef {boolean | number | string | null | undefined} PrimitiveValue
22282
+ * Primitive property value.
22283
+ */
22284
+ /**
22285
+ * @typedef {Record<string, PropertyValue | Style>} Properties
22286
+ * Acceptable value for element properties.
22287
+ */
22288
+ /**
22289
+ * @typedef {ArrayValue | PrimitiveValue} PropertyValue
22290
+ * Primitive value or list value.
22291
+ */
22292
+ /**
22293
+ * @typedef {Element | Root} Result
22294
+ * Result from a `h` (or `s`) call.
22295
+ */
22296
+ /**
22297
+ * @typedef {number | string} StyleValue
22298
+ * Value for a CSS style field.
22299
+ */
22300
+ /**
22301
+ * @typedef {Record<string, StyleValue>} Style
22302
+ * Supported value of a `style` prop.
22303
+ */
22304
+ /**
21162
22305
  * @param {Schema} schema
21163
22306
  * Schema to use.
21164
22307
  * @param {string} defaultTagName
@@ -21404,6 +22547,18 @@ const svgCaseSensitiveTagNames = [
21404
22547
 
21405
22548
  //#endregion
21406
22549
  //#region node_modules/.pnpm/hastscript@9.0.1/node_modules/hastscript/lib/index.js
22550
+ /**
22551
+ * @typedef {import('./jsx-classic.js').Element} h.JSX.Element
22552
+ * @typedef {import('./jsx-classic.js').ElementChildrenAttribute} h.JSX.ElementChildrenAttribute
22553
+ * @typedef {import('./jsx-classic.js').IntrinsicAttributes} h.JSX.IntrinsicAttributes
22554
+ * @typedef {import('./jsx-classic.js').IntrinsicElements} h.JSX.IntrinsicElements
22555
+ */
22556
+ /**
22557
+ * @typedef {import('./jsx-classic.js').Element} s.JSX.Element
22558
+ * @typedef {import('./jsx-classic.js').ElementChildrenAttribute} s.JSX.ElementChildrenAttribute
22559
+ * @typedef {import('./jsx-classic.js').IntrinsicAttributes} s.JSX.IntrinsicAttributes
22560
+ * @typedef {import('./jsx-classic.js').IntrinsicElements} s.JSX.IntrinsicElements
22561
+ */
21407
22562
  /** @type {ReturnType<createH>} */
21408
22563
  const h = createH(html, "div");
21409
22564
  /** @type {ReturnType<createH>} */
@@ -21506,6 +22661,26 @@ const webNamespaces = {
21506
22661
 
21507
22662
  //#endregion
21508
22663
  //#region node_modules/.pnpm/hast-util-from-parse5@8.0.3/node_modules/hast-util-from-parse5/lib/index.js
22664
+ /**
22665
+ * @import {ElementData, Element, Nodes, RootContent, Root} from 'hast'
22666
+ * @import {DefaultTreeAdapterMap, Token} from 'parse5'
22667
+ * @import {Schema} from 'property-information'
22668
+ * @import {Point, Position} from 'unist'
22669
+ * @import {VFile} from 'vfile'
22670
+ * @import {Options} from 'hast-util-from-parse5'
22671
+ */
22672
+ /**
22673
+ * @typedef State
22674
+ * Info passed around about the current state.
22675
+ * @property {VFile | undefined} file
22676
+ * Corresponding file.
22677
+ * @property {boolean} location
22678
+ * Whether location info was found.
22679
+ * @property {Schema} schema
22680
+ * Current schema.
22681
+ * @property {boolean | undefined} verbose
22682
+ * Add extra positional info.
22683
+ */
21509
22684
  const own = {}.hasOwnProperty;
21510
22685
  /** @type {unknown} */
21511
22686
  const proto = Object.prototype;
@@ -28825,6 +30000,12 @@ const errors = {
28825
30000
 
28826
30001
  //#endregion
28827
30002
  //#region node_modules/.pnpm/hast-util-from-html@2.0.3/node_modules/hast-util-from-html/lib/index.js
30003
+ /**
30004
+ * @import {Root} from 'hast'
30005
+ * @import {ParserError} from 'parse5'
30006
+ * @import {Value} from 'vfile'
30007
+ * @import {ErrorCode, Options} from './types.js'
30008
+ */
28828
30009
  const base = "https://html.spec.whatwg.org/multipage/parsing.html#parse-error-";
28829
30010
  const dashToCamelRe = /-[a-z]/g;
28830
30011
  const formatCRe = /%c(?:([-+])(\d+))?/g;
@@ -29384,7 +30565,7 @@ const defaultOptions = {
29384
30565
  rules: { mdat: `Powered by the Markdown Autophagic Template system: [mdat](https://github.com/kitschpatrol/mdat).` }
29385
30566
  };
29386
30567
  const optionsSchema = z.object({
29387
- addMetaComment: z.boolean().optional(),
30568
+ addMetaComment: z.union([z.boolean(), z.string()]).optional(),
29388
30569
  closingPrefix: z.string().optional(),
29389
30570
  keywordPrefix: z.string().optional(),
29390
30571
  metaCommentIdentifier: z.string().optional(),