/**
 * BeadsStateManager
 *
 * Manages beads-specific conversation state including phase task mappings
 * and epic information. Provides persistent storage for beads integration
 * data with proper separation of concerns from conversation management.
 */
import type { BeadsPhaseTask } from './beads-integration.js';
/**
 * Beads-specific conversation state
 */
export interface BeadsConversationState {
    conversationId: string;
    projectPath: string;
    epicId: string;
    phaseTasks: BeadsPhaseTask[];
    createdAt: string;
    updatedAt: string;
}
/**
 * Manager for beads conversation state persistence
 */
export declare class BeadsStateManager {
    private projectPath;
    constructor(projectPath: string);
    /**
     * Get the path to the beads state file for a conversation
     */
    private getBeadsStatePath;
    /**
     * Create beads state for a conversation
     */
    createState(conversationId: string, epicId: string, phaseTasks: BeadsPhaseTask[]): Promise<BeadsConversationState>;
    /**
     * Get beads state for a conversation
     */
    getState(conversationId: string): Promise<BeadsConversationState | null>;
    /**
     * Get phase task ID for a specific phase
     */
    getPhaseTaskId(conversationId: string, phase: string): Promise<string | null>;
    /**
     * Update beads state for a conversation
     */
    updateState(conversationId: string, updates: Partial<Omit<BeadsConversationState, 'conversationId' | 'createdAt'>>): Promise<BeadsConversationState | null>;
    /**
     * Clean up beads state for a conversation
     */
    cleanup(conversationId: string): Promise<void>;
    /**
     * Check if beads state exists for a conversation
     */
    hasState(conversationId: string): Promise<boolean>;
    /**
     * Save beads state to file
     */
    private saveState;
}
