UNPKG

33.7 kBTypeScriptView Raw
1/**
2 * @param {Context} context
3 * @param {Element|Root} node
4 */
5export function childrenToReact(
6 context: Context,
7 node: Element | Root
8): React.ReactNode[]
9export type IntrinsicElements = JSX.IntrinsicElements
10export type ReactNode = import('react').ReactNode
11export type Position = import('unist').Position
12export type Element = import('hast').Element
13export type Root = import('hast').Root
14export type Text = import('hast').Text
15export type Comment = import('hast').Comment
16export type Doctype = import('hast').DocType
17export type Info = import('property-information').Info
18export type Schema = import('property-information').Schema
19export type Raw = {
20 type: 'raw'
21 value: string
22}
23export type Context = {
24 options: Options
25 schema: Schema
26 listDepth: number
27}
28export type TransformLink = (
29 href: string,
30 children: Array<Comment | Element | Text>,
31 title: string | null
32) => string
33export type TransformImage = (
34 src: string,
35 alt: string,
36 title: string | null
37) => string
38export type TransformLinkTarget = (
39 href: string,
40 children: Array<Comment | Element | Text>,
41 title: string | null
42) => string | undefined
43/**
44 * To do: is `data-sourcepos` typeable?
45 */
46export type ReactMarkdownNames = keyof IntrinsicElements
47export type ReactMarkdownProps = {
48 node: Element
49 key: string
50 children: ReactNode[]
51 /**
52 * Passed when `options.rawSourcePos` is given
53 */
54 sourcePosition?: import('unist').Position | null | undefined
55 /**
56 * Passed when `options.includeElementIndex` is given
57 */
58 index?: number | undefined
59 /**
60 * Passed when `options.includeElementIndex` is given
61 */
62 siblingCount?: number | undefined
63}
64export type CodeComponent = (
65 props: JSX.IntrinsicElements['code'] &
66 ReactMarkdownProps & {
67 inline?: boolean
68 }
69) => ReactNode
70export type HeadingComponent = (
71 props: JSX.IntrinsicElements['h1'] &
72 ReactMarkdownProps & {
73 level: number
74 }
75) => ReactNode
76export type LiComponent = (
77 props: JSX.IntrinsicElements['li'] &
78 ReactMarkdownProps & {
79 checked: boolean | null
80 index: number
81 ordered: boolean
82 }
83) => ReactNode
84export type OrderedListComponent = (
85 props: JSX.IntrinsicElements['ol'] &
86 ReactMarkdownProps & {
87 depth: number
88 ordered: true
89 }
90) => ReactNode
91export type TableCellComponent = (
92 props: JSX.IntrinsicElements['table'] &
93 ReactMarkdownProps & {
94 style?: {
95 [x: string]: unknown
96 }
97 isHeader: boolean
98 }
99) => ReactNode
100export type TableRowComponent = (
101 props: JSX.IntrinsicElements['tr'] &
102 ReactMarkdownProps & {
103 isHeader: boolean
104 }
105) => ReactNode
106export type UnorderedListComponent = (
107 props: JSX.IntrinsicElements['ul'] &
108 ReactMarkdownProps & {
109 depth: number
110 ordered: false
111 }
112) => ReactNode
113export type SpecialComponents = {
114 code: CodeComponent | ReactMarkdownNames
115 h1: HeadingComponent | ReactMarkdownNames
116 h2: HeadingComponent | ReactMarkdownNames
117 h3: HeadingComponent | ReactMarkdownNames
118 h4: HeadingComponent | ReactMarkdownNames
119 h5: HeadingComponent | ReactMarkdownNames
120 h6: HeadingComponent | ReactMarkdownNames
121 li: LiComponent | ReactMarkdownNames
122 ol: OrderedListComponent | ReactMarkdownNames
123 td: TableCellComponent | ReactMarkdownNames
124 th: TableCellComponent | ReactMarkdownNames
125 tr: TableRowComponent | ReactMarkdownNames
126 ul: UnorderedListComponent | ReactMarkdownNames
127}
128export type NormalComponents = {
129 a:
130 | 'a'
131 | ((
132 props: React.ClassAttributes<HTMLAnchorElement> &
133 React.AnchorHTMLAttributes<HTMLAnchorElement> &
134 ReactMarkdownProps
135 ) => ReactNode)
136 abbr:
137 | 'abbr'
138 | ((
139 props: React.ClassAttributes<HTMLElement> &
140 React.HTMLAttributes<HTMLElement> &
141 ReactMarkdownProps
142 ) => ReactNode)
143 address:
144 | 'address'
145 | ((
146 props: React.ClassAttributes<HTMLElement> &
147 React.HTMLAttributes<HTMLElement> &
148 ReactMarkdownProps
149 ) => ReactNode)
150 area:
151 | 'area'
152 | ((
153 props: React.ClassAttributes<HTMLAreaElement> &
154 React.AreaHTMLAttributes<HTMLAreaElement> &
155 ReactMarkdownProps
156 ) => ReactNode)
157 article:
158 | 'article'
159 | ((
160 props: React.ClassAttributes<HTMLElement> &
161 React.HTMLAttributes<HTMLElement> &
162 ReactMarkdownProps
163 ) => ReactNode)
164 aside:
165 | 'aside'
166 | ((
167 props: React.ClassAttributes<HTMLElement> &
168 React.HTMLAttributes<HTMLElement> &
169 ReactMarkdownProps
170 ) => ReactNode)
171 audio:
172 | 'audio'
173 | ((
174 props: React.ClassAttributes<HTMLAudioElement> &
175 React.AudioHTMLAttributes<HTMLAudioElement> &
176 ReactMarkdownProps
177 ) => ReactNode)
178 b:
179 | 'b'
180 | ((
181 props: React.ClassAttributes<HTMLElement> &
182 React.HTMLAttributes<HTMLElement> &
183 ReactMarkdownProps
184 ) => ReactNode)
185 base:
186 | 'base'
187 | ((
188 props: React.ClassAttributes<HTMLBaseElement> &
189 React.BaseHTMLAttributes<HTMLBaseElement> &
190 ReactMarkdownProps
191 ) => ReactNode)
192 bdi:
193 | 'bdi'
194 | ((
195 props: React.ClassAttributes<HTMLElement> &
196 React.HTMLAttributes<HTMLElement> &
197 ReactMarkdownProps
198 ) => ReactNode)
199 bdo:
200 | 'bdo'
201 | ((
202 props: React.ClassAttributes<HTMLElement> &
203 React.HTMLAttributes<HTMLElement> &
204 ReactMarkdownProps
205 ) => ReactNode)
206 big:
207 | 'big'
208 | ((
209 props: React.ClassAttributes<HTMLElement> &
210 React.HTMLAttributes<HTMLElement> &
211 ReactMarkdownProps
212 ) => ReactNode)
213 blockquote:
214 | 'blockquote'
215 | ((
216 props: React.ClassAttributes<HTMLElement> &
217 React.BlockquoteHTMLAttributes<HTMLElement> &
218 ReactMarkdownProps
219 ) => ReactNode)
220 body:
221 | 'body'
222 | ((
223 props: React.ClassAttributes<HTMLBodyElement> &
224 React.HTMLAttributes<HTMLBodyElement> &
225 ReactMarkdownProps
226 ) => ReactNode)
227 br:
228 | 'br'
229 | ((
230 props: React.ClassAttributes<HTMLBRElement> &
231 React.HTMLAttributes<HTMLBRElement> &
232 ReactMarkdownProps
233 ) => ReactNode)
234 button:
235 | 'button'
236 | ((
237 props: React.ClassAttributes<HTMLButtonElement> &
238 React.ButtonHTMLAttributes<HTMLButtonElement> &
239 ReactMarkdownProps
240 ) => ReactNode)
241 canvas:
242 | 'canvas'
243 | ((
244 props: React.ClassAttributes<HTMLCanvasElement> &
245 React.CanvasHTMLAttributes<HTMLCanvasElement> &
246 ReactMarkdownProps
247 ) => ReactNode)
248 caption:
249 | 'caption'
250 | ((
251 props: React.ClassAttributes<HTMLElement> &
252 React.HTMLAttributes<HTMLElement> &
253 ReactMarkdownProps
254 ) => ReactNode)
255 cite:
256 | 'cite'
257 | ((
258 props: React.ClassAttributes<HTMLElement> &
259 React.HTMLAttributes<HTMLElement> &
260 ReactMarkdownProps
261 ) => ReactNode)
262 code:
263 | 'code'
264 | ((
265 props: React.ClassAttributes<HTMLElement> &
266 React.HTMLAttributes<HTMLElement> &
267 ReactMarkdownProps
268 ) => ReactNode)
269 col:
270 | 'col'
271 | ((
272 props: React.ClassAttributes<HTMLTableColElement> &
273 React.ColHTMLAttributes<HTMLTableColElement> &
274 ReactMarkdownProps
275 ) => ReactNode)
276 colgroup:
277 | 'colgroup'
278 | ((
279 props: React.ClassAttributes<HTMLTableColElement> &
280 React.ColgroupHTMLAttributes<HTMLTableColElement> &
281 ReactMarkdownProps
282 ) => ReactNode)
283 data:
284 | 'data'
285 | ((
286 props: React.ClassAttributes<HTMLDataElement> &
287 React.DataHTMLAttributes<HTMLDataElement> &
288 ReactMarkdownProps
289 ) => ReactNode)
290 datalist:
291 | 'datalist'
292 | ((
293 props: React.ClassAttributes<HTMLDataListElement> &
294 React.HTMLAttributes<HTMLDataListElement> &
295 ReactMarkdownProps
296 ) => ReactNode)
297 dd:
298 | 'dd'
299 | ((
300 props: React.ClassAttributes<HTMLElement> &
301 React.HTMLAttributes<HTMLElement> &
302 ReactMarkdownProps
303 ) => ReactNode)
304 del:
305 | 'del'
306 | ((
307 props: React.ClassAttributes<HTMLElement> &
308 React.DelHTMLAttributes<HTMLElement> &
309 ReactMarkdownProps
310 ) => ReactNode)
311 details:
312 | 'details'
313 | ((
314 props: React.ClassAttributes<HTMLElement> &
315 React.DetailsHTMLAttributes<HTMLElement> &
316 ReactMarkdownProps
317 ) => ReactNode)
318 dfn:
319 | 'dfn'
320 | ((
321 props: React.ClassAttributes<HTMLElement> &
322 React.HTMLAttributes<HTMLElement> &
323 ReactMarkdownProps
324 ) => ReactNode)
325 dialog:
326 | 'dialog'
327 | ((
328 props: React.ClassAttributes<HTMLDialogElement> &
329 React.DialogHTMLAttributes<HTMLDialogElement> &
330 ReactMarkdownProps
331 ) => ReactNode)
332 div:
333 | 'div'
334 | ((
335 props: React.ClassAttributes<HTMLDivElement> &
336 React.HTMLAttributes<HTMLDivElement> &
337 ReactMarkdownProps
338 ) => ReactNode)
339 dl:
340 | 'dl'
341 | ((
342 props: React.ClassAttributes<HTMLDListElement> &
343 React.HTMLAttributes<HTMLDListElement> &
344 ReactMarkdownProps
345 ) => ReactNode)
346 dt:
347 | 'dt'
348 | ((
349 props: React.ClassAttributes<HTMLElement> &
350 React.HTMLAttributes<HTMLElement> &
351 ReactMarkdownProps
352 ) => ReactNode)
353 em:
354 | 'em'
355 | ((
356 props: React.ClassAttributes<HTMLElement> &
357 React.HTMLAttributes<HTMLElement> &
358 ReactMarkdownProps
359 ) => ReactNode)
360 embed:
361 | 'embed'
362 | ((
363 props: React.ClassAttributes<HTMLEmbedElement> &
364 React.EmbedHTMLAttributes<HTMLEmbedElement> &
365 ReactMarkdownProps
366 ) => ReactNode)
367 fieldset:
368 | 'fieldset'
369 | ((
370 props: React.ClassAttributes<HTMLFieldSetElement> &
371 React.FieldsetHTMLAttributes<HTMLFieldSetElement> &
372 ReactMarkdownProps
373 ) => ReactNode)
374 figcaption:
375 | 'figcaption'
376 | ((
377 props: React.ClassAttributes<HTMLElement> &
378 React.HTMLAttributes<HTMLElement> &
379 ReactMarkdownProps
380 ) => ReactNode)
381 figure:
382 | 'figure'
383 | ((
384 props: React.ClassAttributes<HTMLElement> &
385 React.HTMLAttributes<HTMLElement> &
386 ReactMarkdownProps
387 ) => ReactNode)
388 footer:
389 | 'footer'
390 | ((
391 props: React.ClassAttributes<HTMLElement> &
392 React.HTMLAttributes<HTMLElement> &
393 ReactMarkdownProps
394 ) => ReactNode)
395 form:
396 | 'form'
397 | ((
398 props: React.ClassAttributes<HTMLFormElement> &
399 React.FormHTMLAttributes<HTMLFormElement> &
400 ReactMarkdownProps
401 ) => ReactNode)
402 h1:
403 | 'h1'
404 | ((
405 props: React.ClassAttributes<HTMLHeadingElement> &
406 React.HTMLAttributes<HTMLHeadingElement> &
407 ReactMarkdownProps
408 ) => ReactNode)
409 h2:
410 | 'h2'
411 | ((
412 props: React.ClassAttributes<HTMLHeadingElement> &
413 React.HTMLAttributes<HTMLHeadingElement> &
414 ReactMarkdownProps
415 ) => ReactNode)
416 h3:
417 | 'h3'
418 | ((
419 props: React.ClassAttributes<HTMLHeadingElement> &
420 React.HTMLAttributes<HTMLHeadingElement> &
421 ReactMarkdownProps
422 ) => ReactNode)
423 h4:
424 | 'h4'
425 | ((
426 props: React.ClassAttributes<HTMLHeadingElement> &
427 React.HTMLAttributes<HTMLHeadingElement> &
428 ReactMarkdownProps
429 ) => ReactNode)
430 h5:
431 | 'h5'
432 | ((
433 props: React.ClassAttributes<HTMLHeadingElement> &
434 React.HTMLAttributes<HTMLHeadingElement> &
435 ReactMarkdownProps
436 ) => ReactNode)
437 h6:
438 | 'h6'
439 | ((
440 props: React.ClassAttributes<HTMLHeadingElement> &
441 React.HTMLAttributes<HTMLHeadingElement> &
442 ReactMarkdownProps
443 ) => ReactNode)
444 head:
445 | 'head'
446 | ((
447 props: React.ClassAttributes<HTMLHeadElement> &
448 React.HTMLAttributes<HTMLHeadElement> &
449 ReactMarkdownProps
450 ) => ReactNode)
451 header:
452 | 'header'
453 | ((
454 props: React.ClassAttributes<HTMLElement> &
455 React.HTMLAttributes<HTMLElement> &
456 ReactMarkdownProps
457 ) => ReactNode)
458 hgroup:
459 | 'hgroup'
460 | ((
461 props: React.ClassAttributes<HTMLElement> &
462 React.HTMLAttributes<HTMLElement> &
463 ReactMarkdownProps
464 ) => ReactNode)
465 hr:
466 | 'hr'
467 | ((
468 props: React.ClassAttributes<HTMLHRElement> &
469 React.HTMLAttributes<HTMLHRElement> &
470 ReactMarkdownProps
471 ) => ReactNode)
472 html:
473 | 'html'
474 | ((
475 props: React.ClassAttributes<HTMLHtmlElement> &
476 React.HtmlHTMLAttributes<HTMLHtmlElement> &
477 ReactMarkdownProps
478 ) => ReactNode)
479 i:
480 | 'i'
481 | ((
482 props: React.ClassAttributes<HTMLElement> &
483 React.HTMLAttributes<HTMLElement> &
484 ReactMarkdownProps
485 ) => ReactNode)
486 iframe:
487 | 'iframe'
488 | ((
489 props: React.ClassAttributes<HTMLIFrameElement> &
490 React.IframeHTMLAttributes<HTMLIFrameElement> &
491 ReactMarkdownProps
492 ) => ReactNode)
493 img:
494 | 'img'
495 | ((
496 props: React.ClassAttributes<HTMLImageElement> &
497 React.ImgHTMLAttributes<HTMLImageElement> &
498 ReactMarkdownProps
499 ) => ReactNode)
500 input:
501 | 'input'
502 | ((
503 props: React.ClassAttributes<HTMLInputElement> &
504 React.InputHTMLAttributes<HTMLInputElement> &
505 ReactMarkdownProps
506 ) => ReactNode)
507 ins:
508 | 'ins'
509 | ((
510 props: React.ClassAttributes<HTMLModElement> &
511 React.InsHTMLAttributes<HTMLModElement> &
512 ReactMarkdownProps
513 ) => ReactNode)
514 kbd:
515 | 'kbd'
516 | ((
517 props: React.ClassAttributes<HTMLElement> &
518 React.HTMLAttributes<HTMLElement> &
519 ReactMarkdownProps
520 ) => ReactNode)
521 keygen:
522 | 'keygen'
523 | ((
524 props: React.ClassAttributes<HTMLElement> &
525 React.KeygenHTMLAttributes<HTMLElement> &
526 ReactMarkdownProps
527 ) => ReactNode)
528 label:
529 | 'label'
530 | ((
531 props: React.ClassAttributes<HTMLLabelElement> &
532 React.LabelHTMLAttributes<HTMLLabelElement> &
533 ReactMarkdownProps
534 ) => ReactNode)
535 legend:
536 | 'legend'
537 | ((
538 props: React.ClassAttributes<HTMLLegendElement> &
539 React.HTMLAttributes<HTMLLegendElement> &
540 ReactMarkdownProps
541 ) => ReactNode)
542 li:
543 | 'li'
544 | ((
545 props: React.ClassAttributes<HTMLLIElement> &
546 React.LiHTMLAttributes<HTMLLIElement> &
547 ReactMarkdownProps
548 ) => ReactNode)
549 link:
550 | 'link'
551 | ((
552 props: React.ClassAttributes<HTMLLinkElement> &
553 React.LinkHTMLAttributes<HTMLLinkElement> &
554 ReactMarkdownProps
555 ) => ReactNode)
556 main:
557 | 'main'
558 | ((
559 props: React.ClassAttributes<HTMLElement> &
560 React.HTMLAttributes<HTMLElement> &
561 ReactMarkdownProps
562 ) => ReactNode)
563 map:
564 | 'map'
565 | ((
566 props: React.ClassAttributes<HTMLMapElement> &
567 React.MapHTMLAttributes<HTMLMapElement> &
568 ReactMarkdownProps
569 ) => ReactNode)
570 mark:
571 | 'mark'
572 | ((
573 props: React.ClassAttributes<HTMLElement> &
574 React.HTMLAttributes<HTMLElement> &
575 ReactMarkdownProps
576 ) => ReactNode)
577 menu:
578 | 'menu'
579 | ((
580 props: React.ClassAttributes<HTMLElement> &
581 React.MenuHTMLAttributes<HTMLElement> &
582 ReactMarkdownProps
583 ) => ReactNode)
584 menuitem:
585 | 'menuitem'
586 | ((
587 props: React.ClassAttributes<HTMLElement> &
588 React.HTMLAttributes<HTMLElement> &
589 ReactMarkdownProps
590 ) => ReactNode)
591 meta:
592 | 'meta'
593 | ((
594 props: React.ClassAttributes<HTMLMetaElement> &
595 React.MetaHTMLAttributes<HTMLMetaElement> &
596 ReactMarkdownProps
597 ) => ReactNode)
598 meter:
599 | 'meter'
600 | ((
601 props: React.ClassAttributes<HTMLElement> &
602 React.MeterHTMLAttributes<HTMLElement> &
603 ReactMarkdownProps
604 ) => ReactNode)
605 nav:
606 | 'nav'
607 | ((
608 props: React.ClassAttributes<HTMLElement> &
609 React.HTMLAttributes<HTMLElement> &
610 ReactMarkdownProps
611 ) => ReactNode)
612 noindex:
613 | 'noindex'
614 | ((
615 props: React.ClassAttributes<HTMLElement> &
616 React.HTMLAttributes<HTMLElement> &
617 ReactMarkdownProps
618 ) => ReactNode)
619 noscript:
620 | 'noscript'
621 | ((
622 props: React.ClassAttributes<HTMLElement> &
623 React.HTMLAttributes<HTMLElement> &
624 ReactMarkdownProps
625 ) => ReactNode)
626 object:
627 | 'object'
628 | ((
629 props: React.ClassAttributes<HTMLObjectElement> &
630 React.ObjectHTMLAttributes<HTMLObjectElement> &
631 ReactMarkdownProps
632 ) => ReactNode)
633 ol:
634 | 'ol'
635 | ((
636 props: React.ClassAttributes<HTMLOListElement> &
637 React.OlHTMLAttributes<HTMLOListElement> &
638 ReactMarkdownProps
639 ) => ReactNode)
640 optgroup:
641 | 'optgroup'
642 | ((
643 props: React.ClassAttributes<HTMLOptGroupElement> &
644 React.OptgroupHTMLAttributes<HTMLOptGroupElement> &
645 ReactMarkdownProps
646 ) => ReactNode)
647 option:
648 | 'option'
649 | ((
650 props: React.ClassAttributes<HTMLOptionElement> &
651 React.OptionHTMLAttributes<HTMLOptionElement> &
652 ReactMarkdownProps
653 ) => ReactNode)
654 output:
655 | 'output'
656 | ((
657 props: React.ClassAttributes<HTMLElement> &
658 React.OutputHTMLAttributes<HTMLElement> &
659 ReactMarkdownProps
660 ) => ReactNode)
661 p:
662 | 'p'
663 | ((
664 props: React.ClassAttributes<HTMLParagraphElement> &
665 React.HTMLAttributes<HTMLParagraphElement> &
666 ReactMarkdownProps
667 ) => ReactNode)
668 param:
669 | 'param'
670 | ((
671 props: React.ClassAttributes<HTMLParamElement> &
672 React.ParamHTMLAttributes<HTMLParamElement> &
673 ReactMarkdownProps
674 ) => ReactNode)
675 picture:
676 | 'picture'
677 | ((
678 props: React.ClassAttributes<HTMLElement> &
679 React.HTMLAttributes<HTMLElement> &
680 ReactMarkdownProps
681 ) => ReactNode)
682 pre:
683 | 'pre'
684 | ((
685 props: React.ClassAttributes<HTMLPreElement> &
686 React.HTMLAttributes<HTMLPreElement> &
687 ReactMarkdownProps
688 ) => ReactNode)
689 progress:
690 | 'progress'
691 | ((
692 props: React.ClassAttributes<HTMLProgressElement> &
693 React.ProgressHTMLAttributes<HTMLProgressElement> &
694 ReactMarkdownProps
695 ) => ReactNode)
696 q:
697 | 'q'
698 | ((
699 props: React.ClassAttributes<HTMLQuoteElement> &
700 React.QuoteHTMLAttributes<HTMLQuoteElement> &
701 ReactMarkdownProps
702 ) => ReactNode)
703 rp:
704 | 'rp'
705 | ((
706 props: React.ClassAttributes<HTMLElement> &
707 React.HTMLAttributes<HTMLElement> &
708 ReactMarkdownProps
709 ) => ReactNode)
710 rt:
711 | 'rt'
712 | ((
713 props: React.ClassAttributes<HTMLElement> &
714 React.HTMLAttributes<HTMLElement> &
715 ReactMarkdownProps
716 ) => ReactNode)
717 ruby:
718 | 'ruby'
719 | ((
720 props: React.ClassAttributes<HTMLElement> &
721 React.HTMLAttributes<HTMLElement> &
722 ReactMarkdownProps
723 ) => ReactNode)
724 s:
725 | 's'
726 | ((
727 props: React.ClassAttributes<HTMLElement> &
728 React.HTMLAttributes<HTMLElement> &
729 ReactMarkdownProps
730 ) => ReactNode)
731 samp:
732 | 'samp'
733 | ((
734 props: React.ClassAttributes<HTMLElement> &
735 React.HTMLAttributes<HTMLElement> &
736 ReactMarkdownProps
737 ) => ReactNode)
738 slot:
739 | 'slot'
740 | ((
741 props: React.ClassAttributes<HTMLSlotElement> &
742 React.SlotHTMLAttributes<HTMLSlotElement> &
743 ReactMarkdownProps
744 ) => ReactNode)
745 script:
746 | 'script'
747 | ((
748 props: React.ClassAttributes<HTMLScriptElement> &
749 React.ScriptHTMLAttributes<HTMLScriptElement> &
750 ReactMarkdownProps
751 ) => ReactNode)
752 section:
753 | 'section'
754 | ((
755 props: React.ClassAttributes<HTMLElement> &
756 React.HTMLAttributes<HTMLElement> &
757 ReactMarkdownProps
758 ) => ReactNode)
759 select:
760 | 'select'
761 | ((
762 props: React.ClassAttributes<HTMLSelectElement> &
763 React.SelectHTMLAttributes<HTMLSelectElement> &
764 ReactMarkdownProps
765 ) => ReactNode)
766 small:
767 | 'small'
768 | ((
769 props: React.ClassAttributes<HTMLElement> &
770 React.HTMLAttributes<HTMLElement> &
771 ReactMarkdownProps
772 ) => ReactNode)
773 source:
774 | 'source'
775 | ((
776 props: React.ClassAttributes<HTMLSourceElement> &
777 React.SourceHTMLAttributes<HTMLSourceElement> &
778 ReactMarkdownProps
779 ) => ReactNode)
780 span:
781 | 'span'
782 | ((
783 props: React.ClassAttributes<HTMLSpanElement> &
784 React.HTMLAttributes<HTMLSpanElement> &
785 ReactMarkdownProps
786 ) => ReactNode)
787 strong:
788 | 'strong'
789 | ((
790 props: React.ClassAttributes<HTMLElement> &
791 React.HTMLAttributes<HTMLElement> &
792 ReactMarkdownProps
793 ) => ReactNode)
794 style:
795 | 'style'
796 | ((
797 props: React.ClassAttributes<HTMLStyleElement> &
798 React.StyleHTMLAttributes<HTMLStyleElement> &
799 ReactMarkdownProps
800 ) => ReactNode)
801 sub:
802 | 'sub'
803 | ((
804 props: React.ClassAttributes<HTMLElement> &
805 React.HTMLAttributes<HTMLElement> &
806 ReactMarkdownProps
807 ) => ReactNode)
808 summary:
809 | 'summary'
810 | ((
811 props: React.ClassAttributes<HTMLElement> &
812 React.HTMLAttributes<HTMLElement> &
813 ReactMarkdownProps
814 ) => ReactNode)
815 sup:
816 | 'sup'
817 | ((
818 props: React.ClassAttributes<HTMLElement> &
819 React.HTMLAttributes<HTMLElement> &
820 ReactMarkdownProps
821 ) => ReactNode)
822 table:
823 | 'table'
824 | ((
825 props: React.ClassAttributes<HTMLTableElement> &
826 React.TableHTMLAttributes<HTMLTableElement> &
827 ReactMarkdownProps
828 ) => ReactNode)
829 template:
830 | 'template'
831 | ((
832 props: React.ClassAttributes<HTMLTemplateElement> &
833 React.HTMLAttributes<HTMLTemplateElement> &
834 ReactMarkdownProps
835 ) => ReactNode)
836 tbody:
837 | 'tbody'
838 | ((
839 props: React.ClassAttributes<HTMLTableSectionElement> &
840 React.HTMLAttributes<HTMLTableSectionElement> &
841 ReactMarkdownProps
842 ) => ReactNode)
843 td:
844 | 'td'
845 | ((
846 props: React.ClassAttributes<HTMLTableDataCellElement> &
847 React.TdHTMLAttributes<HTMLTableDataCellElement> &
848 ReactMarkdownProps
849 ) => ReactNode)
850 textarea:
851 | 'textarea'
852 | ((
853 props: React.ClassAttributes<HTMLTextAreaElement> &
854 React.TextareaHTMLAttributes<HTMLTextAreaElement> &
855 ReactMarkdownProps
856 ) => ReactNode)
857 tfoot:
858 | 'tfoot'
859 | ((
860 props: React.ClassAttributes<HTMLTableSectionElement> &
861 React.HTMLAttributes<HTMLTableSectionElement> &
862 ReactMarkdownProps
863 ) => ReactNode)
864 th:
865 | 'th'
866 | ((
867 props: React.ClassAttributes<HTMLTableHeaderCellElement> &
868 React.ThHTMLAttributes<HTMLTableHeaderCellElement> &
869 ReactMarkdownProps
870 ) => ReactNode)
871 thead:
872 | 'thead'
873 | ((
874 props: React.ClassAttributes<HTMLTableSectionElement> &
875 React.HTMLAttributes<HTMLTableSectionElement> &
876 ReactMarkdownProps
877 ) => ReactNode)
878 time:
879 | 'time'
880 | ((
881 props: React.ClassAttributes<HTMLElement> &
882 React.TimeHTMLAttributes<HTMLElement> &
883 ReactMarkdownProps
884 ) => ReactNode)
885 title:
886 | 'title'
887 | ((
888 props: React.ClassAttributes<HTMLTitleElement> &
889 React.HTMLAttributes<HTMLTitleElement> &
890 ReactMarkdownProps
891 ) => ReactNode)
892 tr:
893 | 'tr'
894 | ((
895 props: React.ClassAttributes<HTMLTableRowElement> &
896 React.HTMLAttributes<HTMLTableRowElement> &
897 ReactMarkdownProps
898 ) => ReactNode)
899 track:
900 | 'track'
901 | ((
902 props: React.ClassAttributes<HTMLTrackElement> &
903 React.TrackHTMLAttributes<HTMLTrackElement> &
904 ReactMarkdownProps
905 ) => ReactNode)
906 u:
907 | 'u'
908 | ((
909 props: React.ClassAttributes<HTMLElement> &
910 React.HTMLAttributes<HTMLElement> &
911 ReactMarkdownProps
912 ) => ReactNode)
913 ul:
914 | 'ul'
915 | ((
916 props: React.ClassAttributes<HTMLUListElement> &
917 React.HTMLAttributes<HTMLUListElement> &
918 ReactMarkdownProps
919 ) => ReactNode)
920 var:
921 | 'var'
922 | ((
923 props: React.ClassAttributes<HTMLElement> &
924 React.HTMLAttributes<HTMLElement> &
925 ReactMarkdownProps
926 ) => ReactNode)
927 video:
928 | 'video'
929 | ((
930 props: React.ClassAttributes<HTMLVideoElement> &
931 React.VideoHTMLAttributes<HTMLVideoElement> &
932 ReactMarkdownProps
933 ) => ReactNode)
934 wbr:
935 | 'wbr'
936 | ((
937 props: React.ClassAttributes<HTMLElement> &
938 React.HTMLAttributes<HTMLElement> &
939 ReactMarkdownProps
940 ) => ReactNode)
941 webview:
942 | 'webview'
943 | ((
944 props: React.ClassAttributes<HTMLWebViewElement> &
945 React.WebViewHTMLAttributes<HTMLWebViewElement> &
946 ReactMarkdownProps
947 ) => ReactNode)
948 svg:
949 | 'svg'
950 | ((props: React.SVGProps<SVGSVGElement> & ReactMarkdownProps) => ReactNode)
951 animate:
952 | 'animate'
953 | ((props: React.SVGProps<SVGElement> & ReactMarkdownProps) => ReactNode)
954 animateMotion:
955 | 'animateMotion'
956 | ((props: React.SVGProps<SVGElement> & ReactMarkdownProps) => ReactNode)
957 animateTransform:
958 | 'animateTransform'
959 | ((props: React.SVGProps<SVGElement> & ReactMarkdownProps) => ReactNode)
960 circle:
961 | 'circle'
962 | ((
963 props: React.SVGProps<SVGCircleElement> & ReactMarkdownProps
964 ) => ReactNode)
965 clipPath:
966 | 'clipPath'
967 | ((
968 props: React.SVGProps<SVGClipPathElement> & ReactMarkdownProps
969 ) => ReactNode)
970 defs:
971 | 'defs'
972 | ((
973 props: React.SVGProps<SVGDefsElement> & ReactMarkdownProps
974 ) => ReactNode)
975 desc:
976 | 'desc'
977 | ((
978 props: React.SVGProps<SVGDescElement> & ReactMarkdownProps
979 ) => ReactNode)
980 ellipse:
981 | 'ellipse'
982 | ((
983 props: React.SVGProps<SVGEllipseElement> & ReactMarkdownProps
984 ) => ReactNode)
985 feBlend:
986 | 'feBlend'
987 | ((
988 props: React.SVGProps<SVGFEBlendElement> & ReactMarkdownProps
989 ) => ReactNode)
990 feColorMatrix:
991 | 'feColorMatrix'
992 | ((
993 props: React.SVGProps<SVGFEColorMatrixElement> & ReactMarkdownProps
994 ) => ReactNode)
995 feComponentTransfer:
996 | 'feComponentTransfer'
997 | ((
998 props: React.SVGProps<SVGFEComponentTransferElement> &
999 ReactMarkdownProps
1000 ) => ReactNode)
1001 feComposite:
1002 | 'feComposite'
1003 | ((
1004 props: React.SVGProps<SVGFECompositeElement> & ReactMarkdownProps
1005 ) => ReactNode)
1006 feConvolveMatrix:
1007 | 'feConvolveMatrix'
1008 | ((
1009 props: React.SVGProps<SVGFEConvolveMatrixElement> & ReactMarkdownProps
1010 ) => ReactNode)
1011 feDiffuseLighting:
1012 | 'feDiffuseLighting'
1013 | ((
1014 props: React.SVGProps<SVGFEDiffuseLightingElement> & ReactMarkdownProps
1015 ) => ReactNode)
1016 feDisplacementMap:
1017 | 'feDisplacementMap'
1018 | ((
1019 props: React.SVGProps<SVGFEDisplacementMapElement> & ReactMarkdownProps
1020 ) => ReactNode)
1021 feDistantLight:
1022 | 'feDistantLight'
1023 | ((
1024 props: React.SVGProps<SVGFEDistantLightElement> & ReactMarkdownProps
1025 ) => ReactNode)
1026 feDropShadow:
1027 | 'feDropShadow'
1028 | ((
1029 props: React.SVGProps<SVGFEDropShadowElement> & ReactMarkdownProps
1030 ) => ReactNode)
1031 feFlood:
1032 | 'feFlood'
1033 | ((
1034 props: React.SVGProps<SVGFEFloodElement> & ReactMarkdownProps
1035 ) => ReactNode)
1036 feFuncA:
1037 | 'feFuncA'
1038 | ((
1039 props: React.SVGProps<SVGFEFuncAElement> & ReactMarkdownProps
1040 ) => ReactNode)
1041 feFuncB:
1042 | 'feFuncB'
1043 | ((
1044 props: React.SVGProps<SVGFEFuncBElement> & ReactMarkdownProps
1045 ) => ReactNode)
1046 feFuncG:
1047 | 'feFuncG'
1048 | ((
1049 props: React.SVGProps<SVGFEFuncGElement> & ReactMarkdownProps
1050 ) => ReactNode)
1051 feFuncR:
1052 | 'feFuncR'
1053 | ((
1054 props: React.SVGProps<SVGFEFuncRElement> & ReactMarkdownProps
1055 ) => ReactNode)
1056 feGaussianBlur:
1057 | 'feGaussianBlur'
1058 | ((
1059 props: React.SVGProps<SVGFEGaussianBlurElement> & ReactMarkdownProps
1060 ) => ReactNode)
1061 feImage:
1062 | 'feImage'
1063 | ((
1064 props: React.SVGProps<SVGFEImageElement> & ReactMarkdownProps
1065 ) => ReactNode)
1066 feMerge:
1067 | 'feMerge'
1068 | ((
1069 props: React.SVGProps<SVGFEMergeElement> & ReactMarkdownProps
1070 ) => ReactNode)
1071 feMergeNode:
1072 | 'feMergeNode'
1073 | ((
1074 props: React.SVGProps<SVGFEMergeNodeElement> & ReactMarkdownProps
1075 ) => ReactNode)
1076 feMorphology:
1077 | 'feMorphology'
1078 | ((
1079 props: React.SVGProps<SVGFEMorphologyElement> & ReactMarkdownProps
1080 ) => ReactNode)
1081 feOffset:
1082 | 'feOffset'
1083 | ((
1084 props: React.SVGProps<SVGFEOffsetElement> & ReactMarkdownProps
1085 ) => ReactNode)
1086 fePointLight:
1087 | 'fePointLight'
1088 | ((
1089 props: React.SVGProps<SVGFEPointLightElement> & ReactMarkdownProps
1090 ) => ReactNode)
1091 feSpecularLighting:
1092 | 'feSpecularLighting'
1093 | ((
1094 props: React.SVGProps<SVGFESpecularLightingElement> & ReactMarkdownProps
1095 ) => ReactNode)
1096 feSpotLight:
1097 | 'feSpotLight'
1098 | ((
1099 props: React.SVGProps<SVGFESpotLightElement> & ReactMarkdownProps
1100 ) => ReactNode)
1101 feTile:
1102 | 'feTile'
1103 | ((
1104 props: React.SVGProps<SVGFETileElement> & ReactMarkdownProps
1105 ) => ReactNode)
1106 feTurbulence:
1107 | 'feTurbulence'
1108 | ((
1109 props: React.SVGProps<SVGFETurbulenceElement> & ReactMarkdownProps
1110 ) => ReactNode)
1111 filter:
1112 | 'filter'
1113 | ((
1114 props: React.SVGProps<SVGFilterElement> & ReactMarkdownProps
1115 ) => ReactNode)
1116 foreignObject:
1117 | 'foreignObject'
1118 | ((
1119 props: React.SVGProps<SVGForeignObjectElement> & ReactMarkdownProps
1120 ) => ReactNode)
1121 g:
1122 | 'g'
1123 | ((props: React.SVGProps<SVGGElement> & ReactMarkdownProps) => ReactNode)
1124 image:
1125 | 'image'
1126 | ((
1127 props: React.SVGProps<SVGImageElement> & ReactMarkdownProps
1128 ) => ReactNode)
1129 line:
1130 | 'line'
1131 | ((
1132 props: React.SVGProps<SVGLineElement> & ReactMarkdownProps
1133 ) => ReactNode)
1134 linearGradient:
1135 | 'linearGradient'
1136 | ((
1137 props: React.SVGProps<SVGLinearGradientElement> & ReactMarkdownProps
1138 ) => ReactNode)
1139 marker:
1140 | 'marker'
1141 | ((
1142 props: React.SVGProps<SVGMarkerElement> & ReactMarkdownProps
1143 ) => ReactNode)
1144 mask:
1145 | 'mask'
1146 | ((
1147 props: React.SVGProps<SVGMaskElement> & ReactMarkdownProps
1148 ) => ReactNode)
1149 metadata:
1150 | 'metadata'
1151 | ((
1152 props: React.SVGProps<SVGMetadataElement> & ReactMarkdownProps
1153 ) => ReactNode)
1154 mpath:
1155 | 'mpath'
1156 | ((props: React.SVGProps<SVGElement> & ReactMarkdownProps) => ReactNode)
1157 path:
1158 | 'path'
1159 | ((
1160 props: React.SVGProps<SVGPathElement> & ReactMarkdownProps
1161 ) => ReactNode)
1162 pattern:
1163 | 'pattern'
1164 | ((
1165 props: React.SVGProps<SVGPatternElement> & ReactMarkdownProps
1166 ) => ReactNode)
1167 polygon:
1168 | 'polygon'
1169 | ((
1170 props: React.SVGProps<SVGPolygonElement> & ReactMarkdownProps
1171 ) => ReactNode)
1172 polyline:
1173 | 'polyline'
1174 | ((
1175 props: React.SVGProps<SVGPolylineElement> & ReactMarkdownProps
1176 ) => ReactNode)
1177 radialGradient:
1178 | 'radialGradient'
1179 | ((
1180 props: React.SVGProps<SVGRadialGradientElement> & ReactMarkdownProps
1181 ) => ReactNode)
1182 rect:
1183 | 'rect'
1184 | ((
1185 props: React.SVGProps<SVGRectElement> & ReactMarkdownProps
1186 ) => ReactNode)
1187 stop:
1188 | 'stop'
1189 | ((
1190 props: React.SVGProps<SVGStopElement> & ReactMarkdownProps
1191 ) => ReactNode)
1192 switch:
1193 | 'switch'
1194 | ((
1195 props: React.SVGProps<SVGSwitchElement> & ReactMarkdownProps
1196 ) => ReactNode)
1197 symbol:
1198 | 'symbol'
1199 | ((
1200 props: React.SVGProps<SVGSymbolElement> & ReactMarkdownProps
1201 ) => ReactNode)
1202 text:
1203 | 'text'
1204 | ((
1205 props: React.SVGProps<SVGTextElement> & ReactMarkdownProps
1206 ) => ReactNode)
1207 textPath:
1208 | 'textPath'
1209 | ((
1210 props: React.SVGProps<SVGTextPathElement> & ReactMarkdownProps
1211 ) => ReactNode)
1212 tspan:
1213 | 'tspan'
1214 | ((
1215 props: React.SVGProps<SVGTSpanElement> & ReactMarkdownProps
1216 ) => ReactNode)
1217 use:
1218 | 'use'
1219 | ((props: React.SVGProps<SVGUseElement> & ReactMarkdownProps) => ReactNode)
1220 view:
1221 | 'view'
1222 | ((
1223 props: React.SVGProps<SVGViewElement> & ReactMarkdownProps
1224 ) => ReactNode)
1225}
1226export type Components = Partial<
1227 Omit<NormalComponents, keyof SpecialComponents> & SpecialComponents
1228>
1229export type Options = {
1230 sourcePos?: boolean | undefined
1231 rawSourcePos?: boolean | undefined
1232 skipHtml?: boolean | undefined
1233 includeElementIndex?: boolean | undefined
1234 transformLinkUri?: false | TransformLink | null | undefined
1235 transformImageUri?: TransformImage | undefined
1236 linkTarget?: string | TransformLinkTarget | undefined
1237 components?:
1238 | Partial<
1239 Omit<NormalComponents, keyof SpecialComponents> & SpecialComponents
1240 >
1241 | undefined
1242}
1243import React from 'react'
1244import style from 'style-to-object'
1245
\No newline at end of file