import type { EmptyObject } from '../../../framework-types/BaseTypes'; import type { ContextHaving } from '../../../framework-types/execution-context/Types'; import type { CoreEffects, CoreExportNames, CoreStateAtoms } from '../core/Types'; import type { CoreUtils } from '../core/utils/Types'; import type { SourceStateAtom } from '../source/atoms/SourceStateAtom'; import type { SourceExportNames } from '../source/Types'; import type { ContextWithState } from '../Types'; import type { MediaInfo } from './MediaInfoAtoms'; import type { MediaState } from './MediaState'; import type { MediaStateAtom } from './MediaStateAtom'; import type { MediaStateTransitionType } from './MediaStateTransitionType'; import type { SeekRestrictionAtom } from './SeekRestrictionAtom'; export type { MediaState } from './MediaState'; export type { MediaStateTransitionType } from './MediaStateTransitionType'; export type MediaStateTransition = { type: MediaStateTransitionType; paused: boolean; ended: boolean; seeking: boolean; errored: boolean; currentTime: number; duration: number | undefined; }; export declare enum MediaStateExportNames { MediaStateAtom = "media-state-atom", MediaState = "media-state", MediaInfo = "media-info", MediaStateTransitionType = "media-state-transition-type", SeekRestriction = "seek-restriction" } export type MediaStatePackageDependencies = { [SourceExportNames.SourceState]: SourceStateAtom; [CoreExportNames.CoreEffects]: CoreEffects; [CoreExportNames.CoreStateAtoms]: CoreStateAtoms; [CoreExportNames.Utils]: CoreUtils; }; export type MediaStatePackageExports = { [MediaStateExportNames.MediaStateAtom]: MediaStateAtom; [MediaStateExportNames.MediaState]: typeof MediaState; [MediaStateExportNames.MediaInfo]: MediaInfo; [MediaStateExportNames.SeekRestriction]: SeekRestrictionAtom; [MediaStateExportNames.MediaStateTransitionType]: typeof MediaStateTransitionType; }; export type MediaStatePackageContext = ContextHaving; export type MediaStatePackageApi = EmptyObject; export type { MediaInfo } from './MediaInfoAtoms'; export type { MediaStateAtom } from './MediaStateAtom'; export type { SeekRestrictionAtom } from './SeekRestrictionAtom';