import type Logger from '../../../../Logger'; import type { LtOptions } from './components/lower-third/lowerThird'; import type { tsvb } from './tsvb'; import type ConfigService from '../../../../../config/ConfigService'; export declare enum ErrorType { INFO = "info", WARNING = "warning", ERROR = "error" } export declare enum ErrorEmitter { TSVB = "tsvb", COMPONENTS_SYSTEM = "components_system", SRTEAM_PROCESSOR = "stream_processor", ML_INFERENCE = "ml_inference", PRESET_INIT = "preset_init", RENDERER = "renderer", RECORDER = "recorder", EFFECT_VIRTUAL_BACKGROUND = "effect_virtual_background", EFFECT_COLOR_CORRECTION = "effect_color_correction", EFFECT_COLOR_FILTER = "effect_color_filter", EFFECT_SMART_ZOOM = "effect_smart_zoom", EFFECT_LOW_LIGHT = "effect_low_light" } export type LayoutTypes = 'center' | 'left-bottom' | 'right-bottom'; export type LowerThirdTypes = 'lowerthird_1' | 'lowerthird_2' | 'lowerthird_3' | 'lowerthird_4' | 'lowerthird_5'; export interface Effects { blur?: number; background?: string; backgroundColor?: number; beautification?: number; colorCorrector?: number; lowLightEffect?: number; smartZoom?: number; layout?: LayoutTypes; colorFilter?: { url: string; power: number; }; lowerThird?: { type: LowerThirdTypes; options?: LtOptions; }; sharpness?: number; } interface VideoTrackProcessorParams { loggerFactory: (namespace: string) => Logger; customerId?: string; sdk_url?: string; api_url?: string; config: ConfigService; onModelsLoaded?: () => void; } declare global { interface Window { tsvb: typeof tsvb; } } export default class EffectsSDKTrackProcessor { #private; constructor(params: VideoTrackProcessorParams); init(): Promise; awaitReady(): Promise; private tsvbErrorHandler; get isModelsLoaded(): boolean; get modelsLoadProgress(): number; get isReady(): boolean; setOnLoadModels(callback: () => void): void; onReady(): void; processTrack(track: MediaStreamTrack): MediaStreamTrack; stopProcessing(): void; updateEffects(effects?: Effects): void; } export {};