import * as next_server0 from "next/server";

//#region src/proxy/middleware.d.ts

/**
 * Reexport for nextjs <=15
 */
/**
 * Middleware that handles the internationalization layer
 *
 * Usage:
 *
 * ```ts
 * // ./src/middleware.ts
 *
 * export { intlayerMiddleware as middleware } from '@intlayer/next/middleware';
 *
 * // applies this middleware only to files in the app directory
 * export const config = {
 *   matcher: '/((?!api|static|.*\\..*|_next).*)',
 * };
 * ```
 *
 * Main middleware function for handling internationalization.
 *
 * @param request - The incoming Next.js request object.
 * @param event - The Next.js fetch event (optional).
 * @param response - The Next.js response object (optional).
 * @returns - The response to be returned to the client.
 */
declare const intlayerMiddleware: (request: next_server0.NextRequest, _event?: next_server0.NextFetchEvent, _response?: next_server0.NextResponse) => next_server0.NextResponse;
declare const multipleMiddlewares: (proxies: ((req: next_server0.NextRequest, event?: next_server0.NextFetchEvent, response?: next_server0.NextResponse) => next_server0.NextResponse | Promise<next_server0.NextResponse>)[]) => (req: next_server0.NextRequest, event?: next_server0.NextFetchEvent, response?: next_server0.NextResponse) => Promise<next_server0.NextResponse<unknown>>;
//#endregion
export { intlayerMiddleware, multipleMiddlewares };
//# sourceMappingURL=middleware.d.ts.map