diff --git a/src/runtime/ambient.ts b/src/runtime/ambient.ts index b094056c59..09cd9b72f2 100644 --- a/src/runtime/ambient.ts +++ b/src/runtime/ambient.ts @@ -1,19 +1,3 @@ declare module '*.svelte' { - type Props = Record; - - export default class { - constructor(options: { - target: Element; - anchor?: Element; - props?: Props; - hydrate?: boolean; - intro?: boolean; - }); - - $set(props: Props): void; - $on(event: string, callback: (event: CustomEvent) => void): () => void; - $destroy(): void; - - [accessor: string]: any; - } + export { SvelteComponentDev as default } from 'svelte/internal'; } diff --git a/src/runtime/index.ts b/src/runtime/index.ts index 0973b93f1e..e6c0c916f2 100644 --- a/src/runtime/index.ts +++ b/src/runtime/index.ts @@ -8,5 +8,6 @@ export { setContext, getContext, tick, - createEventDispatcher + createEventDispatcher, + SvelteComponentDev as SvelteComponent } from 'svelte/internal'; diff --git a/src/runtime/internal/dev.ts b/src/runtime/internal/dev.ts index 404d0b643a..cb60131166 100644 --- a/src/runtime/internal/dev.ts +++ b/src/runtime/internal/dev.ts @@ -79,8 +79,24 @@ export function set_data_dev(text, data) { text.data = data; } + +type Props = Record; +export interface SvelteComponentDev { + $set(props?: Props): void; + $on(event: string, callback: (event: CustomEvent) => void): () => void; + $destroy(): void; + [accessor: string]: any; +} + export class SvelteComponentDev extends SvelteComponent { - constructor(options) { + constructor(options: { + target: Element; + anchor?: Element; + props?: Props; + hydrate?: boolean; + intro?: boolean; + $$inline?: boolean; + }) { if (!options || (!options.target && !options.$$inline)) { throw new Error(`'target' is a required option`); } @@ -103,4 +119,4 @@ export function loop_guard(timeout) { throw new Error(`Infinite loop detected`); } }; -} \ No newline at end of file +}