diff --git a/Router.d.ts b/Router.d.ts
index e64617b..c2a609c 100644
--- a/Router.d.ts
+++ b/Router.d.ts
@@ -1,6 +1,6 @@
///
-import {SvelteComponent} from 'svelte'
+import {SvelteComponent, ComponentType} from 'svelte'
import {Readable} from 'svelte/store'
/** Dictionary with route details passed to the pre-conditions functions, as well as the `routeLoading` and `conditionsFailed` events */
@@ -24,7 +24,7 @@ export interface RouteDetail {
/** Detail object for the `routeLoaded` event */
export interface RouteDetailLoaded extends RouteDetail {
/** Svelte component */
- component: typeof SvelteComponent
+ component: ComponentType
/** Name of the Svelte component that was loaded (note: might be minified in production) */
name: string
@@ -34,7 +34,7 @@ export interface RouteDetailLoaded extends RouteDetail {
* This is a Svelte component loaded asynchronously.
* It's meant to be used with the `import()` function, such as `() => import('Foo.svelte')}`
*/
-export type AsyncSvelteComponent = () => Promise<{default: typeof SvelteComponent}>
+export type AsyncSvelteComponent = () => Promise<{default: ComponentType}>
/**
* Route pre-condition function. This is a callback that receives a RouteDetail object as argument containing information on the route that we're trying to load.
@@ -50,7 +50,7 @@ export type RoutePrecondition = (detail: RouteDetail) => (boolean | Promise | undefined>
// Note: the above is implemented as writable but exported as readable because consumers should not modify the value
/** List of routes */
-export type RouteDefinition = Record |
- Map
+export type RouteDefinition = Record |
+ Map
/** Generic interface for events from the router */
interface RouterEvent {
diff --git a/wrap.d.ts b/wrap.d.ts
index 926fd02..e979dd7 100644
--- a/wrap.d.ts
+++ b/wrap.d.ts
@@ -1,16 +1,16 @@
-import {SvelteComponent} from 'svelte'
+import {ComponentType} from 'svelte'
import {AsyncSvelteComponent, RoutePrecondition, WrappedComponent} from './Router'
/** Options object for the call to `wrap` */
export interface WrapOptions {
- /** Svelte component to load (this is incompatible with `asyncComponent`) */
- component?: typeof SvelteComponent
+ /** Svelte component to load (this is incompatible with `asyncComponent`) */
+ component?: ComponentType
/** Function that returns a Promise that fulfills with a Svelte component (e.g. `{asyncComponent: () => import('Foo.svelte')}`) */
asyncComponent?: AsyncSvelteComponent
/** Svelte component to be displayed while the async route is loading (as a placeholder); when unset or false-y, no component is shown while component */
- loadingComponent?: typeof SvelteComponent
+ loadingComponent?: ComponentType
/** Optional dictionary passed to the `loadingComponent` component as params (for an exported prop called `params`) */
loadingParams?: object
@@ -32,7 +32,7 @@ export interface WrapOptions {
* 2. Adding route pre-conditions (e.g. `{conditions: [...]}`)
* 3. Adding static props that are passed to the component
* 4. Adding custom userData, which is passed to route events (e.g. route loaded events) or to route pre-conditions (e.g. `{userData: {foo: 'bar}}`)
- *
+ *
* @param args Arguments object
* @returns Wrapped component
*/