/**
 * Interaction Logger module
 *
 * Handles logging of tool interactions to the database for auditing and debugging.
 */
import type { IPersistence } from './persistence-interface.js';
import type { InteractionLog } from './types.js';
/**
 * Handles logging of tool interactions to the database
 */
export declare class InteractionLogger {
    private database;
    /**
     * Create a new InteractionLogger
     *
     * @param database - Persistence instance to use for logging
     */
    constructor(database: IPersistence);
    /**
     * Log an interaction with a tool
     *
     * @param conversationId - ID of the conversation
     * @param toolName - Name of the tool that was called
     * @param inputParams - Input parameters to the tool (will be stringified)
     * @param responseData - Response data from the tool (will be stringified)
     * @param currentPhase - Current development phase
     * @returns Promise that resolves when the log is saved
     */
    logInteraction(conversationId: string, toolName: string, inputParams: unknown, responseData: unknown, currentPhase: string): Promise<void>;
    /**
     * Get all interactions for a specific conversation
     *
     * @param conversationId - ID of the conversation to get logs for
     * @returns Promise that resolves to an array of interaction logs
     */
    getInteractionsByConversationId(conversationId: string): Promise<InteractionLog[]>;
}
