import { BaseExecutionContext } from "@inkeep/agents-core";
import * as hono10 from "hono";

//#region src/middleware/runAuth.d.ts
declare const runApiKeyAuth: () => hono10.MiddlewareHandler<{
  Variables: {
    executionContext: BaseExecutionContext;
  };
}, string, {}, Response>;
/**
 * Creates a middleware that applies API key authentication except for specified route patterns
 * @param skipRouteCheck - Function that returns true if the route should skip authentication
 */
declare const runApiKeyAuthExcept: (skipRouteCheck: (path: string) => boolean) => hono10.MiddlewareHandler<{
  Variables: {
    executionContext: BaseExecutionContext;
  };
}, string, {}, Response>;
/**
 * Helper middleware for endpoints that optionally support API key authentication
 * If no auth header is present, it continues without setting the executionContext
 */
declare const runOptionalAuth: () => hono10.MiddlewareHandler<{
  Variables: {
    executionContext?: BaseExecutionContext;
  };
}, string, {}, Response>;
//#endregion
export { runApiKeyAuth, runApiKeyAuthExcept, runOptionalAuth };