import { SlideControlsOptions, SlideControlsState } from '../types/controls'; /** * SlideControls provides a UI component for manual slide navigation */ export declare class SlideControls { private container; private options; private commander; private state; private controlsElement; private prevButton; private nextButton; private counterElement; private aiSpeechDetectionInterval; /** * Create a new SlideControls instance * @param container - Parent HTML element to render controls into * @param options - Configuration options */ constructor(container: HTMLElement, options: SlideControlsOptions); /** * Render the controls UI */ private render; /** * Inject inline CSS styles */ private injectStyles; /** * Handle previous button click */ private handlePrevClick; /** * Handle next button click */ private handleNextClick; /** * Update button enabled/disabled states */ private updateButtonStates; /** * Update counter display */ private updateCounter; /** * Start AI speech detection to disable controls during AI speech */ private startAISpeechDetection; /** * Stop AI speech detection */ private stopAISpeechDetection; /** * Enable the controls */ enable(): void; /** * Disable the controls */ disable(): void; /** * Set the current position in the slide deck * @param currentSlide - Current slide number (0-indexed) * @param totalSlides - Total number of slides */ setPosition(currentSlide: number, totalSlides: number): void; /** * Get the current state */ getState(): SlideControlsState; /** * Clean up and destroy the component */ destroy(): void; }