import { HttpIncoming } from '@podium/utils'; declare module 'fastify' { interface PodiumParams {} interface PodiumHttpIncomingParameters { [key: string]: unknown; } // @podium/layout declares what's on the context. We use the same interface names here to inherit them. interface PodiumHttpIncomingContext { [key: string]: unknown; } interface PodiumHttpIncomingViewParameters { [key: string]: unknown; } interface PodiumLocals { podium: HttpIncoming< PodiumHttpIncomingParameters, PodiumHttpIncomingContext, PodiumHttpIncomingViewParameters >; params: PodiumParams; } interface FastifyReply { app: PodiumLocals; /** * This method wraps the provided fragment in a default HTML document before dispatching. * * @param markup The HTML contents of the document * @param args Parameters sent to the template function * * @see https://podium-lib.io/docs/api/layout#respodiumsendfragment */ podiumSend(markup: unknown, ...args: unknown[]): FastifyReply; } } /** * @type {import('fastify').FastifyPluginCallback} */ declare function _default(fastify: import("fastify").FastifyInstance, import("fastify").FastifyBaseLogger, import("fastify").FastifyTypeProviderDefault>, layout: import("@podium/layout").default, done: (err?: Error) => void): void; export default _default;