import { FastifyRequest, FastifyReply } from 'fastify';
import { ZodTypeAny } from 'zod';
import { P as Permission } from './adapter-CEgX2yQ4.js';
import 'kysely';
import 'kysely/helpers/sqlite';
import 'http';
import 'node:stream';
import 'fs';
import 'stream';
import 'vite';

declare const authenticate: (request: FastifyRequest) => Promise<void>;

declare const clientAuthentication: (request: FastifyRequest) => Promise<void>;

declare const contentLocale: (request: FastifyRequest) => Promise<void>;

declare const logRoute: (hook: "prehandler" | "onResponse") => (request: FastifyRequest, reply: FastifyReply) => Promise<void>;

declare const validateCSRF: (request: FastifyRequest) => Promise<void>;

declare const validateBody: (schema: ZodTypeAny) => (request: FastifyRequest) => Promise<void>;

declare const validateParams: (schema: ZodTypeAny) => (request: FastifyRequest) => Promise<void>;

declare const validateQuery: (schema: ZodTypeAny) => (request: FastifyRequest) => Promise<void>;

declare const permissions: (permissions: Permission[]) => (request: FastifyRequest) => Promise<undefined>;

export { authenticate, clientAuthentication, contentLocale, logRoute, permissions, validateBody, validateCSRF, validateParams, validateQuery };
