/**
 * @deprecated This file is a compatibility shim retained for one minor
 * version per AC 1 of P3-IDE-01. Import from '@connexum/ai-governance/ide'
 * (CursorIdeAdapter) for the full IdeAdapter contract. This shim will be
 * deleted in the next minor release.
 *
 * ---
 *
 * Cursor IDE Adapter for GovernanceAdapter interface.
 *
 * Maps Cursor's composer/agent action format to the governance
 * framework's unified ActionContext. Cursor has limited hook support
 * compared to Claude Code: no post-action hooks, no tamper detection,
 * no approval queue integration.
 *
 * Supported Cursor tool types:
 *   - edit_file    -> mapped to 'Edit'
 *   - run_terminal -> mapped to 'Bash'
 *   - search       -> mapped to 'Grep'
 *   - read_file    -> mapped to 'Read'
 *
 * @connexum/ai-governance
 */
import { BaseGovernanceAdapter, type AdapterConfig, type AdapterCapabilities, type ActionContext, type ActionDecision, type ActionResult } from './index';
export type CursorToolType = 'edit_file' | 'run_terminal' | 'search' | 'read_file';
export interface CursorComposerAction {
    /** Cursor tool type */
    type: CursorToolType;
    /** File path for edit/read actions */
    filePath?: string;
    /** Command string for terminal actions */
    command?: string;
    /** Search query for search actions */
    query?: string;
    /** Edit content / new content for edit actions */
    content?: string;
    /** Original content before edit */
    originalContent?: string;
    /** Agent or composer session ID */
    composerSessionId?: string;
    /** Agent name (Cursor agent mode) */
    agentName?: string;
    /** Additional Cursor metadata */
    metadata?: Record<string, unknown>;
}
export interface CursorAuditEntry {
    timestamp: string;
    cursorAction: CursorToolType;
    mappedToolName: string;
    decision: ActionDecision;
    composerSessionId?: string;
}
export declare class CursorAdapter extends BaseGovernanceAdapter {
    private blockedPatterns;
    private auditLog;
    initialize(config: AdapterConfig): void;
    preAction(context: ActionContext): ActionDecision;
    /**
     * Post-action is a no-op for Cursor. Cursor IDE does not provide
     * post-action hooks, so this method exists only to satisfy the
     * GovernanceAdapter interface contract.
     */
    postAction(_context: ActionContext, _result: ActionResult): void;
    getCapabilities(): AdapterCapabilities;
    /**
     * Wraps a Cursor composer action with governance enforcement.
     * Converts the Cursor-native action format to an ActionContext,
     * runs preAction, and returns the decision with the mapped context.
     */
    wrapComposerAction(action: CursorComposerAction): {
        context: ActionContext;
        decision: ActionDecision;
    };
    /**
     * Maps a Cursor composer action to the standard ActionContext format.
     */
    mapToActionContext(action: CursorComposerAction): ActionContext;
    /**
     * Returns the internal audit log for diagnostics and testing.
     */
    getAuditLog(): ReadonlyArray<CursorAuditEntry>;
    private recordAudit;
    private reverseLookupCursorType;
}
//# sourceMappingURL=cursor.d.ts.map