import { FastifyRequest, FastifyReply, FastifyInstance, FastifyPluginCallback, FastifyRegisterOptions, FastifyPluginOptions, RouteShorthandOptions } from 'fastify';
import { H as HttpCtx, a as HttpOptions } from '../../types-BuvMT1ta.js';
import { F as Factory } from '../../core-BRuvL6hY.js';
import 'node:http';
import '../../meta-C_eDyXnK.js';
import 'phecda-core';

interface FastifyCtx extends HttpCtx {
    type: 'fastify';
    request: FastifyRequest;
    response: FastifyReply;
    app: FastifyInstance;
}
type Addon = FastifyPluginCallback;
declare function bind(fastify: FastifyInstance, data: Awaited<ReturnType<typeof Factory>>, opts?: HttpOptions & {
    fastifyOpts?: FastifyRegisterOptions<FastifyPluginOptions>;
}): void;
declare function Fastify(opts: RouteShorthandOptions): any;

export { type Addon, Fastify, type FastifyCtx, bind };
