import { EventHandler } from 'h3'; import { Kavach } from 'kavachos'; import { McpAuthModule } from 'kavachos/mcp'; interface KavachNuxtOptions { /** * The MCP OAuth 2.1 module. When provided, MCP endpoints are enabled. */ mcp?: McpAuthModule; /** * The URL path prefix before the catch-all segment. * Defaults to `/api/kavach`. * * @example `/api/auth/kavach` */ basePath?: string; } /** * Create a Nuxt/H3 event handler for all KavachOS REST API routes. * * Mount in `server/api/kavach/[...].ts`: * * @example * ```typescript * import { createKavach } from 'kavachos'; * import { kavachNuxt } from '@kavachos/nuxt'; * * const kavach = createKavach({ database: { provider: 'sqlite', url: 'kavach.db' } }); * export default kavachNuxt(kavach); * ``` * * With MCP OAuth 2.1: * ```typescript * import { createMcpModule } from 'kavachos/mcp'; * const mcp = createMcpModule({ ... }); * export default kavachNuxt(kavach, { mcp }); * ``` */ declare function kavachNuxt(kavach: Kavach, options?: KavachNuxtOptions): EventHandler; export { type KavachNuxtOptions, kavachNuxt };