@ject-4-vs-team/api-client 2026.501.2 → 2026.501.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,269 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { Configuration } from '../configuration';
13
+ import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
14
+ import { type RequestArgs, BaseAPI } from '../base';
15
+ import type { ChatListResponse } from '../models';
16
+ import type { ChatRoomResponse } from '../models';
17
+ import type { GaugeResponse } from '../models';
18
+ import type { MarkAsReadRequest } from '../models';
19
+ import type { MessagePageResponse } from '../models';
20
+ import type { MessageResponse } from '../models';
21
+ import type { SendMessageRequest } from '../models';
22
+ /**
23
+ * ChatApi - axios parameter creator
24
+ * @export
25
+ */
26
+ export declare const ChatApiAxiosParamCreator: (configuration?: Configuration) => {
27
+ /**
28
+ * 로그인 사용자가 참여한 채팅방을 투표 진행 상태별로 조회합니다.
29
+ * @summary 채팅방 목록 조회
30
+ * @param {GetChatListStatusEnum} status 조회할 투표 상태
31
+ * @param {*} [options] Override http request option.
32
+ * @throws {RequiredError}
33
+ */
34
+ getChatList: (status: GetChatListStatusEnum, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
35
+ /**
36
+ * 채팅방 상단에 표시할 투표 제목, 진행 상태, 선택지, 참여자 수, 종료 시간을 조회합니다.
37
+ * @summary 채팅방 상세 조회
38
+ * @param {number} voteId 채팅방이 연결된 투표 ID
39
+ * @param {*} [options] Override http request option.
40
+ * @throws {RequiredError}
41
+ */
42
+ getChatRoom: (voteId: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
43
+ /**
44
+ * 채팅방에서 표시할 A/B 선택지 투표 비율과 참여자 수를 조회합니다. 비율 값은 0부터 100까지의 정수입니다.
45
+ * @summary 투표 게이지 조회
46
+ * @param {number} voteId 게이지를 조회할 투표 ID
47
+ * @param {*} [options] Override http request option.
48
+ * @throws {RequiredError}
49
+ */
50
+ getGauge: (voteId: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
51
+ /**
52
+ * 채팅방 메시지를 커서 기반으로 조회합니다. cursor가 없으면 최신 메시지 기준으로 조회하고, nextCursor와 hasNext로 다음 페이지 요청 여부를 판단합니다.
53
+ * @summary 채팅 메시지 목록 조회
54
+ * @param {number} voteId 메시지를 조회할 투표 ID
55
+ * @param {number} [cursor] 이전 페이지의 nextCursor. 첫 조회 시 생략합니다.
56
+ * @param {number} [size] 조회할 메시지 수
57
+ * @param {*} [options] Override http request option.
58
+ * @throws {RequiredError}
59
+ */
60
+ getMessages: (voteId: number, cursor?: number, size?: number, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
61
+ /**
62
+ * 사용자가 마지막으로 읽은 메시지 ID를 저장해 이후 채팅방 목록의 unreadCount 계산에 사용합니다.
63
+ * @summary 채팅방 읽음 처리
64
+ * @param {number} voteId 읽음 처리할 투표 ID
65
+ * @param {MarkAsReadRequest} markAsReadRequest 마지막으로 읽은 메시지 ID
66
+ * @param {*} [options] Override http request option.
67
+ * @throws {RequiredError}
68
+ */
69
+ markAsRead: (voteId: number, markAsReadRequest: MarkAsReadRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
70
+ /**
71
+ * 채팅방에 새 메시지를 전송하고 저장된 메시지 정보를 반환합니다.
72
+ * @summary 채팅 메시지 전송
73
+ * @param {number} voteId 메시지를 전송할 투표 ID
74
+ * @param {SendMessageRequest} sendMessageRequest 전송할 메시지 내용
75
+ * @param {*} [options] Override http request option.
76
+ * @throws {RequiredError}
77
+ */
78
+ sendMessage: (voteId: number, sendMessageRequest: SendMessageRequest, options?: RawAxiosRequestConfig) => Promise<RequestArgs>;
79
+ };
80
+ /**
81
+ * ChatApi - functional programming interface
82
+ * @export
83
+ */
84
+ export declare const ChatApiFp: (configuration?: Configuration) => {
85
+ /**
86
+ * 로그인 사용자가 참여한 채팅방을 투표 진행 상태별로 조회합니다.
87
+ * @summary 채팅방 목록 조회
88
+ * @param {GetChatListStatusEnum} status 조회할 투표 상태
89
+ * @param {*} [options] Override http request option.
90
+ * @throws {RequiredError}
91
+ */
92
+ getChatList(status: GetChatListStatusEnum, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ChatListResponse>>;
93
+ /**
94
+ * 채팅방 상단에 표시할 투표 제목, 진행 상태, 선택지, 참여자 수, 종료 시간을 조회합니다.
95
+ * @summary 채팅방 상세 조회
96
+ * @param {number} voteId 채팅방이 연결된 투표 ID
97
+ * @param {*} [options] Override http request option.
98
+ * @throws {RequiredError}
99
+ */
100
+ getChatRoom(voteId: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ChatRoomResponse>>;
101
+ /**
102
+ * 채팅방에서 표시할 A/B 선택지 투표 비율과 참여자 수를 조회합니다. 비율 값은 0부터 100까지의 정수입니다.
103
+ * @summary 투표 게이지 조회
104
+ * @param {number} voteId 게이지를 조회할 투표 ID
105
+ * @param {*} [options] Override http request option.
106
+ * @throws {RequiredError}
107
+ */
108
+ getGauge(voteId: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GaugeResponse>>;
109
+ /**
110
+ * 채팅방 메시지를 커서 기반으로 조회합니다. cursor가 없으면 최신 메시지 기준으로 조회하고, nextCursor와 hasNext로 다음 페이지 요청 여부를 판단합니다.
111
+ * @summary 채팅 메시지 목록 조회
112
+ * @param {number} voteId 메시지를 조회할 투표 ID
113
+ * @param {number} [cursor] 이전 페이지의 nextCursor. 첫 조회 시 생략합니다.
114
+ * @param {number} [size] 조회할 메시지 수
115
+ * @param {*} [options] Override http request option.
116
+ * @throws {RequiredError}
117
+ */
118
+ getMessages(voteId: number, cursor?: number, size?: number, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<MessagePageResponse>>;
119
+ /**
120
+ * 사용자가 마지막으로 읽은 메시지 ID를 저장해 이후 채팅방 목록의 unreadCount 계산에 사용합니다.
121
+ * @summary 채팅방 읽음 처리
122
+ * @param {number} voteId 읽음 처리할 투표 ID
123
+ * @param {MarkAsReadRequest} markAsReadRequest 마지막으로 읽은 메시지 ID
124
+ * @param {*} [options] Override http request option.
125
+ * @throws {RequiredError}
126
+ */
127
+ markAsRead(voteId: number, markAsReadRequest: MarkAsReadRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<void>>;
128
+ /**
129
+ * 채팅방에 새 메시지를 전송하고 저장된 메시지 정보를 반환합니다.
130
+ * @summary 채팅 메시지 전송
131
+ * @param {number} voteId 메시지를 전송할 투표 ID
132
+ * @param {SendMessageRequest} sendMessageRequest 전송할 메시지 내용
133
+ * @param {*} [options] Override http request option.
134
+ * @throws {RequiredError}
135
+ */
136
+ sendMessage(voteId: number, sendMessageRequest: SendMessageRequest, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<MessageResponse>>;
137
+ };
138
+ /**
139
+ * ChatApi - factory interface
140
+ * @export
141
+ */
142
+ export declare const ChatApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
143
+ /**
144
+ * 로그인 사용자가 참여한 채팅방을 투표 진행 상태별로 조회합니다.
145
+ * @summary 채팅방 목록 조회
146
+ * @param {GetChatListStatusEnum} status 조회할 투표 상태
147
+ * @param {*} [options] Override http request option.
148
+ * @throws {RequiredError}
149
+ */
150
+ getChatList(status: GetChatListStatusEnum, options?: RawAxiosRequestConfig): AxiosPromise<ChatListResponse>;
151
+ /**
152
+ * 채팅방 상단에 표시할 투표 제목, 진행 상태, 선택지, 참여자 수, 종료 시간을 조회합니다.
153
+ * @summary 채팅방 상세 조회
154
+ * @param {number} voteId 채팅방이 연결된 투표 ID
155
+ * @param {*} [options] Override http request option.
156
+ * @throws {RequiredError}
157
+ */
158
+ getChatRoom(voteId: number, options?: RawAxiosRequestConfig): AxiosPromise<ChatRoomResponse>;
159
+ /**
160
+ * 채팅방에서 표시할 A/B 선택지 투표 비율과 참여자 수를 조회합니다. 비율 값은 0부터 100까지의 정수입니다.
161
+ * @summary 투표 게이지 조회
162
+ * @param {number} voteId 게이지를 조회할 투표 ID
163
+ * @param {*} [options] Override http request option.
164
+ * @throws {RequiredError}
165
+ */
166
+ getGauge(voteId: number, options?: RawAxiosRequestConfig): AxiosPromise<GaugeResponse>;
167
+ /**
168
+ * 채팅방 메시지를 커서 기반으로 조회합니다. cursor가 없으면 최신 메시지 기준으로 조회하고, nextCursor와 hasNext로 다음 페이지 요청 여부를 판단합니다.
169
+ * @summary 채팅 메시지 목록 조회
170
+ * @param {number} voteId 메시지를 조회할 투표 ID
171
+ * @param {number} [cursor] 이전 페이지의 nextCursor. 첫 조회 시 생략합니다.
172
+ * @param {number} [size] 조회할 메시지 수
173
+ * @param {*} [options] Override http request option.
174
+ * @throws {RequiredError}
175
+ */
176
+ getMessages(voteId: number, cursor?: number, size?: number, options?: RawAxiosRequestConfig): AxiosPromise<MessagePageResponse>;
177
+ /**
178
+ * 사용자가 마지막으로 읽은 메시지 ID를 저장해 이후 채팅방 목록의 unreadCount 계산에 사용합니다.
179
+ * @summary 채팅방 읽음 처리
180
+ * @param {number} voteId 읽음 처리할 투표 ID
181
+ * @param {MarkAsReadRequest} markAsReadRequest 마지막으로 읽은 메시지 ID
182
+ * @param {*} [options] Override http request option.
183
+ * @throws {RequiredError}
184
+ */
185
+ markAsRead(voteId: number, markAsReadRequest: MarkAsReadRequest, options?: RawAxiosRequestConfig): AxiosPromise<void>;
186
+ /**
187
+ * 채팅방에 새 메시지를 전송하고 저장된 메시지 정보를 반환합니다.
188
+ * @summary 채팅 메시지 전송
189
+ * @param {number} voteId 메시지를 전송할 투표 ID
190
+ * @param {SendMessageRequest} sendMessageRequest 전송할 메시지 내용
191
+ * @param {*} [options] Override http request option.
192
+ * @throws {RequiredError}
193
+ */
194
+ sendMessage(voteId: number, sendMessageRequest: SendMessageRequest, options?: RawAxiosRequestConfig): AxiosPromise<MessageResponse>;
195
+ };
196
+ /**
197
+ * ChatApi - object-oriented interface
198
+ * @export
199
+ * @class ChatApi
200
+ * @extends {BaseAPI}
201
+ */
202
+ export declare class ChatApi extends BaseAPI {
203
+ /**
204
+ * 로그인 사용자가 참여한 채팅방을 투표 진행 상태별로 조회합니다.
205
+ * @summary 채팅방 목록 조회
206
+ * @param {GetChatListStatusEnum} status 조회할 투표 상태
207
+ * @param {*} [options] Override http request option.
208
+ * @throws {RequiredError}
209
+ * @memberof ChatApi
210
+ */
211
+ getChatList(status: GetChatListStatusEnum, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<ChatListResponse, any, {}>>;
212
+ /**
213
+ * 채팅방 상단에 표시할 투표 제목, 진행 상태, 선택지, 참여자 수, 종료 시간을 조회합니다.
214
+ * @summary 채팅방 상세 조회
215
+ * @param {number} voteId 채팅방이 연결된 투표 ID
216
+ * @param {*} [options] Override http request option.
217
+ * @throws {RequiredError}
218
+ * @memberof ChatApi
219
+ */
220
+ getChatRoom(voteId: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<ChatRoomResponse, any, {}>>;
221
+ /**
222
+ * 채팅방에서 표시할 A/B 선택지 투표 비율과 참여자 수를 조회합니다. 비율 값은 0부터 100까지의 정수입니다.
223
+ * @summary 투표 게이지 조회
224
+ * @param {number} voteId 게이지를 조회할 투표 ID
225
+ * @param {*} [options] Override http request option.
226
+ * @throws {RequiredError}
227
+ * @memberof ChatApi
228
+ */
229
+ getGauge(voteId: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<GaugeResponse, any, {}>>;
230
+ /**
231
+ * 채팅방 메시지를 커서 기반으로 조회합니다. cursor가 없으면 최신 메시지 기준으로 조회하고, nextCursor와 hasNext로 다음 페이지 요청 여부를 판단합니다.
232
+ * @summary 채팅 메시지 목록 조회
233
+ * @param {number} voteId 메시지를 조회할 투표 ID
234
+ * @param {number} [cursor] 이전 페이지의 nextCursor. 첫 조회 시 생략합니다.
235
+ * @param {number} [size] 조회할 메시지 수
236
+ * @param {*} [options] Override http request option.
237
+ * @throws {RequiredError}
238
+ * @memberof ChatApi
239
+ */
240
+ getMessages(voteId: number, cursor?: number, size?: number, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<MessagePageResponse, any, {}>>;
241
+ /**
242
+ * 사용자가 마지막으로 읽은 메시지 ID를 저장해 이후 채팅방 목록의 unreadCount 계산에 사용합니다.
243
+ * @summary 채팅방 읽음 처리
244
+ * @param {number} voteId 읽음 처리할 투표 ID
245
+ * @param {MarkAsReadRequest} markAsReadRequest 마지막으로 읽은 메시지 ID
246
+ * @param {*} [options] Override http request option.
247
+ * @throws {RequiredError}
248
+ * @memberof ChatApi
249
+ */
250
+ markAsRead(voteId: number, markAsReadRequest: MarkAsReadRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any, {}>>;
251
+ /**
252
+ * 채팅방에 새 메시지를 전송하고 저장된 메시지 정보를 반환합니다.
253
+ * @summary 채팅 메시지 전송
254
+ * @param {number} voteId 메시지를 전송할 투표 ID
255
+ * @param {SendMessageRequest} sendMessageRequest 전송할 메시지 내용
256
+ * @param {*} [options] Override http request option.
257
+ * @throws {RequiredError}
258
+ * @memberof ChatApi
259
+ */
260
+ sendMessage(voteId: number, sendMessageRequest: SendMessageRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<MessageResponse, any, {}>>;
261
+ }
262
+ /**
263
+ * @export
264
+ */
265
+ export declare const GetChatListStatusEnum: {
266
+ readonly Ongoing: "ONGOING";
267
+ readonly Ended: "ENDED";
268
+ };
269
+ export type GetChatListStatusEnum = typeof GetChatListStatusEnum[keyof typeof GetChatListStatusEnum];
@@ -0,0 +1,498 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ var __importDefault = (this && this.__importDefault) || function (mod) {
16
+ return (mod && mod.__esModule) ? mod : { "default": mod };
17
+ };
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.GetChatListStatusEnum = exports.ChatApi = exports.ChatApiFactory = exports.ChatApiFp = exports.ChatApiAxiosParamCreator = void 0;
20
+ const axios_1 = __importDefault(require("axios"));
21
+ // Some imports not used depending on template conditions
22
+ // @ts-ignore
23
+ const common_1 = require("../common");
24
+ // @ts-ignore
25
+ const base_1 = require("../base");
26
+ /**
27
+ * ChatApi - axios parameter creator
28
+ * @export
29
+ */
30
+ const ChatApiAxiosParamCreator = function (configuration) {
31
+ return {
32
+ /**
33
+ * 로그인 사용자가 참여한 채팅방을 투표 진행 상태별로 조회합니다.
34
+ * @summary 채팅방 목록 조회
35
+ * @param {GetChatListStatusEnum} status 조회할 투표 상태
36
+ * @param {*} [options] Override http request option.
37
+ * @throws {RequiredError}
38
+ */
39
+ getChatList: async (status, options = {}) => {
40
+ // verify required parameter 'status' is not null or undefined
41
+ (0, common_1.assertParamExists)('getChatList', 'status', status);
42
+ const localVarPath = `/api/chats`;
43
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
44
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
45
+ let baseOptions;
46
+ if (configuration) {
47
+ baseOptions = configuration.baseOptions;
48
+ }
49
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
50
+ const localVarHeaderParameter = {};
51
+ const localVarQueryParameter = {};
52
+ // authentication bearerAuth required
53
+ // http bearer authentication required
54
+ await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
55
+ if (status !== undefined) {
56
+ localVarQueryParameter['status'] = status;
57
+ }
58
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
59
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
60
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
61
+ return {
62
+ url: (0, common_1.toPathString)(localVarUrlObj),
63
+ options: localVarRequestOptions,
64
+ };
65
+ },
66
+ /**
67
+ * 채팅방 상단에 표시할 투표 제목, 진행 상태, 선택지, 참여자 수, 종료 시간을 조회합니다.
68
+ * @summary 채팅방 상세 조회
69
+ * @param {number} voteId 채팅방이 연결된 투표 ID
70
+ * @param {*} [options] Override http request option.
71
+ * @throws {RequiredError}
72
+ */
73
+ getChatRoom: async (voteId, options = {}) => {
74
+ // verify required parameter 'voteId' is not null or undefined
75
+ (0, common_1.assertParamExists)('getChatRoom', 'voteId', voteId);
76
+ const localVarPath = `/api/chats/{voteId}`
77
+ .replace(`{${"voteId"}}`, encodeURIComponent(String(voteId)));
78
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
79
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
80
+ let baseOptions;
81
+ if (configuration) {
82
+ baseOptions = configuration.baseOptions;
83
+ }
84
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
85
+ const localVarHeaderParameter = {};
86
+ const localVarQueryParameter = {};
87
+ // authentication bearerAuth required
88
+ // http bearer authentication required
89
+ await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
90
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
91
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
92
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
93
+ return {
94
+ url: (0, common_1.toPathString)(localVarUrlObj),
95
+ options: localVarRequestOptions,
96
+ };
97
+ },
98
+ /**
99
+ * 채팅방에서 표시할 A/B 선택지 투표 비율과 참여자 수를 조회합니다. 비율 값은 0부터 100까지의 정수입니다.
100
+ * @summary 투표 게이지 조회
101
+ * @param {number} voteId 게이지를 조회할 투표 ID
102
+ * @param {*} [options] Override http request option.
103
+ * @throws {RequiredError}
104
+ */
105
+ getGauge: async (voteId, options = {}) => {
106
+ // verify required parameter 'voteId' is not null or undefined
107
+ (0, common_1.assertParamExists)('getGauge', 'voteId', voteId);
108
+ const localVarPath = `/api/chats/{voteId}/gauge`
109
+ .replace(`{${"voteId"}}`, encodeURIComponent(String(voteId)));
110
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
111
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
112
+ let baseOptions;
113
+ if (configuration) {
114
+ baseOptions = configuration.baseOptions;
115
+ }
116
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
117
+ const localVarHeaderParameter = {};
118
+ const localVarQueryParameter = {};
119
+ // authentication bearerAuth required
120
+ // http bearer authentication required
121
+ await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
122
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
123
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
124
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
125
+ return {
126
+ url: (0, common_1.toPathString)(localVarUrlObj),
127
+ options: localVarRequestOptions,
128
+ };
129
+ },
130
+ /**
131
+ * 채팅방 메시지를 커서 기반으로 조회합니다. cursor가 없으면 최신 메시지 기준으로 조회하고, nextCursor와 hasNext로 다음 페이지 요청 여부를 판단합니다.
132
+ * @summary 채팅 메시지 목록 조회
133
+ * @param {number} voteId 메시지를 조회할 투표 ID
134
+ * @param {number} [cursor] 이전 페이지의 nextCursor. 첫 조회 시 생략합니다.
135
+ * @param {number} [size] 조회할 메시지 수
136
+ * @param {*} [options] Override http request option.
137
+ * @throws {RequiredError}
138
+ */
139
+ getMessages: async (voteId, cursor, size, options = {}) => {
140
+ // verify required parameter 'voteId' is not null or undefined
141
+ (0, common_1.assertParamExists)('getMessages', 'voteId', voteId);
142
+ const localVarPath = `/api/chats/{voteId}/messages`
143
+ .replace(`{${"voteId"}}`, encodeURIComponent(String(voteId)));
144
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
145
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
146
+ let baseOptions;
147
+ if (configuration) {
148
+ baseOptions = configuration.baseOptions;
149
+ }
150
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options };
151
+ const localVarHeaderParameter = {};
152
+ const localVarQueryParameter = {};
153
+ // authentication bearerAuth required
154
+ // http bearer authentication required
155
+ await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
156
+ if (cursor !== undefined) {
157
+ localVarQueryParameter['cursor'] = cursor;
158
+ }
159
+ if (size !== undefined) {
160
+ localVarQueryParameter['size'] = size;
161
+ }
162
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
163
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
164
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
165
+ return {
166
+ url: (0, common_1.toPathString)(localVarUrlObj),
167
+ options: localVarRequestOptions,
168
+ };
169
+ },
170
+ /**
171
+ * 사용자가 마지막으로 읽은 메시지 ID를 저장해 이후 채팅방 목록의 unreadCount 계산에 사용합니다.
172
+ * @summary 채팅방 읽음 처리
173
+ * @param {number} voteId 읽음 처리할 투표 ID
174
+ * @param {MarkAsReadRequest} markAsReadRequest 마지막으로 읽은 메시지 ID
175
+ * @param {*} [options] Override http request option.
176
+ * @throws {RequiredError}
177
+ */
178
+ markAsRead: async (voteId, markAsReadRequest, options = {}) => {
179
+ // verify required parameter 'voteId' is not null or undefined
180
+ (0, common_1.assertParamExists)('markAsRead', 'voteId', voteId);
181
+ // verify required parameter 'markAsReadRequest' is not null or undefined
182
+ (0, common_1.assertParamExists)('markAsRead', 'markAsReadRequest', markAsReadRequest);
183
+ const localVarPath = `/api/chats/{voteId}/read`
184
+ .replace(`{${"voteId"}}`, encodeURIComponent(String(voteId)));
185
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
186
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
187
+ let baseOptions;
188
+ if (configuration) {
189
+ baseOptions = configuration.baseOptions;
190
+ }
191
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
192
+ const localVarHeaderParameter = {};
193
+ const localVarQueryParameter = {};
194
+ // authentication bearerAuth required
195
+ // http bearer authentication required
196
+ await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
197
+ localVarHeaderParameter['Content-Type'] = 'application/json';
198
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
199
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
200
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
201
+ localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(markAsReadRequest, localVarRequestOptions, configuration);
202
+ return {
203
+ url: (0, common_1.toPathString)(localVarUrlObj),
204
+ options: localVarRequestOptions,
205
+ };
206
+ },
207
+ /**
208
+ * 채팅방에 새 메시지를 전송하고 저장된 메시지 정보를 반환합니다.
209
+ * @summary 채팅 메시지 전송
210
+ * @param {number} voteId 메시지를 전송할 투표 ID
211
+ * @param {SendMessageRequest} sendMessageRequest 전송할 메시지 내용
212
+ * @param {*} [options] Override http request option.
213
+ * @throws {RequiredError}
214
+ */
215
+ sendMessage: async (voteId, sendMessageRequest, options = {}) => {
216
+ // verify required parameter 'voteId' is not null or undefined
217
+ (0, common_1.assertParamExists)('sendMessage', 'voteId', voteId);
218
+ // verify required parameter 'sendMessageRequest' is not null or undefined
219
+ (0, common_1.assertParamExists)('sendMessage', 'sendMessageRequest', sendMessageRequest);
220
+ const localVarPath = `/api/chats/{voteId}/messages`
221
+ .replace(`{${"voteId"}}`, encodeURIComponent(String(voteId)));
222
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
223
+ const localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
224
+ let baseOptions;
225
+ if (configuration) {
226
+ baseOptions = configuration.baseOptions;
227
+ }
228
+ const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options };
229
+ const localVarHeaderParameter = {};
230
+ const localVarQueryParameter = {};
231
+ // authentication bearerAuth required
232
+ // http bearer authentication required
233
+ await (0, common_1.setBearerAuthToObject)(localVarHeaderParameter, configuration);
234
+ localVarHeaderParameter['Content-Type'] = 'application/json';
235
+ (0, common_1.setSearchParams)(localVarUrlObj, localVarQueryParameter);
236
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
237
+ localVarRequestOptions.headers = { ...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers };
238
+ localVarRequestOptions.data = (0, common_1.serializeDataIfNeeded)(sendMessageRequest, localVarRequestOptions, configuration);
239
+ return {
240
+ url: (0, common_1.toPathString)(localVarUrlObj),
241
+ options: localVarRequestOptions,
242
+ };
243
+ },
244
+ };
245
+ };
246
+ exports.ChatApiAxiosParamCreator = ChatApiAxiosParamCreator;
247
+ /**
248
+ * ChatApi - functional programming interface
249
+ * @export
250
+ */
251
+ const ChatApiFp = function (configuration) {
252
+ const localVarAxiosParamCreator = (0, exports.ChatApiAxiosParamCreator)(configuration);
253
+ return {
254
+ /**
255
+ * 로그인 사용자가 참여한 채팅방을 투표 진행 상태별로 조회합니다.
256
+ * @summary 채팅방 목록 조회
257
+ * @param {GetChatListStatusEnum} status 조회할 투표 상태
258
+ * @param {*} [options] Override http request option.
259
+ * @throws {RequiredError}
260
+ */
261
+ async getChatList(status, options) {
262
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getChatList(status, options);
263
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
264
+ const localVarOperationServerBasePath = base_1.operationServerMap['ChatApi.getChatList']?.[localVarOperationServerIndex]?.url;
265
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
266
+ },
267
+ /**
268
+ * 채팅방 상단에 표시할 투표 제목, 진행 상태, 선택지, 참여자 수, 종료 시간을 조회합니다.
269
+ * @summary 채팅방 상세 조회
270
+ * @param {number} voteId 채팅방이 연결된 투표 ID
271
+ * @param {*} [options] Override http request option.
272
+ * @throws {RequiredError}
273
+ */
274
+ async getChatRoom(voteId, options) {
275
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getChatRoom(voteId, options);
276
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
277
+ const localVarOperationServerBasePath = base_1.operationServerMap['ChatApi.getChatRoom']?.[localVarOperationServerIndex]?.url;
278
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
279
+ },
280
+ /**
281
+ * 채팅방에서 표시할 A/B 선택지 투표 비율과 참여자 수를 조회합니다. 비율 값은 0부터 100까지의 정수입니다.
282
+ * @summary 투표 게이지 조회
283
+ * @param {number} voteId 게이지를 조회할 투표 ID
284
+ * @param {*} [options] Override http request option.
285
+ * @throws {RequiredError}
286
+ */
287
+ async getGauge(voteId, options) {
288
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getGauge(voteId, options);
289
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
290
+ const localVarOperationServerBasePath = base_1.operationServerMap['ChatApi.getGauge']?.[localVarOperationServerIndex]?.url;
291
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
292
+ },
293
+ /**
294
+ * 채팅방 메시지를 커서 기반으로 조회합니다. cursor가 없으면 최신 메시지 기준으로 조회하고, nextCursor와 hasNext로 다음 페이지 요청 여부를 판단합니다.
295
+ * @summary 채팅 메시지 목록 조회
296
+ * @param {number} voteId 메시지를 조회할 투표 ID
297
+ * @param {number} [cursor] 이전 페이지의 nextCursor. 첫 조회 시 생략합니다.
298
+ * @param {number} [size] 조회할 메시지 수
299
+ * @param {*} [options] Override http request option.
300
+ * @throws {RequiredError}
301
+ */
302
+ async getMessages(voteId, cursor, size, options) {
303
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getMessages(voteId, cursor, size, options);
304
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
305
+ const localVarOperationServerBasePath = base_1.operationServerMap['ChatApi.getMessages']?.[localVarOperationServerIndex]?.url;
306
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
307
+ },
308
+ /**
309
+ * 사용자가 마지막으로 읽은 메시지 ID를 저장해 이후 채팅방 목록의 unreadCount 계산에 사용합니다.
310
+ * @summary 채팅방 읽음 처리
311
+ * @param {number} voteId 읽음 처리할 투표 ID
312
+ * @param {MarkAsReadRequest} markAsReadRequest 마지막으로 읽은 메시지 ID
313
+ * @param {*} [options] Override http request option.
314
+ * @throws {RequiredError}
315
+ */
316
+ async markAsRead(voteId, markAsReadRequest, options) {
317
+ const localVarAxiosArgs = await localVarAxiosParamCreator.markAsRead(voteId, markAsReadRequest, options);
318
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
319
+ const localVarOperationServerBasePath = base_1.operationServerMap['ChatApi.markAsRead']?.[localVarOperationServerIndex]?.url;
320
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
321
+ },
322
+ /**
323
+ * 채팅방에 새 메시지를 전송하고 저장된 메시지 정보를 반환합니다.
324
+ * @summary 채팅 메시지 전송
325
+ * @param {number} voteId 메시지를 전송할 투표 ID
326
+ * @param {SendMessageRequest} sendMessageRequest 전송할 메시지 내용
327
+ * @param {*} [options] Override http request option.
328
+ * @throws {RequiredError}
329
+ */
330
+ async sendMessage(voteId, sendMessageRequest, options) {
331
+ const localVarAxiosArgs = await localVarAxiosParamCreator.sendMessage(voteId, sendMessageRequest, options);
332
+ const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
333
+ const localVarOperationServerBasePath = base_1.operationServerMap['ChatApi.sendMessage']?.[localVarOperationServerIndex]?.url;
334
+ return (axios, basePath) => (0, common_1.createRequestFunction)(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath);
335
+ },
336
+ };
337
+ };
338
+ exports.ChatApiFp = ChatApiFp;
339
+ /**
340
+ * ChatApi - factory interface
341
+ * @export
342
+ */
343
+ const ChatApiFactory = function (configuration, basePath, axios) {
344
+ const localVarFp = (0, exports.ChatApiFp)(configuration);
345
+ return {
346
+ /**
347
+ * 로그인 사용자가 참여한 채팅방을 투표 진행 상태별로 조회합니다.
348
+ * @summary 채팅방 목록 조회
349
+ * @param {GetChatListStatusEnum} status 조회할 투표 상태
350
+ * @param {*} [options] Override http request option.
351
+ * @throws {RequiredError}
352
+ */
353
+ getChatList(status, options) {
354
+ return localVarFp.getChatList(status, options).then((request) => request(axios, basePath));
355
+ },
356
+ /**
357
+ * 채팅방 상단에 표시할 투표 제목, 진행 상태, 선택지, 참여자 수, 종료 시간을 조회합니다.
358
+ * @summary 채팅방 상세 조회
359
+ * @param {number} voteId 채팅방이 연결된 투표 ID
360
+ * @param {*} [options] Override http request option.
361
+ * @throws {RequiredError}
362
+ */
363
+ getChatRoom(voteId, options) {
364
+ return localVarFp.getChatRoom(voteId, options).then((request) => request(axios, basePath));
365
+ },
366
+ /**
367
+ * 채팅방에서 표시할 A/B 선택지 투표 비율과 참여자 수를 조회합니다. 비율 값은 0부터 100까지의 정수입니다.
368
+ * @summary 투표 게이지 조회
369
+ * @param {number} voteId 게이지를 조회할 투표 ID
370
+ * @param {*} [options] Override http request option.
371
+ * @throws {RequiredError}
372
+ */
373
+ getGauge(voteId, options) {
374
+ return localVarFp.getGauge(voteId, options).then((request) => request(axios, basePath));
375
+ },
376
+ /**
377
+ * 채팅방 메시지를 커서 기반으로 조회합니다. cursor가 없으면 최신 메시지 기준으로 조회하고, nextCursor와 hasNext로 다음 페이지 요청 여부를 판단합니다.
378
+ * @summary 채팅 메시지 목록 조회
379
+ * @param {number} voteId 메시지를 조회할 투표 ID
380
+ * @param {number} [cursor] 이전 페이지의 nextCursor. 첫 조회 시 생략합니다.
381
+ * @param {number} [size] 조회할 메시지 수
382
+ * @param {*} [options] Override http request option.
383
+ * @throws {RequiredError}
384
+ */
385
+ getMessages(voteId, cursor, size, options) {
386
+ return localVarFp.getMessages(voteId, cursor, size, options).then((request) => request(axios, basePath));
387
+ },
388
+ /**
389
+ * 사용자가 마지막으로 읽은 메시지 ID를 저장해 이후 채팅방 목록의 unreadCount 계산에 사용합니다.
390
+ * @summary 채팅방 읽음 처리
391
+ * @param {number} voteId 읽음 처리할 투표 ID
392
+ * @param {MarkAsReadRequest} markAsReadRequest 마지막으로 읽은 메시지 ID
393
+ * @param {*} [options] Override http request option.
394
+ * @throws {RequiredError}
395
+ */
396
+ markAsRead(voteId, markAsReadRequest, options) {
397
+ return localVarFp.markAsRead(voteId, markAsReadRequest, options).then((request) => request(axios, basePath));
398
+ },
399
+ /**
400
+ * 채팅방에 새 메시지를 전송하고 저장된 메시지 정보를 반환합니다.
401
+ * @summary 채팅 메시지 전송
402
+ * @param {number} voteId 메시지를 전송할 투표 ID
403
+ * @param {SendMessageRequest} sendMessageRequest 전송할 메시지 내용
404
+ * @param {*} [options] Override http request option.
405
+ * @throws {RequiredError}
406
+ */
407
+ sendMessage(voteId, sendMessageRequest, options) {
408
+ return localVarFp.sendMessage(voteId, sendMessageRequest, options).then((request) => request(axios, basePath));
409
+ },
410
+ };
411
+ };
412
+ exports.ChatApiFactory = ChatApiFactory;
413
+ /**
414
+ * ChatApi - object-oriented interface
415
+ * @export
416
+ * @class ChatApi
417
+ * @extends {BaseAPI}
418
+ */
419
+ class ChatApi extends base_1.BaseAPI {
420
+ /**
421
+ * 로그인 사용자가 참여한 채팅방을 투표 진행 상태별로 조회합니다.
422
+ * @summary 채팅방 목록 조회
423
+ * @param {GetChatListStatusEnum} status 조회할 투표 상태
424
+ * @param {*} [options] Override http request option.
425
+ * @throws {RequiredError}
426
+ * @memberof ChatApi
427
+ */
428
+ getChatList(status, options) {
429
+ return (0, exports.ChatApiFp)(this.configuration).getChatList(status, options).then((request) => request(this.axios, this.basePath));
430
+ }
431
+ /**
432
+ * 채팅방 상단에 표시할 투표 제목, 진행 상태, 선택지, 참여자 수, 종료 시간을 조회합니다.
433
+ * @summary 채팅방 상세 조회
434
+ * @param {number} voteId 채팅방이 연결된 투표 ID
435
+ * @param {*} [options] Override http request option.
436
+ * @throws {RequiredError}
437
+ * @memberof ChatApi
438
+ */
439
+ getChatRoom(voteId, options) {
440
+ return (0, exports.ChatApiFp)(this.configuration).getChatRoom(voteId, options).then((request) => request(this.axios, this.basePath));
441
+ }
442
+ /**
443
+ * 채팅방에서 표시할 A/B 선택지 투표 비율과 참여자 수를 조회합니다. 비율 값은 0부터 100까지의 정수입니다.
444
+ * @summary 투표 게이지 조회
445
+ * @param {number} voteId 게이지를 조회할 투표 ID
446
+ * @param {*} [options] Override http request option.
447
+ * @throws {RequiredError}
448
+ * @memberof ChatApi
449
+ */
450
+ getGauge(voteId, options) {
451
+ return (0, exports.ChatApiFp)(this.configuration).getGauge(voteId, options).then((request) => request(this.axios, this.basePath));
452
+ }
453
+ /**
454
+ * 채팅방 메시지를 커서 기반으로 조회합니다. cursor가 없으면 최신 메시지 기준으로 조회하고, nextCursor와 hasNext로 다음 페이지 요청 여부를 판단합니다.
455
+ * @summary 채팅 메시지 목록 조회
456
+ * @param {number} voteId 메시지를 조회할 투표 ID
457
+ * @param {number} [cursor] 이전 페이지의 nextCursor. 첫 조회 시 생략합니다.
458
+ * @param {number} [size] 조회할 메시지 수
459
+ * @param {*} [options] Override http request option.
460
+ * @throws {RequiredError}
461
+ * @memberof ChatApi
462
+ */
463
+ getMessages(voteId, cursor, size, options) {
464
+ return (0, exports.ChatApiFp)(this.configuration).getMessages(voteId, cursor, size, options).then((request) => request(this.axios, this.basePath));
465
+ }
466
+ /**
467
+ * 사용자가 마지막으로 읽은 메시지 ID를 저장해 이후 채팅방 목록의 unreadCount 계산에 사용합니다.
468
+ * @summary 채팅방 읽음 처리
469
+ * @param {number} voteId 읽음 처리할 투표 ID
470
+ * @param {MarkAsReadRequest} markAsReadRequest 마지막으로 읽은 메시지 ID
471
+ * @param {*} [options] Override http request option.
472
+ * @throws {RequiredError}
473
+ * @memberof ChatApi
474
+ */
475
+ markAsRead(voteId, markAsReadRequest, options) {
476
+ return (0, exports.ChatApiFp)(this.configuration).markAsRead(voteId, markAsReadRequest, options).then((request) => request(this.axios, this.basePath));
477
+ }
478
+ /**
479
+ * 채팅방에 새 메시지를 전송하고 저장된 메시지 정보를 반환합니다.
480
+ * @summary 채팅 메시지 전송
481
+ * @param {number} voteId 메시지를 전송할 투표 ID
482
+ * @param {SendMessageRequest} sendMessageRequest 전송할 메시지 내용
483
+ * @param {*} [options] Override http request option.
484
+ * @throws {RequiredError}
485
+ * @memberof ChatApi
486
+ */
487
+ sendMessage(voteId, sendMessageRequest, options) {
488
+ return (0, exports.ChatApiFp)(this.configuration).sendMessage(voteId, sendMessageRequest, options).then((request) => request(this.axios, this.basePath));
489
+ }
490
+ }
491
+ exports.ChatApi = ChatApi;
492
+ /**
493
+ * @export
494
+ */
495
+ exports.GetChatListStatusEnum = {
496
+ Ongoing: 'ONGOING',
497
+ Ended: 'ENDED'
498
+ };
package/dist/api.d.ts CHANGED
@@ -10,4 +10,5 @@
10
10
  * Do not edit the class manually.
11
11
  */
12
12
  export * from './api/auth-controller-api';
13
+ export * from './api/chat-api';
13
14
  export * from './api/hello-controller-api';
package/dist/api.js CHANGED
@@ -28,4 +28,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
28
28
  };
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
30
  __exportStar(require("./api/auth-controller-api"), exports);
31
+ __exportStar(require("./api/chat-api"), exports);
31
32
  __exportStar(require("./api/hello-controller-api"), exports);
@@ -0,0 +1,56 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * 채팅방 목록 항목 응답
14
+ */
15
+ export interface ChatListItemResponse {
16
+ /**
17
+ * 채팅방이 연결된 투표 ID
18
+ */
19
+ voteId?: number;
20
+ /**
21
+ * 투표 제목
22
+ */
23
+ title?: string;
24
+ /**
25
+ * 투표 썸네일 이미지 URL
26
+ */
27
+ thumbnailUrl?: string;
28
+ /**
29
+ * A 선택지 이름
30
+ */
31
+ optionA?: string;
32
+ /**
33
+ * B 선택지 이름
34
+ */
35
+ optionB?: string;
36
+ /**
37
+ * 투표 참여자 수
38
+ */
39
+ participantCount?: number;
40
+ /**
41
+ * 채팅방의 마지막 메시지 내용
42
+ */
43
+ lastMessage?: string;
44
+ /**
45
+ * 마지막 메시지가 전송된 시각. UTC 기준으로 내려가며 사용자 시간대에 맞춰 변환이 필요합니다.
46
+ */
47
+ lastMessageAt?: string;
48
+ /**
49
+ * 투표 종료 시각. UTC 기준으로 내려가며 사용자 시간대에 맞춰 변환이 필요합니다.
50
+ */
51
+ endAt?: string;
52
+ /**
53
+ * 현재 사용자가 아직 읽지 않은 메시지 수
54
+ */
55
+ unreadCount?: number;
56
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,21 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { ChatListItemResponse } from './chat-list-item-response';
13
+ /**
14
+ * 채팅방 목록 응답
15
+ */
16
+ export interface ChatListResponse {
17
+ /**
18
+ * 조회된 채팅방 목록
19
+ */
20
+ chats?: Array<ChatListItemResponse>;
21
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,49 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * 채팅방 상세 응답
14
+ */
15
+ export interface ChatRoomResponse {
16
+ /**
17
+ * 채팅방이 연결된 투표 ID
18
+ */
19
+ voteId?: number;
20
+ /**
21
+ * 투표 제목
22
+ */
23
+ title?: string;
24
+ /**
25
+ * 투표 진행 상태
26
+ */
27
+ status?: ChatRoomResponseStatusEnum;
28
+ /**
29
+ * 투표 참여자 수
30
+ */
31
+ participantCount?: number;
32
+ /**
33
+ * A 선택지 이름
34
+ */
35
+ optionA?: string;
36
+ /**
37
+ * B 선택지 이름
38
+ */
39
+ optionB?: string;
40
+ /**
41
+ * 투표 종료 시각. UTC 기준으로 내려가며 사용자 시간대에 맞춰 변환이 필요합니다.
42
+ */
43
+ endAt?: string;
44
+ }
45
+ export declare const ChatRoomResponseStatusEnum: {
46
+ readonly Ongoing: "ONGOING";
47
+ readonly Ended: "ENDED";
48
+ };
49
+ export type ChatRoomResponseStatusEnum = typeof ChatRoomResponseStatusEnum[keyof typeof ChatRoomResponseStatusEnum];
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.ChatRoomResponseStatusEnum = void 0;
17
+ exports.ChatRoomResponseStatusEnum = {
18
+ Ongoing: 'ONGOING',
19
+ Ended: 'ENDED'
20
+ };
@@ -0,0 +1,28 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * 투표 게이지 응답
14
+ */
15
+ export interface GaugeResponse {
16
+ /**
17
+ * A 선택지 투표 비율. 0부터 100까지의 정수입니다.
18
+ */
19
+ optionARatio?: number;
20
+ /**
21
+ * B 선택지 투표 비율. 0부터 100까지의 정수입니다.
22
+ */
23
+ optionBRatio?: number;
24
+ /**
25
+ * 투표 참여자 수
26
+ */
27
+ participantCount?: number;
28
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1 +1,9 @@
1
+ export * from './chat-list-item-response';
2
+ export * from './chat-list-response';
3
+ export * from './chat-room-response';
4
+ export * from './gauge-response';
1
5
  export * from './hello-response';
6
+ export * from './mark-as-read-request';
7
+ export * from './message-page-response';
8
+ export * from './message-response';
9
+ export * from './send-message-request';
@@ -14,4 +14,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./chat-list-item-response"), exports);
18
+ __exportStar(require("./chat-list-response"), exports);
19
+ __exportStar(require("./chat-room-response"), exports);
20
+ __exportStar(require("./gauge-response"), exports);
17
21
  __exportStar(require("./hello-response"), exports);
22
+ __exportStar(require("./mark-as-read-request"), exports);
23
+ __exportStar(require("./message-page-response"), exports);
24
+ __exportStar(require("./message-response"), exports);
25
+ __exportStar(require("./send-message-request"), exports);
@@ -0,0 +1,20 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * 채팅방 읽음 처리 요청
14
+ */
15
+ export interface MarkAsReadRequest {
16
+ /**
17
+ * 현재 사용자가 마지막으로 읽은 메시지 ID
18
+ */
19
+ lastReadMessageId: number;
20
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,29 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { MessageResponse } from './message-response';
13
+ /**
14
+ * 채팅 메시지 페이지 응답
15
+ */
16
+ export interface MessagePageResponse {
17
+ /**
18
+ * 조회된 메시지 목록
19
+ */
20
+ messages?: Array<MessageResponse>;
21
+ /**
22
+ * 다음 페이지 조회에 사용할 커서. 다음 페이지가 없으면 null입니다.
23
+ */
24
+ nextCursor?: number;
25
+ /**
26
+ * 다음 페이지 존재 여부
27
+ */
28
+ hasNext?: boolean;
29
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,49 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * 채팅 메시지 응답
14
+ */
15
+ export interface MessageResponse {
16
+ /**
17
+ * 채팅 메시지 ID
18
+ */
19
+ messageId?: number;
20
+ /**
21
+ * 메시지 내용
22
+ */
23
+ content?: string;
24
+ /**
25
+ * 메시지 전송 시각. UTC 기준으로 내려가며 사용자 시간대에 맞춰 변환이 필요합니다.
26
+ */
27
+ sentAt?: string;
28
+ /**
29
+ * 메시지를 보낸 사용자의 닉네임
30
+ */
31
+ senderNickname?: string;
32
+ /**
33
+ * 메시지를 보낸 사용자의 프로필 아이콘
34
+ */
35
+ senderProfileIcon?: string;
36
+ /**
37
+ * 메시지를 보낸 사용자가 선택한 투표 선택지
38
+ */
39
+ senderVoteOption?: MessageResponseSenderVoteOptionEnum;
40
+ /**
41
+ * 현재 로그인 사용자가 보낸 메시지인지 여부
42
+ */
43
+ isMine?: boolean;
44
+ }
45
+ export declare const MessageResponseSenderVoteOptionEnum: {
46
+ readonly A: "A";
47
+ readonly B: "B";
48
+ };
49
+ export type MessageResponseSenderVoteOptionEnum = typeof MessageResponseSenderVoteOptionEnum[keyof typeof MessageResponseSenderVoteOptionEnum];
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.MessageResponseSenderVoteOptionEnum = void 0;
17
+ exports.MessageResponseSenderVoteOptionEnum = {
18
+ A: 'A',
19
+ B: 'B'
20
+ };
@@ -0,0 +1,20 @@
1
+ /**
2
+ * VS Server API
3
+ * JECT 4기 2팀 VS Server API
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ *
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * 채팅 메시지 전송 요청
14
+ */
15
+ export interface SendMessageRequest {
16
+ /**
17
+ * 전송할 메시지 내용
18
+ */
19
+ content: string;
20
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * VS Server API
6
+ * JECT 4기 2팀 VS Server API
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ *
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ject-4-vs-team/api-client",
3
- "version": "2026.0501.2",
3
+ "version": "2026.0501.4",
4
4
  "description": "VS Server API client generated from OpenAPI spec",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",