import type { Plugin } from "vite";
import { EVE_SVELTEKIT_SERVICE_PREFIX } from "./routing.js";
export { EVE_SVELTEKIT_SERVICE_PREFIX };
/**
 * Options for the Eve SvelteKit Vite plugin.
 */
export interface EveSvelteKitPluginOptions {
    /**
     * Path to the Eve application root, relative to the SvelteKit project root
     * unless absolute. Defaults to the SvelteKit project root.
     */
    readonly eveRoot?: string;
    /**
     * Build command for the generated Eve Vercel service.
     * Defaults to `"eve build"`.
     */
    readonly eveBuildCommand?: string;
    /**
     * Set to `false` to skip creating or updating `vercel.json`.
     *
     * By default the plugin ensures `vercel.json` contains `experimentalServices`
     * for the SvelteKit app and Eve app.
     */
    readonly configureVercelJson?: boolean;
    /**
     * Private Vercel service prefix for the Eve deployment. Must match the
     * Eve service's `routePrefix` in `vercel.json`. Defaults to
     * {@link EVE_SVELTEKIT_SERVICE_PREFIX} (`"/_eve_internal/eve"`).
     */
    readonly servicePrefix?: string;
}
/**
 * Vite plugin for running an Eve agent alongside a SvelteKit app.
 *
 * In development and local preview, `eveSvelteKit` proxies Eve protocol
 * endpoints to a local Eve server. It resolves the server in order: the
 * `EVE_BASE_URL` env var if set, then a healthy shared Eve dev server already
 * running for the app, then a freshly spawned `eve dev --no-repl --port 0`.
 *
 * During builds, unless `configureVercelJson` is `false`, it ensures
 * `vercel.json` deploys the SvelteKit app and Eve agent as sibling Vercel
 * services.
 */
export declare function eveSvelteKit(options?: EveSvelteKitPluginOptions): Plugin;
