/**
 * Shared storage for call data
 * This module provides Redis-based storage for call data with in-memory fallback
 * that can be accessed by both phone-util.ts and webhook controllers
 */
interface CallData {
    steps: Array<{
        type: 'keyboard' | 'audio' | 'realtime' | 'delay' | 'startAfter' | 'next';
        value?: string;
    }>;
    systemPrompt: string;
    overallDelay: number;
    currentStepIndex: number;
    aiSpeaksFirst?: boolean;
    workspaceId?: string;
    projectId?: string;
}
/**
 * Store call data for a given call SID
 */
export declare function storeCallData(callSid: string, data: {
    steps: Array<{
        type: 'keyboard' | 'audio' | 'realtime' | 'delay' | 'startAfter' | 'next';
        value?: string;
    }>;
    systemPrompt: string;
    overallDelay: number;
    aiSpeaksFirst?: boolean;
    workspaceId?: string;
    projectId?: string;
}): Promise<void>;
/**
 * Get call data for a given call SID
 */
export declare function getCallData(callSid: string): Promise<CallData | undefined>;
/**
 * Update call data (e.g., increment step index)
 */
export declare function updateCallData(callSid: string, updates: Partial<CallData>): Promise<void>;
/**
 * Delete call data
 */
export declare function deleteCallData(callSid: string): Promise<void>;
/**
 * Get all call SIDs currently stored
 */
export declare function getAllCallSids(): Promise<string[]>;
/**
 * Extend TTL for call data (no-op for in-memory fallback)
 */
export declare function extendCallDataTTL(callSid: string, additionalSeconds?: number): Promise<void>;
/**
 * Check if call data exists
 */
export declare function hasCallData(callSid: string): Promise<boolean>;
export {};
//# sourceMappingURL=call-data-storage.d.ts.map