import { type PluginApi } from "https://deno.land/x/gustwind@v0.35.0/types.ts";
definition: { sendMessages?(unnamed 0: { send: Send; }): Promise<Tasks | void> | Tasks | void; prepareBuild?(unnamed 0: { send: Send; }): Promise<Tasks | void> | Tasks | void; prepareContext?(unnamed 0: { send: Send; route: Route; url: string; }): Promise<{ context: Record<string, unknown>; } | void> | { context: Record<string, unknown>; } | void; beforeEachRender?(unnamed 0: { context: Context; send: Send; route: Route; url: string; }): Promise<Tasks | void> | Tasks | void; render?(unnamed 0: { route: Route; context: Context; send: Send; url: string; }): Promise<string> | string; afterEachRender?(unnamed 0: { markup: string; context: Context; route: Route; send: Send; url: string; }): Promise<{ markup: string; }> | { markup: string; }; onMessage?(message: SendMessageEvent): void; getAllRoutes?(): Promise<Record<string, Route>> | Record<string, Route>; matchRoute?(url: string): Promise<{ route?: Route; tasks: Tasks; }> | { route?: Route; tasks: Tasks; }; onTasksRegistered?(unnamed 0: { tasks: Tasks; send: Send; }): void; }