import type { ApiManager } from '../../../../framework-types/api-manager/ApiManager'; import type { EmptyObject } from '../../../../framework-types/BaseTypes'; import type { ContextHaving } from '../../../../framework-types/execution-context/Types'; import type { CoreEffects, CoreExportNames } from '../../core/Types'; import type { MediaStateAtom } from '../../media-state/MediaStateAtom'; import type { MediaState, MediaStateExportNames } from '../../media-state/Types'; import type { TargetPlaybackState, TargetPlaybackStateAtom } from '../../playback/play-pause/TargetPlaybackStateAtom'; import type { PlayPauseExportNames } from '../../playback/play-pause/Types'; import type { SourcesApiExportNames } from '../../sources-api/Types'; import type { ContextWithState } from '../../Types'; export type PlayPauseApi = { play(): Promise; pause(): void; }; export type PlayPauseApiPackageDependencies = { [CoreExportNames.CoreEffects]: CoreEffects; [PlayPauseExportNames.TargetPlaybackState]: typeof TargetPlaybackState; [PlayPauseExportNames.TargetPlaybackStateAtom]: TargetPlaybackStateAtom; [SourcesApiExportNames.SourceApiManager]: ApiManager; [MediaStateExportNames.MediaStateAtom]: MediaStateAtom; [MediaStateExportNames.MediaState]: typeof MediaState; }; export type PlayPauseApiPackageExports = EmptyObject; export type PlayPauseApiPackageContext = ContextHaving;