import { api } from './request'; export interface ConsultationSession { id: string; patient_id: string; doctor_id: string | null; consultation_type: string; status: string; subject?: string | null; last_message?: string | null; last_message_at: string | null; unread_count_patient: number; created_at: string; } export interface ConsultationMessage { id: string; session_id: string; sender_id: string; sender_role: string; content_type: string; content: string; is_read: boolean; created_at: string; } export async function listConsultations(params?: { page?: number; page_size?: number; }) { return api.get<{ data: ConsultationSession[]; total: number }>( '/health/consultation-sessions', params, ); } export async function getSession(sessionId: string) { return api.get(`/health/consultation-sessions/${sessionId}`); } export async function listMessages(sessionId: string, params?: { page?: number; page_size?: number; after_id?: string; }) { return api.get<{ data: ConsultationMessage[]; total: number }>( `/health/consultation-sessions/${sessionId}/messages`, params, ); } export async function sendMessage(sessionId: string, content: string, contentType = 'text') { return api.post('/health/consultation-messages', { session_id: sessionId, content_type: contentType, content, }); } export async function markSessionRead(sessionId: string) { return api.put(`/health/consultation-sessions/${sessionId}/read`); }