import type { MediaType } from '../core/Constants'; import type { MediaTrackAtom } from '../stream-data-structure/track/TrackAtom'; import type { ContextWithState } from '../Types'; import type { StartupQuality } from './Types'; import type { QualityFunction, WishConfig } from './WishConfigAtom'; type AbrAlgorithm = 'wish' | 'default'; type AdaptationSuggestion = { [key in MediaType]?: MediaTrackAtom; }; type AdaptationConfig = WishConfig; export interface AdaptationState { abr: AbrAlgorithm; suggestion: AdaptationSuggestion; config: AdaptationConfig; startupQuality: StartupQuality | undefined; } export declare function getDefaultState(baseState?: Partial): AdaptationState; export type AdaptationStateAtom = ReturnType; export declare function createAdaptationStateAtom(context: ContextWithState, baseState?: Partial): import("../core/state/Types").StateAtom boolean; setSuggestion: (state: AdaptationState, suggestion: AdaptationSuggestion) => boolean; setXi: (state: AdaptationState, xi: number) => boolean; setDelta: (state: AdaptationState, delta: number) => boolean; setQualityFunction: (state: AdaptationState, qualityFunction: QualityFunction) => boolean; setStartupQuality: (state: AdaptationState, startupQuality: StartupQuality | undefined) => boolean; }>; export {};