diff --git a/.changeset/strong-toes-smile.md b/.changeset/strong-toes-smile.md new file mode 100644 index 00000000..a0ac2f09 --- /dev/null +++ b/.changeset/strong-toes-smile.md @@ -0,0 +1,5 @@ +--- +'mdsvex': patch +--- + +Fix typescript module declaration to resolve errors when importing markdown files as components diff --git a/packages/mdsvex/globals.d.ts b/packages/mdsvex/globals.d.ts index 4575d3a1..8981f587 100644 --- a/packages/mdsvex/globals.d.ts +++ b/packages/mdsvex/globals.d.ts @@ -1,17 +1,15 @@ declare module '*.svx' { - import type { SvelteComponentDev } from 'svelte/internal'; + import type { SvelteComponent } from 'svelte'; - export default class Comp extends SvelteComponentDev { - $$prop_def: {}; - } - export const metadata: Record<string, any>; + export default class Comp extends SvelteComponent {} + + export const metadata: Record<string, unknown>; } declare module '*.svelte.md' { - import type { SvelteComponentDev } from 'svelte/internal'; + import type { SvelteComponent } from 'svelte'; + + export default class Comp extends SvelteComponent {} - export default class Comp extends SvelteComponentDev { - $$prop_def: {}; - } - export const metadata: Record<string, any>; + export const metadata: Record<string, unknown>; } diff --git a/packages/site/src/routes/_docs.svtext b/packages/site/src/routes/_docs.svtext index b560f72b..da5e442e 100644 --- a/packages/site/src/routes/_docs.svtext +++ b/packages/site/src/routes/_docs.svtext @@ -189,6 +189,17 @@ export default { } ``` +If you use TypeScript, you should also declare an ambient module: +```ts +declare module '*.md' { + import type { SvelteComponent } from 'svelte' + + export default class Comp extends SvelteComponent{} + + export const metadata: Record<string, unknown> +} +``` + Then you can do: ```svx