using System.Threading.Tasks; namespace RecruitmentSL.Hubs { // Strongly-typed SignalR client contract for RecruitmentHub — per CLAUDE.md's // "Real-Time / SignalR Modules" template (ICollabSpaceClient shape). public interface IRecruitmentClient { // Pushed when an Application's CurrentStageId changes — lets a kanban board move a // card live without polling. Task ReceiveApplicationStageChanged(ApplicationStageChangedDTO update); // Pushed to an interviewer when a new interview is created for them, or an existing // one's date/time changes. Task ReceiveInterviewScheduled(InterviewScheduledDTO update); Task ReceiveError(string errorMessage); } }