import type { IngestState, IngestStats, QualityProfile, MediaSource, RendererType, RendererStats, EncoderOverrides } from "@livepeer-frameworks/streamcrafter-core"; export interface AudioProcessingSettings { echoCancellation: boolean; noiseSuppression: boolean; autoGainControl: boolean; } export interface EncoderStats { video: { framesEncoded: number; framesPending: number; bytesEncoded: number; lastFrameTime: number; }; audio: { samplesEncoded: number; samplesPending: number; bytesEncoded: number; lastSampleTime: number; }; timestamp: number; } interface Props { /** Whether the panel is open */ isOpen: boolean; /** Callback when panel should close */ onClose: () => void; /** Current ingest state */ ingestState: IngestState; /** Quality profile */ qualityProfile: QualityProfile; /** WHIP URL */ whipUrl?: string; /** Sources */ sources: MediaSource[]; /** Stats */ stats: IngestStats | null; /** Media stream for actual track settings */ mediaStream?: MediaStream | null; /** Master volume (0-2) */ masterVolume: number; /** Callback to set master volume */ onMasterVolumeChange: (volume: number) => void; /** Audio level (0-1) */ audioLevel: number; /** Is audio mixing enabled */ audioMixingEnabled: boolean; /** Error */ error: string | null; /** Audio processing settings */ audioProcessing: AudioProcessingSettings; /** Callback to change audio processing settings */ onAudioProcessingChange: (settings: Partial) => void; /** Compositor enabled */ compositorEnabled?: boolean; /** Compositor renderer type */ compositorRendererType?: RendererType | null; /** Compositor stats */ compositorStats?: RendererStats | null; /** Scene count */ sceneCount?: number; /** Layer count */ layerCount?: number; /** Encoder: useWebCodecs setting */ useWebCodecs?: boolean; /** Encoder: is WebCodecs actually active */ isWebCodecsActive?: boolean; /** Encoder: stats from WebCodecs encoder */ encoderStats?: EncoderStats | null; /** Encoder: callback to toggle useWebCodecs */ onUseWebCodecsChange?: (enabled: boolean) => void; /** Whether WebCodecs encoding path is available */ isWebCodecsAvailable?: boolean; /** Encoder settings overrides */ encoderOverrides?: EncoderOverrides; /** Callback to change encoder overrides */ onEncoderOverridesChange?: (overrides: EncoderOverrides) => void; } declare const AdvancedPanel: import("svelte").Component; type AdvancedPanel = ReturnType; export default AdvancedPanel;