import { Program, BaseRoutine, LiveWorkout } from '.'; import { NewMessageChatUpdate, MessageDeletedChatUpdate, NewConversationChatUpdate } from './chat'; export interface PingChatUpdate { type: 'websocket-ping'; } export interface PongChatUpdate { type: 'websocket-pong'; } export interface CoachClientsUpdated { type: 'coaches-clients-updated'; new_client_ids: string[]; removed_client_ids: string[]; } export interface CoachProgramUpdated { type: 'coaches-program-updated'; updated_program: Program; } export interface CoachRoutineUpdated { type: 'coaches-routine-updated'; updated_routine: BaseRoutine; } export interface CoachExerciseLibraryUpdated { type: 'coaches-exercise-library-updated'; } export interface LiveWorkoutUpdated { type: 'live-workout-updated'; live_workout: LiveWorkout; } export interface LiveWorkoutDeleted { type: 'live-workout-deleted'; workout_id: string; } export interface WebsocketMessageRequest { message: HevyWebsocketMessage; recipient_user_ids: string[]; } export type HevyWebsocketMessage = NewMessageChatUpdate | MessageDeletedChatUpdate | NewConversationChatUpdate | PingChatUpdate | PongChatUpdate | CoachClientsUpdated | CoachProgramUpdated | CoachRoutineUpdated | CoachExerciseLibraryUpdated | LiveWorkoutUpdated | LiveWorkoutDeleted; export declare const isHevyWebsocketMessage: (message?: any) => message is HevyWebsocketMessage;