/**
 * CursorIdeAdapter -- Cursor IDE adapter.
 *
 * Refactored from src/adapters/cursor.ts into the IdeAdapter contract.
 * Extends BaseIdeAdapter and preserves all existing destructive-command
 * denial logic.
 *
 * Cursor has no per-tool hook API equivalent to Claude Code PreToolUse.
 * The adapter ships in three modes (selectable by config.integrationMode):
 *
 *   'mcp-server'          -- Cursor connects to a governance MCP server
 *   'vscode-extension'    -- Governance ships as a VS Code extension Cursor
 *                            inherits
 *   'filesystem-sidecar'  -- A separate daemon watches the project tree and
 *                            flags AI-initiated writes
 *
 * The default mode is 'filesystem-sidecar' (AC 7 -- safest floor, does not
 * depend on Cursor-specific API stability).
 *
 * Full implementations of 'mcp-server' and 'vscode-extension' modes are
 * deferred to later cycles. They currently throw IdeUnsupportedError with
 * an explicit helpful message -- explicit deferral, not silent skip.
 *
 * Research task (AC 6-7): validate all three modes against Cursor 0.50+
 * before full implementation.
 *
 * User identity resolution: Cursor composer session ID from the action
 * context (attributionMethod: 'cursor-composer').
 *
 * Spec: P3-IDE-01 AC 6-7
 *
 * @connexum/ai-governance
 */
import { BaseIdeAdapter } from './base';
import { type IdeAdapterConfig, type IdeAdapterCapabilities, type IdeSessionContext, type ToolInvocationContext, type ToolInvocationDecision, type UserIdentity } from './index';
export type CursorIntegrationMode = 'mcp-server' | 'vscode-extension' | 'filesystem-sidecar';
export type CursorToolType = 'edit_file' | 'run_terminal' | 'search' | 'read_file';
export declare class CursorIdeAdapter extends BaseIdeAdapter {
    readonly adapterId = "cursor";
    readonly ideId = "cursor";
    private integrationMode;
    private blockedPatterns;
    initialize(config: IdeAdapterConfig): void;
    resolveUserIdentity(session: IdeSessionContext): Promise<UserIdentity>;
    interceptToolInvocation(ctx: ToolInvocationContext): Promise<ToolInvocationDecision>;
    /**
     * MCP server mode -- deferred (AC 7 explicit deferral).
     * Cursor 0.50+ MCP server integration requires empirical validation.
     */
    private interceptViaMcpServer;
    /**
     * VS Code extension mode -- deferred (AC 7 explicit deferral).
     * Cursor inherits VS Code extension APIs; governance extension implementation
     * is pending.
     */
    private interceptViaVsCodeExtension;
    /**
     * Filesystem sidecar mode -- the active enforcement floor (AC 7).
     *
     * Applies destructive-command denial and sensitive-path protection on
     * every tool invocation. In production the sidecar correlates IDE process
     * heritage; this enforcement layer covers the policy evaluation side.
     */
    private interceptViaFilesystemSidecar;
    getIdeCapabilities(): IdeAdapterCapabilities;
    /**
     * Map Cursor tool names to canonical governance tool names.
     * Falls through to the original name if not in the map (pass-through).
     */
    private mapCursorTool;
    /** Expose integration mode for diagnostics / tests */
    getIntegrationMode(): CursorIntegrationMode;
}
//# sourceMappingURL=cursor.d.ts.map