/**
 * Payment timer utility for handling timeouts
 */
export declare class PaymentTimer {
    private timers;
    private activeTimer;
    /**
     * Start a timer with callback
     */
    startTimer(duration: number, callback: () => void, timerId?: string): void;
    /**
     * Clear a specific timer or the active timer
     */
    clearTimer(timerId?: string): void;
    /**
     * Clear all timers
     */
    clearAllTimers(): void;
    /**
     * Check if a timer is active
     */
    hasActiveTimer(timerId?: string): boolean;
    /**
     * Get remaining time for a timer (approximate)
     */
    getRemainingTime(_timerId?: string): number | null;
    /**
     * Start a recurring timer
     */
    startInterval(duration: number, callback: () => void, timerId?: string): void;
    /**
     * Destroy the timer instance
     */
    destroy(): void;
}
