import type { BuildContext } from '../createBuildContext'; import type { DtsBuildTask } from './dts/build'; import type { DtsWatchTask } from './dts/watch'; import type { ViteBuildTask } from './vite/build'; import type { RollupWatcherEvent, ViteWatchTask } from './vite/watch'; import type { Observable } from 'rxjs'; import type ts from 'typescript'; interface TaskHandler { print(ctx: BuildContext, task: Task): void; run$(ctx: BuildContext, task: Task): Observable; success(ctx: BuildContext, task: Task, result: Result): void; fail(ctx: BuildContext, task: Task, err: unknown): void; } interface TaskHandlers { 'build:js': TaskHandler; 'build:dts': TaskHandler; 'watch:js': TaskHandler; 'watch:dts': TaskHandler; } declare const taskHandlers: TaskHandlers; export { taskHandlers }; export type { TaskHandler, TaskHandlers };