import type { AssetId } from './ids';

export type VideoPlaybackState = {
  revision: number;
  serverNowMs: number;
  /** Какая именно видео-дорожка сейчас синхронизируется (previewAssetId). */
  targetAssetId: AssetId | null;
  playing: boolean;
  playbackRate: number;
  /** Опорная точка: при `anchorServerMs` видео было на `anchorVideoTimeSec`. */
  anchorServerMs: number;
  anchorVideoTimeSec: number;
};

export type VideoPlaybackEvent =
  | { kind: 'target.set'; assetId: AssetId | null; autostart?: boolean }
  | { kind: 'play' }
  | { kind: 'pause' }
  | { kind: 'stop' }
  | { kind: 'seek'; timeSec: number }
  | { kind: 'rate.set'; rate: number };
