UNPKG

astro

Version:

Astro is a modern site builder with web best practices, performance, and DX front-of-mind.

23 lines (22 loc) 838 B
import type { LoaderEvents, ModuleLoader } from '../core/module-loader/index.js'; import type { ServerState } from './server-state.js'; type ReloadFn = () => void; export interface DevServerController { state: ServerState; onFileChange: LoaderEvents['file-change']; onHMRError: LoaderEvents['hmr-error']; } export type CreateControllerParams = { loader: ModuleLoader; } | { reload: ReloadFn; }; export declare function createController(params: CreateControllerParams): DevServerController; export interface RunWithErrorHandlingParams { controller: DevServerController; pathname: string; run: () => Promise<any>; onError: (error: unknown) => Error; } export declare function runWithErrorHandling({ controller: { state }, pathname, run, onError, }: RunWithErrorHandlingParams): Promise<void>; export {};