import { MLProvidersManager } from './ml-providers-manager'; import { IVideoEffect, IVideoProcessingPipeline, PerformanceConfig, PipelineConfig, PipelineState, QualityPreset } from '../types'; type InternalPipelineConfig = PipelineConfig & { width: number; height: number; processorType: 'auto' | 'canvas' | 'insertable-streams'; performance: PerformanceConfig; }; export declare const QUALITY_PRESETS: Record, Required>>; export declare const DEFAULT_CONFIG: InternalPipelineConfig; export declare class VideoProcessingPipelineService implements IVideoProcessingPipeline { private config; private frameSource; private frameOutput; private providers; private effects; private sourceCanvas; private sourceCtx; private workCanvas; private workCtx; private mlCanvas; private mlCtx; private running; private animationFrameId; private isProcessingFrame; private pendingDimensions; private boundHandleDimensionsChanged; private mlFrameSkip; private mlFrameCounter; private frameInterval; private mlResolutionScale; private lastFrameTime; private frameCount; private fpsUpdateTime; private currentFps; private adaptiveEnabled; private lowFpsCount; private adaptiveCheckInterval; private lastAdaptiveCheck; private static readonly PRESET_DOWNGRADE_CHAIN; constructor(config?: PipelineConfig); getProvidersManager(): MLProvidersManager; setPerformanceConfig(config: PerformanceConfig): void; getPerformanceConfig(): PerformanceConfig; start(inputTrack: MediaStreamTrack): Promise; private handleDimensionsChanged; private applyDimensionsChange; stop(): void; dispose(): void; getOutputTrack(): MediaStreamTrack | null; addEffect(effect: IVideoEffect): Promise; removeEffect(name: string): void; getEffect(name: string): T | null; getEffects(): IVideoEffect[]; reorderEffects(order: string[]): void; isRunning(): boolean; getState(): PipelineState; private scheduleNextFrame; private processFrame; private renderFrame; private captureImageData; private applyEffectsChain; private checkAdaptivePerformance; private downgradePreset; private initializeCanvases; private initializeMlCanvas; private applyPerformanceConfig; private resolvePerformanceConfig; private updateBlurQuality; private upscaleSegmentation; private disposeMlCanvas; private disposeCanvases; } export {};