/**
 * Existing-project detection for `agentuity project create`.
 *
 * The create command's normal flow is: pick a framework → run its create
 * CLI → augment with Agentuity. That's the wrong thing to do when the
 * user runs `agentuity project create` while already standing inside a
 * supported framework project — they almost certainly mean "register
 * THIS project", not "scaffold a brand new one alongside it".
 *
 * This module looks at a directory and returns a hit when it matches a
 * framework that's also in our scaffold catalog (next, nuxt,
 * sveltekit, astro, hono). The create command
 * uses the hit to prompt the user "import this project instead?" and
 * hand off to the existing project-import flow on yes.
 *
 * We deliberately scope this to the scaffold catalog rather than every
 * framework the build detector recognizes; that way the prompt only
 * fires for things we're confident the user could equally have created
 * via `agentuity project create`.
 */
/**
 * A successful detection. The `scaffoldSlug` is what `frameworkCatalog`
 * in `frameworks.ts` would call this framework; `detectedName` is the
 * human-readable label used in the user-facing prompt.
 */
export interface ExistingProjectHit {
    /** Slug from `frameworkCatalog` (next, nuxt, sveltekit, astro, hono). */
    scaffoldSlug: string;
    /** Human-readable framework name for display ("Next.js", "Hono", ...). */
    detectedName: string;
    /** The detector's version string (when known). Useful for the prompt. */
    version?: string;
    /** True if `agentuity.json` already exists in the directory. */
    hasAgentuityJson: boolean;
}
/**
 * Inspect `dir` and return an `ExistingProjectHit` if it matches a
 * framework supported by `agentuity project create` (or already has an
 * `agentuity.json`). Returns `null` otherwise.
 *
 * Never throws — failures during detection (missing package.json,
 * malformed JSON, etc.) just yield `null` so the caller can fall
 * through to the normal create flow.
 */
export declare function detectExistingProject(dir: string): Promise<ExistingProjectHit | null>;
//# sourceMappingURL=detect-existing.d.ts.map