import type { EmptyObject } from '../../../../framework-types/BaseTypes'; import type { ContextHaving } from '../../../../framework-types/execution-context/Types'; import type { ArrayAtom } from '../../core/state/ArrayStateAtom'; import type { StateAtom } from '../../core/state/Types'; import { CoreExportNames } from '../../core/Types'; import type { CoreUtils } from '../../core/utils/Types'; import type { VideoElementAtom } from '../../source/atoms/VideoElementAtom'; import type { TrackAtom } from '../../stream-data-structure/track/TrackAtom'; import type { ContextWithState } from '../../Types'; import type { TimeRange } from './Types'; type SeekableRangerProvider = { range: TimeRange | undefined; }; type Context = ContextHaving<{ [CoreExportNames.Utils]: CoreUtils; }, EmptyObject, ContextWithState>; export type SeekableRangeProviderAtom = StateAtom; export declare function createSeekableRangeProvider(context: Context, video: VideoElementAtom): SeekableRangeProviderAtom; export declare function createSeekableRangeProvider(context: Context, tracks: ArrayAtom): SeekableRangeProviderAtom; export {};