// 협상 엔드포인트 호출 함수 (순수 HTTP 레이어, React 의존 없음). import { http } from '@/apis/http' import type { ExtraInfoRequest, ExtraInfoResponse, ParticipateResponse, RejectRequest, RejectResponse, SessionListParams, SessionListResponse, } from './negotiation.type' export const negotiationApi = { /** GET /v1/negotiation/sessions — 로그인 공급사의 협상 세션 목록(필터/정렬/페이지) */ getSessions: async (params: SessionListParams = {}): Promise => { const res = await http.get('/v1/negotiation/sessions', { params }) return res.data }, /** POST /v1/negotiation/sessions/{id}/participate — 협상 세션 참여 */ participate: async (sessionId: string): Promise => { const res = await http.post( `/v1/negotiation/sessions/${sessionId}/participate`, ) return res.data }, /** POST /v1/negotiation/sessions/{id}/reject — 협상 세션 거부 */ reject: async (sessionId: string, body: RejectRequest): Promise => { const res = await http.post( `/v1/negotiation/sessions/${sessionId}/reject`, body, ) return res.data }, /** POST /v1/negotiation/sessions/{id}/extra-info — 협상완료 부가정보 저장 */ saveExtraInfo: async (sessionId: string, body: ExtraInfoRequest): Promise => { const res = await http.post( `/v1/negotiation/sessions/${sessionId}/extra-info`, body, ) return res.data }, }