import type { GameTrack } from '../../gameTrack';
import type { PlaySoundOptions, ShowLightsColorParams, ShowLightsEffectParams } from '../../hardware';
import type { Response } from '../../response';

export interface SocketGameTrackEventsParams {
  // Response from server (game-track:init)
  'game-track:init:response': Response<GameTrack>;
}

export interface SocketGameTrackEventParams {
  'game-track:emergency:activate': undefined;
  'game-track:emergency:deactivate': undefined;

  'game-track:lights:showEffect': ShowLightsEffectParams;
  'game-track:lights:showColor': ShowLightsColorParams;

  'game-track:sound:play': PlaySoundOptions;
}

export type SocketGameTrackServerToClientEventsParams = SocketGameTrackEventsParams & SocketGameTrackEventParams;
