summaryrefslogtreecommitdiffstats
path: root/mdx.d.ts
blob: f3a9a9059e8f37056955252768a493310736b335 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
declare module '*.mdx' {
  import { MDXProps } from 'mdx/types';
  import { Meta } from '@ts/types/app';

  let MDXComponent: (props: MDXProps) => JSX.Element;
  export default MDXComponent;
  export const cover: string;
  export const image: string;
  export const intro: string;
  export const meta: Meta;
  export const pdf: string;
  export const seo: { title: string; description: string };
}
n>{ pattern: /^(=+)[^=\r\n].*?\1/m, inside: { punctuation: /^=+|=+$/, important: /.+/, }, }, emphasis: { // TODO Multi-line pattern: /('{2,5}).+?\1/, inside: { 'bold-italic': { pattern: /(''''').+?(?=\1)/, lookbehind: true, alias: ['bold', 'italic'], }, bold: { pattern: /(''')[^'](?:.*?[^'])?(?=\1)/, lookbehind: true, }, italic: { pattern: /('')[^'](?:.*?[^'])?(?=\1)/, lookbehind: true, }, punctuation: /^''+|''+$/, }, }, hr: { pattern: /^-{4,}/m, alias: 'punctuation', }, url: [ /ISBN +(?:97[89][ -]?)?(?:\d[ -]?){9}[\dx]\b|(?:PMID|RFC) +\d+/i, /\[\[.+?\]\]|\[.+?\]/, ], variable: [ /__[A-Z]+__/, // FIXME Nested structures should be handled // {{formatnum:{{#expr:{{{3}}}}}}} /\{{3}.+?\}{3}/, /\{\{.+?\}\}/, ], symbol: [/^#redirect/im, /~{3,5}/], // Handle table attrs: // {| // ! style="text-align:left;"| Item // |} 'table-tag': { pattern: /((?:^|[|!])[|!])[^|\r\n]+\|(?!\|)/m, lookbehind: true, inside: { 'table-bar': { pattern: /\|$/, alias: 'punctuation', }, rest: Prism.languages.markup['tag'].inside, }, }, punctuation: /^(?:\{\||\|\}|\|-|[*#:;!|])|\|\||!!/m, }); Prism.languages.insertBefore('wiki', 'tag', { // Prevent highlighting inside <nowiki>, <source> and <pre> tags nowiki: { pattern: /<(nowiki|pre|source)\b[^>]*>[\s\S]*?<\/\1>/i, inside: { tag: { pattern: /<(?:nowiki|pre|source)\b[^>]*>|<\/(?:nowiki|pre|source)>/i, inside: Prism.languages.markup['tag'].inside, }, }, }, });