import type { FastifyInstance, onErrorHookHandler, onRequestAbortHookHandler, onRequestHookHandler, onResponseHookHandler, onSendHookHandler, onTimeoutHookHandler, preHandlerHookHandler, preParsingHookHandler, preSerializationHookHandler, preValidationHookHandler } from 'fastify'; import type { UseHeadInput } from '@unhead/vue'; import type { Component } from 'vue'; import type RouteContext from './context.ts'; interface RouteExports { component?: Component; layout?: string; path?: string; getData?: (ctx: RouteContext) => Promise> | Record; getMeta?: (ctx: RouteContext) => Promise | UseHeadInput; onEnter?: (ctx: RouteContext) => Promise | void> | Record | void; streaming?: boolean; clientOnly?: boolean; serverOnly?: boolean; configure?: (scope: FastifyInstance) => Promise | void; onRequest?: onRequestHookHandler | onRequestHookHandler[]; preParsing?: preParsingHookHandler | preParsingHookHandler[]; preValidation?: preValidationHookHandler | preValidationHookHandler[]; preHandler?: preHandlerHookHandler | preHandlerHookHandler[]; preSerialization?: preSerializationHookHandler | preSerializationHookHandler[]; onError?: onErrorHookHandler | onErrorHookHandler[]; onSend?: onSendHookHandler | onSendHookHandler[]; onResponse?: onResponseHookHandler | onResponseHookHandler[]; onTimeout?: onTimeoutHookHandler | onTimeoutHookHandler[]; onRequestAbort?: onRequestAbortHookHandler | onRequestAbortHookHandler[]; [key: string]: unknown; } interface RouteEntry extends RouteExports { id: string; name: string; path: string; key: string; } type RouteModuleInput = (() => Promise) | RouteExports; declare class Routes extends Array { toJSON(): unknown[]; } export declare function createRoutes(fromPromise: Promise<{ default: Record | RouteEntry[]; }>, { param }?: { param: RegExp; }): Promise; export {}; //# sourceMappingURL=server.d.ts.map