import type { PartialRequired } from '../../../Types';
import type { ContextWithState } from '../../Types';
interface SegmentTiming {
    parsedDuration: number;
    parsedPlaybackTime: number;
    encodedDuration: number;
    encodedPlaybackTime: number;
    timestampOffset: number;
}
export declare const getDefaultSegmentTiming: (initialValue?: PartialRequired<SegmentTiming, 'parsedDuration' | 'parsedPlaybackTime'>) => SegmentTiming;
declare function manifestParsed(timing: SegmentTiming, parsedDuration: number, parsedPlaybackTime: number): boolean;
declare function dataParsed(timing: SegmentTiming, encodedDuration: number, encodedPlaybackTime: number): boolean;
declare function timestampOffsetChanged(timing: SegmentTiming, newTimestampOffset: number): boolean;
export type SegmentTimingAtom = ReturnType<typeof createSegmentTiming>;
export declare function createSegmentTiming(context: ContextWithState, initialValue: PartialRequired<SegmentTiming, 'parsedDuration' | 'parsedPlaybackTime'>): import("../../core/state/Types").StateAtom<SegmentTiming, {
    manifestParsed: typeof manifestParsed;
    dataParsed: typeof dataParsed;
    timestampOffsetChanged: typeof timestampOffsetChanged;
}>;
export {};
