diff options
author | 2023-06-06 14:48:54 -0400 | |
---|---|---|
committer | 2023-06-06 14:48:54 -0400 | |
commit | a11b62ee1f5d524b0ba942818525b623a6d6eb99 (patch) | |
tree | f1b010a172546f6f1180a1b8f89b4695fca8d4d7 /packages/integrations/markdoc/src/config.ts | |
parent | 8034edd9ecf805073395ba7f68f73cd5fc4d2c73 (diff) | |
download | astro-a11b62ee1f5d524b0ba942818525b623a6d6eb99.tar.gz astro-a11b62ee1f5d524b0ba942818525b623a6d6eb99.tar.zst astro-a11b62ee1f5d524b0ba942818525b623a6d6eb99.zip |
Fix: Markdoc type errors (#7311)
* fix: config, prism, shiki exports
* fix: type error for `render` property
* chore: use `.ts` files in select tests for type checks
* fix: type error on shiki() promise
* chore: changeset
Diffstat (limited to 'packages/integrations/markdoc/src/config.ts')
-rw-r--r-- | packages/integrations/markdoc/src/config.ts | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/packages/integrations/markdoc/src/config.ts b/packages/integrations/markdoc/src/config.ts index 23ff744f7..2c2f2c677 100644 --- a/packages/integrations/markdoc/src/config.ts +++ b/packages/integrations/markdoc/src/config.ts @@ -1,12 +1,26 @@ -import type { ConfigType as MarkdocConfig } from '@markdoc/markdoc'; +import type { AstroInstance } from 'astro'; +import type { + ConfigType as MarkdocConfig, + Config, + NodeType, + Schema, + MaybePromise, +} from '@markdoc/markdoc'; import _Markdoc from '@markdoc/markdoc'; import { heading } from './heading-ids.js'; -export type AstroMarkdocConfig<C extends Record<string, any> = Record<string, any>> = - MarkdocConfig & { - ctx?: C; - extends?: ResolvedAstroMarkdocConfig[]; - }; +type Render = AstroInstance['default'] | string; + +export type AstroMarkdocConfig<C extends Record<string, any> = Record<string, any>> = Omit< + MarkdocConfig, + 'tags' | 'nodes' +> & + Partial<{ + tags: Record<string, Schema<Config, Render>>; + nodes: Partial<Record<NodeType, Schema<Config, Render>>>; + ctx: C; + extends: MaybePromise<ResolvedAstroMarkdocConfig>[]; + }>; export type ResolvedAstroMarkdocConfig = Omit<AstroMarkdocConfig, 'extends'>; |