|
| 1 | +/** |
| 2 | + * @template T |
| 3 | + * @typedef {import('react').ComponentType<T>} ComponentType<T> |
| 4 | + */ |
| 5 | + |
1 | 6 | /** |
2 | 7 | * @typedef {import('react').ReactNode} ReactNode |
3 | 8 | * @typedef {import('unist').Position} Position |
|
44 | 49 | * |
45 | 50 | * To do: is `data-sourcepos` typeable? |
46 | 51 | * |
47 | | - * @callback CodeComponent |
48 | | - * @param {JSX.IntrinsicElements['code'] & ReactMarkdownProps & {inline?: boolean}} props |
49 | | - * @returns {ReactNode} |
50 | | - * |
51 | | - * @callback HeadingComponent |
52 | | - * @param {JSX.IntrinsicElements['h1'] & ReactMarkdownProps & {level: number}} props |
53 | | - * @returns {ReactNode} |
54 | | - * |
55 | | - * @callback LiComponent |
56 | | - * @param {JSX.IntrinsicElements['li'] & ReactMarkdownProps & {checked: boolean|null, index: number, ordered: boolean}} props |
57 | | - * @returns {ReactNode} |
58 | | - * |
59 | | - * @callback OrderedListComponent |
60 | | - * @param {JSX.IntrinsicElements['ol'] & ReactMarkdownProps & {depth: number, ordered: true}} props |
61 | | - * @returns {ReactNode} |
62 | | - * |
63 | | - * @callback TableCellComponent |
64 | | - * @param {JSX.IntrinsicElements['table'] & ReactMarkdownProps & {style?: Object.<string, unknown>, isHeader: boolean}} props |
65 | | - * @returns {ReactNode} |
66 | | - * |
67 | | - * @callback TableRowComponent |
68 | | - * @param {JSX.IntrinsicElements['tr'] & ReactMarkdownProps & {isHeader: boolean}} props |
69 | | - * @returns {ReactNode} |
| 52 | + * @typedef {JSX.IntrinsicElements['code'] & ReactMarkdownProps & {inline?: boolean}} CodeProps |
| 53 | + * @typedef {JSX.IntrinsicElements['h1'] & ReactMarkdownProps & {level: number}} HeadingProps |
| 54 | + * @typedef {JSX.IntrinsicElements['li'] & ReactMarkdownProps & {checked: boolean|null, index: number, ordered: boolean}} LiProps |
| 55 | + * @typedef {JSX.IntrinsicElements['ol'] & ReactMarkdownProps & {depth: number, ordered: true}} OrderedListProps |
| 56 | + * @typedef {JSX.IntrinsicElements['table'] & ReactMarkdownProps & {style?: Object.<string, unknown>, isHeader: boolean}} TableCellProps |
| 57 | + * @typedef {JSX.IntrinsicElements['tr'] & ReactMarkdownProps & {isHeader: boolean}} TableRowProps |
| 58 | + * @typedef {JSX.IntrinsicElements['ul'] & ReactMarkdownProps & {depth: number, ordered: false}} UnorderedListProps |
70 | 59 | * |
71 | | - * @callback UnorderedListComponent |
72 | | - * @param {JSX.IntrinsicElements['ul'] & ReactMarkdownProps & {depth: number, ordered: false}} props |
73 | | - * @returns {ReactNode} |
| 60 | + * @typedef {ComponentType<CodeProps>} CodeComponent |
| 61 | + * @typedef {ComponentType<HeadingProps>} HeadingComponent |
| 62 | + * @typedef {ComponentType<LiProps>} LiComponent |
| 63 | + * @typedef {ComponentType<OrderedListProps>} OrderedListComponent |
| 64 | + * @typedef {ComponentType<TableCellProps>} TableCellComponent |
| 65 | + * @typedef {ComponentType<TableRowProps>} TableRowComponent |
| 66 | + * @typedef {ComponentType<UnorderedListProps>} UnorderedListComponent |
74 | 67 | * |
75 | 68 | * @typedef SpecialComponents |
76 | 69 | * @property {CodeComponent|ReactMarkdownNames} code |
|
0 commit comments